複数のスライドにまたがる同じ画像を一括してさしかえる

50枚以上あるプレゼンテーションで、複数枚のスライドに別れて同じ画像が(計10数枚)入っていて、それぞれにアニメーションが設定されています。アニメーションの設定を変えずに、それらの画像を別の画像ファイルに一度に差し替える方法はないでしょうか?

投稿日 2017/04/15 21:07

返信
返信: 3

2017/04/18 01:24 chiyuton への返信

AppleScriptを使うと編集作業を自動化できますよ。 

こちらのサイトで、スライド内の画像を入れ替える方法を紹介しています。 


→ https://iworkautomation.com/keynote/image-placeholder.html


私自身はKeynote.appをあまり使った経験がないのですが、編集する書類の特徴に合わせる形でAppleScriptの記述を繰り返し編集し直す作業が必要です。 

2017/04/21 18:01 chiyuton への返信

度々、失礼致します。 私の環境(macOS Sierra, ver. 10.12.3、Keynote.app ver. 7.1)で少し試してみました。


1)例えば、書類中にある同じファイル名の全ての画像を以下のステートメンツでリスト化できます。


tell front document of application "Keynote"

set slideList to images of slides whose file name is photoName

end tell


2)このリスト内の画像を一つ一つ、他の画像と入れ替えるのですが、Keynote.appのウィンドウに表示しているスライド(current slide)を変更せずに画像の入れ替えを実行すると、目的のスライド中の画像を変更できないばかりか、Keynoteで表示しているスライドに画像が新たに追加されてしまい、そのスライドの元の画像が編集できなくなくなる不具合があるようです。


3)そのため、Keynote.appで表示しているスライドを一つ一つ、入れ替える写真が入っているスライドに変更しながら、AppleScriptを実行する必要がありそうです。

 以下の例では、書類内にある、"120414_familysouthafrica_at_2936_3000x2000.jpeg"というファイル名の全ての画像を、デスクトップにある"fullsizeoutput_d9.jpeg"というファイル名前の画像に入れ変えます。



set photoName to "120414_familysouthafrica_at_2936_3000x2000.jpeg"

set photoFile to ((path to desktop) as text) & "fullsizeoutput_d9.jpeg"


tell front document of application "Keynote"


activate


set slideList to images of slides whose file name is photoName


repeat with i from 1 to count slides

set current slide to slidei

repeat with thisImage in items of item i of slideList

set file name of thisImage to aliasphotoFile

end repeat

end repeat

end tell



4)ご使用の書類に合わせる形で、AppleSciptを編集し直す作業が繰り返し必要になります。 上記2のバグ等で書類に不具合が生じる可能性が高いので、編集する書類のバックアップを取ってからAppleScriptを実行してみてください。

2017/04/21 18:07 chiyuton への返信

丁寧なお答えをいただき、ありがとうございます。ただいま出張先で、まだ試せてはいないのですが、内容を拝見する限り求めていた効果の得られるものであると思います。帰り次第、試してみて、結果をご報告いたしますのでしばらくお待ちください。取り急ぎお礼申し上げます。

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

複数のスライドにまたがる同じ画像を一括してさしかえる

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。