訪問していただき、ありがとうございます。
- png形式の書き出し工程を減らしたい
- アクティブアートボードをpng形式でスクショしたい
- スクショした画像を新規レイヤーに配置したい
Illustratorを使用していて上記のような悩みを持っている人は多くいるのではないでしょうか
そこで今回は、アクティブアートボードをpng形式でスクショしてくれるスクリプトを紹介します。
スクリプトの動作フローと処理条件を理解できるようにソースコードも掲載していますので、ぜひ参考にしてください。
Profile
この記事を書いている私は、DTPデザイナーとしてIllustratorの操作経験が15年以上あり、スクリプトも自分の業務で必要になったものを自ら作成し、デザイン作業の効率化を図っています。
最近では、当ブログでも自作スクリプトを公開しています。
本記事で紹介するスクリプトは、記事内でダウンロードすることができますので、デザインをするさいにご利用ください。
それでは、どうぞ
1.【png書き出し&配置】スクリプトの概要
ここでは、【アートボードをスクショする】スクリプトの概要について解説していきます。
まず、本スクリプト(スクリプト名: artboard_scree.jsx)は、私がJavaScriptベースで自作したIllustrator用のスクリプトです。
スクリプトのポイント
このスクリプトは、アクティブアートボードをpng形式で書き出し、新規レイヤーに書き出したpng画像を配置してくれます
・アクティブアートボードをpng形式で書き出す
・新規レイヤーを作成する
・画像を配置する
スクリプトの入手方法
本スクリプトは、下記からサンプルとしてダウンロードすることができます。
ダウンロードと使用については「注意事項と免責事項」に記載していますので、必ずお読みください
ダウンロード:
スクリプトの使い方
本スクリプトは、下記の2STEPで使うことができます。
- STEP1.ファイルメニューからスクリプトを選択
- STEP2.【artboard_scree.jsx】を選択
なお、次の記事ではそもそもIllustratorスクリプトってどうやって使うのか、活用事例を交えて紹介しているので良ければ参考にしてください。
次のセクションでは、スクリプトのソースコードを公開します。
2.【png書き出し&配置】スクリプトのソースコード
ここでは、スクリプトの動作フローと処理条件がわかるソースコードを紹介します。説明用のコメントアウトも含まれていますので、ご参考にしてください。
なお下記の記事では、Illustratorスクリプトを自作する方法についてサンプル事例を交え解説しているのでよければ参考にしてください。
const docObj = app.activeDocument; //アクティブドキュメントを指定
const artObj = docObj.artboards.getActiveArtboardIndex();//アクティブアートボード番号を読み込む
const rect = docObj.artboards[artObj].artboardRect; //アクティブアートボード座標の読み込み
const artName = docObj.artboards[artObj].name.replace(/\s/g, "_");//アクティブアートボード名称を読み込み 半角スペースを_に置換
const saveFile = new File(Folder.temp + '/' + artName + '.png'); //保存先をtemp(一時保存)に指定
for(var i = 0 ; i < docObj.layers.length; i++){ //レイヤーの数だけ繰り返す
docObj.layers[i].locked = true; //レイヤー ロック
};
const layObj = docObj.layers.add();//新規レイヤー作成
layObj.name = 'スクショ'; //新規レイヤー名称 変更
//png24形式で保存 ここから
const png24 = new ExportOptionsPNG24();//インスタンス化
png24.antiAliasing = true;//アンチエイリアス ON 【アンチエイリアス】:斜線やカーブの縁などに現れるギザギザ(ジャギー)を除去してなめらかにすることを
png24.artBoardClipping = true;//アートボード全体が範囲
png24.horizontalScale = 100; //水平方向の比率(%)
png24.verticalScale = 100;//垂直方向の比率(%)
png24.matte = false;//背景色 なし
png24.transparency = true;//背景の透明化
png24.saveAsHTML = false;//HTMLファイルの生成
docObj.exportFile(saveFile, ExportType.PNG24, png24);//exportFile(保存先,保存形式,オプション)
//png24形式で保存 ここまで
//画像の配置 ここから
const scree = layObj.placedItems.add();//画像の配置設定
scree.file = saveFile;//配置画像の読み込み
scree.left = rect[0];//配置位置 左
scree.top = rect[1]; //配置位置 上
scree.width = rect[0] + rect[2];//オブジェクトの横サイズ
scree.height = rect[1] - rect[3];//オブジェクトの縦サイズ
scree.embed();//画像の埋め込み
//画像の配置 ここまで
3.注意事項と免責事項
本記事に記載してあるスクリプトを実行した結果生じるトラブルに関しては一切の責任を負いません。ご利用は自己責任にてお願いいたします。
またIllustratorのアップデートにより動作が変わってしまう可能性もあります。アップデートによる動作の不具合に関しては、対処しかねるので予めご理解ください。
最後に本記事で配布しているスクリプトを無断で転送・販売・配布することは禁止いたします。
動作チェック
・IllustratorCS6【Win】
・Illustrator2024【mac】
で、動作チェックをおこないました。
4.【png書き出し&配置】スクリプトのまとめ
今回は、【png書き出し&配置】スクリプトについてポイントを交えながら紹介しました。
ポイントのおさらいすると
アクティブアートボードをpng形式で書き出す
新規レイヤーを作成する
画像を配置する
png形式での書き出しは、以外に手間のかかる作業です。このスクリプトを使用することでその手間を減らすことができるので、ぜひ利用してくだい
なお、Illustratorスクリプトについて学んでみたいと思った方は、次の記事でおすすめの書籍とWEBサイトについて紹介しているので良ければ参考にしてください。
というわけで今回は以上です。
『グリッドデザイン用のグリッドを自動生成するIllustratorスクリプトを紹介』を最後までお読みいただきありがとうございました。
Illustratorスクリプトのおすすめ書籍!
また、以下の記事で今回紹介した書籍以外にもスクリプトに関する書籍を紹介しているので参考にしてください。