Если есть вопросы по скриптам

  • Автор темы Автор темы Oleg Butrin
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
Ответ: Если есть вопросы по скриптам

'Keyboard Shortcuts' > 'Area: Scripts'
 
Ответ: Если есть вопросы по скриптам

ага... спасибо обльшое! нашел...
 
Ответ: Если есть вопросы по скриптам

А не могли бы Вы мне помочь в одном вопросе?
Дело в том, что у меня есть таблица из строк и мне надо автоматически
сделать жирными те строки в которых есть знак $.
как это можно осуществить?
 
Ответ: Если есть вопросы по скриптам

Если таблица простая, можно перегнать в текст, автозаменой найти $ и заменить на абз.стиль, дающий жирный текст, и перегнать обратно в таблицу. По-другому - пожалуй только скриптом. А его сочинять надо
 
Ответ: Если есть вопросы по скриптам

да... мне скриптом и надо) а это очень сложный скрипт? вы не могли бы мне помочь с этим? )
 
Ответ: Если есть вопросы по скриптам

Сегодня вечерком посижу, думаю смогу помочь. Киньте мне на мыло образец таблицы (Eugenyus@mail.ru)
 
Ответ: Если есть вопросы по скриптам

PHP:
if( app.selection[0] instanceof Table )
	for( i = 0; i < app.selection[0].cells.length; i++ )
		/\$/.test( app.selection[0].cells[i].contents ) ? app.selection[0].cells[i].texts.everyItem().fontStyle = 'Bold' : false;
else alert( 'Нужно выделить таблицу' );
 
Ответ: Если есть вопросы по скриптам

Я только начинаю писать скрипты, по этому у меня такой вопрос.
Как считывать из открытого документа текст до определенного символа? Например до знака "Ентер" или пробела...
 
Ответ: Если есть вопросы по скриптам

[Кот]
Метод String.substring(indexA, indexB) возвращает строку начинающуюся символом с индесом indexA и заканчивающуюся перед indexB (не включая его). Это если вы уже знаете индексы нужных символов.

Метод String.split (delimiter) возвращает массив строк, полученный разбиением исходной строки разделителем delimeter (сам разделитель удаляется). Это если известно строковое (или регулярное) выражение разделителя.

Еще есть коллекции 'Paragraphs' и 'Words', объекты в которых уже разбиты символами абзаца и пробелом соответственно. К ним можно обращаться по индексу и если нужно добавлять к выделению.
 
Ответ: Если есть вопросы по скриптам

Спасибо. А как узнать первую букву слова ?
 
Ответ: Если есть вопросы по скриптам

...words[номер слова].characters[0].contents
 
Ответ: Если есть вопросы по скриптам

Скажите пожалуйста, почему у меня это не работает :

var mySel = app.activeDocument.selection[0]

выдает ошибку.
 
Ответ: Если есть вопросы по скриптам

Кто выдает ошибку? ExtendScript Toolkit? Видимо потому, что вы не выбрали целевое приложение.
 
Ответ: Если есть вопросы по скриптам

Да, ExtendScript Toolkit.
А как мне это сделать ?
Даже когда я вставляю свой скрипт в InDesegn он тоже говорит ошибку.
 
Ответ: Если есть вопросы по скриптам

Первой строкой напишите: #target indesign

Индизайн может выдавать ошибку, если нет активных документов.
 
Ответ: Если есть вопросы по скриптам

Все, Та ошибка исчезла.
Теперь появился новый вопрос.
word = par[z].split(' ')
Это должно делить строку на слова (разбивать по пробелам)
Как указать там пробел ?
 
Ответ: Если есть вопросы по скриптам

Зачем? Уже есть коллекция 'words', берите слова оттуда.
 
Ответ: Если есть вопросы по скриптам

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

Начнем с того, какую строку вы имеете ввиду. Одну из строк текста в параграфе или произвольную текстовую переменную (которая может содержать хоть несколько параграфов сразу)?

Если строку параграфа (или Story), то родитель.lines[номер строки].words[номер слова].contents.

Если произвольную переменную, то текст.contents.split(' ')[номер слова]. (Запись не очень красивая, лучше создать референсы для удобочитаемости)

Upd.
Или ваш Paragraph/Story cостоят из единственной строки, тогда параграф.words[номер слова].contents.
 
Ответ: Если есть вопросы по скриптам

я имел ввиду строку в параграфе.
родитель.lines[номер строки].words[номер слова].contents - это узнать все слово.
а родитель.lines[номер строки].words[номер слова].characters[0].contents это узнать первую букву ? (мне нужно узнать первую букву слова)
А заодно еще как узнать сколько всего слов? родитель.lines[номер строки].length так ?
 
Статус
Закрыто для дальнейших ответов.