Помогите написать скрипт

  • Автор темы Автор темы Bardak
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Bardak

Участник
Топикстартер
Сообщения
44
Реакции
0
Вобщем ситуация такая:
каждый месяц верстаю журнал с длинными таблицами. В таблицах есть группа слов, словосочетаний (естественно в разных местах) к которым надо применить готовый стиль, плюс к этому определенные ячейки надо красить в установленный цвет и менять их высоту. Собственно это основные вещи на которые я трачу кучу времени. Вручную это сами понимаете занятие муторное. Есть и другие но это на потом, хотелось бы хоть с этим разобраться. Для меня не секрет, что все эти проблемы решаются написанием скрипта, но вот беда.... никогда раньше я не программировал :(
Так как недавно начал изучать PHP из-за сходства синтаксиса решил попробовать в ID JavaScript.
Только не обстреливайте помидорами, но самому у меня пока осилить язык не получается (не врубаюсь я пока), а уроков по этой теме как днем с огнем. Надеюсь, что кто-нибудь хотя бы покажет пример поиска списка слов и применения к ним стиля (желательно с подробными комментариями). Ну и ответит на вопросы, которые появятся по ходу дела.
 
Ответ: Помогите написать скрипт

PHP:
	var myFindText = new Array (		"^p",		"|",			"%%",			"\\",			"*ОБЫЧН*", 		"**",			"*ЖИРН*", 		"*РАМКА*", 	"*ЧЕРН. ФОН*", 	"*ЧЕРН.ФОН*", 	"*картинка*", "*картинка 4,5 см*", 	"*ЖИРН.РАМКА*",	"*ОБЫЧН ТР*", 		"*рамка ТР*",	"*жирн ТР*",		"*ЧЕРН.ФОН ТР*");
var myApliedParagraphStyle = new Array ("ОБЪЯВЛЕНИЯ",	"Объявления рубрика",	"Объявления раздел",	"Объявления раздел",	"Объявления платные",	"Объявления платные", 	"Объявления жирные", 	"рамка", 	"выворотка", 	"выворотка", 	"картинка25", "картинка45", 		"рамка жирная",	"Объявления платные",	"рамка",	"Объявления жирные",	"выворотка");
var myReplaceText = new Array (		"^p",		"",			"",			"",			"*ОБЫЧН*",		"**",			"*ЖИРН*",		"*РАМКА*",	"*ЧЕРН. ФОН*",	"*ЧЕРН.ФОН*",	"*картинка*",	"*картинка 4,5 см*",	"*ЖИРН.РАМКА*",	"*ОБЫЧН ТР*",		"*рамка ТР*",	"*жирн ТР*",		"*ЧЕРН.ФОН ТР*");
PHP:
	for (count = 0; count < myFindText.length; count++) {
	findPreferences = null; 
	changePreferences = null; 
	changePreferences.appliedParagraphStyle = myApliedParagraphStyle[count];
	myStory.search(myFindText[count], false, false, myReplaceText[count]);
}
 
Ответ: Помогите написать скрипт

2ragman спасибо за ответ
вот что я из твоего кода понял
PHP:
//создаем массив со словами которые надо искать
var myFindText = new Array ("строка");
//создаем массив с названием стилей которые надо применить
var myApliedParagraphStyle = new Array ("PPP");
//этот массив я так понял со словами на которые надо заменить слова из первого массива
var myReplaceText = new Array ("строка"); 
//это начинается цикл
for (count = 0; count < myFindText.length; count++) {
    //вот это я не понял для чего
    findPreferences = null;
    //тоже не понял
    changePreferences = null;
    //а вот эта строка я так понял как раз и должна применять стиль должна применять
    //но к сожалению она выдает ошибку null is not an object я так понял массив пустой или как?
    changePreferences.appliedParagraphStyle = myApliedParagraphStyle[count];
    myStory.search(myFindText[count], false, false, myReplaceText[count]);
}

PPP это имя стиля который я создал
поправь пожалуйста если я что то неправильно понял
 
Ответ: Помогите написать скрипт

2ragman
кастати я где то видел что ты брался за перевод описаний из InDesign Scripting Reference
что нибудь получилось из этого?
 
Ответ: Помогите написать скрипт

Bardak сказал(а):
2ragman
кастати я где то видел что ты брался за перевод описаний из InDesign Scripting Reference
что нибудь получилось из этого?
Там и переводить то особо нечего!
 
Ответ: Помогите написать скрипт

там вообще не хватает куска кода.
что такое myStory?
 
Ответ: Помогите написать скрипт

Strizh сказал(а):
Там и переводить то особо нечего!
есть чего
речь идет о описании объектов и методов
для меня это актуально так как английский у меня в примитиве
я как и многие несчастные имел удовольствие изучать немецкий :(
 
Ответ: Помогите написать скрипт

Strizh сказал(а):
там вообще не хватает куска кода.
что такое myStory?

я так и понял, что это куски выдранные из другого скрипта
myStory.. а вот это я не понял, потому и не написал ничего
 
Ответ: Помогите написать скрипт

Эээх...
если бы все скрипты были с подробными коментариями.....
тогда бы и изучать было бы гораздо легче
как говорится еслиб все армяне были бы грузинами.....
 
Ответ: Помогите написать скрипт

Меня тут упрекнули в том, что я дал только кусок кода и человек ничего не понял.
Вот скрипт целиком с кучей коментариев - я стараюсь писать их для себя, так как со временем не помню где чего и зачем писал.

зы: с переврдом ничего не вышло - мой "родной" язык французский и качество перевода забраковали
 

Вложения

Ответ: Помогите написать скрипт

Вобщем я его поломал на свой лад и все заработало
Теперь попробую его усложнить а потом выложу....может чего посоветуете
 
Ответ: Помогите написать скрипт

2ragman
объясни пожалуйста вот эту строку
myStory.search(myFindText[count], false, false, myReplaceText[count]);

можно как нибудь без нее?
 
Ответ: Помогите написать скрипт

.. и еще
у тебя здесь
PHP:
findPreferences = null; 
changePreferences = null; 
findPreferences.fontStyle = "Bold";
changePreferences.appliedCharacterStyle = activeDocument.characterStyles.item("Жирный");
myStory.search("^?", false, false, "");

ищется весь жирный текст и к нему применяется символьный стиль
а как сделать что бы применялся стиль параграфа?

я попробовал вот так
PHP:
findPreferences = null; 
changePreferences = null; 
findPreferences.fontStyle = "Bold";
changePreferences.appliedParagraphStyle = activeDocument.ParagraphStyles.item("Таб. Жирный по центру");
myStory.search("^?", false, false, "");

выдал ошибку
как надо правильно?

Все:)
Извините
Банальная ошибка синтаксиса....впредь надо будет все повнимательнее проверять
 
Ответ: Помогите написать скрипт

а теперь отдельный вопрос
как сделать что бы значение переменной забиралось из тхт файла?
 
Ответ: Помогите написать скрипт

Считать текстовый файл :)
 
Ответ: Помогите написать скрипт

vbatushev сказал(а):
Считать текстовый файл :)
нет ну издеваться то можно как угодно....
а показать?
 
Ответ: Помогите написать скрипт

Bardak сказал(а):
нет ну издеваться то можно как угодно....
а показать?
Только без обид...
Один ответ на все твои вопросы - сходи сюда накачай подходящих по описанию скриптов и поройся в их внутренностях (сам так делал).
Могу сразу подсказать, что ]этот скрипт подгружает настройки из текстовых файлов.
 
Ответ: Помогите написать скрипт

Bardak сказал(а):
ищется весь жирный текст и к нему применяется символьный стиль
а как сделать что бы применялся стиль параграфа?
Вообще у меня стояла задача заменить жирное форматирование символов в тексте, втянутом из Ворда, на символьный стиль с параметром "полужирный".
Если ты будешь применять к найденому символу стиль параграфа, то у тебя весь параграф в котором находится данный символ, станет данного стиля.
Тебе точно это надо?
Просто не понятно, зачем искать символ а применять стиль параграфа...
 
Ответ: Помогите написать скрипт

ragman сказал(а):
Вообще у меня стояла задача заменить жирное форматирование символов в тексте, втянутом из Ворда, на символьный стиль с параметром "полужирный".
Если ты будешь применять к найденому символу стиль параграфа, то у тебя весь параграф в котором находится данный символ, станет данного стиля.
Тебе точно это надо?
Просто не понятно, зачем искать символ а применять стиль параграфа...

Ну задачи то у каждого специфичиские
мне просто дают таблицу в которой в заглавных ячейках шрифт уже жирный и эти надписи должны быть по центру
я ее вставляю с сохранением стилей и с помощью твоего скрипта применяю ко всем жирным шрифтам готовый стиль параграфа а потом убиваю те стили которые наплодил ворд . получается то что надо
на самом деле все получилось:) скрипт работает как надо:) спасибо!
теперь буду думать как закрасить в таблице ячейки которые отвечают определенным условиям .. надо что бы скрипт искал строки в которых всего только одна клетка проверял что в ней написано сверял со списком и если совпадает увеличивал ее на определенное количество мм и закрашивал указанным цветом
как к этому подойти пока не знаю ... пока что ищу названия всех объектов которые с этим связаны а там...:)
 
Ответ: Помогите написать скрипт

вобщем я встал на месте...:(
Как в скрипте организовать поиск клетки с нужным мне содержимым?
 
Статус
Закрыто для дальнейших ответов.