バリアブル印刷方法およびバリアブル印刷システム
【課題】バリアブル記述言語で記述されたアプリケーションを人手で作成することなく、バリアブル印刷を実行することのできるシステムを提供する。
【解決手段】本発明では、所定の書式で記述されたレイアウト定義ファイルと、バリアブルデータファイルのデータ構造などが記述された項目定義XMLファイルを含むテンプレートを用意され、プリンタコード生成サーバ14は、項目定義XMLファイルを解析し、バリアブルデータファイルのデータ構造をバリアブル記述言語のデータ構造に変換し、更に、レイアウト定義ファイルを解析し、レイアウト定義ファイルの書式をバリアブル記述言語の書式に変換することでプリンタ制御コードを生成する。バリアブルプリンタ16は、プリンタ制御コードを解釈・実行し、バリアブル印刷を実行する。
【解決手段】本発明では、所定の書式で記述されたレイアウト定義ファイルと、バリアブルデータファイルのデータ構造などが記述された項目定義XMLファイルを含むテンプレートを用意され、プリンタコード生成サーバ14は、項目定義XMLファイルを解析し、バリアブルデータファイルのデータ構造をバリアブル記述言語のデータ構造に変換し、更に、レイアウト定義ファイルを解析し、レイアウト定義ファイルの書式をバリアブル記述言語の書式に変換することでプリンタ制御コードを生成する。バリアブルプリンタ16は、プリンタ制御コードを解釈・実行し、バリアブル印刷を実行する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、印刷物ごとに内容を変更して印刷するバリアブル印刷を行う方法およびシステムに関し、更に詳しくは、バリアブル印刷を自動化するための技術に関する。
【背景技術】
【0002】
インターネットの高速化に伴い、Webを利用した入稿システムであるWebtoprintシステムが開発され、Webtoprintシステムにおいては、入稿作業が電子化されることで、印刷物の受注作業や印刷作業の効率化が図られる。
【0003】
Webtoprintシステムに関する発明としては、例えば、特許文献1では、発注側の要求に合わせた形態で必要な個別印刷物(ダイレクトメール)を提供するシステムが開示されている。
【0004】
特許文献1で開示されているシステムを構成するサーバは、印刷に利用する画像データやテキストデータを記憶するデータベースを備え、発注側からの申込情報に基づいて、バリアブルフィールドを含む印刷物作成指示データを生成し、生成した印刷物作成指示データに含まれるバリアブルフィールドに素材データを配置することで、デジタルプリンタに出力するPDF形式の印刷イメージデータを作成する。
【0005】
特許文献1で開示されているように、PDF形式のイメージファイル(または、ページ記述言語であるPOSTSCRIPのイメージファイル)をデータベースに記憶すると、OnetoOneマーケティングで利用されるダイレクトメールのように、それぞれ内容の異なる印刷物をバリアブル印刷するときは、PDF形式のイメージファイル(または、POSTSCRIPのイメージファイル)を印刷物毎に用意しデータベースに記憶しなければならず、すべてのイメージファイルを記憶するために必要な記憶容量や、デジタルプリンタに送信する通信量が増えてしまう問題があった。
【0006】
このような問題を解決するために、バリアブル印刷用に開発されたページ記述言語であるバリアブル記述言語が開発され、既に実用化されている。バリアブル記述言語としては、VIPP(VIPP: Variable-data Intelligent PostScript Printware)などが有名である。
【0007】
例えば、印刷物で共通のページレイアウトをVIPPのコードで記述することで、印刷物で共通のページレイアウトは一つで済むため、バリアブル印刷に必要な記憶容量を少なくすることができ、更に、デジタルプリンタに送信するデータ量を少なくすることができる。
【0008】
【特許文献1】特開2003−241910号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
しかしながら、印刷会社において、VIPPに代表されるようなバリアブル記述言語を利用すると、受注する印刷物のページレイアウト毎に、VIPPに代表されるようなバリアブル記述言語で記述されたアプリケーションを人手で作成しなければならず、Webtoprintシステムの自動化を図るときのネックとなっていた。
【0010】
そこで、本発明は、VIPPに代表されるような、バリアブル印刷用に開発されたページ記述言語であるバリアブル記述言語で記述されたアプリケーションを人手で作成することなく、バリアブル印刷を実行することのできる方法およびシステムを提供することを目的とする。
【課題を解決するための手段】
【0011】
上述した課題を解決する第1の発明は、バリアブルプリンタが解釈・実行するプリンタ制御コードを自動的に生成してバリアブル印刷を実行するバリアブル印刷方法であって、バリアブルデータを割り当てるバリアブルフィールドのレイアウトが少なくとも所定の書式で記述されたレイアウト定義ファイルを少なくとも含むテンプレートを、バリアブル印刷する印刷物毎に用意しておき、
ステップa)ポータルサーバが、ネットワークを介して、前記バリアブルデータが記憶されたバリアブルデータファイルを受信し、データ記憶装置に記憶させるステップ、
ステップb)プリンタ制御コードを生成する前記プリンタコード生成サーバが、指定された前記テンプレートに含まれる前記レイアウト定義ファイルを解析し、前記レイアウト定義ファイルの書式を、バリアブル印刷に用いる前記バリアブルプリンタに対応したバリアブル記述言語の書式に変換することで、前記バリアブルデータを埋め込んで印刷するための前記プリンタ制御コードを生成し、前記プリンタ制御コードを前記バリアブルプリンタに送信するステップ、
ステップc)前記バリアブルプリンタが、前記プリンタコード生成サーバが生成した前記プリンタ制御コードを解釈・実行し、前記データ記憶装置に記憶された前記バリアブルデータファイルに含まれる前記バリアブルデータをマージして、バリアブル印刷を実行するステップ、
が含まれることを特徴とするバリアブル印刷方法である。
【0012】
上述した第1の発明によれば、印刷物のレイアウトが定義される前記レイアウト定義ファイルを前記テンプレートに含ませ、前記レイアウト定義ファイルの書式を定めておけば、前記プリンタコード生成サーバが、前記レイアウト定義ファイルの書式をバリアブル記述言語の書式に変換すれば、前記プリンタコード生成サーバが前記プリンタ制御コードを自動的に生成できるようになる。
【0013】
なお、複数種の前記バリアブルプリンタが設置されている場合であっても、前記レイアウト定義ファイルを用意しておけば、印刷物のレイアウトデザインを定義したデータは一つで済む。
【0014】
第2の発明は、第1の発明に記載のバリアブル印刷方法であって、前記バリアブルデータファイルのデータ構造と、前記バリアブルデータと前記バリアブルフィールドを対応付けが、所定の書式で記述された項目定義ファイルを前記テンプレートに含ませ、前記ステップa)において、前記ポータルサーバは、前記項目定義ファイルで定義されたデータ構造に準じた前記バリアブルデータを受信し、前記項目定義ファイルで定義されたデータ構造に準じ、前記ステップb)において、前記プリンタコード生成サーバが、指定された前記テンプレートに含まれる前記項目定義ファイルを解析し、前記データ記憶装置に記憶された前記バリアブルデータファイルのデータ構造をバリアブル記述言語に適したデータ構造に変換することを特徴とするバリアブル印刷方法である。
【0015】
第2の発明によれば、レイアウトデザイン毎に、前記バリアブルデータファイルのデータ構造などを標準化しておき、この内容を前記項目定義XMLファイルに記述し、前記バリアブルデータファイルのデータ構造をバリアブル記述言語に適したデータ構造に変換すれば、一つの前記バリアブルデータファイルを様々な前記バリアブルプリンタで利用することが可能になる。
【0016】
第3の発明は、第2の発明に記載のバリアブル印刷方法であって、前記テンプレートに含まれる前記レイアウト定義ファイルおよび前記項目定義ファイルはXML形式のデータファイルであって、前記ステップb)において、前記プリンタコード生成サーバは、前記レイアウト定義ファイルおよび前記項目定義ファイルのスキーマを利用して、前記レイアウト定義ファイルおよび前記項目定義ファイルを解析し、前記プリンタ制御コードを生成することを特徴とするバリアブル印刷方法である。
【0017】
前記テンプレートに含まれる前記レイアウト定義ファイルおよび前記項目定義ファイルはXML形式のデータファイルとすれば、前記レイアウト定義ファイルおよび前記項目定義ファイルにスキーマによって、前記レイアウト定義ファイルおよび前記項目定義ファイルが記述されるため、本発明に係わる方法を実施するシステムに含まれる各コンピュータのコンピュータプログラムをそれぞれ独立して開発することが可能になる。
【0018】
更に、前記レイアウト定義ファイルはタグ要素を用いて記述されるため、レイアウト定義ファイルのタグ要素毎に、このタグ要素に対応するバリアブル記述言語の書式を用意しておけば、前記レイアウト定義ファイルの書式をバリアブル記述言語の書式に変換するプログラムの作成が容易になる。
【0019】
第4の発明は、バリアブルプリンタが解釈・実行するプリンタ制御コードを自動的に生成してバリアブル印刷を実行するバリアブル印刷システムであって、
ネットワークを介して、バリアブルフィールドに割り当てられるバリアブルデータが記憶された前記バリアブルデータファイルを受信し、受信した前記バリアブルデータファイルをデータ記憶装置に記憶させるポータルサーバと、
前記バリアブルデータを割り当てる前記バリアブルフィールドのレイアウトが少なくとも所定の書式で記述されたレイアウト定義ファイルを少なくとも含むテンプレートと前記バリアブルデータファイルが指定されると、前記テンプレートに含まれる前記レイアウト定義ファイルを解析し、前記レイアウト定義ファイルの書式を、バリアブル印刷に利用する前記バリアブルプリンタに対応したバリアブル記述言語の書式に変換することで、前記バリアブルデータを埋め込んで印刷するためのプリンタ制御コードを生成するプリンタコード生成サーバと、
前記プリンタコード生成サーバが生成した前記プリンタ制御コードを解釈・実行し、前記データ記憶装置に記憶された前記バリアブルデータファイルに含まれる前記バリアブルデータを前記バリアブルフィールドの箇所にマージして、バリアブル印刷を実行する前記バリアブルプリンタと、
を備えたことを特徴とするバリアブル印刷システムである。
【0020】
第5の発明は、第4の発明に記載のバリアブル印刷システムであって、前記バリアブルデータファイルのデータ構造と、前記バリアブルデータと前記バリアブルフィールドを対応付けが、所定の書式で記述された項目定義ファイルを前記テンプレートに含ませ、
前記ポータルサーバが受信する前記バリアブルデータファイルは、前記項目定義ファイルで定義されたデータ構造に準じ、
前記プリンタコード生成サーバは、指定された前記テンプレートに含まれる前記項目定義ファイルを解析し、前記データ記憶装置に記憶された前記バリアブルデータファイルのデータ構造をバリアブル記述言語に適したデータ構造に変換する、
ことを特徴とするバリアブル印刷システムである。
【0021】
第6の発明は、第5の発明に記載のバリアブル印刷システムであって、前記テンプレートに含まれる前記レイアウト定義ファイルおよび前記項目定義ファイルはXML形式のデータファイルであって、前記プリンタコード生成サーバは、前記レイアウト定義ファイルおよび前記項目定義ファイルのスキーマを利用して、前記レイアウト定義ファイルおよび前記項目定義ファイルを解析し、前記プリンタ制御コードを生成することを特徴とするバリアブル印刷システムである。
【発明の効果】
【0022】
このように、上述した本発明によれば、VIPPに代表されるような、バリアブル印刷用に開発されたページ記述言語であるバリアブル記述言語で記述されたアプリケーションを人手で作成することなく、バリアブル印刷を実行することのできる方法およびシステムを提供できる。
【発明を実施するための最良の形態】
【0023】
ここから、本発明に係わるバリアブル印刷方法およびバリアブル印刷システム1について、図を参照しながら詳細に説明する。図1は、本発明が適用されたバリアブル印刷システム1の構成を説明する図である。
【0024】
図1で図示したバリアブル印刷システム1は、インターネット17を介して受注した印刷物を自動で処理するために構築されたシステムで、バリアブル印刷に利用するバリアブルデータが含まれるバリアブルデータファイルをポータルサーバ11に送信するクライアント10と、印刷物を受注するために設けられるポータルサーバ11と、バリアブルデータファイルなどが受注案件毎に記憶されるデータベースサーバ12と、プリンタサーバ15を備えた複数台のバリアブルプリンタ16と、プリンタサーバ15に送信するプリンタ制御コードを自動的に生成するプリンタコード生成サーバ14と、受注した印刷物の進行を管理するJOBコントローラサーバ13とから、少なくとも構成され、図1には、バリアブル印刷用のページ記述言語であるバリアブル記述言語の一つであるVIPP((VIPP: Variable-data Intelligent PostScript Printware)に対応したバリアブルプリンタ16と、PPML/VDX(PPML/VDX: Personalized Print Markup Language/Variable Data Exchange)に対応したバリアブルプリンタ16とが備えられている。
【0025】
図1で図示したバリアブル印刷システム1においては、複数台のバリアブルプリンタ16が備えられている場合であっても、バリアブル印刷用のページ記述言語であるバリアブル記述言語で記述されたプリンタ制御コードを自動的に生成できるようにするために、予め、バリアブル印刷システム1で受注可能な印刷物毎にテンプレートが用意され、このテンプレートはデータベースサーバ12に記憶される。
【0026】
レイアウトデザインのテンプレートには、少なくとも2つのXMLファイルが含まれ、その一つは、印刷物に含まれるバリアブルデータが埋め込まれるバリアブルフィールドのレイアウト(例えば、バリアブルフィールドを配置する座標など)が少なくとも所定の書式で記述されたレイアウト定義ファイルで、もう一つは、バリアブルデータファイルのデータ構造と、バリアブルデータに対応付けるバリアブルフィールドが、所定の書式で記述された項目定義ファイルである。
【0027】
レイアウトデザインのテンプレートにレイアウト定義XMLファイルを含ませるのは、バリアブル記述言語で記述されプリンタ制御コードをプリンタコード生成サーバ14が自動的に生成できるようにするためである。
【0028】
レイアウト定義XMLファイルのスキーマで定義されているタグ要素毎に、タグ要素に対応するバリアブル記述言語の書式を定めておき、プリンタコード生成サーバ14が、レイアウト定義XMLファイルに記述されているタグ要素をバリアブル記述言語の書式に変換する処理を実行すれば、プリンタコード生成サーバ14はプリンタ制御コードを自動的に生成することが可能になる。
【0029】
また、バリアブル記述言語毎に、レイアウト定義XMLファイルのスキーマで定義されているタグ要素毎に、タグ要素に対応するバリアブル記述言語の書式を定めておけば、複数種のバリアブルプリンタ16が設置されている場合であっても、印刷物のレイアウト定義データは一つで済む。
【0030】
また、テンプレートに項目定義XMLファイルを含ませるのは、レイアウトデザイン毎に、バリアブルデータファイルの仕様を標準化しておき、一つのバリアブルデータファイルを様々なバリアブル記述言語で利用可能なようにするためである。
【0031】
クライアント10から受信するバリアブルデータファイルのデータ構造が、あるバリアブル記述言語の仕様に特化したデータ構造であると、クライアント10から受信したバリアブルデータファイルを他のバリアブル記述言語に対応したバリアブルプリンタ16で利用できなくなるため、予め、レイアウト定義ファイル毎に、バリアブルデータファイルのデータ構造の仕様を標準化しておき、項目定義XMLファイルに記述する。
【0032】
このようにしておくことで、項目定義XMLファイルを参照し、クライアント10から受信するバリアブルデータファイルのデータ構造を、バリアブル印刷に利用するバリアブルプリンタ16に対応したデータ構造に変換することで、クライアント10から受信するバリアブルデータファイルを用いて、任意のバリアブルプリンタ16で印刷できるようになる。
【0033】
ここから、本発明の詳細内容について説明する。まず、テンプレート、並びに、テンプレートに含まれるレイアウト定義XMLファイルおよび項目定義XMLファイルについて詳細に説明する。
【0034】
図2は、印刷物のレイアウトデザインのレイヤ構成を説明する図である。レイアウトデザインは複数のレイヤを備え、図2において、レイアウトデザイン2は、レイヤとして、バリアブル印刷の背景、すなわち、固定の画像が配置される背景レイヤ20と、バリアブルデータが埋め込まれるバリアブルフィールドが配置されるバリアブルレイヤ21を備えている。
【0035】
図3はレイアウトデザインの一例を説明する図である。図3で図示したレイアウトデザイン2aは、ダイレクトメール葉書用のレイアウトデザインで、図3において、点線で描写された四角枠で囲まれた領域は、レイアウトデザイン2aに配置されたバリアブルフィールド210〜219を示し、実線で描写された絵柄200は、レイアウトデザイン2aに配置された固定の絵柄である。
【0036】
図4は、図3で図示したレイアウトデザイン2aの背景レイヤ20aを説明する図で、図5は、図3で図示したレイアウトデザイン2のバリアブルレイヤ21aを説明する図である。図4に図示したように、レイアウトデザイン2aの背景レイヤ20aには、図3において固定の絵柄、すなわち、実線で描写された絵柄200が配置されている。また、図5に図示したように、レイアウトデザイン2aのバリアブルレイヤ21aには、図3に配置されたバリアブルフィールド210〜219が配置される。
【0037】
オーサリングソフトでは、レイアウトデザインを設計するときに、テキストが埋め込まれるバリアブルフィールドと、画像が埋め込まれるバリアブルフィールドをバリアブルレイヤに配置でき、バリアブルフィールドには、バリアブルフィールドが設定された座標、バリアブルフィールドに埋め込まれるデータの形式(テキスト或いは画像)と、バリアブルフィールドを識別するための名称などが設定される。
【0038】
図5で図示したバリアブルレイヤ21に配置されたバリアブルフィールド210は、名称が「郵便番号」であるテキストのバリアブルフィールドで、バリアブルフィールド211は、名称が「住所1」で、送り先の都道府県・市区郡が埋め込まれるテキストのバリアブルフィールドで、バリアブルフィールド212は、名称が「住所2」で、送り先の町村域・番地が埋め込まれるテキストのバリアブルフィールドで、バリアブルフィールド213は、名称が「住所3」で、送り先の建物名が埋め込まれるテキストのバリアブルフィールドで、バリアブルフィールド214は、名称が「氏名」で、送り先の氏名が埋め込まれるテキストのバリアブルフィールドである。
【0039】
また、図5で図示したバリアブルレイヤ21に配置されるバリアブルフィールド215は、名称が「案内画像」で、ダイレクトメールの案内内容(例えば、新製品発表)を示す画像が埋め込まれるバリアブルフィールドで、バリアブルフィールド216は、名称が「商品画像」で、ダイレクトメールの対象となる商品を示す画像が埋め込まれるバリアブルフィールドで、バリアブルフィールド217は、名称が「店舗画像」で、ダイレクトメールの送り元の店舗を示す画像が埋め込まれるバリアブルフィールドで、バリアブルフィールド218は、名称が「担当画像」で、送り先の担当者を示す画像が埋め込まれるバリアブルフィールドで、バリアブルフィールド219は、名称が「地図画像」で、ダイレクトメールの送り元の店舗を案内する地図を示す画像が埋め込まれるバリアブルフィールドである。
【0040】
オーサリングソフトのプラグインの機能によって、オーサリングソフトにおいて設計されたレイアウトデザインの内容、すなわち、背景レイヤとバリアブルレイヤの内容から、レイアウト定義XMLファイルおよび項目定義XMLファイルを含むテンプレートが生成される。
【0041】
図6は、テンプレートを説明する図である。図6で図示したテンプレート3には、レイアウト定義XMLファイル30および項目定義XMLファイル31が含まれ、レイアウト定義XMLファイル30および項目定義XMLファイル31それぞれは、それぞれのスキーマに沿って、マークアップ言語であるXML(XML: eXtensible Markup Language)で記述される。
【0042】
図7は、図3で図示したレイアウト2aに対応するレイアウト定義XMLファイル30aを説明する図である。レイアウト定義XMLファイル30aによって、図4で図示した背景レイヤ20aの内容と、図5で図示したバリアブルレイヤ21aに配置されるバリアブルフィールドの内容が定義される。
【0043】
図7で図示したレイアウト定義XMLファイル30aおいては、form要素300内にレイアウト定義XMLファイル30aの内容が記述され、form要素300の子要素であるhead要素301では、テンプレートの名称や両面印刷の有無などが記述され、form要素300の子要素であるslipsheet要素302では、合紙の用紙と合紙に印刷するシリアル番号などが記述され、form要素300の子要素であるlayerset要素303では、レイアウトデザインaに含まれるレイヤが定義される。
【0044】
layerset要素303のname属性に、各レイヤの名称(ここでは、「背景」および「バリアブルフィールド」)が記述され、各ページの内容は、page要素308を用いて記述され、各ページにおける各レイヤの内容は、page要素308の子要素であるlayer要素304内に記述される。
【0045】
図7においては、layer要素304のname属性の値は、layer要素304で記述するレイヤの名称である。ここでは、name属性の値が「背景」であるlayer要素304内に、図4で図示した背景レイヤ20aの内容が記述され、name属性の値が「バリアブル」であるlayer要素304内に、図5で図示したバリアブルレイヤ21aの内容が記述される。
【0046】
name属性の値が「背景」であるlayer要素304内に記述されているbaseimage要素305は、図4で図示した背景レイヤ20aに配置された固定の絵柄すべてのイメージである画像ファイルを定義する要素で、baseimage要素305内に、画像ファイルのファイル名(ここでは、「背景.eps」)がfilename要素305aと、この画像ファイルが配置される開始座標(ここでは、X軸の開始座標が「0.00」、Y軸の開始座標が「0.25」)がstartX要素305bとstartY要素305cによって定義されている。
【0047】
name属性の値が「バリアブル」であるlayer要素304内に記述されるfield要素306は、図5で図示したバリアブルレイヤ21aに配置されたテキストのバリアブルフィールドの詳細内容を定義する要素で、図7においては、図5で図示したテキストのバリアブルフィールを定義するfield要素306として、名称が「郵便番号」のバリアブルフィールドを定義するfield要素306と、名称が「住所1」のバリアブルフィールドを定義するfield要素306と、名称が「住所2」のバリアブルフィールドを定義するfield要素306と、名称が「住所3」のバリアブルフィールドを定義するfield要素306と、名称が「住所1」のバリアブルフィールドを定義するfield要素306が記述されている。
【0048】
更に、image要素307は、画像のバリアブルフィールドの詳細内容を定義する要素で、図5で図示したバリアブルレイヤに配置された画像のバリアブルフィールドを定義するimage要素307として、名称が「案内画像」のバリアブルフィールドを定義するimage要素307と、名称が「商品画像」のバリアブルフィールドを定義するimage要素307と、名称が「店舗画像」のバリアブルフィールドを定義するimage要素307と、名称が「担当画像」のバリアブルフィールドを定義するimage要素307と、名称が「地図画像」のバリアブルフィールドを定義するimage要素307が記述されている。
【0049】
図8は、テキストのバリアブルフィールドの内容を記述するfield要素306を説明する図で、名称が「郵便番号」のバリアブルフィールドを定義するfield要素306を説明する図である。図8で図示したfield要素306において、バリアブルフィールドの名称(ここでは、「郵便番号」)はfieldname要素306aを用いて記述される。
【0050】
図5で図示したように、バリアブルフィールドは四角形で定義されるため、バリアブルフィールドを配置する領域は2つの座標、ここでは、スタート座標と、スタート座標と対角になるボトム座標で定義されている。スタート座標は、startX要素306bとstartY要素306cを用いて記述され、図8において、X軸のスタート座標は「21.00」、Y軸のスタート座標は「24.00」である。また、ボトム座標は、bottomX要素306dとbottomY要素306eを用いて記述され、X軸のボトム座標は「21.00」、Y軸のボトム座標は「27.53」である。
【0051】
また、field要素306には、バリアブルデータファイルに含まれるテキストのバリアブルデータの中から、field要素306で定義されるバリアブルフィールドに埋め込むテキストを定義するusecolumn要素306iと、テキストのバリアブルデータを埋め込む位置を定義するCtext要素306jが記述される。
【0052】
usecolumn要素306iの要素値には、バリアブルフィールドに代入するテキストのバリアブルデータに対応する変数名(図8では、「yubin」)が記述されている。Ctext要素306jの要素値には、この変数名が「[[]]」で括られて記述され(ここでは、[[yubin]])、「()」で括られた変数名の箇所にテキストのバリアブルデータが埋め込まれて印刷される。
【0053】
加えて、図8で図示したfield要素306には、テキストのフォントを定義する要素306f、テキストのカラーを決定付けるCMYKを定義する要素306g、テキストの加工(縮小・拡大、回転など)を定義する要素306hなどが記述される。
【0054】
図9は、画像のバリアブルフィールドの内容を記述する image要素307を説明する図で、名称が「店舗画像」のバリアブルフィールドを定義するimage要素307を説明する図である。図9で図示したimage要素307において、バリアブルフィールドの名称(ここでは、「店舗画像」)はfieldname要素307aを用いて記述される。
【0055】
図5で図示したように、バリアブルフィールドは四角形で定義されるため、バリアブルフィールドを配置する領域は2つの座標、ここでは、スタート座標と、スタート座標の対角となるボトム座標で定義することができる。図9において、スタート座標は、startX要素307cとstartY要素307dを用いて記述され、X軸のスタート座標は「25.00」、Y軸のスタート座標は「123.00」である。また、ボトム座標は、bottomX要素307eとbottomY要素307fを用いて記述され、X軸のボトム座標は「65.00」、Y軸のボトム座標は「123.00」である。
【0056】
また、image要素307には、画像のバリアブルフィールドに埋め込む画像ファイルのファイル形式を定義するfiletype属性307gと、バリアブルデータファイルに含まれる画像のバリアブルデータの中から、image要素307で定義されるバリアブルフィールドに代入される画像を定義するために、usecolumn要素307bが記述される。usecolumn要素307bは、バリアブルフィールドに代入する画像ファイルのファイル名が代入される変数名(ここでは、「image_gazou」)を定義する要素である。加えて、図9で図示したimage要素307には、画像の加工(縮小・拡大、回転など)を定義する要素307hが記述される。
【0057】
項目定義XMLファイルを説明する前に、本実施形態の説明に利用するバリアブルデータファイルについて説明する。図10は、クライアント10からポータルサーバ11に送信される入稿ファイルの構成を説明する図である。
【0058】
図10に図示したように、本実施形態において、クライアント10からポータルサーバ11に送信される入稿ファイル4には、バリアブル印刷に利用するテンプレートおよびバリアブルプリンタ16の識別データが記憶される一つのJOBデータファイル40、テキストのバリアブルフィールドに埋め込まれるテキストや、画像のバリアブルフィールドに埋め込まれる画像ファイルのファイル名がバインディングされたバリアブルデータファイル41と、バリアブルデータファイル41にファイル名が記載された複数の画像ファイル42が含まれ、これらのファイルは受注番号に関連付けられて、データベースサーバ12に記憶される。
【0059】
図11は、本実施形態におけるバリアブルデータファイル41の構造を説明する図で、図11(a)は、バリアブルデータファイル41の元になる2次元のデータテーブル41bを説明する図で、図11(b)は、図11(a)のデータテーブルが表現されたバリアブルデータファイル41aである。
【0060】
図11(a)に図示したように、バリアブルデータファイル41aの元になるデータテーブル41bは2次元のデータテーブルで、データテーブル41bは、複数のカラムと複数のレコードから構成され、データテーブル41bに含まれる各テキストデータ、および、バリアブルデータとして利用される画像ファイルに対応する各画像ファイル名が記述される。なお、これ以降、カラムの番号およびレコードの番号を「〔〕」で括って表記する。
【0061】
カラム[1]には、郵便番号を示す7桁の数字が記述され、カラム[2]には都道府県・市区郡を示すテキストが記述され、カラム[3]には町村域・番地を示すテキストが記述され、カラム[4]には建物名を示すテキストが記述され、カラム[5]には姓を示すテキストが記述され、カラム[6]には名を示すテキストが記述される。
【0062】
更に、カラム[7]には、ダイレクトメールの主題の文字などが描写された案内画像が記憶され画像ファイル名が記述され、カラム[8]には、ダイレクトメールを発送する店舗が描写された店舗画像が記憶され画像ファイル名が記述され、カラム[9]には、ダイレクトメールで案内する店舗の地図が描写された地図画像が記憶され画像ファイル名が記述され、カラム[10]には、ダイレクトメールの案内先の担当の写真が描写された担当画像が記憶された画像ファイル名が記述され、カラム[11]には、ダイレクトメールで案内する商品が描写された商品画像が記憶され画像ファイル名が記述される。
【0063】
図11(a)で図示した2次元のテーブルがCSV形式のテキストとして出力されることでバリアブルデータファイル41aは生成される。図12(b)に図示したように、CSV形式のバリアブルデータファイル41aにおいて、データテーブル41bに含まれるそれぞれレコードは改行コード(CR+LF)で区切られて記述され、各々のレコードに含まれるカラム値はコンマ「,」で区切られる。
【0064】
図11(b)においては、例えば、「162-0061,東京都新宿区, 加賀町1-1-1,,大日本,A郎,open.eps, shop1.eps, map1.eps,tantou1.eps,syouhin.eps」までが、図12(a)で図示したデータテーブルのレコード[1]の内容で、レコード[1]に含まれるカラム値は、カラムの並び順にコンマで区切られて記述されている。
【0065】
「1620061,東京都新宿区, 加賀町1-1-1,,大日本,A郎,open.eps,shop1.eps, map1.eps,tantou1.eps,syouhin1.eps」の内容に従えば、カラム[1]のカラム値は「1620061」で、カラム[2]のカラム値は「東京都新宿区」で、カラム[3]のカラム値は「加賀町1-1-1」で、カラム[4]のカラム値はNULLで、カラム[5]のカラム値は「大日本」で、カラム[6]のカラム値は「A朗」で、カラム[7]のカラム値は「open.eps」で、カラム[8]のカラム値は「shop1.eps」で、カラム[9]のカラム値は「map1.eps」で、カラム[10]のカラム値は「tantou1.eps」で、カラム[11]のカラム値は「syouhin1.eps」である。
【0066】
ここから、項目定義XMLファイルについて説明する。項目定義XMLファイルは、バリアブルデータファイルのデータ構造と、バリアブルデータに対応付けるバリアブルフィールドが、XMLで記述されたテキストファイルで、図12は、図11で図示したバリアブルデータファイル用の項目定義XMLファイル31aを説明する図である。
【0067】
項目定義XMLファイル31aの内容はfields要素310内に記述され、fields要素300の子要素であるfield要素311は、図11で図示したバリアブルデータファイル41aに含まれる各バリアブルデータを定義する要素である。
【0068】
field要素311のcolumn属性は、バリアブルデータが記述されているカラム番号を指定する属性で、name属性は、レイアウト定義XMLファイルに記載された変数名の中から、このカラムに記述されたバリアブルデータに対応する変数名を定義する属性で、id属性はデータ形式を指定する属性である。
【0069】
id属性の値が「image」であるときは、そのカラムのカラム値が画像ファイルの画像ファイル名であることを意味し、「image」以外の値であるときは、そのカラムのカラム値がテキストであることを意味している。
【0070】
なお、id属性の値が「image」であるときは、id属性の後に、画像の横方向の大きさを指定する属性であるwidth属性、画像の横方向の大きさを指定する属性であるheight属性、単位を示すunit属性が記述される。
【0071】
図12で図示した項目定義XMLファイル31aのfield要素311の数から、バリアブルデータファイル41aに含まれるカラムの数、すなわち、バリアブルデータファイル41aに含まれるバリアブルデータの数がわかり、その数は11個である。
【0072】
field要素311のid属性から、バリアブルデータファイル41aに含まれるバリアブルデータのデータ形式(テキストデータ或いは画像ファイル)であるかわかり、column属性の値からとname属性の値から、バリアブルデータファイル41aのカラムに記述されたバリアブルデータ(テキストデータ或いは画像ファイル)が埋め込まれる変数名がわかり、この変数名を有するfield要素306或いはimage要素307に、バリアブルデータファイル41aのカラムで示されるバリアブルデータが埋め込まれる。
【0073】
例えば、name属性が「yubin」であるfield要素311のid属性は「image」でないので、このfield要素311で定義されるバリアブルデータはテキストデータであることがわかり、そして、column属性の値は「1」であるので、バリアブルデータファイル41aのカラム[1]に記述されたテキストデータは、usecolumn要素306iの値が「yubin」であるfield要素306(図8で図示したfield要素306)で定義される箇所に埋め込まれることがわかる。
【0074】
ここから、バリアブルデータファイルおよびテンプレートからプリンタ制御コードを生成するプリンタコード生成サーバ14について詳細に説明する。図13は、プリンタコード生成サーバ14のブロック図で、図13(a)は回路ブロック図、図13(b)は機能ブロック図である。
【0075】
図13(a)に図示した様に、プリンタコード生成サーバ14は、中央演算処理装置14a(CPU: Central Processing Unit)、メインメモリとなるRAM14c(RAM: Random Access Memory)、BIOSが実装されるROM14b(ROM: Read-Only Memory)、ネットワーク通信するためのネットワークインターフェース14d、大容量のデータ記憶装置であるハードディスク14eなどを備えた汎用的なサーバで実現される。
【0076】
図13(b)に図示した様に、プリンタコード生成サーバ14は、本発明を実現するための機能として、テンプレートおよびバリアブルデータファイルからプリンタ制御コードを生成する手段として機能するコンピュータプログラムであるプリンタコード生成プログラム140を、バリアブル印刷システム1に設置されているバリアブルプリンタ16の識別データに関連付けて記憶している。
【0077】
プリンタコード生成サーバ14が、バリアブル印刷システム1に設置されているバリアブルプリンタ16の機種毎にプリンタ生成プログラムを記憶するのは、バリアブルプリンタ16の機種に対応したプリンタコード生成プログラムを生成するためである。
【0078】
例えば、図1で図示したバリアブル印刷システム1において、バリアブル記述言語がPPML/VDXに対応したバリアブルプリンタ16と、バリアブル記述言語がVIPPに対応したバリアブルプリンタ16に対応したバリアブルプリンタ16の2台が設置されているため、図13(b)で図示したように、プリンタコード生成サーバ14には、PPML/VDXに対応したバリアブルプリンタ16用のプリンタコード生成プログラムと、VIPPに対応したバリアブルプリンタ16用のプリンタコード生成プログラムの2つがハードディスク14eに記憶される。
【0079】
プリンタコード生成サーバ14に実装されるプリンタコード生成プログラム140とは、バリアブルプリンタ16が対応しているバリアブル記述言語の仕様書(例えば、PODi(Print On Demand Initiative)が開示している「PPML Specifications」)を参考にしながら開発されるコンピュータプログラムで、レイアウト定義XMLファイルに記述されるタグ要素毎に、タグ要素で定義されている内容をタグ要素に対応したバリアブル記述言語の書式に変換するモジュールを備えている。
【0080】
例えば、バリアブル記述言語がXMLで記述されるとき、プリンタコード生成プログラム140は、レイアウト定義XMLファイルのXMLをバリアブル記述言語のXMLに変換する。
【0081】
このとき、プリンタコード生成プログラム140は、バリアブル記述言語のスキーマを有し、レイアウト定義XMLファイルのスキーマとバリアブル記述言語のスキーマを比較しながら、レイアウト定義XMLファイルのタグ要素の構造をバリアブル記述言語のタグ要素の構造に変換することで、プリンタ制御コードを生成する。
【0082】
なお、このプリンタコード生成プログラムには、バリアブルプリンタ16の機械仕様、例えば、解像度、階調、出力可能なフォーマット(PDF、TIFFなど)が盛り込まれていることが望ましい。なぜなら、同じバリアブル記述言語に対応したバリアブルプリンタ16であっても、バリアブルプリンタ16の機械仕様は異なるケースがあるからである。
【0083】
ここから、プリンタコード生成サーバ14が、テンプレートおよびバリアブルデータファイルからプリンタ生成コードを生成する手順について説明する。図14は、プリンタコード生成サーバ14の動作手順を示したフロー図である。
【0084】
プリンタコード生成サーバ14がプリンタ制御コードを生成するときの入力は、テンプレート、バリアブルデータファイルが記憶されているパス、及び、バリアブルプリンタ16の識別データで、テンプレートおよびバリアブルデータファイルの識別データは、JOBコントローラサーバ13から指定される(S1)。
【0085】
例えば、図10のファイル構成に従えば、JOBコントローラサーバ13から受注番号が指定されることで、受注番号で特定されるJOBデータファイル40とバリアブルデータファイル41を特定でき、更に、JOBデータファイル40から、プリンタ制御コードを生成するときに利用するテンプレートとバリアブルプリンタの識別データが特定できる。
【0086】
プリンタコード生成サーバ14は、プリンタ制御コードを生成するときに利用するテンプレート、バリアブルデータファイルが記憶されているパス、および、バリアブルプリンタ16を特定すると、テンプレートの識別データおよびバリアブルデータファイルが記憶されているパスを引数として、識別データで特定されるバリアブルプリンタ16に対応するバリアブル記述言語用のプリンタコード生成プログラム140を呼び出し、プリンタ制御コードの生成を開始する(S2)。
【0087】
プリンタコード生成プログラム140は、テンプレートの識別データ、および、バリアブルデータファイルが記憶されているパスが引き渡されると、識別データで特定されるテンプレートに含まれる項目定義XMLファイルを読み取り、項目定義XMLファイルのスキーマを参照して、バリアブルデータファイルのデータ構造を解析し、バリアブル記述言語の仕様に合わせて、バリアブルデータファイルのデータ構造に変換する(S3)。
【0088】
例えば、バリアブル記述言語の仕様によっては、バリアブルデータファイルに含まれるバリアブルデータが記憶されたデータベースを、バリアブル記述言語の仕様に合わせ、データベースサーバ12上に構築する。また、バリアブルプリンタ16の仕様以外の形式の画像ファイルがあれば、画像ファイルの形式をバリアブル記述言語の仕様に合わせた形式に変換する。
【0089】
そして、プリンタコード生成プログラム140は、テンプレートに含まれるレイアウト定義ファイルに記述されているタグ要素を解析し、このタグ要素をタグ要素に対応したバリアブル記述言語の書式に変換することで、バリアブル記述言語で記述されたプリンタ制御コードを生成する(S4)。
【0090】
レイアウト定義ファイルに記述されているタグ要素をバリアブル記述言語の書式に変換する処理は、バリアブル記述言語の仕様に依存する。例えば、バリアブル記述言語がVIPPのときは、データベースサーバ12上に生成したフォルダに記憶されたバリアブルデータをバリアブルプリンタ16が読み出すために、プリンタ制御コードにこのフォルダのパスをバリアブル記述言語の所定のコマンドの引数として埋め込まれる。また、バリアブル記述言語がDS-postscriptのときは、テキストのバリアブルデータのみが埋め込まれたプリンタ制御コードが印刷物の数に応じて生成される。
【0091】
プリンタコード生成サーバ14が生成したプリンタ制御コードは、特定したバリアブルプリンタ16のプリンタサーバ15に送信され、バリアブルプリンタ16でプリンタ制御コードが解釈・実行されて、印刷物がバリアブル印刷される(S5)。
【0092】
ここから、図1で図示したバリアブ印刷システムの一連の動作について説明する。図15は、バリアブル印刷システム1において印刷物を受注するときのフロー図で、図16は、バリアブル印刷システム1において印刷物をバリアブル印刷するときのフロー図である。
【0093】
まず、図15を参照しながら、バリアブル印刷システム1において印刷物を受注するとき手順について説明する。図1で図示したバリアブル印刷システム1を構成するクライアント10にはブラウザが実装され、発注者は印刷物を発注するとき、ブラウザを操作してポータルサーバ11にアクセスする(S10)。
【0094】
ポータルサーバ11のWebページを利用して、印刷に利用するバリアブルデータなどが含まれる入稿フォルダを指定すると、ActiveXコントロールの技術などを利用して、クライアント10上で動作するコンピュータプログラムであるポータルアプリケーションが、ポータルサーバ11からクライアント10に送信され、このポータルアプリケーションがクライアント10上で起動する(S11)。
【0095】
ポータルアプリケーションは、例えば、指定されたJOBデータファイル40を読み取り、JOBデータファイル40に記述されているテンプレートの識別データをポータルサーバ11に送信し、ポータルサーバ11は、テンプレートに含まれる項目定義XMLファイルをクライアント10に送信する(S12)。
【0096】
ポータルアプリケーションは、ポータルサーバ11から送信された項目定義XMLファイルを解析し、指定されたバリアブルデータファイルのフォーマットをチェックし(S13)、バリアブルデータファイルのフォーマットにエラーが無ければ、入稿されるファイル一式をポータルサーバ11に送信する(S14)。
【0097】
ポータルサーバ11は、クライアント10で起動しているポータルアプリケーションからファイル一式が送信されると、受注番号を付与するなどして、これらのファイルをデータベースサーバ12に記憶し(S15)、図15で図示したフローは終了する。
【0098】
次に、図16を参照しながら、バリアブル印刷システム1において印刷物をバリアブル印刷するときの手順について説明する。JOBコントローラサーバ13は、一定時間毎に、データベースサーバ12に登録された印刷物の受注状況を確認し、新規に登録された印刷物の受注があれば、バリアブル印刷の予定を自動的に組み、印刷の予定に合わせて、プリンタコード生成サーバ14にプリンタ制御コードの生成を指示する(S20)。
【0099】
JOBコントローラサーバ13がプリンタコード生成サーバ14は、バリアブルプリンタ16の識別データと受注番号を指定するなどして、プリンタ制御コードを生成するときに利用するバリアブルデータファイルとバリアブル印刷に利用するバリアブルプリンタ16を特定できるようにして、プリンタコード生成サーバ14にプリンタ制御コードの生成を指示する。
【0100】
プリンタコード生成サーバ14は、例えば、受注番号に関連付けられたJOBデータファイル40に記載されたテンプレートをデータベースサーバ12から取得し、指定されたバリアブルプリンタ16に対応したバリアブル記述言語用のプリンタコード生成プログラム140を起動させ、テンプレートに含まれるレイアウト定義XMLファイルおよび項目定義XMLファイルを参照しながら、プリンタコード生成コードを生成する(S21)。この処理については、既に詳細に説明している。
【0101】
プリンタコード生成サーバ14はプリンタ制御コードを生成すると、指定されたバリアブルプリンタ16のプリンタサーバ15に対してプリンタ制御コードを送信し、指定されたバリアブルプリンタ16にて、プリンタコード生成サーバ14が生成したプリンタ制御コードが解釈・実行されて、受注した印刷物がバリアブル印刷される(S22)。
【図面の簡単な説明】
【0102】
【図1】バリアブル印刷システムの構成を説明する図。
【図2】印刷物のレイアウトデザインのレイヤ構成を説明する図。
【図3】レイアウトデザインの一例を説明する図。
【図4】背景レイヤを説明する図。
【図5】バリアブルレイヤを説明する図。
【図6】テンプレートを説明する図。
【図7】レイアウト定義XMLファイルを説明する図。
【図8】field要素を説明する図。
【図9】image要素を説明する図。
【図10】ポータルサーバに送信されるファイル構成を説明する図。
【図11】バリアブルデータファイルの構造を説明する図。
【図12】項目定義XMLファイルを説明する図。
【図13】プリンタコード生成サーバのブロック図。
【図14】プリンタコード生成サーバの動作手順を示したフロー図。
【図15】印刷物を受注するときのフロー図。
【図16】印刷物をバリアブル印刷するときのフロー図。
【符号の説明】
【0103】
1 バリアブル印刷システム
10 クライアント
11 ポータルサーバ
12 データベースサーバ
13 JOBコントローラサーバ
14 プリンタコード生成サーバ
140 プリンタコード生成プログラム
15 プリンタサーバ
16 バリアブルプリンタ
3 テンプレート
30、30a レイアウト定義XMLファイル
31、31a 項目定義XMLファイル
【技術分野】
【0001】
本発明は、印刷物ごとに内容を変更して印刷するバリアブル印刷を行う方法およびシステムに関し、更に詳しくは、バリアブル印刷を自動化するための技術に関する。
【背景技術】
【0002】
インターネットの高速化に伴い、Webを利用した入稿システムであるWebtoprintシステムが開発され、Webtoprintシステムにおいては、入稿作業が電子化されることで、印刷物の受注作業や印刷作業の効率化が図られる。
【0003】
Webtoprintシステムに関する発明としては、例えば、特許文献1では、発注側の要求に合わせた形態で必要な個別印刷物(ダイレクトメール)を提供するシステムが開示されている。
【0004】
特許文献1で開示されているシステムを構成するサーバは、印刷に利用する画像データやテキストデータを記憶するデータベースを備え、発注側からの申込情報に基づいて、バリアブルフィールドを含む印刷物作成指示データを生成し、生成した印刷物作成指示データに含まれるバリアブルフィールドに素材データを配置することで、デジタルプリンタに出力するPDF形式の印刷イメージデータを作成する。
【0005】
特許文献1で開示されているように、PDF形式のイメージファイル(または、ページ記述言語であるPOSTSCRIPのイメージファイル)をデータベースに記憶すると、OnetoOneマーケティングで利用されるダイレクトメールのように、それぞれ内容の異なる印刷物をバリアブル印刷するときは、PDF形式のイメージファイル(または、POSTSCRIPのイメージファイル)を印刷物毎に用意しデータベースに記憶しなければならず、すべてのイメージファイルを記憶するために必要な記憶容量や、デジタルプリンタに送信する通信量が増えてしまう問題があった。
【0006】
このような問題を解決するために、バリアブル印刷用に開発されたページ記述言語であるバリアブル記述言語が開発され、既に実用化されている。バリアブル記述言語としては、VIPP(VIPP: Variable-data Intelligent PostScript Printware)などが有名である。
【0007】
例えば、印刷物で共通のページレイアウトをVIPPのコードで記述することで、印刷物で共通のページレイアウトは一つで済むため、バリアブル印刷に必要な記憶容量を少なくすることができ、更に、デジタルプリンタに送信するデータ量を少なくすることができる。
【0008】
【特許文献1】特開2003−241910号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
しかしながら、印刷会社において、VIPPに代表されるようなバリアブル記述言語を利用すると、受注する印刷物のページレイアウト毎に、VIPPに代表されるようなバリアブル記述言語で記述されたアプリケーションを人手で作成しなければならず、Webtoprintシステムの自動化を図るときのネックとなっていた。
【0010】
そこで、本発明は、VIPPに代表されるような、バリアブル印刷用に開発されたページ記述言語であるバリアブル記述言語で記述されたアプリケーションを人手で作成することなく、バリアブル印刷を実行することのできる方法およびシステムを提供することを目的とする。
【課題を解決するための手段】
【0011】
上述した課題を解決する第1の発明は、バリアブルプリンタが解釈・実行するプリンタ制御コードを自動的に生成してバリアブル印刷を実行するバリアブル印刷方法であって、バリアブルデータを割り当てるバリアブルフィールドのレイアウトが少なくとも所定の書式で記述されたレイアウト定義ファイルを少なくとも含むテンプレートを、バリアブル印刷する印刷物毎に用意しておき、
ステップa)ポータルサーバが、ネットワークを介して、前記バリアブルデータが記憶されたバリアブルデータファイルを受信し、データ記憶装置に記憶させるステップ、
ステップb)プリンタ制御コードを生成する前記プリンタコード生成サーバが、指定された前記テンプレートに含まれる前記レイアウト定義ファイルを解析し、前記レイアウト定義ファイルの書式を、バリアブル印刷に用いる前記バリアブルプリンタに対応したバリアブル記述言語の書式に変換することで、前記バリアブルデータを埋め込んで印刷するための前記プリンタ制御コードを生成し、前記プリンタ制御コードを前記バリアブルプリンタに送信するステップ、
ステップc)前記バリアブルプリンタが、前記プリンタコード生成サーバが生成した前記プリンタ制御コードを解釈・実行し、前記データ記憶装置に記憶された前記バリアブルデータファイルに含まれる前記バリアブルデータをマージして、バリアブル印刷を実行するステップ、
が含まれることを特徴とするバリアブル印刷方法である。
【0012】
上述した第1の発明によれば、印刷物のレイアウトが定義される前記レイアウト定義ファイルを前記テンプレートに含ませ、前記レイアウト定義ファイルの書式を定めておけば、前記プリンタコード生成サーバが、前記レイアウト定義ファイルの書式をバリアブル記述言語の書式に変換すれば、前記プリンタコード生成サーバが前記プリンタ制御コードを自動的に生成できるようになる。
【0013】
なお、複数種の前記バリアブルプリンタが設置されている場合であっても、前記レイアウト定義ファイルを用意しておけば、印刷物のレイアウトデザインを定義したデータは一つで済む。
【0014】
第2の発明は、第1の発明に記載のバリアブル印刷方法であって、前記バリアブルデータファイルのデータ構造と、前記バリアブルデータと前記バリアブルフィールドを対応付けが、所定の書式で記述された項目定義ファイルを前記テンプレートに含ませ、前記ステップa)において、前記ポータルサーバは、前記項目定義ファイルで定義されたデータ構造に準じた前記バリアブルデータを受信し、前記項目定義ファイルで定義されたデータ構造に準じ、前記ステップb)において、前記プリンタコード生成サーバが、指定された前記テンプレートに含まれる前記項目定義ファイルを解析し、前記データ記憶装置に記憶された前記バリアブルデータファイルのデータ構造をバリアブル記述言語に適したデータ構造に変換することを特徴とするバリアブル印刷方法である。
【0015】
第2の発明によれば、レイアウトデザイン毎に、前記バリアブルデータファイルのデータ構造などを標準化しておき、この内容を前記項目定義XMLファイルに記述し、前記バリアブルデータファイルのデータ構造をバリアブル記述言語に適したデータ構造に変換すれば、一つの前記バリアブルデータファイルを様々な前記バリアブルプリンタで利用することが可能になる。
【0016】
第3の発明は、第2の発明に記載のバリアブル印刷方法であって、前記テンプレートに含まれる前記レイアウト定義ファイルおよび前記項目定義ファイルはXML形式のデータファイルであって、前記ステップb)において、前記プリンタコード生成サーバは、前記レイアウト定義ファイルおよび前記項目定義ファイルのスキーマを利用して、前記レイアウト定義ファイルおよび前記項目定義ファイルを解析し、前記プリンタ制御コードを生成することを特徴とするバリアブル印刷方法である。
【0017】
前記テンプレートに含まれる前記レイアウト定義ファイルおよび前記項目定義ファイルはXML形式のデータファイルとすれば、前記レイアウト定義ファイルおよび前記項目定義ファイルにスキーマによって、前記レイアウト定義ファイルおよび前記項目定義ファイルが記述されるため、本発明に係わる方法を実施するシステムに含まれる各コンピュータのコンピュータプログラムをそれぞれ独立して開発することが可能になる。
【0018】
更に、前記レイアウト定義ファイルはタグ要素を用いて記述されるため、レイアウト定義ファイルのタグ要素毎に、このタグ要素に対応するバリアブル記述言語の書式を用意しておけば、前記レイアウト定義ファイルの書式をバリアブル記述言語の書式に変換するプログラムの作成が容易になる。
【0019】
第4の発明は、バリアブルプリンタが解釈・実行するプリンタ制御コードを自動的に生成してバリアブル印刷を実行するバリアブル印刷システムであって、
ネットワークを介して、バリアブルフィールドに割り当てられるバリアブルデータが記憶された前記バリアブルデータファイルを受信し、受信した前記バリアブルデータファイルをデータ記憶装置に記憶させるポータルサーバと、
前記バリアブルデータを割り当てる前記バリアブルフィールドのレイアウトが少なくとも所定の書式で記述されたレイアウト定義ファイルを少なくとも含むテンプレートと前記バリアブルデータファイルが指定されると、前記テンプレートに含まれる前記レイアウト定義ファイルを解析し、前記レイアウト定義ファイルの書式を、バリアブル印刷に利用する前記バリアブルプリンタに対応したバリアブル記述言語の書式に変換することで、前記バリアブルデータを埋め込んで印刷するためのプリンタ制御コードを生成するプリンタコード生成サーバと、
前記プリンタコード生成サーバが生成した前記プリンタ制御コードを解釈・実行し、前記データ記憶装置に記憶された前記バリアブルデータファイルに含まれる前記バリアブルデータを前記バリアブルフィールドの箇所にマージして、バリアブル印刷を実行する前記バリアブルプリンタと、
を備えたことを特徴とするバリアブル印刷システムである。
【0020】
第5の発明は、第4の発明に記載のバリアブル印刷システムであって、前記バリアブルデータファイルのデータ構造と、前記バリアブルデータと前記バリアブルフィールドを対応付けが、所定の書式で記述された項目定義ファイルを前記テンプレートに含ませ、
前記ポータルサーバが受信する前記バリアブルデータファイルは、前記項目定義ファイルで定義されたデータ構造に準じ、
前記プリンタコード生成サーバは、指定された前記テンプレートに含まれる前記項目定義ファイルを解析し、前記データ記憶装置に記憶された前記バリアブルデータファイルのデータ構造をバリアブル記述言語に適したデータ構造に変換する、
ことを特徴とするバリアブル印刷システムである。
【0021】
第6の発明は、第5の発明に記載のバリアブル印刷システムであって、前記テンプレートに含まれる前記レイアウト定義ファイルおよび前記項目定義ファイルはXML形式のデータファイルであって、前記プリンタコード生成サーバは、前記レイアウト定義ファイルおよび前記項目定義ファイルのスキーマを利用して、前記レイアウト定義ファイルおよび前記項目定義ファイルを解析し、前記プリンタ制御コードを生成することを特徴とするバリアブル印刷システムである。
【発明の効果】
【0022】
このように、上述した本発明によれば、VIPPに代表されるような、バリアブル印刷用に開発されたページ記述言語であるバリアブル記述言語で記述されたアプリケーションを人手で作成することなく、バリアブル印刷を実行することのできる方法およびシステムを提供できる。
【発明を実施するための最良の形態】
【0023】
ここから、本発明に係わるバリアブル印刷方法およびバリアブル印刷システム1について、図を参照しながら詳細に説明する。図1は、本発明が適用されたバリアブル印刷システム1の構成を説明する図である。
【0024】
図1で図示したバリアブル印刷システム1は、インターネット17を介して受注した印刷物を自動で処理するために構築されたシステムで、バリアブル印刷に利用するバリアブルデータが含まれるバリアブルデータファイルをポータルサーバ11に送信するクライアント10と、印刷物を受注するために設けられるポータルサーバ11と、バリアブルデータファイルなどが受注案件毎に記憶されるデータベースサーバ12と、プリンタサーバ15を備えた複数台のバリアブルプリンタ16と、プリンタサーバ15に送信するプリンタ制御コードを自動的に生成するプリンタコード生成サーバ14と、受注した印刷物の進行を管理するJOBコントローラサーバ13とから、少なくとも構成され、図1には、バリアブル印刷用のページ記述言語であるバリアブル記述言語の一つであるVIPP((VIPP: Variable-data Intelligent PostScript Printware)に対応したバリアブルプリンタ16と、PPML/VDX(PPML/VDX: Personalized Print Markup Language/Variable Data Exchange)に対応したバリアブルプリンタ16とが備えられている。
【0025】
図1で図示したバリアブル印刷システム1においては、複数台のバリアブルプリンタ16が備えられている場合であっても、バリアブル印刷用のページ記述言語であるバリアブル記述言語で記述されたプリンタ制御コードを自動的に生成できるようにするために、予め、バリアブル印刷システム1で受注可能な印刷物毎にテンプレートが用意され、このテンプレートはデータベースサーバ12に記憶される。
【0026】
レイアウトデザインのテンプレートには、少なくとも2つのXMLファイルが含まれ、その一つは、印刷物に含まれるバリアブルデータが埋め込まれるバリアブルフィールドのレイアウト(例えば、バリアブルフィールドを配置する座標など)が少なくとも所定の書式で記述されたレイアウト定義ファイルで、もう一つは、バリアブルデータファイルのデータ構造と、バリアブルデータに対応付けるバリアブルフィールドが、所定の書式で記述された項目定義ファイルである。
【0027】
レイアウトデザインのテンプレートにレイアウト定義XMLファイルを含ませるのは、バリアブル記述言語で記述されプリンタ制御コードをプリンタコード生成サーバ14が自動的に生成できるようにするためである。
【0028】
レイアウト定義XMLファイルのスキーマで定義されているタグ要素毎に、タグ要素に対応するバリアブル記述言語の書式を定めておき、プリンタコード生成サーバ14が、レイアウト定義XMLファイルに記述されているタグ要素をバリアブル記述言語の書式に変換する処理を実行すれば、プリンタコード生成サーバ14はプリンタ制御コードを自動的に生成することが可能になる。
【0029】
また、バリアブル記述言語毎に、レイアウト定義XMLファイルのスキーマで定義されているタグ要素毎に、タグ要素に対応するバリアブル記述言語の書式を定めておけば、複数種のバリアブルプリンタ16が設置されている場合であっても、印刷物のレイアウト定義データは一つで済む。
【0030】
また、テンプレートに項目定義XMLファイルを含ませるのは、レイアウトデザイン毎に、バリアブルデータファイルの仕様を標準化しておき、一つのバリアブルデータファイルを様々なバリアブル記述言語で利用可能なようにするためである。
【0031】
クライアント10から受信するバリアブルデータファイルのデータ構造が、あるバリアブル記述言語の仕様に特化したデータ構造であると、クライアント10から受信したバリアブルデータファイルを他のバリアブル記述言語に対応したバリアブルプリンタ16で利用できなくなるため、予め、レイアウト定義ファイル毎に、バリアブルデータファイルのデータ構造の仕様を標準化しておき、項目定義XMLファイルに記述する。
【0032】
このようにしておくことで、項目定義XMLファイルを参照し、クライアント10から受信するバリアブルデータファイルのデータ構造を、バリアブル印刷に利用するバリアブルプリンタ16に対応したデータ構造に変換することで、クライアント10から受信するバリアブルデータファイルを用いて、任意のバリアブルプリンタ16で印刷できるようになる。
【0033】
ここから、本発明の詳細内容について説明する。まず、テンプレート、並びに、テンプレートに含まれるレイアウト定義XMLファイルおよび項目定義XMLファイルについて詳細に説明する。
【0034】
図2は、印刷物のレイアウトデザインのレイヤ構成を説明する図である。レイアウトデザインは複数のレイヤを備え、図2において、レイアウトデザイン2は、レイヤとして、バリアブル印刷の背景、すなわち、固定の画像が配置される背景レイヤ20と、バリアブルデータが埋め込まれるバリアブルフィールドが配置されるバリアブルレイヤ21を備えている。
【0035】
図3はレイアウトデザインの一例を説明する図である。図3で図示したレイアウトデザイン2aは、ダイレクトメール葉書用のレイアウトデザインで、図3において、点線で描写された四角枠で囲まれた領域は、レイアウトデザイン2aに配置されたバリアブルフィールド210〜219を示し、実線で描写された絵柄200は、レイアウトデザイン2aに配置された固定の絵柄である。
【0036】
図4は、図3で図示したレイアウトデザイン2aの背景レイヤ20aを説明する図で、図5は、図3で図示したレイアウトデザイン2のバリアブルレイヤ21aを説明する図である。図4に図示したように、レイアウトデザイン2aの背景レイヤ20aには、図3において固定の絵柄、すなわち、実線で描写された絵柄200が配置されている。また、図5に図示したように、レイアウトデザイン2aのバリアブルレイヤ21aには、図3に配置されたバリアブルフィールド210〜219が配置される。
【0037】
オーサリングソフトでは、レイアウトデザインを設計するときに、テキストが埋め込まれるバリアブルフィールドと、画像が埋め込まれるバリアブルフィールドをバリアブルレイヤに配置でき、バリアブルフィールドには、バリアブルフィールドが設定された座標、バリアブルフィールドに埋め込まれるデータの形式(テキスト或いは画像)と、バリアブルフィールドを識別するための名称などが設定される。
【0038】
図5で図示したバリアブルレイヤ21に配置されたバリアブルフィールド210は、名称が「郵便番号」であるテキストのバリアブルフィールドで、バリアブルフィールド211は、名称が「住所1」で、送り先の都道府県・市区郡が埋め込まれるテキストのバリアブルフィールドで、バリアブルフィールド212は、名称が「住所2」で、送り先の町村域・番地が埋め込まれるテキストのバリアブルフィールドで、バリアブルフィールド213は、名称が「住所3」で、送り先の建物名が埋め込まれるテキストのバリアブルフィールドで、バリアブルフィールド214は、名称が「氏名」で、送り先の氏名が埋め込まれるテキストのバリアブルフィールドである。
【0039】
また、図5で図示したバリアブルレイヤ21に配置されるバリアブルフィールド215は、名称が「案内画像」で、ダイレクトメールの案内内容(例えば、新製品発表)を示す画像が埋め込まれるバリアブルフィールドで、バリアブルフィールド216は、名称が「商品画像」で、ダイレクトメールの対象となる商品を示す画像が埋め込まれるバリアブルフィールドで、バリアブルフィールド217は、名称が「店舗画像」で、ダイレクトメールの送り元の店舗を示す画像が埋め込まれるバリアブルフィールドで、バリアブルフィールド218は、名称が「担当画像」で、送り先の担当者を示す画像が埋め込まれるバリアブルフィールドで、バリアブルフィールド219は、名称が「地図画像」で、ダイレクトメールの送り元の店舗を案内する地図を示す画像が埋め込まれるバリアブルフィールドである。
【0040】
オーサリングソフトのプラグインの機能によって、オーサリングソフトにおいて設計されたレイアウトデザインの内容、すなわち、背景レイヤとバリアブルレイヤの内容から、レイアウト定義XMLファイルおよび項目定義XMLファイルを含むテンプレートが生成される。
【0041】
図6は、テンプレートを説明する図である。図6で図示したテンプレート3には、レイアウト定義XMLファイル30および項目定義XMLファイル31が含まれ、レイアウト定義XMLファイル30および項目定義XMLファイル31それぞれは、それぞれのスキーマに沿って、マークアップ言語であるXML(XML: eXtensible Markup Language)で記述される。
【0042】
図7は、図3で図示したレイアウト2aに対応するレイアウト定義XMLファイル30aを説明する図である。レイアウト定義XMLファイル30aによって、図4で図示した背景レイヤ20aの内容と、図5で図示したバリアブルレイヤ21aに配置されるバリアブルフィールドの内容が定義される。
【0043】
図7で図示したレイアウト定義XMLファイル30aおいては、form要素300内にレイアウト定義XMLファイル30aの内容が記述され、form要素300の子要素であるhead要素301では、テンプレートの名称や両面印刷の有無などが記述され、form要素300の子要素であるslipsheet要素302では、合紙の用紙と合紙に印刷するシリアル番号などが記述され、form要素300の子要素であるlayerset要素303では、レイアウトデザインaに含まれるレイヤが定義される。
【0044】
layerset要素303のname属性に、各レイヤの名称(ここでは、「背景」および「バリアブルフィールド」)が記述され、各ページの内容は、page要素308を用いて記述され、各ページにおける各レイヤの内容は、page要素308の子要素であるlayer要素304内に記述される。
【0045】
図7においては、layer要素304のname属性の値は、layer要素304で記述するレイヤの名称である。ここでは、name属性の値が「背景」であるlayer要素304内に、図4で図示した背景レイヤ20aの内容が記述され、name属性の値が「バリアブル」であるlayer要素304内に、図5で図示したバリアブルレイヤ21aの内容が記述される。
【0046】
name属性の値が「背景」であるlayer要素304内に記述されているbaseimage要素305は、図4で図示した背景レイヤ20aに配置された固定の絵柄すべてのイメージである画像ファイルを定義する要素で、baseimage要素305内に、画像ファイルのファイル名(ここでは、「背景.eps」)がfilename要素305aと、この画像ファイルが配置される開始座標(ここでは、X軸の開始座標が「0.00」、Y軸の開始座標が「0.25」)がstartX要素305bとstartY要素305cによって定義されている。
【0047】
name属性の値が「バリアブル」であるlayer要素304内に記述されるfield要素306は、図5で図示したバリアブルレイヤ21aに配置されたテキストのバリアブルフィールドの詳細内容を定義する要素で、図7においては、図5で図示したテキストのバリアブルフィールを定義するfield要素306として、名称が「郵便番号」のバリアブルフィールドを定義するfield要素306と、名称が「住所1」のバリアブルフィールドを定義するfield要素306と、名称が「住所2」のバリアブルフィールドを定義するfield要素306と、名称が「住所3」のバリアブルフィールドを定義するfield要素306と、名称が「住所1」のバリアブルフィールドを定義するfield要素306が記述されている。
【0048】
更に、image要素307は、画像のバリアブルフィールドの詳細内容を定義する要素で、図5で図示したバリアブルレイヤに配置された画像のバリアブルフィールドを定義するimage要素307として、名称が「案内画像」のバリアブルフィールドを定義するimage要素307と、名称が「商品画像」のバリアブルフィールドを定義するimage要素307と、名称が「店舗画像」のバリアブルフィールドを定義するimage要素307と、名称が「担当画像」のバリアブルフィールドを定義するimage要素307と、名称が「地図画像」のバリアブルフィールドを定義するimage要素307が記述されている。
【0049】
図8は、テキストのバリアブルフィールドの内容を記述するfield要素306を説明する図で、名称が「郵便番号」のバリアブルフィールドを定義するfield要素306を説明する図である。図8で図示したfield要素306において、バリアブルフィールドの名称(ここでは、「郵便番号」)はfieldname要素306aを用いて記述される。
【0050】
図5で図示したように、バリアブルフィールドは四角形で定義されるため、バリアブルフィールドを配置する領域は2つの座標、ここでは、スタート座標と、スタート座標と対角になるボトム座標で定義されている。スタート座標は、startX要素306bとstartY要素306cを用いて記述され、図8において、X軸のスタート座標は「21.00」、Y軸のスタート座標は「24.00」である。また、ボトム座標は、bottomX要素306dとbottomY要素306eを用いて記述され、X軸のボトム座標は「21.00」、Y軸のボトム座標は「27.53」である。
【0051】
また、field要素306には、バリアブルデータファイルに含まれるテキストのバリアブルデータの中から、field要素306で定義されるバリアブルフィールドに埋め込むテキストを定義するusecolumn要素306iと、テキストのバリアブルデータを埋め込む位置を定義するCtext要素306jが記述される。
【0052】
usecolumn要素306iの要素値には、バリアブルフィールドに代入するテキストのバリアブルデータに対応する変数名(図8では、「yubin」)が記述されている。Ctext要素306jの要素値には、この変数名が「[[]]」で括られて記述され(ここでは、[[yubin]])、「()」で括られた変数名の箇所にテキストのバリアブルデータが埋め込まれて印刷される。
【0053】
加えて、図8で図示したfield要素306には、テキストのフォントを定義する要素306f、テキストのカラーを決定付けるCMYKを定義する要素306g、テキストの加工(縮小・拡大、回転など)を定義する要素306hなどが記述される。
【0054】
図9は、画像のバリアブルフィールドの内容を記述する image要素307を説明する図で、名称が「店舗画像」のバリアブルフィールドを定義するimage要素307を説明する図である。図9で図示したimage要素307において、バリアブルフィールドの名称(ここでは、「店舗画像」)はfieldname要素307aを用いて記述される。
【0055】
図5で図示したように、バリアブルフィールドは四角形で定義されるため、バリアブルフィールドを配置する領域は2つの座標、ここでは、スタート座標と、スタート座標の対角となるボトム座標で定義することができる。図9において、スタート座標は、startX要素307cとstartY要素307dを用いて記述され、X軸のスタート座標は「25.00」、Y軸のスタート座標は「123.00」である。また、ボトム座標は、bottomX要素307eとbottomY要素307fを用いて記述され、X軸のボトム座標は「65.00」、Y軸のボトム座標は「123.00」である。
【0056】
また、image要素307には、画像のバリアブルフィールドに埋め込む画像ファイルのファイル形式を定義するfiletype属性307gと、バリアブルデータファイルに含まれる画像のバリアブルデータの中から、image要素307で定義されるバリアブルフィールドに代入される画像を定義するために、usecolumn要素307bが記述される。usecolumn要素307bは、バリアブルフィールドに代入する画像ファイルのファイル名が代入される変数名(ここでは、「image_gazou」)を定義する要素である。加えて、図9で図示したimage要素307には、画像の加工(縮小・拡大、回転など)を定義する要素307hが記述される。
【0057】
項目定義XMLファイルを説明する前に、本実施形態の説明に利用するバリアブルデータファイルについて説明する。図10は、クライアント10からポータルサーバ11に送信される入稿ファイルの構成を説明する図である。
【0058】
図10に図示したように、本実施形態において、クライアント10からポータルサーバ11に送信される入稿ファイル4には、バリアブル印刷に利用するテンプレートおよびバリアブルプリンタ16の識別データが記憶される一つのJOBデータファイル40、テキストのバリアブルフィールドに埋め込まれるテキストや、画像のバリアブルフィールドに埋め込まれる画像ファイルのファイル名がバインディングされたバリアブルデータファイル41と、バリアブルデータファイル41にファイル名が記載された複数の画像ファイル42が含まれ、これらのファイルは受注番号に関連付けられて、データベースサーバ12に記憶される。
【0059】
図11は、本実施形態におけるバリアブルデータファイル41の構造を説明する図で、図11(a)は、バリアブルデータファイル41の元になる2次元のデータテーブル41bを説明する図で、図11(b)は、図11(a)のデータテーブルが表現されたバリアブルデータファイル41aである。
【0060】
図11(a)に図示したように、バリアブルデータファイル41aの元になるデータテーブル41bは2次元のデータテーブルで、データテーブル41bは、複数のカラムと複数のレコードから構成され、データテーブル41bに含まれる各テキストデータ、および、バリアブルデータとして利用される画像ファイルに対応する各画像ファイル名が記述される。なお、これ以降、カラムの番号およびレコードの番号を「〔〕」で括って表記する。
【0061】
カラム[1]には、郵便番号を示す7桁の数字が記述され、カラム[2]には都道府県・市区郡を示すテキストが記述され、カラム[3]には町村域・番地を示すテキストが記述され、カラム[4]には建物名を示すテキストが記述され、カラム[5]には姓を示すテキストが記述され、カラム[6]には名を示すテキストが記述される。
【0062】
更に、カラム[7]には、ダイレクトメールの主題の文字などが描写された案内画像が記憶され画像ファイル名が記述され、カラム[8]には、ダイレクトメールを発送する店舗が描写された店舗画像が記憶され画像ファイル名が記述され、カラム[9]には、ダイレクトメールで案内する店舗の地図が描写された地図画像が記憶され画像ファイル名が記述され、カラム[10]には、ダイレクトメールの案内先の担当の写真が描写された担当画像が記憶された画像ファイル名が記述され、カラム[11]には、ダイレクトメールで案内する商品が描写された商品画像が記憶され画像ファイル名が記述される。
【0063】
図11(a)で図示した2次元のテーブルがCSV形式のテキストとして出力されることでバリアブルデータファイル41aは生成される。図12(b)に図示したように、CSV形式のバリアブルデータファイル41aにおいて、データテーブル41bに含まれるそれぞれレコードは改行コード(CR+LF)で区切られて記述され、各々のレコードに含まれるカラム値はコンマ「,」で区切られる。
【0064】
図11(b)においては、例えば、「162-0061,東京都新宿区, 加賀町1-1-1,,大日本,A郎,open.eps, shop1.eps, map1.eps,tantou1.eps,syouhin.eps」までが、図12(a)で図示したデータテーブルのレコード[1]の内容で、レコード[1]に含まれるカラム値は、カラムの並び順にコンマで区切られて記述されている。
【0065】
「1620061,東京都新宿区, 加賀町1-1-1,,大日本,A郎,open.eps,shop1.eps, map1.eps,tantou1.eps,syouhin1.eps」の内容に従えば、カラム[1]のカラム値は「1620061」で、カラム[2]のカラム値は「東京都新宿区」で、カラム[3]のカラム値は「加賀町1-1-1」で、カラム[4]のカラム値はNULLで、カラム[5]のカラム値は「大日本」で、カラム[6]のカラム値は「A朗」で、カラム[7]のカラム値は「open.eps」で、カラム[8]のカラム値は「shop1.eps」で、カラム[9]のカラム値は「map1.eps」で、カラム[10]のカラム値は「tantou1.eps」で、カラム[11]のカラム値は「syouhin1.eps」である。
【0066】
ここから、項目定義XMLファイルについて説明する。項目定義XMLファイルは、バリアブルデータファイルのデータ構造と、バリアブルデータに対応付けるバリアブルフィールドが、XMLで記述されたテキストファイルで、図12は、図11で図示したバリアブルデータファイル用の項目定義XMLファイル31aを説明する図である。
【0067】
項目定義XMLファイル31aの内容はfields要素310内に記述され、fields要素300の子要素であるfield要素311は、図11で図示したバリアブルデータファイル41aに含まれる各バリアブルデータを定義する要素である。
【0068】
field要素311のcolumn属性は、バリアブルデータが記述されているカラム番号を指定する属性で、name属性は、レイアウト定義XMLファイルに記載された変数名の中から、このカラムに記述されたバリアブルデータに対応する変数名を定義する属性で、id属性はデータ形式を指定する属性である。
【0069】
id属性の値が「image」であるときは、そのカラムのカラム値が画像ファイルの画像ファイル名であることを意味し、「image」以外の値であるときは、そのカラムのカラム値がテキストであることを意味している。
【0070】
なお、id属性の値が「image」であるときは、id属性の後に、画像の横方向の大きさを指定する属性であるwidth属性、画像の横方向の大きさを指定する属性であるheight属性、単位を示すunit属性が記述される。
【0071】
図12で図示した項目定義XMLファイル31aのfield要素311の数から、バリアブルデータファイル41aに含まれるカラムの数、すなわち、バリアブルデータファイル41aに含まれるバリアブルデータの数がわかり、その数は11個である。
【0072】
field要素311のid属性から、バリアブルデータファイル41aに含まれるバリアブルデータのデータ形式(テキストデータ或いは画像ファイル)であるかわかり、column属性の値からとname属性の値から、バリアブルデータファイル41aのカラムに記述されたバリアブルデータ(テキストデータ或いは画像ファイル)が埋め込まれる変数名がわかり、この変数名を有するfield要素306或いはimage要素307に、バリアブルデータファイル41aのカラムで示されるバリアブルデータが埋め込まれる。
【0073】
例えば、name属性が「yubin」であるfield要素311のid属性は「image」でないので、このfield要素311で定義されるバリアブルデータはテキストデータであることがわかり、そして、column属性の値は「1」であるので、バリアブルデータファイル41aのカラム[1]に記述されたテキストデータは、usecolumn要素306iの値が「yubin」であるfield要素306(図8で図示したfield要素306)で定義される箇所に埋め込まれることがわかる。
【0074】
ここから、バリアブルデータファイルおよびテンプレートからプリンタ制御コードを生成するプリンタコード生成サーバ14について詳細に説明する。図13は、プリンタコード生成サーバ14のブロック図で、図13(a)は回路ブロック図、図13(b)は機能ブロック図である。
【0075】
図13(a)に図示した様に、プリンタコード生成サーバ14は、中央演算処理装置14a(CPU: Central Processing Unit)、メインメモリとなるRAM14c(RAM: Random Access Memory)、BIOSが実装されるROM14b(ROM: Read-Only Memory)、ネットワーク通信するためのネットワークインターフェース14d、大容量のデータ記憶装置であるハードディスク14eなどを備えた汎用的なサーバで実現される。
【0076】
図13(b)に図示した様に、プリンタコード生成サーバ14は、本発明を実現するための機能として、テンプレートおよびバリアブルデータファイルからプリンタ制御コードを生成する手段として機能するコンピュータプログラムであるプリンタコード生成プログラム140を、バリアブル印刷システム1に設置されているバリアブルプリンタ16の識別データに関連付けて記憶している。
【0077】
プリンタコード生成サーバ14が、バリアブル印刷システム1に設置されているバリアブルプリンタ16の機種毎にプリンタ生成プログラムを記憶するのは、バリアブルプリンタ16の機種に対応したプリンタコード生成プログラムを生成するためである。
【0078】
例えば、図1で図示したバリアブル印刷システム1において、バリアブル記述言語がPPML/VDXに対応したバリアブルプリンタ16と、バリアブル記述言語がVIPPに対応したバリアブルプリンタ16に対応したバリアブルプリンタ16の2台が設置されているため、図13(b)で図示したように、プリンタコード生成サーバ14には、PPML/VDXに対応したバリアブルプリンタ16用のプリンタコード生成プログラムと、VIPPに対応したバリアブルプリンタ16用のプリンタコード生成プログラムの2つがハードディスク14eに記憶される。
【0079】
プリンタコード生成サーバ14に実装されるプリンタコード生成プログラム140とは、バリアブルプリンタ16が対応しているバリアブル記述言語の仕様書(例えば、PODi(Print On Demand Initiative)が開示している「PPML Specifications」)を参考にしながら開発されるコンピュータプログラムで、レイアウト定義XMLファイルに記述されるタグ要素毎に、タグ要素で定義されている内容をタグ要素に対応したバリアブル記述言語の書式に変換するモジュールを備えている。
【0080】
例えば、バリアブル記述言語がXMLで記述されるとき、プリンタコード生成プログラム140は、レイアウト定義XMLファイルのXMLをバリアブル記述言語のXMLに変換する。
【0081】
このとき、プリンタコード生成プログラム140は、バリアブル記述言語のスキーマを有し、レイアウト定義XMLファイルのスキーマとバリアブル記述言語のスキーマを比較しながら、レイアウト定義XMLファイルのタグ要素の構造をバリアブル記述言語のタグ要素の構造に変換することで、プリンタ制御コードを生成する。
【0082】
なお、このプリンタコード生成プログラムには、バリアブルプリンタ16の機械仕様、例えば、解像度、階調、出力可能なフォーマット(PDF、TIFFなど)が盛り込まれていることが望ましい。なぜなら、同じバリアブル記述言語に対応したバリアブルプリンタ16であっても、バリアブルプリンタ16の機械仕様は異なるケースがあるからである。
【0083】
ここから、プリンタコード生成サーバ14が、テンプレートおよびバリアブルデータファイルからプリンタ生成コードを生成する手順について説明する。図14は、プリンタコード生成サーバ14の動作手順を示したフロー図である。
【0084】
プリンタコード生成サーバ14がプリンタ制御コードを生成するときの入力は、テンプレート、バリアブルデータファイルが記憶されているパス、及び、バリアブルプリンタ16の識別データで、テンプレートおよびバリアブルデータファイルの識別データは、JOBコントローラサーバ13から指定される(S1)。
【0085】
例えば、図10のファイル構成に従えば、JOBコントローラサーバ13から受注番号が指定されることで、受注番号で特定されるJOBデータファイル40とバリアブルデータファイル41を特定でき、更に、JOBデータファイル40から、プリンタ制御コードを生成するときに利用するテンプレートとバリアブルプリンタの識別データが特定できる。
【0086】
プリンタコード生成サーバ14は、プリンタ制御コードを生成するときに利用するテンプレート、バリアブルデータファイルが記憶されているパス、および、バリアブルプリンタ16を特定すると、テンプレートの識別データおよびバリアブルデータファイルが記憶されているパスを引数として、識別データで特定されるバリアブルプリンタ16に対応するバリアブル記述言語用のプリンタコード生成プログラム140を呼び出し、プリンタ制御コードの生成を開始する(S2)。
【0087】
プリンタコード生成プログラム140は、テンプレートの識別データ、および、バリアブルデータファイルが記憶されているパスが引き渡されると、識別データで特定されるテンプレートに含まれる項目定義XMLファイルを読み取り、項目定義XMLファイルのスキーマを参照して、バリアブルデータファイルのデータ構造を解析し、バリアブル記述言語の仕様に合わせて、バリアブルデータファイルのデータ構造に変換する(S3)。
【0088】
例えば、バリアブル記述言語の仕様によっては、バリアブルデータファイルに含まれるバリアブルデータが記憶されたデータベースを、バリアブル記述言語の仕様に合わせ、データベースサーバ12上に構築する。また、バリアブルプリンタ16の仕様以外の形式の画像ファイルがあれば、画像ファイルの形式をバリアブル記述言語の仕様に合わせた形式に変換する。
【0089】
そして、プリンタコード生成プログラム140は、テンプレートに含まれるレイアウト定義ファイルに記述されているタグ要素を解析し、このタグ要素をタグ要素に対応したバリアブル記述言語の書式に変換することで、バリアブル記述言語で記述されたプリンタ制御コードを生成する(S4)。
【0090】
レイアウト定義ファイルに記述されているタグ要素をバリアブル記述言語の書式に変換する処理は、バリアブル記述言語の仕様に依存する。例えば、バリアブル記述言語がVIPPのときは、データベースサーバ12上に生成したフォルダに記憶されたバリアブルデータをバリアブルプリンタ16が読み出すために、プリンタ制御コードにこのフォルダのパスをバリアブル記述言語の所定のコマンドの引数として埋め込まれる。また、バリアブル記述言語がDS-postscriptのときは、テキストのバリアブルデータのみが埋め込まれたプリンタ制御コードが印刷物の数に応じて生成される。
【0091】
プリンタコード生成サーバ14が生成したプリンタ制御コードは、特定したバリアブルプリンタ16のプリンタサーバ15に送信され、バリアブルプリンタ16でプリンタ制御コードが解釈・実行されて、印刷物がバリアブル印刷される(S5)。
【0092】
ここから、図1で図示したバリアブ印刷システムの一連の動作について説明する。図15は、バリアブル印刷システム1において印刷物を受注するときのフロー図で、図16は、バリアブル印刷システム1において印刷物をバリアブル印刷するときのフロー図である。
【0093】
まず、図15を参照しながら、バリアブル印刷システム1において印刷物を受注するとき手順について説明する。図1で図示したバリアブル印刷システム1を構成するクライアント10にはブラウザが実装され、発注者は印刷物を発注するとき、ブラウザを操作してポータルサーバ11にアクセスする(S10)。
【0094】
ポータルサーバ11のWebページを利用して、印刷に利用するバリアブルデータなどが含まれる入稿フォルダを指定すると、ActiveXコントロールの技術などを利用して、クライアント10上で動作するコンピュータプログラムであるポータルアプリケーションが、ポータルサーバ11からクライアント10に送信され、このポータルアプリケーションがクライアント10上で起動する(S11)。
【0095】
ポータルアプリケーションは、例えば、指定されたJOBデータファイル40を読み取り、JOBデータファイル40に記述されているテンプレートの識別データをポータルサーバ11に送信し、ポータルサーバ11は、テンプレートに含まれる項目定義XMLファイルをクライアント10に送信する(S12)。
【0096】
ポータルアプリケーションは、ポータルサーバ11から送信された項目定義XMLファイルを解析し、指定されたバリアブルデータファイルのフォーマットをチェックし(S13)、バリアブルデータファイルのフォーマットにエラーが無ければ、入稿されるファイル一式をポータルサーバ11に送信する(S14)。
【0097】
ポータルサーバ11は、クライアント10で起動しているポータルアプリケーションからファイル一式が送信されると、受注番号を付与するなどして、これらのファイルをデータベースサーバ12に記憶し(S15)、図15で図示したフローは終了する。
【0098】
次に、図16を参照しながら、バリアブル印刷システム1において印刷物をバリアブル印刷するときの手順について説明する。JOBコントローラサーバ13は、一定時間毎に、データベースサーバ12に登録された印刷物の受注状況を確認し、新規に登録された印刷物の受注があれば、バリアブル印刷の予定を自動的に組み、印刷の予定に合わせて、プリンタコード生成サーバ14にプリンタ制御コードの生成を指示する(S20)。
【0099】
JOBコントローラサーバ13がプリンタコード生成サーバ14は、バリアブルプリンタ16の識別データと受注番号を指定するなどして、プリンタ制御コードを生成するときに利用するバリアブルデータファイルとバリアブル印刷に利用するバリアブルプリンタ16を特定できるようにして、プリンタコード生成サーバ14にプリンタ制御コードの生成を指示する。
【0100】
プリンタコード生成サーバ14は、例えば、受注番号に関連付けられたJOBデータファイル40に記載されたテンプレートをデータベースサーバ12から取得し、指定されたバリアブルプリンタ16に対応したバリアブル記述言語用のプリンタコード生成プログラム140を起動させ、テンプレートに含まれるレイアウト定義XMLファイルおよび項目定義XMLファイルを参照しながら、プリンタコード生成コードを生成する(S21)。この処理については、既に詳細に説明している。
【0101】
プリンタコード生成サーバ14はプリンタ制御コードを生成すると、指定されたバリアブルプリンタ16のプリンタサーバ15に対してプリンタ制御コードを送信し、指定されたバリアブルプリンタ16にて、プリンタコード生成サーバ14が生成したプリンタ制御コードが解釈・実行されて、受注した印刷物がバリアブル印刷される(S22)。
【図面の簡単な説明】
【0102】
【図1】バリアブル印刷システムの構成を説明する図。
【図2】印刷物のレイアウトデザインのレイヤ構成を説明する図。
【図3】レイアウトデザインの一例を説明する図。
【図4】背景レイヤを説明する図。
【図5】バリアブルレイヤを説明する図。
【図6】テンプレートを説明する図。
【図7】レイアウト定義XMLファイルを説明する図。
【図8】field要素を説明する図。
【図9】image要素を説明する図。
【図10】ポータルサーバに送信されるファイル構成を説明する図。
【図11】バリアブルデータファイルの構造を説明する図。
【図12】項目定義XMLファイルを説明する図。
【図13】プリンタコード生成サーバのブロック図。
【図14】プリンタコード生成サーバの動作手順を示したフロー図。
【図15】印刷物を受注するときのフロー図。
【図16】印刷物をバリアブル印刷するときのフロー図。
【符号の説明】
【0103】
1 バリアブル印刷システム
10 クライアント
11 ポータルサーバ
12 データベースサーバ
13 JOBコントローラサーバ
14 プリンタコード生成サーバ
140 プリンタコード生成プログラム
15 プリンタサーバ
16 バリアブルプリンタ
3 テンプレート
30、30a レイアウト定義XMLファイル
31、31a 項目定義XMLファイル
【特許請求の範囲】
【請求項1】
バリアブルプリンタが解釈・実行するプリンタ制御コードを自動的に生成してバリアブル印刷を実行するバリアブル印刷方法であって、
バリアブルデータを割り当てるバリアブルフィールドのレイアウトが少なくとも所定の書式で記述されたレイアウト定義ファイルを少なくとも含むテンプレートを、バリアブル印刷する印刷物毎に用意しておき、
ステップa)ポータルサーバが、ネットワークを介して、前記バリアブルデータが記憶されたバリアブルデータファイルを受信し、データ記憶装置に記憶させるステップ、
ステップb)プリンタ制御コードを生成する前記プリンタコード生成サーバが、指定された前記テンプレートに含まれる前記レイアウト定義ファイルを解析し、前記レイアウト定義ファイルの書式を、バリアブル印刷を用いる前記バリアブルプリンタに対応したバリアブル記述言語の書式に変換することで、前記バリアブルデータを埋め込んで印刷するための前記プリンタ制御コードを生成し、前記プリンタ制御コードを前記バリアブルプリンタに送信するステップ、
ステップc)前記バリアブルプリンタが、前記プリンタコード生成サーバが生成した前記プリンタ制御コードを解釈・実行し、前記データ記憶装置に記憶された前記バリアブルデータファイルに含まれる前記バリアブルデータをマージして、バリアブル印刷を実行するステップ、
が含まれることを特徴とするバリアブル印刷方法。
【請求項2】
請求項1に記載のバリアブル印刷方法であって、前記バリアブルデータファイルのデータ構造と、前記バリアブルデータと前記バリアブルフィールドを対応付けが、所定の書式で記述された項目定義ファイルを前記テンプレートに含ませ、前記ステップa)において、前記ポータルサーバは、前記項目定義ファイルで定義されたデータ構造に準じた前記バリアブルデータファイルを受信し、前記ステップb)において、前記プリンタコード生成サーバが、指定された前記テンプレートに含まれる前記項目定義ファイルを解析し、前記データ記憶装置に記憶された前記バリアブルデータファイルのデータ構造をバリアブル記述言語に適したデータ構造に変換することを特徴とするバリアブル印刷方法。
【請求項3】
請求項2に記載のバリアブル印刷方法であって、前記テンプレートに含まれる前記レイアウト定義ファイルおよび前記項目定義ファイルはXML形式のデータファイルであって、前記ステップb)において、前記プリンタコード生成サーバは、前記レイアウト定義ファイルおよび前記項目定義ファイルのスキーマを利用して、前記レイアウト定義ファイルおよび前記項目定義ファイルを解析し、前記プリンタ制御コードを生成することを特徴とするバリアブル印刷方法。
【請求項4】
バリアブルプリンタが解釈・実行するプリンタ制御コードを自動的に生成してバリアブル印刷を実行するバリアブル印刷システムであって、
ネットワークを介して、バリアブルフィールドに割り当てられるバリアブルデータが記憶された前記バリアブルデータファイルを受信し、受信した前記バリアブルデータファイルをデータ記憶装置に記憶させるポータルサーバと、
前記バリアブルデータを割り当てる前記バリアブルフィールドのレイアウトが少なくとも所定の書式で記述されたレイアウト定義ファイルを少なくとも含むテンプレートと前記バリアブルデータファイルが指定されると、前記テンプレートに含まれる前記レイアウト定義ファイルを解析し、前記レイアウト定義ファイルの書式を、バリアブル印刷に利用する前記バリアブルプリンタに対応したバリアブル記述言語の書式に変換することで、前記バリアブルデータを埋め込んで印刷するためのプリンタ制御コードを生成するプリンタコード生成サーバと、
前記プリンタコード生成サーバが生成した前記プリンタ制御コードを解釈・実行し、前記データ記憶装置に記憶された前記バリアブルデータファイルに含まれる前記バリアブルデータを前記バリアブルフィールドの箇所にマージして、バリアブル印刷を実行する前記バリアブルプリンタと、
を備えたことを特徴とするバリアブル印刷システム。
【請求項5】
請求項4に記載のバリアブル印刷システムであって、前記バリアブルデータファイルのデータ構造と、前記バリアブルデータと前記バリアブルフィールドを対応付けが、所定の書式で記述された項目定義ファイルを前記テンプレートに含ませ、
前記ポータルサーバが受信する前記バリアブルデータファイルは、前記項目定義ファイルで定義されたデータ構造に準じ、
前記プリンタコード生成サーバは、指定された前記テンプレートに含まれる前記項目定義ファイルを解析し、前記データ記憶装置に記憶された前記バリアブルデータファイルのデータ構造をバリアブル記述言語に適したデータ構造に変換する、
ことを特徴とするバリアブル印刷システム。
【請求項6】
請求項5に記載のバリアブル印刷システムであって、前記テンプレートに含まれる前記レイアウト定義ファイルおよび前記項目定義ファイルはXML形式のデータファイルであって、前記プリンタコード生成サーバは、前記レイアウト定義ファイルおよび前記項目定義ファイルのスキーマを利用して、前記レイアウト定義ファイルおよび前記項目定義ファイルを解析し、前記プリンタ制御コードを生成することを特徴とするバリアブル印刷システム。
【請求項1】
バリアブルプリンタが解釈・実行するプリンタ制御コードを自動的に生成してバリアブル印刷を実行するバリアブル印刷方法であって、
バリアブルデータを割り当てるバリアブルフィールドのレイアウトが少なくとも所定の書式で記述されたレイアウト定義ファイルを少なくとも含むテンプレートを、バリアブル印刷する印刷物毎に用意しておき、
ステップa)ポータルサーバが、ネットワークを介して、前記バリアブルデータが記憶されたバリアブルデータファイルを受信し、データ記憶装置に記憶させるステップ、
ステップb)プリンタ制御コードを生成する前記プリンタコード生成サーバが、指定された前記テンプレートに含まれる前記レイアウト定義ファイルを解析し、前記レイアウト定義ファイルの書式を、バリアブル印刷を用いる前記バリアブルプリンタに対応したバリアブル記述言語の書式に変換することで、前記バリアブルデータを埋め込んで印刷するための前記プリンタ制御コードを生成し、前記プリンタ制御コードを前記バリアブルプリンタに送信するステップ、
ステップc)前記バリアブルプリンタが、前記プリンタコード生成サーバが生成した前記プリンタ制御コードを解釈・実行し、前記データ記憶装置に記憶された前記バリアブルデータファイルに含まれる前記バリアブルデータをマージして、バリアブル印刷を実行するステップ、
が含まれることを特徴とするバリアブル印刷方法。
【請求項2】
請求項1に記載のバリアブル印刷方法であって、前記バリアブルデータファイルのデータ構造と、前記バリアブルデータと前記バリアブルフィールドを対応付けが、所定の書式で記述された項目定義ファイルを前記テンプレートに含ませ、前記ステップa)において、前記ポータルサーバは、前記項目定義ファイルで定義されたデータ構造に準じた前記バリアブルデータファイルを受信し、前記ステップb)において、前記プリンタコード生成サーバが、指定された前記テンプレートに含まれる前記項目定義ファイルを解析し、前記データ記憶装置に記憶された前記バリアブルデータファイルのデータ構造をバリアブル記述言語に適したデータ構造に変換することを特徴とするバリアブル印刷方法。
【請求項3】
請求項2に記載のバリアブル印刷方法であって、前記テンプレートに含まれる前記レイアウト定義ファイルおよび前記項目定義ファイルはXML形式のデータファイルであって、前記ステップb)において、前記プリンタコード生成サーバは、前記レイアウト定義ファイルおよび前記項目定義ファイルのスキーマを利用して、前記レイアウト定義ファイルおよび前記項目定義ファイルを解析し、前記プリンタ制御コードを生成することを特徴とするバリアブル印刷方法。
【請求項4】
バリアブルプリンタが解釈・実行するプリンタ制御コードを自動的に生成してバリアブル印刷を実行するバリアブル印刷システムであって、
ネットワークを介して、バリアブルフィールドに割り当てられるバリアブルデータが記憶された前記バリアブルデータファイルを受信し、受信した前記バリアブルデータファイルをデータ記憶装置に記憶させるポータルサーバと、
前記バリアブルデータを割り当てる前記バリアブルフィールドのレイアウトが少なくとも所定の書式で記述されたレイアウト定義ファイルを少なくとも含むテンプレートと前記バリアブルデータファイルが指定されると、前記テンプレートに含まれる前記レイアウト定義ファイルを解析し、前記レイアウト定義ファイルの書式を、バリアブル印刷に利用する前記バリアブルプリンタに対応したバリアブル記述言語の書式に変換することで、前記バリアブルデータを埋め込んで印刷するためのプリンタ制御コードを生成するプリンタコード生成サーバと、
前記プリンタコード生成サーバが生成した前記プリンタ制御コードを解釈・実行し、前記データ記憶装置に記憶された前記バリアブルデータファイルに含まれる前記バリアブルデータを前記バリアブルフィールドの箇所にマージして、バリアブル印刷を実行する前記バリアブルプリンタと、
を備えたことを特徴とするバリアブル印刷システム。
【請求項5】
請求項4に記載のバリアブル印刷システムであって、前記バリアブルデータファイルのデータ構造と、前記バリアブルデータと前記バリアブルフィールドを対応付けが、所定の書式で記述された項目定義ファイルを前記テンプレートに含ませ、
前記ポータルサーバが受信する前記バリアブルデータファイルは、前記項目定義ファイルで定義されたデータ構造に準じ、
前記プリンタコード生成サーバは、指定された前記テンプレートに含まれる前記項目定義ファイルを解析し、前記データ記憶装置に記憶された前記バリアブルデータファイルのデータ構造をバリアブル記述言語に適したデータ構造に変換する、
ことを特徴とするバリアブル印刷システム。
【請求項6】
請求項5に記載のバリアブル印刷システムであって、前記テンプレートに含まれる前記レイアウト定義ファイルおよび前記項目定義ファイルはXML形式のデータファイルであって、前記プリンタコード生成サーバは、前記レイアウト定義ファイルおよび前記項目定義ファイルのスキーマを利用して、前記レイアウト定義ファイルおよび前記項目定義ファイルを解析し、前記プリンタ制御コードを生成することを特徴とするバリアブル印刷システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【公開番号】特開2010−9391(P2010−9391A)
【公開日】平成22年1月14日(2010.1.14)
【国際特許分類】
【出願番号】特願2008−169049(P2008−169049)
【出願日】平成20年6月27日(2008.6.27)
【出願人】(000002897)大日本印刷株式会社 (14,506)
【Fターム(参考)】
【公開日】平成22年1月14日(2010.1.14)
【国際特許分類】
【出願日】平成20年6月27日(2008.6.27)
【出願人】(000002897)大日本印刷株式会社 (14,506)
【Fターム(参考)】
[ Back to top ]