Автоматизация рутины в OS X. Урок 13. Основы работы с Pages

Автоматизация рутины в OS X. Урок 13. Основы работы с Pages

Продолжаем изучать приемы автоматизации работы с программами из пакета iWork. Настал черед программы для работы со сложно форматированным текстом Pages. Сегодня мы научимся как с помощью кода скрипта создать новый документ или открыть для редактирования уже существующий, добавить на его страницы текст, изменить его внешний вид и экспортировать файл .pages в формат Microsoft Office Word.

Куда писать автоматизирующий код?

  1. Открыть программу «Редактор скриптов» (Программы -> Утилиты).
    Снимок экрана 2015-10-10 в 21.02.41
  2. В верхнем меню выбрать Файл -> Новый.Снимок экрана 2015-10-10 в 21.08.11
  3. На переключателе языков выбрать JavaScript.

Снимок экрана 2015-10-10 в 21.11.37

Как создать новый документ в приложении Pages?

С помощью старого доброго метода make():

// Кладем в переменную приложение Pages
Pages = Application('Pages');
// Создаем новый документ
var doc2 = Pages.Document().make();

Как отрыть документ для редактирования?

А в этом случае нам пригодится метод open():

//Кладем в переменную приложение Pages
Pages = Application('Pages');
//Кладем в переменную путь к файлу, который собираемся открыть
var path = Path("/Users/irina/Desktop/example.pages");
//Кладем в переменную открытый документ
var doc = Pages.open(path);

Как добавить текст в документ?

Снимок экрана 2015-10-19 в 15.44.20Каждый документ состоит из страниц, которые хранятся в массиве pages. Читать и изменять текст каждой страницы можно с помощью метода bodyText:

doc2.pages[0].bodyText=doc2.pages[0].bodyText()+" "+ "Новый текст";

Как узнать сколько страниц в документе?

Для этого необходимо сосчитать количество элементов в массиве pages:

doc.pages.length;

Как форматировать текст в документе?

Каждая страница, в свою очередь, состоит из абзацев, которые хранятся в массиве paragraphs. У каждого paragraph есть свойства «font», «size» и «color», с помощью которых можно управлять его внешним видом:

//Делам цвет текста синеньким
doc.pages[1].bodyText.paragraphs[0].color="blue";
//Пусть шрифт будет Arial
doc.pages[1].bodyText.paragraphs[0].font="Arial";
//И шрифт 40-ым кеглем
doc.pages[1].bodyText.paragraphs[0].size="40";

Как редактировать изображения в документе?

Снимок экрана 2015-10-19 в 16.14.19Все картинки из файла хранятся в массиве images. Обращаясь к элементам этого массива можно менять их свойства. Пример:

// Меняем степень прозрачности изображения (от 0 до 100)
doc.images[0].opacity=50;
// Меняем угол поворота изображения (от 0 до 360)
doc.images[0].rotation=180;

Как экспортировать документ .pages в формат Microsoft Office Word?

// Задаем имя и путь для выходного файла
var pathDoc = Path("/Users/irina/Desktop/exported.docx");
// Экспортируем файл
doc2.export({to: pathDoc, as: 'Microsoft Word'});

Предыдущие публикации из цикла «Автоматизация рутины в OS X» вы можете найти по следующим ссылкам:

Знай и используй:


✅ Подписывайтесь на нас в Telegram, ВКонтакте, и Яндекс.Дзен.



Добавить комментарий