見出し画像

Illustrator:アートボードをファイル名にリネームするスクリプト

「タイトル画像」を思いつかなさすぎて悩んでいたらねことくらげとミトコンドリアが落書きをしにきた。やりたいほうだいのへんないきものですので……

Illustratorの「ファイル>書き出し>スクリーン用に書き出し」(Ctrl+Alt+E)


Illustrator CC以降で追加された機能で、アートボード単位で画像として書き出せるツール。昔からある「Web用に保存」(Ctrl+Alt+Shift+S)の進化系みたいなものですね。

いろいろな設定項目がある。

「スクリーン用に書き出し」で保存される画像にはプレフィックス(【これ】ファイル名.拡張子)やサフィックス(ファイル名【これ】.拡張子)をつけることができますが、肝心のファイル名は「アートボードの名前」で固定されています。デフォルトでは「アートボード 1」ですね。

アートボードのリネーム

「指定文字列+連番」は標準機能で利用可能。
いくつかのスクリプトを使えば"複数枚のアートボードを別々の名前にリネームする"作業もらくちんです。
Illustratorでアートボード名を変更する4つの方法 | DTP Transit

で、これはなんですか?

・アートボードを「ファイル名と同じ名前」にリネームするスクリプトです。
・アートボードが1枚だけの時はファイル名そのまま、複数枚のアートボードがある場合は連番がつきます。(デフォルトでは何故か4桁になっている)
・その他一切のことはやりません。

つかいかた:↓これをメモ帳にコピペして.jsx形式で保存してIllustratorのスクリプトを入れるフォルダに入れます

//ファイル名とアートボードを取得
var file = app.activeDocument.name; //ファイル名
file = file.replace('.ai',''); //拡張子をとりのぞく
var abd = activeDocument.artboards; //アートボード
var len = abd.length; //アートボードの数が収納される
var no; //switchで使う

//アートボード名を「ファイル名+連番」に変更
switch (len){
case 1://ただしアートボードが1つしかない場合は「ファイル名」のみ
abd[0].name = file;
break;
default:
for (var i=0; i<len; i++)
{
no = '000'+ Number(i+1);
abd[i].name = file+ '_' + no.slice(-3);
}
break;
}


ファイル名と同じ名前になった。


つまりこういうことです。

おまけ:これは説明用に作って書き出した雑なファイル

そもそもなんのために作ったのかというと


「aiファイルと同じ名前の画像」が手早く欲しい時があるんですよね。
例えば……
・「実データ(ai)とカンプファイル(jpg)を同時に入稿する」時
 印刷通販系のサービスではカンプファイルの入稿がいらない場所もあるんですが、広告を出稿する時とかで「実データのほかにjpgもください」といわれることが意外とある
・Illustratorを開くのがめんどくさい時にも手早くファイルの中身を確認できる
 ファイル名を同じにしておくとエクスプローラーのサムネイルで並ぶので楽

あと使ってるうちに気づいたんですがスクリプトが単機能なのでアクションにねじこんでおきやすいですね。"Illustratorのアクションにスクリプトの実行を追加する"自体はややクセのある挙動なんですが……

スクリプトのライセンス


クリエイティブ・コモンズの「表示 4.0(国際) (CC BY 4.0) 」です。シンプルなスクリプトなので使いやすいように改造したりなんやかんやしてください。
また、このスクリプトを使用したことによってファイルが壊れるとかパソコンが爆発するなど諸々の損害が発生した場合においても私は一切の責任を負いかねます。(免責)

手書きで「おさいせんばこ」と書かれた箱が置いてある。投入されたサポートはガソリン代になり、動画の素材になります。