Неделю назад впервые попробовал использовать скрипты в ИнДизе '' , даже не знал как они запускаются . Сам ИнДиз CS месяца 3-4 первый раз запустил. Референс для скриптинга в Индизе не нашел пока... Вот первое творение и вторая просьба о помощи
Есть в тв программе , к примеру,
10.00 Х/ф “ВОЗВРАЩЕНИЕ МУХТАРА”.
32 с.
Раньше я вручную убавлял тракинг
10.00 Х/ф “ВОЗВРАЩЕНИЕ МУХТАРА”. 32 с.
Таких случаев немного но ну его на фиг подумал я
Собрал в тхт файл передачи которые хочу сжать и вот такой скрипт собрал (из EndParagraphWords и TextCleanup ) и заточил под себя. Читаем файл, читаем текст из фрейма, если параграф занимает больше одной строчки ищем в строчке кино про мухтара. Если нашли сжимаем (шаг -5) пока параграф не влезет в одну строчку. Вот что получилось
Если читаю только один столбец – работает почти всегда, если весь фрейм то чаще всего получаю см.пикчу
Другие скрипты (EndParagraphWords и TextCleanup) нормалек. Проблема однака :confuse:
Буду признателен за помощь
Есть в тв программе , к примеру,
10.00 Х/ф “ВОЗВРАЩЕНИЕ МУХТАРА”.
32 с.
Раньше я вручную убавлял тракинг
10.00 Х/ф “ВОЗВРАЩЕНИЕ МУХТАРА”. 32 с.
Таких случаев немного но ну его на фиг подумал я
Собрал в тхт файл передачи которые хочу сжать и вот такой скрипт собрал (из EndParagraphWords и TextCleanup ) и заточил под себя. Читаем файл, читаем текст из фрейма, если параграф занимает больше одной строчки ищем в строчке кино про мухтара. Если нашли сжимаем (шаг -5) пока параграф не влезет в одну строчку. Вот что получилось
Код:
var mySearchText= new Array();
var i = 0;
var counter = 0;
with (app) {
//Проверяем, что у нас выделено
if ((selection.length == 1)&&((selection[0].constructor.name == "TextFrame"))) {
} else {
alert("Необходимо вытелить один текстовый фрейм");
exit();
}
var myStory = selection[0].parentStory;
// var myStory = selection[0]
//Get the path to the currently-running script.
myScriptFileName = app.activeScript;
//Get a file reference to the script.
myScriptFile = File(myScriptFileName);
//Get a reference to the folder containing the script.
myFolder = myScriptFile.parent;
//Try to find a text file named "TvChange.txt" in the same folder as the script.
myFindChangeFileName = myFolder + "/" + "TvChange.txt";
myFindChangeFile = File(myFindChangeFileName);
//Try to open the file.
myResult = myFindChangeFile.open("r", undefined, undefined);
//If we couldn't find the file, then display a msg box and exit.
if(myResult == false){
alert("File " + myFindChangeFileName + " not found");
exit();
}
//Load array
do{
mySearchText[i]= myFindChangeFile.readln();
i = i + 1;
}while(myFindChangeFile.eof == false);
myFindChangeFile.close();
// for each paragraph
for (myCounter = 0; myCounter < myStory.paragraphs.length; myCounter++) {
myPara = myStory.paragraphs[myCounter];
lnCount = myPara.lines.length; //Количество строк в параграфе
if (lnCount > 1) { //Если число строк в параграфе больше одной
for ( i = 0; i < mySearchText.length; i++) {
var myText= myPara.contents
// alert(myText);
if (TextFound = myText.search(mySearchText[i])!= -1) {
counter = counter+1;
while (myPara.lines.length > 1) {
myPara.tracking = myPara.tracking - 5;
}
}
}
}
}
alert("Найдено: " + counter);
activeDocument.save;
}
Другие скрипты (EndParagraphWords и TextCleanup) нормалек. Проблема однака :confuse:
Буду признателен за помощь