По разному применяется стиль

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

ameridian

Участник
Топикстартер
Сообщения
46
Реакции
0
Есть импортированный файл РТФ с некоторыми жирными выделениями по тексту. Если применить стиль через панель то стиль применяется и все выделения СОХРАНЯЮТСЯ.
Но если через скрипт ( myStory.appliedParagraphStyle = "..." ), то все выделения слетают.
Как быть? Где разница между этими действиями?
 
Ответ: По разному применяется стиль

ameridian сказал(а):
Есть импортированный файл РТФ с некоторыми жирными выделениями по тексту. Если применить стиль через панель то стиль применяется и все выделения СОХРАНЯЮТСЯ.
Но если через скрипт ( myStory.appliedParagraphStyle = "..." ), то все выделения слетают.
Как быть? Где разница между этими действиями?

PHP:
with (app) {
	var myDoc = activeDocument;
	var myStory = selection[0].parentStory;
	for (var myCounter = 0; myCounter < myStory.texts.length; myCounter++) {
		myStory.texts[myCounter].applyStyle(myDoc.paragraphStyles[2], false);
	}
}

Что-то вроде этого надо делать. У Story нет метода applyStyle, поэтому работать придется с texts. У метода applyStyle в качестве первого параметра идет стиль, в качестве второго - логическое значение clearingOverrides. Если оно true, то текст приводится к стилю полностью, false - сохраняет дополнительные изменения.
 
Ответ: По разному применяется стиль

А я поступаю проще - заменяю локальное полужирное форматирование символов на специально созданный символьный стиль Bold. Тогда последующее применение стиля параграфа не сносит полужирное выделение.
Код для замены:
PHP:
// Заменяем жирное форматирование символов на символьный стиль "Bold"
findPreferences = null;
changePreferences = null;
findPreferences.fontStyle = "Bold";
changePreferences.appliedCharacterStyle = activeDocument.characterStyles.item("Bold");
myStory.search("^?", false, false, "");
 
Статус
Закрыто для дальнейших ответов.