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

Продолжаем изучать приемы автоматизации работы с программами из пакета iWork. Настал черед программы для работы со сложно форматированным текстом Pages. Сегодня мы научимся как с помощью кода скрипта создать новый документ или открыть для редактирования уже существующий, добавить на его страницы текст, изменить его внешний вид и экспортировать файл .pages в формат Microsoft Office Word.
Куда писать автоматизирующий код?
- Открыть программу «Редактор скриптов» (Программы -> Утилиты).
- В верхнем меню выбрать Файл -> Новый.
- На переключателе языков выбрать JavaScript.
Как создать новый документ в приложении 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);
Как добавить текст в документ?
Каждый документ состоит из страниц, которые хранятся в массиве 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";
Как редактировать изображения в документе?
Все картинки из файла хранятся в массиве 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» вы можете найти по следующим ссылкам:
- Автоматизация рутины в OS X. Урок 1. Пакетная обработка изображений
- Автоматизация рутины в OS X. Урок 2. Генерация слайдов для презентаций
- Автоматизация рутины в OS X. Урок 3. Рассылаем спам
- Автоматизация рутины в OS X. Урок 4. Простейший парсинг почтового ящика
- Автоматизация рутины в OS X. Урок 5. Пакетная конвертация текстовых файлов
- Автоматизация рутины в OS X. Урок 6. Простейший парсинг веб-страниц
- Автоматизация рутины в OS X. Урок 7. Пакетная конвертация видео и аудио
- Автоматизация рутины в OS X. Часть 8. Архивируем и анализируем записи из «Заметок»
- Автоматизация рутины в OS X Часть 9. Пакетная архивация файлов
- Автоматизация рутины в OS X. Урок 10. Анализируем собственную продуктивность
- Автоматизация рутины в OS X. Часть 11. Автоматизируем показ презентаций
- Автоматизация рутины в OS X. Урок 12. Работаем с электронными таблицами
Знай и используй:
✅ Подписывайтесь на нас в Telegram, ВКонтакте, и Яндекс.Дзен.