結構使える、汎用型自動組版スクリプト
管理者用
今日は、バリアブル印刷にも使える自動組版のスクリプトを紹介します。
だいぶ前になりますが、自動組版用のスクリプトを作った事がありました。
色々な形に対応できる、汎用型のスクリプトです。
最初は、宛名シールや名札などに使っていたのですが、インデザインの結合機能を使うようになり、あまり使わなくなってました。
しかし、テキストフレームの溢れ処理機能なども付けていますので、結構便利です。
このスクリプトと仕様を改造、発展させれば、もっと使い勝手の良いものになるのではと思います。
必要なもの
- インデザイン
- エクセル
- テキストエディター
ファイル構成
以下のファイルを同じフォルダーに配置します。
任意のフォルダー
- 実行/vbs
- 可変データ.txt
- 組版仕様a.txt
- imgフォルダー
- 画像ファイル
- dataフォルダー
- xxx.indd
- xxx.pdf
vbsファイル スクリプトファイルです。今回は、”汎用_自動組版55A.vbs”
と名前を付けてますがなんでも良いです。
このファイルを、ダブルクリックで実行します。
可変データファイル レイアウトするデータファイル。
ファイル名は、特に決まりは有りません。
組版仕様ファイルに記述します。
TAB区切りのテキストファイルです。
組版仕様ファイル レイアウト仕様を記述します。
ファイル名を ”組版仕様a.txt" としてます。
TAB区切りのテキストファイル
img フォルダー レイアウトする画像ファイルはこのフォルダーに保存しておきます。
Data フォルダー 組版の結果を、ここに保存します。
操作手順
1、可変データを整理します。
タブで区切られた .txt ファイルのファイルです。
エクセルで作成して、タブ区切りのテキストファイルに書き出すと良いでしょう。
2、仕上がりサイズで、実際のレイアウトをデザインします。
インデザインの可変データを使って、1件分をレイアウトします。
3、2でレイアウトした、可変のテキストフレーム/画像フレーム 等の座標・サイズ・フォント
・・・・等の情報を記録しておきます。
4、組版仕様のテーブルに、可変データ情報、3で記録した座標等の組版情報をセットします。
組版仕様テーブルは、タブ区切りのテキストファイルです。
可変データと同様にエクセルファイルで作っておくと便利です。
5、スクリプトを実行します。
結果は、インデザインファイルとpdfファイルで書き出すようにしてます。
スクリプトを改善する事により、機能強化が行える思います。
事例として、ダウンロードできるようにしました。
参考にしてください。
宛名シール事例
使うシールは次の様なシートです
4×5 で、1シートに20シートのタックシートです。
シールの寸法
1、可変データ
TAB区切りのリストデータです。
エクセル等で最終データに加工すると良いでしょう。
エクセルから、TAB区切りの .txt ファイルで書き出すのも容易です。
データ変換機能は持たせていません
例に示すように、様や御中なども全て、整えた形でのデータを用意します。
1行目は列タイトルとしてください。
事例では、[番号] [郵便番号] [住所] [住所付属] [会社名] [部署]の6項目です。
列タイトルは、後で説明する組版仕様ファイルに登録します。
2、レイアウト
可変データの1行が1シールに相当します。
シールの実際のサイズにレイアウトして確認します。
結果の情報をフレーム毎に組版仕様ファイルに登録します。
したがって、各フレームの情報を記録しておいてください。
この事例では、使用しませんが、シールに共通して配置したい情報を登録できます。
レイアウト確認時にPDFファイルで保存しておくと良いでしょう。
3、組版仕様ファイル
実際には、タブ区切りの.txtファイルですが、エクセルファイルで説明します。
ページ仕様とフレーム仕様の2つの項目に分けられています。
ページ仕様
ページ全体に関する仕様を登録します。
項目 | 事例でのセット内容 | |
データファイル名 | Book1.txt | |
サイズ | 幅 | 68.58 |
サイズ | 高 | 38.1 |
台紙 | 幅 | 297 |
台紙 | 高 | 210 |
台紙ファイル名 | ||
面付け台紙ファイル名 | A4シール用紙.indd | |
面付け方向 左上・右上 | 左上 | |
マージン | X | 11.5 |
マージン | Y | 10 |
ドブ | 縦 | 0 |
ドブ | 横 | 0 |
面付け | 行 | 5 |
面付け | 列 | 4 |
出力ファイル名 | 宛名ラベル |
配置するテキストフレームの仕様
項目名 可変データ.txt ファイルの項目と同じ内容を使用します。
事例では、[番号] [郵便番号] [住所] [住所付属] [会社名] [部署]の6項目です。
[番号]は、レイアウトしませんが、先に記録した各項目の座標、フォント・・・などを登録します。
フレーム仕様項目 | |
座標XS | |
座標YS | |
幅 | |
高 | |
テキスト/画像 フォント | |
フォント | |
フォント | |
フォントサイズ | |
行間 | |
縦/横 | |
平体 | |
長体 | |
左・中・両端・右 | |
上・中・下・両端 | |
ofフォントサイズ | |
of平体/長体 |
4、実行
スクリプトファイルをダブルクリックします。
インデザインが開き、仕様に沿って自動組版が実行されます。
結果は、dataフォルダー内に保存されます。
事例のダウンロード
事例に使用したファイル一式をZIPファイルにまとめました。
興味のある方は、ここからダウンロード
添付のVBSスクリプトファイルは、拡張子を .txt ファイル名に変更してます。
拡張子を .vbs に変更して ”汎用_自動組版55A.vbs” で使用ください。
また、実際に使用する場合は、当たりでいれている罫線を削除してください。
事例使用にあたって、使っているインデザインバージョンで書き換える必要があります。
Rem ******************************************************
Rem インデザインの起動
Rem ******************************************************
Dim myIndesign
Set myInDesign = CreateObject("InDesign.Application.CC_J") 'バージョンCS* の指定を合わせる
'Set myInDesign = CreateObject("InDesign.Application") 'バージョンCS2015 の指定を合わせる
Rem ******************************************************
参考に 幾つかの事例を上げておきます。
シーツ事例2 ⇒ 事例シール2.zip
シール事例3 出荷ダンボールに貼るシールの事例
バックに、pdfファイルをレイアウトしています。
写真展のラベル 画像ファイルを貼りこんでいる事例
⇒ 写真展.zip
出版物の特定ページ の事例
⇒ 株価.zip