メタデータを利用してイラストレーターを開かずに、1色/カラー判定。
よく1色(グレースケール)のデータを扱うのですが、
デザイナーからのイラストレーターデータが
1色に変換しきれてない場合がよくあって、
とりあえずイラストレーターデータをインデザインに配置し、
インデザインやアクロバットの分版プレビューで
確認するのですが時間がかかる。
インデザインのプリフライトだと、
データは1色なのに4色と誤判定してしまう場合が多々あります。
そこで、イラストレーターを直接開かずに、
簡単にすばやく、1色/カラーを判定をするスクリプトを紹介します。
おそらく、イラストレーターCS3〜CS6のファイルで判定可能です。
CCのデータは、扱ったことがないので分かりません。
【作成方法】
ユーティリティ > AppleScript エディタを起動。
下記のAppleScriptコードを入力して、
アプリケーション形式で「AI_Color_Check」などの適当な名前で保存。
▼AppleScript(ドラッグ&ドロップタイプ)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
on open dorp set fileColorList to {} repeat with dorpFile in dorp set theFilePath to dorpFile as string set theFileName to name of (info for dorpFile) try set fileColorName to do shell script "echo | sed -n '/<xmpTPg:PlateNames>/, /<\\/xmpTPg:PlateNames>/p' " & quoted form of POSIX path of dorpFile & " | sed -n -e 's/^.*<rdf:li>\\(.*\\)<\\/rdf:li>/\\1/p'" end try if fileColorName = "" then try set fileColorName to do shell script "echo | sed -n '/<xapTPg:PlateNames>/, /<\\/xapTPg:PlateNames>/p' " & quoted form of POSIX path of dorpFile & " | sed -n -e 's/^.*<rdf:li>\\(.*\\)<\\/rdf:li>/\\1/p'" --CS3用 end try end if if fileColorName = "" then set fileColorName to "No info" set the end of fileColorList to return & "▼" & theFileName & return & fileColorName & return end repeat beep tell application "TextEdit" activate set text of (make new document) to (fileColorList as text) end tell end open |
【使い方】
作成したスクリプトに調べたいイラストレーターファイルを
ドラッグ&ドロップすると下図のように表示されます。
ただし表示は、RGBデータの場合でも、4版表示されます。
1色の場合は、「Black」だけになります。
【注意点】
分版プレビューでは1色なのに、「Black」だけにならない場合もありますが、
その時は再度、オブジェクトを全選択で「グレースケールに変換」で再保存。
そうすれば「Black」だけになると思います。
参考情報
非常に困っております。applescript(shell script) と adobe illustra… – Yahoo!知恵袋
グレースケール(Illustrator) – 変換できないオブジェクト