Использование AppleScript для скрытия текстовых полей Keynote на слайде

StackOverflow https://stackoverflow.com/questions/131435

Вопрос

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

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

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

Это было полезно?

Решение

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.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top