ベテランほど知らずに損してるIllustratorの新常識(10)CSVサポートで身近になったデータ駆動グラフィックでアートワークのバリエーションを作成
ベテランほど知らずに損してるIllustratorの新常識
「変数」機能を使った「データ駆動グラフィック」は、Illustrator 10(2001年にリリース)から搭載されています。しかし、これを使うためにはXMLファイルの準備が必要なため、使うのに躊躇される方が多いようでした。
Illustrator CC 2018(3月アップデート)から、XMLのほか、CSVファイルを扱えることになり、一気に使うハードルが下がりました。
今回は、変数とは何か、どんなときに使えるのか、また、使う上での注意点などについてご紹介します。
https://blog.adobe.com/media_b7215f30a421b3aae8b449487185360e99158390.gif
はじめる前に
今回、ご紹介する「データ駆動グラフィックス」は、Illustratorでは[変数]パネルを使って操作を行い、たとえば、次のように名刺の複数人のデータを入れ替えるときなどに利用します。
https://blog.adobe.com/media_4aade59756fc577cdeb3896809aabf43583b42d0.gif
テキストのほか、リンク画像を扱うこともできますし、「新着アイコン」などをこのアイテムには表示しないといった分岐をコントロールすることもできます。
つまり、基本的なフォーマットはほぼ同じで、少し内容が異なるグラフィックを作成するときに用います。
なお、Illustrator CC 2018(3月アップデート)からInDesignと同様に「データ結合」と呼ばれているほか、「可変データ」、「バリアブル」や「差し込み印刷」のように表現されることもあります。
変数とは?
まず、おさえておきたいのが「変数(へんすう)」という用語。変数とは「データを入れるための箱」のことと説明されること多いのですが、「特定のテキストやリンク画像を変更可能にするときに設定すること」と考えてください。
たとえば、10人の名刺データを作成する場合、「名前」という箱や「メールアドレス」という箱に、それぞれの方のデータを格納していくイメージです。
https://blog.adobe.com/media_4a13a56d79e6d94721c36a1abbb13a0c67c8850c.gif
Illustratorでは、[変数]パネルを使って設定します。[変数]パネルを開くには、[ウィンドウ]メニューの[変数]をクリックします。
可変データの作成の基本
差し替えを行いたいアイテムを「変数」として設定し、その集まりを「データセット」として記録する流れを解説します。
まずはテキストのみで進めます。
変数の設定
まずは、各テキストを変数として扱うための設定を行います。
- 新規ドキュメントを作成し、「名前、ふりがな、メールアドレス」を入力するhttps://blog.adobe.com/media_cee8b55b11b297b767c9eda4a5c376e0b2c8e7d3.gif
- 「名前」を選択し、[変数]パネルの[テキストを動的に設定]ボタン(歯車とレゴブロックのようなアイコン)をクリックhttps://blog.adobe.com/media_c5b28e5696e5743941754ac94913f35ca575fd73.gif
- [変数]パネルには「変数1、名前」と表示されるhttps://blog.adobe.com/media_4e8c452c1a5693e8b133067b4e45d330f353dfd0.gif
- 同様に、「ふりがな」、「メールアドレス」を変数に登録するhttps://blog.adobe.com/media_893f3807d3e2794d20ddf15c7228de58e1072e50.gif
ここまでで、変数を設定する作業は終了です。
データセットの作成
次に、変数にデータを入れる作業を行ってみます。
- [データセットをキャプチャ]ボタン(カメラのアイコン)をクリックhttps://blog.adobe.com/media_6ab4c7cefbbc65ecab24980509c8a31a962284d1.gif
- 「データセット1」と表示されるhttps://blog.adobe.com/media_2ad43f848a76486c3c04158b992cb95834782571.gif
- 各テキストを書き換えるhttps://blog.adobe.com/media_22296a11dce5d4552c01e534f448ab89571ca810.gif
- [変数]パネルには「*データセット1」と表示されるので、改めてカメラアイコンをクリックするhttps://blog.adobe.com/media_52989288c96b5a0cb1191e6d1ddd8a22336b97ac.gif
- 「データセット2」と表示されるhttps://blog.adobe.com/media_de34da6703725027234e8ade503f1095d52096b9.gif
- [◀]、[▶]ボタンをクリックすると、最初に入れた「名前、ふりがな、メールアドレス」」と、次に入力した「松浦 美咲、まつうら みさき、matsuura@example.com」が切り替わることを確認できる
同様に、異なる人のデータを入力し、データセットをキャプチャ(記録)して、切り替えを行ってみましょう。
https://blog.adobe.com/media_ee691ff72ad71d0574b0d6b2b61f6f9dd1590125.gif
変数として設定したテキストを画面上で編集してデータセットを作成することで、テキストの入れ替えが可能になりました。
CSVを使って大量のデータを操作する
数名程度ならがんばれますが、これが100人分となると時間もかかりますし、ミスも生じるでしょう。そこで、別途、Excelなどで作成したデータを読み込む流れを紹介します。
ワークフローとしては、次のような流れです。
- Excel(やGoogle スプレッドシート)でデータベースを作成する
- CSV形式で書き出す
- IllustratorにCSVを読み込む(変数ライブラリの読み込み)
- 各変数と紐付ける(=バインドする)
細かくみていきましょう。
Excelでデータベースを作成する
ExcelやGoogle スプレッドシートを使ってデータベースを作成します。
- 1行目には項目名を設定する
- アイテムは、各列ごとに入力する
- 1人ずつの情報は行ごとにまとめる(「レコード」と呼びます)
https://blog.adobe.com/media_e90f8cc931c267a48b058a1125cf9b7bedae8c16.gif
CSV形式で書き出す
Excelの[ファイル]メニューの[名前を付けて保存]をクリックして、[ファイル形式]に「CSV UTF-8 (コンマ区切り) (.csv)」を選択します。
https://blog.adobe.com/media_dc3e70a5158bdd350e17ab6ddea7cd69a2aff1da.gif
Mac版Excel(2016)16.11から書き出したCSVでは、次の行程で「選択した変数ライブラリが無効です」というアラートが表示されて読み込めません。
https://blog.adobe.com/media_bf35637c4d3a5be4114d60af7cb23b67831741fd.gif
そこで、書き出したファイルをテキストエディット.appで開いて保存し直す必要があります。
https://blog.adobe.com/media_b5a087612af8d6f0a0c3ed20d8a31aab74431053.gif
IllustratorにCSVを読み込む(変数ライブラリの読み込み)
- Illustratorの[変数]パネルメニューから[変数ライブラリの読み込み]をクリックhttps://blog.adobe.com/media_0687d07f6704d82f25c8b647c2b11baa3771f8c5.gif
すでに変数設定を行っている場合には「現在のドキュメントには、既に変数が含まれています。現在の変数およびデータセットを上書きしますか?」というアラートが表示されますので、[はい]ボタンをクリックします。
https://blog.adobe.com/media_adee9c3695b65ee4b18d1314fa996b08c6524277.gif
この操作によって、前項で行った手入力はクリアされてしまいます。
各変数と紐付ける(=バインドする)
- ドキュメント上のテキストを選択、[変数]パネルの上の対応する変数を選択し、[テキストを動的に設定]ボタン(歯車とレゴブロックのようなアイコン)をクリックhttps://blog.adobe.com/media_6e30b11e97d05640205b46f77c189ef9980e6740.gif
- 同様にほかのテキストも、変数と紐付けると[データセット]のポップアップメニューから読み込んでCSVファイルのデータセットが参照されていることを確認できるhttps://blog.adobe.com/media_d59bdc2882fc5b8edb0fe3abf3ddc9b50f7ecff7.gif
アウトプット
次にデータセットの活用について考えてみましょう。データセットを切り換えることができるようになりましたが、プリントしたり、別のファイルに保存する場合、ひとつずつ設定しては面倒です。
そこで、Illustratorでは操作をアクションに登録し、「バッチ」操作によって連続実行します。
次のアウトプットごとにみてきましょう。
- プリント
- ファイル(Illustratorドキュメント、PDF)
- 画像(PNG、JPEG)
https://blog.adobe.com/media_42fd862bc5d3bab4c9abb2646348332d80c85152.gif
プリント
プリントをアクションに登録し、バッチの[ソース]に「データセット」を選択することでデータセットごとにプリントされます。
- 新規アクションを作成し、記録を開始するhttps://blog.adobe.com/media_d11ec66b04f381dfa097501eb33a57a5a6602df3.gif
- プリントを実行し、アクションを停止する
- [アクション]パネルで[ダイアログボックスを非表示]ボタンをクリックして、非表示にする(これによって、[プリント]ダイアログボックスが表示されずにプリントが実行されるようになります)https://blog.adobe.com/media_259e4dfdf0c63d5137cd5cf090911b61b1243cce.gif
- [アクション]パネルメニューの[バッチ]をクリックhttps://blog.adobe.com/media_46b9446ec53306098fb4660e3e640d8557eee727.gif
- [バッチ]ダイアログボックスが開いたら[ソース]に「データセット」を設定するhttps://blog.adobe.com/media_c9c2e7f85cd33d14f6dc9f1987f19ced6d167b4a.gif
- [OK]ボタンをクリックすると、バッチ処理がスタートする(データセットごとに切り替わりながらプリントされる)
ファイル(Illustratorドキュメント、PDF)
[別名で保存]をアクションに登録し、バッチの[ソース]に「データセット」を選択することで、データセットごと別ファイルとして保存します。
- 新規アクションを作成し、記録を開始する
- [別名で保存]を記録する(ファイル名、保存先は実行時に選択するのでどこでもよい)https://blog.adobe.com/media_c965c9c0fd9bc0a6327777824ff074ebc2544ec3.gif
- [アクション]パネルメニューの[バッチ]をクリックする
- [バッチ]ダイアログボックスで次のように設定する
-
- [ソース]を「データセット」に設定する
- [アクションの「保存」コマンドを無視]オプションをオンにする(❶)
- [選択]ボタンをクリックして、書き出し先のディレクトリを指定(❷)
- [ファイル名]を指定する(❸)
- https://blog.adobe.com/media_97f65e5527361f1bac8a238274fd88c47bdb3c3e.gif
- [OK]ボタンをクリックすると、バッチ処理がスタートする(データセットごとに切り替わりながら別名で保存される)
手順1、手順2でのアクションの作成を省略できそうですが、必要です。ただし、保存先やファイル名の設定は、[バッチ]ダイアログボックス内で行うため、アクション作成時には緻密に行う必要はありません。
なお、[バッチ]ダイアログボックスの[アクションの「保存」コマンドを無視]は、「保存」そのものを無視するのではなく、アクションで設定した保存のファイル名と保存先を無視し、[バッチ]ダイアログボックス内で指定する、という意味合いです。
ちなみに、英語版では[Override Action “Save” Commands]となっており、「無視」ではなく、「上書き」と記述されています。
ファイル名
ファイル名のオプションによって、次のようにネーミングされます。
- 「ファイル名 + データセット名」を選択すると、データセット名の前にアンダースコア(_)が入る。しかし、「ファイル名 + 番号」の場合には入らないので、あらかじめ「namecard-.ai」のように保存しておくとよいでしょう。
- 「ファイル名 + 番号」を選択したときには「001000」のように「3桁の連番」+「000」のように設定される。「000」は省略できない
注意点
Illustrator形式(.ai)、PDF(.pdf)ともに、拡張子が付かないことがあります。付かない場合には、自分で拡張子を付けてください。
画像(PNG、JPEG)
[書き出し]をアクションに登録し、バッチの[ソース]を「データセット」を選択することで、データセットごと別ファイルとして書き出します。
- 新規アクションを作成し、記録を開始するhttps://blog.adobe.com/media_33d9c50bf3b3130df736adff09000f88bf6f34a2.gif
- [ファイル]メニューの[書き出し]→[書き出し形式]をクリックするhttps://blog.adobe.com/media_8b42381dfb0e485205d476afc24b71c0b66e8d2e.gif
- [ファイル形式]に「PNG(png)」を選択し、[書き出し]をクリックhttps://blog.adobe.com/media_acc7530c855c262b0374fbde256a1eeb358ee1c7.gif
- PNGの書き出しオプションを設定するhttps://blog.adobe.com/media_2cebf967ffeb0fb479a02360773433c6f1368ab6.gif
- アクションの記録を停止するhttps://blog.adobe.com/media_120301eea84f8821907c685031507912713e2f0d.gif
- [アクション]パネルメニューの[バッチ]をクリックする
- [バッチ]ダイアログボックスで次のように設定する
-
- [ソース]を「データセット」に設定する
- [アクションの「書き出し」コマンドを無視]オプションをオンにする(❶)
- [選択]ボタンをクリックして、書き出し先のディレクトリーを指定する(❷)
- [ファイル名]を指定する(❸)
- https://blog.adobe.com/media_3419aa82aab1c77c3316fa1d78608f70820cfabf.gif
- [OK]ボタンをクリックすると、バッチ処理がスタートする
スクリーン用に書き出し
[ファイル]メニューにある[スクリーン用に書き出し]は、Illustrator CC 2015以降に追加された機能です。
アートボードごと、登録したアートワークごとに書き出せる優れた機能ですが、今のところ、アクションに登録することができません。
そこで、従来からある[書き出し形式]を選択します。
https://blog.adobe.com/media_8b42381dfb0e485205d476afc24b71c0b66e8d2e.gif
画像の扱いと表示のコントロール
Illustratorの変数で扱えるのはテキストだけではありません。テキストのほか、次の3つを扱うことができます。
- リンク画像
- グラフの元データ
- 表示・非表示のコントロール
リンク画像と、表示・非表示のコントロールについてご紹介します。
テンプレートの作成
次のような名刺を作ることを想定します。
このサンプルでは、次の2点を新しく設定してみます。
- 画像の差し替えを行う
- 上部の帯を人によってカラーを変更する(実際には2つの帯を同じ座標に配置し、人によって表示・非表示をコントロールする)
まずは、サンプルとなるデータを作成します。
- 名前、メールアドレス、電話番号を入力
- 変更する必要のないメールアドレス、電話番号のアイコンはパスのまま
- 画像は埋め込まずにリンク
- 上部の帯は同じ座標に配置する
データソースファイルの準備
次のようにデータベースを作成します。
- 名前
- メールアドレス
- 携帯電話
- @画像
- #blue
- #orange
https://blog.adobe.com/media_c2475b722828a562b5e1eeed3b307f3c9b991813.gif
リンクファイルの設定
リンクファイルを設定する場合、データフィールド名(見出し)に@を付けます。
しかし、Excelは「@画像」と入力すると、「その関数は正しくありません。」というアラートが表示されるので「’@画像」のように「@」の前に「’」を入力します。
https://blog.adobe.com/media_ded187b49ccfc929c162773b54d2aeb0e2275b37.gif
また、リンクファイルのパスは、次のように設定します。
- Mac:/Users/takano/Documents/cat.jpg
- Windows:C:¥MyDocuments¥cat.jpg
表示・非表示のコントロール
人によって表示する/しないをコントロールするには、データフィールド名(見出し)に#を付けます。
- #blue
- #orange
その他の注意点
- データフィールド名はリンクファイル名にはスペースを含めない
IllustratorにCSVを読み込み、各変数と紐付ける
- [変数]パネルの[読み込み]ボタンをクリック([変数]パネルメニューから[変数ライブラリの読み込み]をクリックしてもよい)https://blog.adobe.com/media_f5de1f1de77beb5b50fb7de6036c0ee50b3069ae.gif
- ドキュメント上のテキストを選択、[変数]パネルの上の対応する変数を選択し、[テキストを動的に設定]ボタン(歯車とレゴブロックのようなアイコン)をクリック
- 配置されたリンク画像を選択、[変数]パネルの上の「画像」を選択し、[リンクファイルを動的に設定]ボタン(テキスト設定と同じボタン)をクリック
- 上部のバーを選択し、[変数]パネルの上の「blue」を選択し、[表示を動的に設定]ボタン(歯車と目玉のアイコン)をクリック
- 青い四角形を非表示にし、背面にあるオレンジのバーを選択し、[変数]パネルの上の「orange」を選択し、[表示を動的に設定]ボタン(歯車と目玉のアイコン)をクリック
- データセットを切り換えると、テキストやリンク画像、上部のバーが変更される
まとめ
今回は「変数」機能を使った「データ駆動グラフィック」を取り上げました。基本的なフォーマットはほぼ同じで、少し内容が異なるグラフィックを作成するときに利用することで、短時間にミスを少なく実装することができます。ぜひ、トライしてみてください。
https://blog.adobe.com/media_b7215f30a421b3aae8b449487185360e99158390.gif
Illustrator CC 2018(3月アップデート)から、InDesignと同様の「データ結合」という名称が用いられるようになっていますが、主にアウトプット面で異なります。
Illustratorではアクションを作成してバッチ機能で実行しますが、InDesignでは[結合ドキュメントを作成]機能でデータソースを使って別ドキュメントを作成します。
なお、CSVの準備にはExcel(やGoogle スプレッドシート)が不可欠です。単純にテキストを並べるだけでなく、ソートしたり、ルールにしたがって整形したり、また、“検算”として整合性をチェックするなど、さまざまな局面で必要になりますので、クリエイティブ畑の方も、ぜひとも身に付けられるとよいでしょう。