[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
(DTPtechNote:1456) [AS_Indesign CS2]画像ファイルからタイトルを入れる
画像にタイトルを入れる作業が1000点くらい発生。
原稿は
画像ファイル名→タイトル名
みたいな感じで延々とある。
こんなの、コピペしてられっか!
1)原稿をちょっと置換してrubyスクリプトにしちゃう
#! /usr/bin/ruby -Ku
my_key = ARGV[0]
s_key = my_key.sub(/[AB]/, '')#ファイル名の末尾にAとかBとか入ってるのをとるだけ。単なる仕様
name_tbl = {"filename1" => "たいとる1","filename2" => "たいとる2"}#ここに延々とつづく
print name_tbl[s_key]
2)Indesign CS2上で対象のテキストフレームと画像フレームを選択して、スクリプトを走らせる。
tell application "Adobe InDesign CS2_J"
activate
tell document 1
set my_every_selection to object reference of selection
--選択しているのはテキストフレームとグラフィックフレームを1つづつだと想定
if class of item 1 of my_every_selection = text frame then
set my_text_frame to object reference of item 1 of my_every_selection
set my_graphic_frame to object reference of item 2 of my_every_selection
else
set my_graphic_frame to object reference of item 1 of my_every_selection
set my_text_frame to object reference of item 2 of my_every_selection
end if
--ファイル名をget
set my_image to object reference of item 1 of all graphics of my_graphic_frame
set my_name to (name of item link of my_image) as Unicode text
set my_name to (characters 1 thru -5 of my_name) as Unicode text
--rubyでテキスト処理(ruby scriptはフルパスではいってます)
set my_title to do shell script "ruby /Users/hogehoge/Documents/AppleScript/InDesign/other/filename.rb " & my_name
--テキストフレームに結果を入れる
set contents of my_text_frame to my_title
end tell
end tell
エラー処理とかいっさいしてないので、おうちつかい用。