Jpeg書き出しスクリプトについて
[591]Jpeg書き出しスクリプトについて |
投稿者:なら |
投稿日:2008/01/25(Fri) 16:46:12
初めまして
いつも参考にさせていただいております。
200頁程度のドキュメントからページ毎にJpegに書き出すスクリプトを書いています。
200枚のJpegを書き出すところまではたどり着けましたが、ファイル名の設定がどうしてもうまく行きません。どのようにすればうまく行くのか皆様のお知恵を拝借させてください。
具体的には、
・各ページに1点の画像がリンクされているドキュメントから
・「リンクファイル名.jpg」と書き出しをしたい。
見よう見まねでやってみましたが、ここから先に進めません。
よろしくお願いします。
なお、当方の環境は OS XでCSを利用しています。
以下、スクリプト////////////////////
set EASelection to false -- options (true/false)
set EASpread to false -- options (true/false)
set EAQuality to "maximum" -- options (low/medium/high/maximum)
set EARendering to "baseline" -- options (baseline encoding/progressive encoding)
tell application "InDesign CS_J"
set the_container to (file path of document 1 as string)
set pagecount to count pages of document 1
tell active document
set idLink to links
repeat with Myset from 1 to (count idLink)
set LinkName to name of item Myset of idLink as string
end repeat
end tell
repeat with x from 1 to pagecount
set y to x as string
set properties of JPEG export preferences to {Exporting Selection:EASelection, Page String:y, JPEG Quality:EAQuality, JPEG Rendering style:EARendering}
tell document 1
set myFile to the_container & ":" & LinkName & ".jpg" as string
export format JPG to myFile without showing options
end tell
end repeat
end tell
ここまで////////////////////////////////
» 1
いつも参考にさせていただいております。
200頁程度のドキュメントからページ毎にJpegに書き出すスクリプトを書いています。
200枚のJpegを書き出すところまではたどり着けましたが、ファイル名の設定がどうしてもうまく行きません。どのようにすればうまく行くのか皆様のお知恵を拝借させてください。
具体的には、
・各ページに1点の画像がリンクされているドキュメントから
・「リンクファイル名.jpg」と書き出しをしたい。
見よう見まねでやってみましたが、ここから先に進めません。
よろしくお願いします。
なお、当方の環境は OS XでCSを利用しています。
以下、スクリプト////////////////////
set EASelection to false -- options (true/false)
set EASpread to false -- options (true/false)
set EAQuality to "maximum" -- options (low/medium/high/maximum)
set EARendering to "baseline" -- options (baseline encoding/progressive encoding)
tell application "InDesign CS_J"
set the_container to (file path of document 1 as string)
set pagecount to count pages of document 1
tell active document
set idLink to links
repeat with Myset from 1 to (count idLink)
set LinkName to name of item Myset of idLink as string
end repeat
end tell
repeat with x from 1 to pagecount
set y to x as string
set properties of JPEG export preferences to {Exporting Selection:EASelection, Page String:y, JPEG Quality:EAQuality, JPEG Rendering style:EARendering}
tell document 1
set myFile to the_container & ":" & LinkName & ".jpg" as string
export format JPG to myFile without showing options
end tell
end repeat
end tell
ここまで////////////////////////////////
[592]Re: Jpeg書き出しスクリプトについて |
投稿者:せうぞー |
投稿日:2008/01/25(Fri) 19:07:27
CSはもうすっかり使わないので、CS3ならこんな感じかな。ご参考までに。
#ろくにエラー処理してません^^
to save_jpeg(my_folder, my_name, page_no)
tell application "Adobe InDesign CS3"
tell JPEG export preference 1
set JPEG Quality to maximum
set Exporting Spread to false
set JPEG Rendering style to baseline encoding
set resolution to 72
set JPEG export range to export range
set Page String to page_no
end tell
export document 1 format JPG to my_folder & my_name & ".jpg"
end tell
end save_jpeg
tell application "Adobe InDesign CS3"
tell document 1
set my_folder to (file path) as Unicode text --ドキュメントのあるフォルダ
repeat with page_no from 1 to (count every page)
tell page page_no
if all graphics is not {} then
set my_link to object reference of item link of item 1 of all graphics
set my_name to do shell script "echo '" & name of my_link & "' | sed -E -e 's/\\....?.?$//;'" --拡張子2文字~4文字のみ対応
my save_jpeg(my_folder, my_name, page_no as Unicode text)
end if
end tell
end repeat
end tell
end tell
» 2
#ろくにエラー処理してません^^
to save_jpeg(my_folder, my_name, page_no)
tell application "Adobe InDesign CS3"
tell JPEG export preference 1
set JPEG Quality to maximum
set Exporting Spread to false
set JPEG Rendering style to baseline encoding
set resolution to 72
set JPEG export range to export range
set Page String to page_no
end tell
export document 1 format JPG to my_folder & my_name & ".jpg"
end tell
end save_jpeg
tell application "Adobe InDesign CS3"
tell document 1
set my_folder to (file path) as Unicode text --ドキュメントのあるフォルダ
repeat with page_no from 1 to (count every page)
tell page page_no
if all graphics is not {} then
set my_link to object reference of item link of item 1 of all graphics
set my_name to do shell script "echo '" & name of my_link & "' | sed -E -e 's/\\....?.?$//;'" --拡張子2文字~4文字のみ対応
my save_jpeg(my_folder, my_name, page_no as Unicode text)
end if
end tell
end repeat
end tell
end tell
[593]Re: Jpeg書き出しスクリプトについて |
投稿者:匿名A |
投稿日:2008/01/25(Fri) 19:21:14
このプログラムは、
ループ1
LinkNameにidLinkリストからリンクファイル名を入れる
ループ1終わり
ループ2
1ページずつLinkName+.jpgでJPRG書き出しをする
ループ2終わり
ということで、二つのループが独立して行なわれるだけになってますね。
LinkNameをリストで取得したとしても、idLinkがページ順になっている
わけではない(ID順に並ぶ)ので、きちんとページ単位で処理するように
しないとまずいです。
ループ
ページnのリンク画像ファイル名LinkNameを取得
1ページずつLinkName+.jpgでJPRG書き出しをする
n++
ループ終わり
おっと、こんなことしてる間に、せうぞーさんが、実物を書いちゃいました(^^
» 3
ループ1
LinkNameにidLinkリストからリンクファイル名を入れる
ループ1終わり
ループ2
1ページずつLinkName+.jpgでJPRG書き出しをする
ループ2終わり
ということで、二つのループが独立して行なわれるだけになってますね。
LinkNameをリストで取得したとしても、idLinkがページ順になっている
わけではない(ID順に並ぶ)ので、きちんとページ単位で処理するように
しないとまずいです。
ループ
ページnのリンク画像ファイル名LinkNameを取得
1ページずつLinkName+.jpgでJPRG書き出しをする
n++
ループ終わり
おっと、こんなことしてる間に、せうぞーさんが、実物を書いちゃいました(^^
[606]Re: Jpeg書き出しスクリプトについて |
投稿者:なら |
投稿日:2008/01/28(Mon) 09:35:16
せうぞー様
匿名A様
ありがとうございます。早速、試してみます。
ループ処理がまずいわけですね。
これからはもっと勉強します。
» 4
匿名A様
ありがとうございます。早速、試してみます。
ループ処理がまずいわけですね。
これからはもっと勉強します。
[608]Re: Jpeg書き出しスクリプトについて |
投稿者:なら |
投稿日:2008/01/28(Mon) 11:13:01
せうぞー様
匿名A様
コメントを参考にスクリプトの修正をしたら、期待通りの動きをしてくれました。
ありがとうございました。
匿名A様
コメントを参考にスクリプトの修正をしたら、期待通りの動きをしてくれました。
ありがとうございました。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)