リンクをクリップボードにコピー
コピー完了
Adobe Illustrator CC 2017 ScriptingのIllustratorスクリプトで、
以下のことを自動化したいと思っていますが、可能でしょうか?
●自動化したいこと
①商品のデザインのSVGファイル→ベクター(ai、esp)、ラスタ(pdf/jpeg)ファイルに変換
ベクター(ai、esp)は文字のアウトライン化と画像のベクトル化が必須です。
変換されたファイル(ベクター・ラスタ)は機械での加工に使用します。
②変換したベクター(ai、esp)ファイルには以下の3つのレイヤーで構成する
レイヤー1=加工順の番号と商品のカラー名(=任意で入力した値)
レイヤー2=刻印する内容(オブジェクトのグループ化)
レイヤー3=商品のテンプレート(商品のデザインのテンプレート)
変換したベクター(ai、esp)ファイルについては、③から⑥のいずれかを配置、加工する。
③データの配置
配置場所余白(右:XXXmm 下:XXXmm)、並び個数を設定し、
設定した余白設定の間隔に商品のテンプレート(商品のデザインのテンプレート)を並び個数分、並べて配置する。
④データの反転
「オブジェクト→変形→リフレクト」の操作を自動化
⑤データの黒ベタ
カラーデータの外枠を取り外し→線なし、塗りを黒にする。
!⑥データのラスタライズ
ベクトルデータを1枚の画像化にする。
ファイルの全オブジェクトを選択して「オブジェクト→ラスタライズ」の操作を自動化
●実行環境
・WindosPC(Win7)
・Illustrator CS2/CS6
●経緯
WEBシステムで商品の名入れシュミレーションを行い、そのデザインした商品の画像ファイル(svg)から、
WEBシステムの管理画面で指定したデザインの設定で、デザインした商品の加工データ(ベクター(ai/eps)、ラスタ(jpeg/pdf))を出力し、
その加工データを加工業者へ加工する仕組みで想定していたが、
Illustratorでなしで画像ファイル(svg)→加工データ(ベクター(ai/eps))の変換方法の実現が出来なかった。
外部の変換サービスがあるが、それを使用しても、変換したベクター(ai/eps)を見ると、文字や線のアウトライン化や画像のベクトル化が出来ていなかったので、
代替案としてIllustratorで行うなり、自動化したいという要望もあり、Illustratorのスクリプトで自動化で対応することになりました。
リンクをクリップボードにコピー
コピー完了
>ベクター(ai、esp)は文字のアウトライン化と画像のベクトル化が必須です。
・espという語句が散見されますが、正しくはepsでしょうか?
・「画像をベクトル化」とはどういったニュアンスでしょうか?
ラスター画像のピクセルをIllustrator上で小さな長方形で何万個も生成するのでしょうか?
それともベジェ曲線でトレースするのでしょうか??
かなり遠目から俯瞰した上では上記2点が引っかかるところです。
スクリプティングには、アプリケーションの機能や各用語をきちんと理解していることが必須条件です。
この場で大まかにお答えしたところで、果たしてご自身で実現できるでしょうか?
これほどの量の処理、少し詳しく答えた時点で相談料が発生してもおかしくありませんよ。
仕事として請けてくれる所に有償の上で相談されるのがスジかと思います。
リンクをクリップボードにコピー
コピー完了
・espという語句が散見されますが、正しくはepsでしょうか?
すみません、epsの誤記でした。
・「画像をベクトル化」とはどういったニュアンスでしょうか?
ラスター画像のピクセルをIllustrator上で小さな長方形で何万個も生成するのでしょうか?
それともベジェ曲線でトレースするのでしょうか??
イラストレーターの画像のトレース機能で、パス、コーナー、カラーモード等の値を調整しながら
画像をベクトル化することを指します。
スクリプティングには、アプリケーションの機能や各用語をきちんと理解していることが必須条件です。
この場で大まかにお答えしたところで、果たしてご自身で実現できるでしょうか?
プログラミングは出来ても、Illustratorのスクリプティングには
Illustratorの機能や用語に熟知しないと難しいものだと認識していましたが、
やっぱり、このような実現したい内容をしようとすると、かなり難しいものですか?
リンクをクリップボードにコピー
コピー完了
大変難しいと思います。
特に、ご希望の「ベクトル化」に関しては小手先のロジックでは実現できないでしょう。
有償で、それもかなりの費用を見込まないと無理かと思います。
リンクをクリップボードにコピー
コピー完了
書かれている内容ではIllustratorのバージョンがCS2〜2017まで散在していて、ちぐはぐなのでどう捉えればよいのかよくわかりませんが、Illustratorの場合はサーバープロセスとしての運用は許可されていません。半自動化のプロセスをご自身で理解できるところから処理を組み立てていきましょう。
もし完全に自動化を行う必要があるのであればOpenCV等を利用したビットマップ処理を行いPotrace等のベクトル化処理等が利用可能でしょう。現在、Illustratorのファイルフォーマットは基本的に公開されていませんがフォントやビットマップを含まずエフェクト関連も無いのであれば1998年にリリースされているAI File Format Specificationの情報を利用してレガシーファイルフォーマットのIllustratorファイルは構築可能です。
リンクをクリップボードにコピー
コピー完了
クライアントのプロセスで構築を考えています。
変換したい設定別にフォルダを分けて、
デーモン(VBSかC#)を用意し、
デーモンがそのフォルダにファイルがあれば、Illustratorを自動起動し、
Illustratorのスタートアップ時に実現したいスクリプトを実行し、処理が終わったらスクリプト側でIllustratorを終了する
仕組みで考えています。
リンクをクリップボードにコピー
コピー完了
提示された内容ですと、綿密なヒアリングを重ねた上でようやく「できる/できない」を回答できるレベルです。業務上の具体的な情報開示も必要です。このフォーラムではそこまでのヒアリングは困難でしょう。
リンクをクリップボードにコピー
コピー完了
ご自身や所属組織で開発されるのであれば、ここまでの情報を元に調査確認を行った上で
可否の検討を行うべきではないでしょうか。
Illustrator自体のSDKは公開されていますし、その調査も出来るとは思います。
Adobe Illustrator SDKs | Adobe Developer Connection
また外部への委託であれば、どちらかというとその委託先との協議ではないかと思います。
その事前調査だとしても、実際に可否を問うのはその委託先です。
まだスクリプトだけではなく、プラグインとしての対応も想定が必要に思います。
同時に、レガシーバージョンまで考慮するのは無理があると思います。
CS2はそもそもWindows 7では動作保証していないことも踏まえなければなりませんし、
既に販売終了が終わっているバージョンをターゲットにするのはある意味ナンセンスといえます。
リンクをクリップボードにコピー
コピー完了
取り組もうとされている課題自体はたいへん興味深い内容です。
Web to Print にどのように取り組むかは業界共通の命題ですし、挙げられている技術トピックスはどれも検討課題になるものだと思います。それだけに、この質問に答えられる知見は極めて価値の高いものです。通常、それ自体が大事な飯の種ですので、まぁなかなか教えてくれないよね、というのが正直なところです。
なお、フォーラムはユーザーコミュニティのボランティアベースで成り立っており、質問と回答が多くのユーザーの共有財産になるものについては、驚くほど多くの貴重な知見が無償で提供されています。
逆に言うと、Webシステムやその成果物、開発の過程で生じた課題や解決方法などが開示されていて皆が利用できるようなものになるのであれば、知見の提供が得られる可能性があります。オープンソースとしてコミュニティベースで開発するという方法です。もしそういった取り組みをされるのであれば、お手伝いできることがありますので、お声がけ下さい。
今回はそういった立場で検討されているものではないと思いますので、ビジネスベースで検討されることをお薦めします。