Помощь - Поиск - Пользователи - Календарь
Полная версия: Как применить стиль ко всему тексту?
ProDTP > Графика и препресс > Скриптинг
Stiff
...туплю уже часа четыре...

Есть объект myStory, создавался так: myStory = selection[0].parentStory;
Текст расвёрстан по нескольким фреймам.
С помощью какой конструкции (через myStory) назначить стиль всему этому тексту?

Инди CS2
PAIN.(t)
Story для такой задачи мало, нужен еще Document…
Примерно так:

Код
var myDocument = app.activeDocument;
var myStory = selection[0].parentStory;

// присваиваем стиль абзаца по имени
myStory.appliedParagraphStyle = myDocument.paragraphStyles.item('Body_txt');

// или по номеру в коллекции
myStory.appliedParagraphStyle = myDocument.paragraphStyles.item(2);


Понятное дело, совсем не обязательно выводить ссылку на документ в отдельную переменную.
Но обращаться к стилям получится только через него…
Stiff
спасибо за ответ!
но дело в том, что объект document я вроде как использую
приведу более полную выдержку скрипта:
Код
.....................................
\\ задаём значение переменных myCLASSIFIEDindex, myCLASS_RUBRICindex
\\ как индексы массива paragraphStyles
.....................................
with (app.activeDocument)
{
.............................................
myStory = selection[0].parentStory;
with (myStory)
{
// здесь мне и требуется применить стиль с индексом myCLASSIFIEDindex
// ко всему тексту, а делее по определённому условию выделить в тексте
// подзаголовки (стиль с индексом myCLASS_RUBRICindex)

for (i=0; i<paragraphs.length; i++)
{
............................................
switch (..............)
{case ХХХХХХХ: paragraphs[i].applyStyle (paragraphStyles[myCLASS_RUBRICindex], true); break;
default:
}

конструкция paragraphs[i].applyStyle (paragraphStyles[myCLASS_RUBRICindex], true) работает на отлично...
задавать стиль внутри цикла paragraphs[i].applyStyle (paragraphStyles[myCLASSIFIEDindex]) нет возможности по условиям задачи
по вашему совету использовал следующую конструкцию:
appliedParagraphStyle = paragraphStyles[myCLASSIFIEDindex];
всё замечательно сработало, только остался один вопрос: а как быть с режимом override, который поддерживается функцией applyStyle?
PAIN.(t)
Сорри smile.gif Я на VB пишу, там With – стремноватая конструкция, стараюсь без нее обходиться…
Поэтому во внимание ее и не принял… В таком случае – у вас все правильно smile.gif

У Story есть метод
Код
myStory.clearOverrides();

Правда, сходу заставить его работать в CS2 мне не удалось – ошибки нет, но и ничего не происходит.
Надо бы покурить мануал на предмет аргументов – я Джаву/Экстенд плоховато знаю, навскидку не могу сказать…
Постараюсь найти референсы к CS2, может что из этого и получится…
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2012 Invision Power Services, Inc.

Реклама

   Rambler's Top100    Яндекс цитирования