Использование AppleScript для скрытия текстовых полей Keynote в слайде - PullRequest
2 голосов
/ 25 сентября 2008

Я не джедай AppleScript, я только сделал несколько простых вещей, но я не смог понять это и мог бы использовать некоторую помощь:

Моя жена использует слайды для своих курсов по истории искусств и хотела бы использовать эти же слайды для экзаменов (без определения имен). Вместо того, чтобы создавать новую презентацию, мне нужен инструмент, который просматривает слайды и скрывает текстовые поля.

Просмотр словаря Keynote не дал мне никаких подсказок относительно того, как к этому подойти, какие-нибудь идеи?

1 Ответ

2 голосов
/ 25 сентября 2008

AFAIK, с помощью Applescript вы можете получить доступ только к заголовкам и текстовым полям слайдов. Если текст, который вы хотите удалить, последовательно находится в одном из этих полей, простейшим решением было бы циклически перемещаться по слайдам, заменяя этот текст, а затем сохраняя копию документа.

tell application "Keynote"
    open "/Path/To/Document"

    repeat with currentSlide in slides of first slideshow
        set title of currentSlide to " "
        set body of currentSlide to " "
    end repeat

    save first slideshow in "/Path/To/Document without answers"
end tell

Если текст находится в контейнере, созданном с помощью инструмента текстового поля, я не думаю, что вы можете решить его с помощью Applescript, но Keynote использует формат файла на основе XML, поэтому вы можете попробовать сделать это, отредактировав XML с помощью сценариев язык по выбору. Схема XML описана в Руководстве по программированию iWork .

...