お絵描きソフトInkscape(インクスケープ)の使い方を初級レベルから上級レベルまで広く紹介しています。
情報追加のリクエストや分かりにくい点があれば下のCONTACTフォームからどうぞ。

Inkscapeのバッチエクスポート機能

 このページでは、キャンバス上の複数のオブジェクトを別々のファイルに一気に保存する機能「バッチエクスポート」について紹介します。

(2024.10.18更新)

バッチエクスポートとは

 通常のエクスポートはキャンバス上に描いたオブジェクトのうち一部のオブジェクトを編集中のドキュメントとは別のファイルに保存する機能です。例えば描いたオブジェクトをPNG形式のようなビットマップ画像ファイルに保存するときに使います。

 通常のエクスポートでは一回のエクスポート操作で1つのファイルの保存しか行えませんが、キャンバス上にたくさんオブジェクトを描いておいてそれらを別々のファイルにエクスポートしたいときはエクスポート操作をファイルごとに行わなければならないので手間がかかります。

 一方、バッチエクスポートは1回の操作でキャンバス上の複数のオブジェクトを自動的に順番に取り出してそれぞれ別々のファイルに保存してくれます。

 ファイル1つ当たりに保存されるオブジェクトは、エクスポートダイアログ上で指定した保存対象のオブジェクトの抽出方法(ファイルごとの保存対象の範囲)に従って抽出されます。

「バッチ」という名前のニュアンスから、例えば一定時間間隔で自動的に保存してくれる機能もありそうに思いますが、そういう機能はないようです。

 例えばキャンバス上でいろんなアイコン画像をデザインしておいて、それをアイコンごとの画像ファイルとしてエクスポートするような作業をしたいときに便利です。

 1つの保存対象をそれぞれの形式が異なる複数のファイルに保存することも可能です。例えば、1つの同じオブジェクトを1回のバッチエクスポート操作でPDFファイルとJPEGファイルの両方に保存することができます。

基本的な手順

 メニューでファイル > エクスポートを操作すると、エクスポートダイアログが表示されます。ここまでは通常のエクスポートと同じですが、このダイアログ上で単一ファイルではなくバッチエクスポートを選択するとバッチエクスポートの各パラメータを指示する画面に切り替わります。

 エクスポートダイアログの下半分は次のようになっています。


 そして、このダイアログ上で各ファイルに保存するオブジェクトの抽出方法保存先のフォルダ(ディレクトリ)各ファイルの名前の先頭に使う共通の文字列(プレフィックス)保存先の各ファイルのパスの末尾に付けられる接尾辞サフィックスファイルごとのファイル形式を指定して、エクスポートボタンを押すと、その抽出方法にしたがってオブジェクトを順に取り出して、指定した形式とファイル名で各ファイルに保存してくれます。

 なお、ファイル形式として画像形式(PNGなど)を選択した場合、形式を指定するメニューの右側に保存時の解像度(DPI)も指定可能になります。(解像度の詳細は「画像ファイルを読み書きする時の解像度」を)

 また、エクスポートダイアログを表示させたときの保存先のフォルダ(ディレクトリ)の初期値は、編集中のドキュメントのファイルの保存先と同じになっています。この初期値のままバッチエクスポートを実行すると編集中のドキュメントの隣(同じフォルダなど)にエクスポートされることになります。

ファイル名はどうなる?

 バッチエクスポートするとそのファイル名はダイアログ上で指定した文字列を「"_"(アンダーバー)」でつないだ「ファイルパスの共通文字列_保存対象のラベル_サフィックス.拡張子」という形になります。

 保存対象のラベルは自動的に決定される部分です。オブジェクトの名前(ラベル)やレイヤの名前(ラベル)やページのラベルが使われます。どの種類のラベルが使われるかはオブジェクトの抽出方法で何を指定したかによります。

 ラベルは新規オブジェクトを追加したときや新規レイヤを追加したときに自動的に付けられているものですが、エクスポートされたファイル名を区別しやすいものにしたければ、あらかじめそれらのラベルを自動的に付けられているラベルから手で変更しておく必要があります。

 オブジェクトのラベルはオブジェクトのプロパティダイアログで表示したり変更したりすることができます。

 レイヤのラベルはレイヤーとオブジェクトダイアログで表示したり変更したりすることができます。

 ページのラベルはページツールのツールコントロールバーで表示したり変更したりすることができます。(詳しくは「ページツール」を)

 サフィックスは自由な文字列をエクスポートダイアログ上で指定できます。(詳しくは後述)

バッチエクスポートするオブジェクトの指定

 ファイル1つあたりに、どのオブジェクトをバッチエクスポートするか(オブジェクトの抽出方法)はエクスポートダイアログの一番上で指定します。

 抽出方法は「選択範囲」「レイヤー」「ページ」の中から選びます。

 「選択範囲」を選ぶとキャンバス上で選択されているオブジェクトがオブジェクトごとにエクスポートされるようになります。(実際にエクスポートされるのはエクスポートボタンをクリックしたときです。)

 「レイヤー」を選ぶと各レイヤーの上のオブジェクト群がレイヤーごとのファイルにエクスポートされるようになります。

 「ページ」を選ぶと各ページの上のオブジェクト群がページごとのファイルにエクスポートされるようになります。

プレビュー

 ダイアログ上にはエクスポートボタンをクリックすればエクスポートされるであろうオブジェクトがファイルごとにプレビューされます。

 プレビューされている各保存対象ごとにチェックマークがありますが、このチェックをはずすと保存対象から除外することができます。

 なお、ダイアログのプレビューというチェックボックスをはずすと保存対象のラベルだけが表示されます。

複数のファイルへの保存

 同じ1つの保存対象(選択したオブジェクトや1つのレイヤ上のオブジェクト群や1つのページ上のオブジェクト群)を複数のファイルに(ファイル名や形式や解像度を変えながら)保存するには、エクスポートダイアログにエクスポート先ファイルを追加します。

 ダイアログにエクスポートを追加というボタンがあります。「Add export」を直訳してある感じなので分かりにくいですが、エクスポート先のファイルを追加するものと理解すればよさそうです。このボタンをクリックすると、ダイアログを表示したときは1つしか指定できないエクスポート先のファイル(サフィックスと形式と解像度)をもっと指定できるようになります。

 そうやって2つ以上のファイル(サフィックス+形式+解像度)を指定しておくと、同じ1つの保存対象が複数のファイルにエクスポートされます。

 もちろん画像形式のファイルを追加した場合は、さらに保存時の解像度が指定できます。

 同じ形式や解像度のファイルを重複して指定することもできますが、その場合でもサフィックスを異なるものにしておけば異なるファイル名で保存されます。

 なお、右側にある「×」ボタンをクリックすると、そのファイルへのエクスポート指定を解除することもできます。

バッチエクスポート機能の注意点

 エクスポートダイアログ上で行った各指定はドキュメントと一緒に保存されるわけではないようです。

 エクスポートダイアログ上でいろいろ指定しておいても、エクスポートダイアログを「×」をクリックするなどして閉じてしまうと、再度エクスポートダイアログを表示させてもさきほどの指定内容は消えてデフォルトの状態になってしまいます。 

 同様に編集中のドキュメントを例えば「Inkscape SVG」形式でファイルに保存し、保存したファイルからドキュメントを再度開いて編集を続行した場合も、前回行ったエクスポートダイアログの各指定は消えてしまっているので、もう一度最初から指定し直す必要があります。

 でもSVG形式で保存と編集を繰り返しながら、必要に応じて同じ指定内容のバッチエクスポートを実行できると便利かと思うので、何かうまい方法がないか調べてみたいところです。

  (参考:バッチエクスポートを使ってみた