- Сообщения
- 471
- Реакции
- 231
- Скрипт проверяет текущее состояние настройки «Автоматическая установка размера» текстового фрейма.
- Если «Автоматическая установка размера» выключена (AutoSizingTypeEnum.OFF), скрипт включает её, подгоняя размер только по высоте (AutoSizingTypeEnum.HEIGHT_ONLY). При этом он также устанавливает точку привязки для изменения размера — верхнюю центральную точку (AutoSizingReferenceEnum.TOP_CENTER_POINT).
- Если же настройка включена, скрипт её выключает.
- В завершение скрипт показывает всплывающее окно с сообщением, что настройка была успешно изменена.
Вы можете изменить скрипта. Например, если вы хотите, чтобы при включении он подгонял размер по высоте и ширине, просто измените строку:
prefs.autoSizingType = AutoSizingTypeEnum.HEIGHT_ONLY;
на:
prefs.autoSizingType = AutoSizingTypeEnum.WIDTH_AND_HEIGHT;
Код:
// Скрипт переключает опцию "Автоматическая установка размера" у выделенного текстового фрейма.
// Проверяем, что у пользователя что-то выделено.
if (app.selection.length > 0) {
// Получаем первый выделенный объект.
var selectedObject = app.selection[0];
// Убеждаемся, что это именно текстовый фрейм.
if (selectedObject instanceof TextFrame) {
// Получаем настройки текстового фрейма.
var prefs = selectedObject.textFramePreferences;
// Проверяем текущее состояние "Автоматической установки размера".
if (prefs.autoSizingType !== AutoSizingTypeEnum.OFF) {
// Если включена, выключаем.
prefs.autoSizingType = AutoSizingTypeEnum.OFF;
alert("Автоматическая установка размера выключена.");
} else {
// Если выключена, включаем.
// Устанавливаем размер по высоте и привязку к верхней средней точке.
prefs.autoSizingType = AutoSizingTypeEnum.HEIGHT_ONLY;
prefs.autoSizingReferencePoint = AutoSizingReferenceEnum.TOP_CENTER_POINT;
alert("Автоматическая установка размера включена (только по высоте).");
}
} else {
// Сообщение об ошибке, если выделен не текстовый фрейм.
alert("Пожалуйста, выделите текстовый фрейм.");
}
} else {
// Сообщение об ошибке, если ничего не выделено.
alert("Пожалуйста, выделите объект.");
}