(57)【要約】【課題】未確定の描画領域に対して複数のオブジェクトの配置を予め設定できる合成描画システム、方法及びプログラム並びに記録媒体を提供する。【解決手段】複数の暫定座標系Ａ及びＢが定義されたテンプレートであって、いずれかの暫定座標系で定義された配置座標Ｅ、Ｆ、Ｇ、Ｈ及びＪが複数定義されたテンプレートを記憶する記憶手段と、暫定座標系を描画空間の座標系である出力座標系に変換するための変換パラメータを設定する出力設定手段と、テンプレートを用いて出力されるオブジェクトの少なくとも１つを入力するためのオブジェクト入力手段と、オブジェクト入力手段によって入力されたオブジェクトを出力座標系で定義される配置座標にテンプレート及び変換パラメータに基づいて配置した合成画像を作成し、作成した合成画像を描画空間に表出させる出力手段と、を備える。【選択図】　図１
2004096560.tif 000002
【特許請求の範囲】
【請求項１】
複数の暫定座標系が定義されたテンプレートであって、いずれかの前記暫定座標系で定義された配置座標が複数定義されたテンプレートを記憶する記憶手段と、
前記暫定座標系を描画空間の座標系である出力座標系に変換するための変換パラメータを設定する出力設定手段と、
前記テンプレートを用いて出力されるオブジェクトの少なくとも１つを入力するためのオブジェクト入力手段と、
前記オブジェクト入力手段によって入力されたオブジェクトを前記出力座標系で定義される配置座標に前記テンプレート及び前記変換パラメータに基づいて配置した合成画像を作成し、作成した合成画像を描画空間に表出させる出力手段と、
を備えることを特徴とする合成描画システム。
【請求項２】
前記テンプレートに定義された配置座標は、いずれかの前記暫定座標系で原点が定義される複数のグループ座標系のいずれかによって定義されることを特徴とする請求項１に記載の合成描画システム。
【請求項３】
前記出力手段は、前記テンプレートにおいて前記グループ座標系毎に定義されたクリッピングマスクに基づいて、同一のグループ座標系で定義された配置座標に配置される複数のオブジェクトを、クリッピングすることを特徴とする請求項２に記載の合成描画システム。
【請求項４】
前記暫定座標系は、前記出力座標系で定義される矩形描画領域の四隅のいずれか又は中央に変換される原点を有し、
前記出力設定手段は、用紙サイズを入力するための印刷設定手段を有し、入力された用紙サイズに基づいて前記変換パラメータを設定し、
前記出力手段は、前記合成画像を印刷媒体に印刷することを特徴とする請求項１、２又は３に記載の合成描画システム。
【請求項５】
前記テンプレートを入力するためのメニューを表示するメニュー表示手段をさらに備えることを特徴とする請求項１〜４のいずれか一項に記載の合成描画システム。
【請求項６】
複数の暫定座標系が定義されたテンプレートであって、いずれかの前記暫定座標系で定義された配置座標が複数定義されたテンプレートを記憶する記憶手段を備えるコンピュータによる合成描画方法であって、
前記暫定座標系を描画空間の座標系である出力座標系に変換するための変換パラメータを設定する出力設定ステップと、
前記テンプレートを用いて出力されるオブジェクトの少なくとも１つを入力するためのオブジェクト入力ステップと、
前記オブジェクト入力ステップにおいて入力されたオブジェクトを前記出力座標系で定義される配置座標に前記テンプレート及び前記変換パラメータに基づいて配置した合成画像を作成し、作成した合成画像を描画空間に表出させる出力ステップと、
を含むことを特徴とする合成描画方法。
【請求項７】
複数の暫定座標系が定義されたテンプレートであって、いずれかの前記暫定座標系で定義された配置座標が複数定義されたテンプレートを記憶する記憶手段を備えるコンピュータを、
前記暫定座標系を描画空間の座標系である出力座標系に変換するための変換パラメータを設定する出力設定手段と、
前記テンプレートを用いて出力されるオブジェクトの少なくとも１つを入力するためのオブジェクト入力手段と、
前記オブジェクト入力手段によって入力されたオブジェクトを前記出力座標系で定義される配置座標に前記テンプレート及び前記変換パラメータに基づいて配置した合成画像を作成し、作成した合成画像を描画空間に表出させる出力手段として機能させるための合成描画プログラム。
【請求項８】
出力座標系で定義される矩形描画領域の四隅のいずれか又は中央に変換される原点を有する複数の暫定座標系が定義されたテンプレートであって、いずれかの前記暫定座標系で定義された配置座標が複数定義されたテンプレートを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数のオブジェクトを合成して描画する合成描画システムに関する。
【０００２】
【従来の技術】
従来、複数の画像、文字等のオブジェクトを合成して印刷、表示等する合成描画システムが知られている。かかる合成描画システムでは、一般に、ユーザが入力するオブジェクトを予め決められたレイアウトで描画する場合にテンプレートが用いられる。
【０００３】
テンプレートには、矩形の描画領域（矩形描画領域）と、矩形描画領域のどこにオブジェクトを配置するかを示す配置座標とを特定するための情報が記述されている。具体的には例えば、印刷用テンプレートは、印刷用紙のサイズ毎、縦横の向き毎に定義され、用紙のサイズと向きを特定するための情報と、オブジェクトの配置座標とが記述されている。一般に、配置座標は矩形描画領域の左上を原点とする座標系で定義されている。
【０００４】
【発明が解決しようとする課題】
しかし、従来のテンプレートでは、出力時に矩形描画領域が変動するとオブジェクトが矩形描画領域からはみ出すおそれがある。具体的には例えば、ある大きさの用紙の全体に画像を配置し、その用紙の右下隅にタイトル文字列を配置して印刷するためのテンプレートを用いてそのテンプレートに定義された用紙より小さい用紙に印刷すると、画像の右端及び下端とタイトル文字列とが用紙からはみ出すことになる。
【０００５】
また、テンプレートが複数のオブジェクトの配置を定義している場合、出力デバイスの個体差によってオブジェクト間の相対位置にばらつきを生ずることがある。例えば郵便番号記入枠を構成する複数の矩形枠と郵便番号を構成する１桁の数字に対応する複数の変数の配置をテンプレートで定義している場合、郵便番号記入枠と郵便番号の相対位置がプリンタの個体差によって若干ずれることがある。プリンタで郵便番号記入枠と郵便番号の位置合わせをする場合、郵便番号記入枠を構成する複数の矩形枠と郵便番号を構成する０〜９の数字とを個々に位置合わせする必要がある。このように多数のオブジェクト間の相対的な位置合わせをするために必要なパラメータを設定するためには複雑なマンマシンインタフェースが必要になる。
【０００６】
本発明は、これらの問題に鑑みて創作されたものであって、未確定の描画領域に対して複数のオブジェクトの配置を予め設定できる合成描画システム、方法及びプログラム並びに記録媒体を提供することを特徴とする。
【０００７】
また本発明は、予め設定した複数オブジェクト間の相対位置関係の補正が容易な合成描画システムを提供することを目的とする。
【０００８】
【課題を解決するための手段】
請求項１に記載の合成描画システムは、複数の暫定座標系が定義されたテンプレートであって、いずれかの前記暫定座標系で定義された配置座標が複数定義されたテンプレートを記憶する記憶手段と、前記暫定座標系を描画空間の座標系である出力座標系に変換するための変換パラメータを設定する出力設定手段と、前記テンプレートを用いて出力されるオブジェクトの少なくとも１つを入力するためのオブジェクト入力手段と、前記オブジェクト入力手段によって入力されたオブジェクトを前記出力座標系で定義される配置座標に前記テンプレート及び前記変換パラメータに基づいて配置した合成画像を作成し、作成した合成画像を描画空間に表出させる出力手段と、を備えることを特徴とする。請求項１に記載の合成描画システムによると、互いに異なる暫定座標系によって配置が定義された複数のオブジェクトが変換パラメータに基づいて互いに独立して描画領域に配置されるため、未確定の描画領域に対して複数のオブジェクトの配置を予め設定することができる。
【０００９】
請求項２に記載の合成描画システムは、テンプレートに定義された配置座標は、いずれかの暫定座標系で原点が定義される複数のグループ座標系のいずれかによって定義されることを特徴とする。請求項２に記載の合成描画システムによると、暫定座標系により描画領域の任意の位置に複数の原点を設定し、複数のオブジェクトの位置をいずれかの原点を基準にして同一のグループ座標系で設定することができる。同一のグループ座標系で配置座標を定義された複数のオブジェクトは、グループ座標系の原点を移動させることでまとめて移動させることができる。したがって、請求項２に記載の合成描画システムによると、予め設定した複数オブジェクト間の相対位置関係の補正が容易である。
【００１０】
請求項３に記載の合成描画システムは、出力手段は、テンプレートにおいてグループ座標系毎に定義されたクリッピングマスクに基づいて、同一のグループ座標系で定義された配置座標に配置される複数のオブジェクトを、クリッピングすることを特徴とする。請求項３に記載の合成描画システムによると、ユーザによって入力されるオブジェクトを含む複数のオブジェクトで合成される画像を、ユーザがオブジェクトを入力した後に、クリッピングすることができる。このため、ユーザによって入力されるオブジェクトの任意の一部を、同一グループ座標系で定義された他のオブジェクトとの相対的な位置関係を維持しながら、描画空間に表出する範囲内に自由に配置することができる。
【００１１】
請求項４に記載の合成描画システムは、暫定座標系は、出力座標系で定義される矩形描画領域の四隅のいずれか又は中央に変換される原点を有し、出力設定手段は、用紙サイズを入力するための印刷設定手段を有し、入力された用紙サイズに基づいて変換パラメータを設定し、出力手段は、合成画像を印刷媒体に印刷することを特徴とする。請求項４に記載の合成描画システムによると、用紙サイズが入力されると、入力されたサイズの用紙の四隅、中央のうちの２箇所以上を基準として複数のオブジェクトが用紙に配置されるため、未確定の用紙サイズに対して複数のオブジェクトの配置を予め設定することができる。
【００１２】
請求項５に記載の合成描画システムは、テンプレートを入力するためのメニューを表示するメニュー表示手段をさらに備えることを特徴とする。請求項５に記載の合成描画システムによると、テンプレートを追加することが容易である。したがって請求項５に記載の合成描画システムによると、ユーザは、他人が作成したテンプレートを用いて容易に多様なレイアウトの合成画像を描画することができる。
【００１３】
尚、本発明に備わる複数の手段の各機能は、構成自体で機能が特定されるハードウェア資源、プログラムにより機能が特定されるハードウェア資源、又はそれらの組み合わせにより実現される。また、これら複数の手段の各機能は、各々が物理的に互いに独立したハードウェア資源で実現されるものに限定されない。
【００１４】
また、本発明は装置の発明として特定できるだけでなく、プログラムの発明としても、そのプログラムを記録した記録媒体の発明としても、方法の発明としても、テンプレートを記録した記録媒体の発明としても特定することができる。
【００１５】
【発明の実施の形態】
以下、本発明の実施の形態を複数の実施例に基づいて説明する。
【００１６】
（第一実施例）
第一実施例では、印刷用紙に合成画像を印刷する場合を例に説明する。従って描画空間とは第一実施例では印刷用紙のことをいい、表出とは印刷のことをいう。また、以下の説明において描画領域とは描画空間の座標系である出力座標系で描画空間上に定義される矩形の領域のことをいい、合成画像は描画領域内に印刷されるものとする。
【００１７】
図２は、本発明の第一実施例による合成描画システムとしてのプリンタ１の外観を示す斜視図であり、図３はプリンタ１のディスプレイ１１及び操作部１３を拡大して示す図である。
【００１８】
カードスロット２は、ハウジング３の内部に設けられた図示しない入力部にリムーバブルメモリ４を脱着自在に接続するための開口部である。
図３に示すように、ハウジング３にはディスプレイ１１、操作部１３などが設けられ、操作部１３には上スイッチ５、下スイッチ６、決定スイッチ７、戻るスイッチ８、印刷開始スイッチ９、中止スイッチ１０などの複数のスイッチが設けられている。ディスプレイ１１には種々の設定をするためのメニューが表示される。上スイッチ５、下スイッチ６、決定スイッチ７、戻るスイッチ８は、メニューの項目を選択するためのスイッチである。印刷開始スイッチ９は、印刷の開始を指示するためのスイッチである。中止スイッチ１０は、印刷の中止を指示するためのスイッチである。
【００１９】
ハウジング３には、印刷手段を構成する電源回路、制御回路、駆動回路、アクチュエータなどが収容されている。
図４は、プリンタ１のブロック図である。
【００２０】
ディスプレイ１１は、ＬＣＤ（Ｌｉｑｕｉｄ　Ｃｒｙｓｔａｌ　Ｄｉｓｐｌａｙ）などで構成され、ディスプレイ制御部１２によって制御される。ディスプレイ制御部１２は、ＶＲＡＭ、駆動回路等を備える。ディスプレイ制御部１２は、制御部１５に制御され、ＶＲＡＭに格納された合成画像をディスプレイ１１に表示させる。
【００２１】
入力部１４は、制御部１５によって制御され、リムーバブルメモリ４に格納された画像や文字などのオブジェクトを定義するファイル（以下、「オブジェクトファイル」という）、テンプレートなどを読み出し、ワークメモリ１６に格納する。リムーバブルメモリ４は、入力部１４に脱着自在の記録媒体であって、具体的には例えばディジタルカメラに脱着自在のカード型フラッシュメモリである。
【００２２】
画像処理部１７は、ワークメモリ１６に格納されたデータを印刷データに変換するための処理を制御部１５と協働して実行するＡＳＩＣである。印刷データに変換するための処理を制御部１５、画像処理部１７のいずれで行うかは、設計事項である。具体的には例えば画像処理部１７では、ワークメモリ１６に格納された画像データに対して伸張処理、ガンマ補正、色空間の変換処理、解像度変換処理、ハーフトーン処理、インターレース処理などを実行する。
【００２３】
プリンタエンジン１８は、制御部１５によって制御され、画像処理部１７で生成された印刷データに基づいて印刷用紙に画像を形成する。プリンタエンジン１８は、例えばインクジェット方式、レーザ方式、昇華型熱転写方式、ドットインパクト方式などで印刷用紙に画像を形成する。
【００２４】
制御部１５は、ＣＰＵ、ＲＯＭを備える。ＣＰＵはＲＯＭに記憶された合成描画プログラムを実行して合成画像を作成し、合成画像をプリンタエンジン１８に印刷させる。ＲＯＭは、合成描画プログラム、各種のデータなどを予め記憶しているメモリである。
【００２５】
図１は、複数の暫定座標系が定義されたテンプレートを示す概念図である。テンプレートには複数の暫定座標系の他、複数のグループ座標系及び複数の配置座標が定義されている。
【００２６】
点Ａ及び点Ｂは互いに異なる暫定座標系の原点である。矩形の描画領域を対象とするテンプレートの場合、暫定座標系の原点は座標で指定されるのではなく、左上、右上、左下、右下、中央という位置で指定される。左上、右上、左下、右下、中央などは大きさや縦横比によらず任意の矩形の描画領域において特定できる点である。暫定座標系の原点を４隅のいずれかあるいは中央に指定すると、暫定座標系が変換される先となる描画領域の出力座標系において当該暫定座標系の原点に対応する座標を一意に特定できる。
【００２７】
座標Ｃ（５０、２５）及び座標Ｄ（−３５０、−１３０）は互いに異なるグループ座標系の原点である。グループ座標系の原点はそれぞれいずれかの暫定座標系で定義され、座標Ｃは左上（点Ａ）を原点とする暫定座標系、座標Ｄは右下（点Ｂ）を原点とする暫定座標系で定義されている。グループ座標系を定義する場合、絶対指定にするか又は相対指定にするかを選択できる。絶対指定及び相対指定については後述する。
【００２８】
座標Ｅ（５０、２５）、座標Ｆ（１００、７５）、座標Ｇ（４００、２５）、座標Ｈ（３７５、１００）及び座標Ｊ（２５、２５）は配置座標である。配置座標は画像、背景画像、コメントなどのオブジェクトを配置する位置を示す座標である。配置座標はグループ座標系の原点からのオフセット値で定義される。例えば配置座標Ｅ、Ｆ、Ｇ及びＨは、座標Ｃを原点とするグループ座標系で定義され、換言すれば、それらの座標は座標Ｃからのオフセット値として定義されている。尚、オフセット値は正の値であっても負の値であってもよい。一つのグループ座標系には複数の配置座標を定義できる。すなわち複数のオブジェクトの位置を同一のグループ座標系で定義できる。同一のグループ座標系で配置座標を定義された複数のオブジェクトは、グループ座標系の原点を移動させることでまとめて移動させることができる。例えば郵便番号記入枠と郵便番号の相対位置がプリンタ１の個体差によってずれる場合、郵便番号記入枠の一つ一つをオブジェクトとし、その配置座標を同一のグループ座標系で定義する。郵便番号についても一つ一つの数字をオブジェクトとし、その配置座標を郵便番号記入枠とは異なる一つのグループ座標系で定義する。このように定義すると、郵便番号を定義するグループ座標系の原点の位置を移動すれば７桁の郵便番号について一括して移動でき、ずれを容易に修正できる。
【００２９】
図５は、図１に示すテンプレートを定義したスクリプトを示す図である。テンプレート２０においてＤｒａｗＰｉｃｔｕｒｅから始まる行は配置座標を定義する行である。配置座標は以下の書式で記述する。
ＤｒａｗＰｉｃｔｕｒｅ（ＧｒｏｕｐＩＤ，　”ＦｉｌｅＮａｍｅ”，　”ＰｈｏｔｏＩＤ”，　ＦｒａｍｅＸ１，　ＦｒａｍｅＹ１，　ＦｒａｍｅＸ２，ＦｒａｍｅＹ２，　Ｄｉｒｅｃｔｉｏｎ，　Ｆｉｔｔｉｎｇ，　Ａｌｉｇｎｍｅｎｔ，　Ｓｈａｐｅ）
ここで、ＧｒｏｕｐＩＤは当該配置座標を定義するグループ座標系の識別番号を指定するフィールドである。ＦｉｌｅＮａｍｅは、確定オブジェクトのファイル名を指定するフィールドである。確定オブジェクトとは、テンプレート２０とともに予め保存されているオブジェクトであって、例えば背景画像や定型のコメントのように、ユーザが入力するオブジェクトと合成して出力するためにテンプレート２０の作成者が予め用意するものである。ＰｈｏｔｏＩＤは、配置座標の優先順位を指定するフィールドである。テンプレート２０の作成者は同一テンプレート内の配置座標間に優先順位を設定することができる。優先順位を設定できるようにすると、どの配置座標から先にオブジェクトを割り当てるかをテンプレート２０の作成者が指定できる。尚、優先順位は重複して設定してもよく、同じ優先順位の配置座標には同じオブジェクトが割り当てられる。ＦｉｌｅＮａｍｅ及びＰｈｏｔｏＩＤのフィールドは相互に補完関係にあり、いずれか一方のフィールドには有効な値が指定され、他方のフィールドは空欄でなければならない。ＦｒａｍｅＸ１は配置座標のＸ座標をグループ座標系で指定するフィールドであり、ＦｒａｍｅＹ１は配置座標のＹ座標をグループ座標系で指定するフィールドである。ＦｒａｍｅＸ２及びＦｒａｍｅＹ２は配置座標を左上とする矩形枠の右下の点を指定するフィールドであり、オブジェクトはこの矩形枠内に配置される。Ｄｉｒｅｃｔｉｏｎは配置するオブジェクトの向きを指定するフィールドであり、０（回転しない）、９０（９０度回転）、１８０（１８０度回転）などのように回転角度を指定できる。Ｆｉｔｔｉｎｇはオブジェクトの大きさが矩形枠の大きさと一致しない場合の扱いを指定するフィールドであり、例えば、０（オブジェクトの左上を配置座標に一致させる）、１（オブジェクトの中央を矩形枠の中央に一致させる）、２（オブジェクトの上辺の中央を矩形枠の上辺の中央に一致させる）などのように指定できる。Ｓｈａｐｅはαチャンネルデータのファイル名を指定するフィールドである。αチャンネルデータはある画像を別の画像に重畳合成するために用いるデータであり、重畳合成を行わない場合は指定されない。αチャンネルデータについては後述する。
【００３０】
テンプレート２０は先頭行から順に解釈される。従って、配置座標の矩形枠の一部の領域が他の配置座標の矩形枠の領域と重なる場合、先に解釈された配置座標に配置されたオブジェクトの一部は、後で解釈された配置座標に配置されるオブジェクトで一部が上書きされることになる。従って、例えばあるオブジェクトの全体が必ず印刷されるようにしたい場合、最も最後に解釈される配置座標にそのオブジェクトを割り当てれば全体を印刷させることができる。
【００３１】
テンプレート２０においてＧｒｏｕｐから始まる行はグループ座標系を定義する行である。グループ座標系は以下の書式で記述する。
Ｇｒｏｕｐ（ＧｒｏｕｐＩＤ，　ＡｂｓｏｌｕｔｅＦｌａｇ，　Ｏｒｉｇｉｎ，　ＦｒａｍｅＸ１，　ＦｒａｍｅＹ１，　ＦｒａｍｅＸ２，　ＦｒａｍｅＹ２）
ここで、ＧｒｏｕｐＩＤは当該グループ座標系を一意に識別するための識別番号を指定するフィールドである。ＡｂｓｏｌｕｔｅＦｌａｇは、０（絶対指定）、１（相対指定）のいずれかを指定するフィールドである。Ｏｒｉｇｉｎは当該グループ座標系の原点を定義する暫定座標系の原点を指定するフィールドであり、０（左上）、１（右上）、２（左下）、３（右下）、４（中央）のいずれかで指定する。ＦｒａｍｅＸ１はグループ座標系の原点のＸ座標を暫定座標系で指定するフィールドであり、ＦｒａｍｅＹ１はグループ座標系の原点のＹ座標を暫定座標系で指定するフィールドである。ＦｒａｍｅＸ２及びＦｒａｍｅＹ２はクリッピングマスクであり、クリッピングを行う場合はＦｒａｍｅＸ２及びＦｒａｍｅＹ２にはグループ座標系の原点を左上とする矩形枠の右下の座標を指定する。クリッピングを行わない場合はＦｒａｍｅＸ２及びＦｒａｍｅＹ２には０を設定する。クリッピングについては後述する。
【００３２】
次に、αチャンネルデータを用いた画像の重畳合成について説明する。ＤｒａｗＰｉｃｔｕｒｅ行でＳｈａｐｅが指定されると、当該ＤｒａｗＰｉｃｔｕｒｅ行で定義される配置座標に配置されるオブジェクトを第一の画像とし、当該ＤｒａｗＰｉｃｔｕｒｅ行の直前のＤｒａｗＰｉｃｔｕｒｅ行で定義される配置座標に配置されるオブジェクトを第二の画像として重畳合成画像の作成が行われる。図１に模式的に示す例では、”Ａ．ｊｐｇ”が第二の画像であり、”Ｂ．ｊｐｇ”が第一の画像であり、”Ｓｈａｐｅ．ｊｐｇ”がαチャンネルデータである。αチャンネルデータはＪＰＥＧ形式のデータであり、一般のＪＰＥＧ形式のデータはＹ（輝度成分）、Ｃｂ（青み成分）、Ｃｒ（赤み成分）の３チャンネルで構成されるが、αチャンネルデータは１チャンネルのみで構成され、その１チャンネルにαデータが格納されている。尚、αチャンネルデータは、ＢＭＰ、Ｔｉｆｆ、ＰＮＧ形式などのようなＪＰＥＧ形式以外の形式で記述されてもよい。重畳合成画像の作成はＹ、Ｃｂ、Ｃｒの色空間をＲ、Ｇ、Ｂの色空間に変換した後、以下の式で透過率を計算することにより行われる。
Ｒ’＝（Ｒｐ×α＋Ｒｔ×（２５５−α））／２５５
Ｇ’＝（Ｇｐ×α＋Ｇｔ×（２５５−α））／２５５
Ｂ’＝（Ｂｐ×α＋Ｂｔ×（２５５−α））／２５５
ここでＲ’、Ｇ’、Ｂ’は重畳合成画像のＲＧＢの値であり、Ｒｐ、Ｇｐ、Ｂｐは第一の画像データのＲＧＢの値である。また、Ｒｔ、Ｇｔ、Ｂｔは第二の画像データのＲＧＢの値である。また、αはαデータの値である。この式からわかるように、αデータの値が２５５の場合は第一の画像データの値が選択され、０の場合は第二の画像データの値が選択される。それ以外の場合は両者を合成した値が選択される。図１に模式的に示すαチャンネルデータの場合、ハッチングが付された領域に該当するαデータには２５５が設定され、白抜き領域に該当するαデータには０が設定されている。従って、図示するように第一の画像がαチャンネルデータで設定される形状に切り抜かれて第二の画像に合成される。これにより重畳合成画像が作成される。作成された重畳合成画像は、直前のＤｒａｗＰｉｃｔｕｒｅ行で定義される配置座標にオブジェクトとして配置される。
【００３３】
図１に示すように、第一実施例のαチャンネルデータの外枠の大きさは、第二の画像の外枠より小さい。これは、ＤｒａｗＰｉｃｔｕｒｅのスクリプトによって合成される一方の画像の割り付け範囲と同一の範囲にαチャンネルデータが割り付けられることになっているからである。すなわち、ＤｒａｗＰｉｃｔｕｒｅのスクリプトによってαチャンネルデータについてその割付範囲を定義しているため、αチャンネルデータの割付範囲外については、合成される他方の画像の全画素の値を重畳合成画像の画素の値として選択すればよいので、合成される他方の画像の全画素分のαチャンネルデータを定義する必要がないからである。従って第一実施例のαチャンネルデータによると、第二の画像と同じ大きさの領域を表すαチャンネルデータに比べてデータ量が小さくてすむ。更に、外枠の大きさが第二の画像データより小さいことから、第二の画像のどの位置に第一の画像を割り付けるかを自由に変更することができる。すなわち第二の画像に対する第一の画像の相対的な位置を自由に決めることができる。例えばαチャンネルデータの外枠の大きさが第二の画像の外枠と同じ大きさであると、αチャンネルデータを移動させることができず、割り付ける位置を変えるには別のαチャンネルデータを用意しなければならない。αチャンネルデータの外枠の大きさが第二の画像の外枠の大きさより小さいと、別のαチャンネルデータを用意することなく第二の画像の外枠の範囲内で割り付ける位置を自由に設定できる。
【００３４】
次に、クリッピングについて説明する。クリッピングとは、クリッピングマスクで定義される領域からはみ出した画素を除去することをいう。前述のようにグループ座標系は矩形の領域として設定できる。例えば図１に示す配置座標Ｈのように矩形枠が大きいと、矩形枠の一部がグループ座標系の矩形枠からはみ出してしまう。この場合にクリッピングを行う。図示するように配置座標Ｈの矩形枠は網掛け部分がグループ座標系の領域からはみ出しており、当該配置座標に配置されるオブジェクトは網掛け部分がクリッピングされる。クリッピングマスクはグループ座標系毎に定義され、クリッピングマスクが設定されているとき同一のグループ座標系で定義された配置座標に配置される複数のオブジェクトに対してクリッピングが行われる。クリッピングを行うとはみ出した部分が除去されるため、ユーザがサイズの大きいオブジェクトを入力したとしても、当該グループ座標系のクリッピングマスクの範囲外に配置される他のグループ座標系で配置が定義されたオブジェクトへは影響しない。このため、ユーザによって入力されるオブジェクトの任意の一部を、同一グループ座標系で定義された他のオブジェクトとの相対的な位置関係を維持しながら、描画空間に表出する範囲内に自由に配置することができる。
【００３５】
次に、暫定座標系の出力座標系への変換について、絶対指定の場合と相対指定の場合とについて説明する。
図６は、絶対指定の場合の変換を説明する図である。絶対指定の場合の変換では、暫定座標系で定義された矩形枠を出力座標系で定義される座標平面上に印刷用紙サイズに応じて平行移動させる。ここでは描画領域の左上、右上、左下及び右下の座標は出力座標系によってそれぞれ（０、０）、（１２００、０）、（０、１５００）及び（１２００、１５００）に定義されるとして説明する。左上を原点とする暫定座標系の場合、暫定座標系の原点は描画空間の大きさや縦横比によらず（０、０）に一意に変換される。当該暫定座標系で定義されるグループ座標系５１の原点（１００、１００）は（０＋１００、０＋１００）、すなわち（１００、１００）に変換される。配置座標（１００、１００）は（２００、２００）に変換される。また、例えば右下を原点とする暫定座標系の場合、暫定座標系の原点は（１２００、１５００）に変換される。当該暫定座標系で定義されるグループ座標系５２の原点（−６００、−４００）は（（１２００＋（−６００））、（１５００＋（−４００）））、すなわち（６００、１１００）に変換される。配置座標（１００、１００）は（７００、１２００）に変換される。右上及び左下の場合も同様である。絶対指定にすると、印刷用紙のサイズが異なっても常にオブジェクトを例えば右端から５ｍｍ、下端から５ｍｍの位置に同じサイズで印刷させることができる。
【００３６】
図７は、相対指定の場合の変換を説明する図である。相対指定の場合の変換では、暫定座標系で定義された矩形枠を印刷用紙サイズに応じて拡大又は縮小し、拡大又は縮小した矩形枠を出力座標系で定義される座標平面上に印刷用紙サイズに応じて平行移動させる。尚、以下の説明ではテンプレートがＡ４サイズ（横８００、縦１２００）の描画領域を基準として設定されている場合を例に説明する。左上を原点とする暫定座標系の原点は（０、０）に変換される。グループ座標系の原点については、絶対指定の場合と異なり、描画領域の大きさに応じて調整される。描画領域の左上、右上、左下及び右下の座標が（０、０）、（１２００、０）、（０、１８００）及び（１２００、１８００）であるとすると、当該描画領域の横幅はＡ４サイズの３／２倍（＝１２００／８００）、縦幅も３／２倍（＝１８００／１２００）である。この場合、グループ座標系５３の原点（１００、１００）は（０＋１００×３／２）、（０＋１００×３／２））、すなわち、（１５０、１５０）に変換される。配置座標（１００、１００）は（３００、３００）に変換される。また、例えば右下を原点とする暫定座標系の原点は（１２００、１８００）に変換され、グループ座標系５４の原点（−６００、−４００）は（（１２００＋（−６００×３／２））、１８００＋（−４００×３／２））、すなわち（３００、１２００）に変換される。配置座標（１００、１００）は（４５０、１３５０）に変換される。右上及び左下の場合も同様である。相対指定にすると、グループ座標系の原点の位置及びグループ座標系の領域の大きさが描画領域の大きさに応じて調整されるため、印刷用紙のサイズが異なってもオブジェクト間の相対的な位置関係が一定のレイアウトで印刷することができる。
【００３７】
以上の説明から明らかなように、グループ座標系が絶対指定であっても相対指定であっても、描画領域の右下の座標が分かれば暫定座標系を出力座標系へ変換できる。すなわち変換パラメータは描画領域の右下の座標を一意に決めることのできる値であり、具体的には例えば描画領域の右下の座標そのものである。本実施例では変換パラメータは用紙サイズが指定されることで一意に特定される印刷用紙の右下の座標である。
【００３８】
図８は、合成描画プログラムのデータフロー図である。図示するように合成描画プログラムは、テンプレートの入力プロセス２１、オブジェクトの入力プロセス２３、パラメータの設定プロセス２４及び合成画像の表出プロセス２５を制御部１５に実行させる。
【００３９】
テンプレートの入力プロセス２１は、テンプレートを入力するためのメニューを表示するプロセスである。テンプレートの入力プロセス２１は所定のメニューにおいて”テンプレート”が選択されたとき、リムーバブルメモリ４に記憶されているテンプレートのファイル名を全て取得する。次に、テンプレートのファイル名を選択するためのテンプレート選択メニュー３１をディスプレイ１１に表示し、ユーザにより選択されたファイル名で特定されるテンプレートをリムーバブルメモリ４から読み込んで合成画像の表出プロセス２５に出力する。テンプレート選択メニュー３１を設けるとユーザはテンプレートを容易に追加することができ、したがってユーザは他人が作成したテンプレートを用いて容易に多様なレイアウトの合成画像を印刷することができる。
【００４０】
図９は、テンプレート選択メニュー３１を示す図である。ユーザは上スイッチ５及び下スイッチ６を操作してテンプレートを一つ選択し、決定スイッチ７を押す。これによりテンプレートが一つ選択される。
【００４１】
パラメータの設定プロセス２４は、変換パラメータを設定するプロセスである。パラメータの設定プロセス２４は用紙サイズを選択するための用紙サイズ選択メニュー３２をディスプレイ１１に表示し、ユーザにより選択された用紙サイズに基づいて、印刷用紙の右下の座標の座標を特定し、特定した座標を変換パラメータとして合成画像の表出プロセス２５に出力する。
【００４２】
図１０は、用紙サイズ選択メニュー３２を示す図である。ユーザは上スイッチ５及び下スイッチ６を操作して用紙サイズを一つ選択し、決定スイッチ７を押す。これにより用紙サイズが一つ選択される。
【００４３】
オブジェクトの入力プロセス２３は、テンプレートを用いて出力されるオブジェクトを入力するプロセスである。オブジェクトの入力プロセス２３はリムーバブルメモリ４に記録されているオブジェクトのファイル名を全て取得する。次に、取得したオブジェクトの各ファイル名に連続したコマ番号を付与する。次に、オブジェクトのファイル名を選択するためのオブジェクト選択メニュー３３をディスプレイ１１に表示し、ユーザにより選択されたファイル名で特定されるオブジェクトをリムーバブルメモリ４から読み込んで合成画像の表出プロセス２５に出力する。
【００４４】
図１１は、オブジェクト選択メニュー３３を示す図である。図示する例のオブジェクト選択メニュー３３はオブジェクトとして記憶された画像データを選択する場合のメニューであり、リムーバブルメモリ４において画像データを一意に識別するためにコマ番号を表示するメニューの例である。ユーザは上スイッチ５及び下スイッチ６を操作してオブジェクトのコマ番号を一つ選択し、決定スイッチ７を押す。これによりオブジェクトが一つ選択される。この操作を、選択したテンプレートで定義されたＰｈｏｔｏＩＤの数だけ繰り返す。選択されたオブジェクトは選択された順に優先順位の高いＰｈｏｔｏＩＤに割り当てられる。すなわち、先に選択されたオブジェクトほど、ＰｈｏｔｏＩＤの値が小さい配置座標に配置される。
【００４５】
合成画像の表出プロセス２５は、オブジェクトの入力プロセス２３から出力されたオブジェクトを出力座標系で定義される配置座標にテンプレート及び変換パラメータに基づいて配置した合成画像を作成し、作成した合成画像を印刷用紙に印刷させるプロセスである。合成画像の表出プロセス２５は始めにワークメモリ１６上に印刷用紙サイズに対応した作業領域を確保する。具体的には例えば、画素データを要素とするｎ行ｍ列の配列変数Ａｒｒａｙ（ｎ、ｍ）として領域を確保する。ここでｎは変換パラメータのＸ座標の値であり、ｍは変換パラメータのＹ座標の値である。尚、全ての画素データの初期値には透明を表す値を設定するものとする。次に、作業領域において出力座標系で表された配置座標に対応する位置にオブジェクトの左上画素が配置されるようにオブジェクトを配置する。具体的には例えば、出力座標系で表された配置座標が（１００、１００）、当該配置座標の矩形枠の右下の座標が（２００、４００）であったとする。ここで、１００≦ｐ≦２００、１００≦ｑ≦４００＜とすると、Ａｒｒａｙ（ｐ、ｑ）で特定される要素に当該オブジェクトの対応する画素データの値を代入する。例えばオブジェクトの左上の画素データの値はＡｒｒａｙ（１００、１００）に代入し、右下の画素データの値はＡｒｒａｙ（２００、４００）に代入する。他の要素についても同様である。これにより作業領域にオブジェクトが配置される。テンプレート２０においてＦｉｌｅＮａｍｅで指定されたオブジェクトとＰｈｏｔｏＩＤに関連付けられたオブジェクトが各配置座標に配置されることにより、１つの合成画像が作成される。次に合成画像の表出プロセス２５は、作成した合成画像データが表す画像をプリンタエンジン１８に印刷させる。これにより合成画像が実際の描画空間である印刷用紙に印刷される。すなわち合成画像が表出される。
【００４６】
図１２は、プリンタ１の処理を表すフローチャートである。
Ｓ１０５では、テンプレートの入力プロセス２１はテンプレート選択メニュー３１を表示する。ユーザによりテンプレートのファイル名が選択されて決定スイッチ７が押下されると、選択されたファイル名で特定されるテンプレートを合成画像の表出プロセス２５に出力する。
【００４７】
Ｓ１１０では、パラメータの設定プロセス２４は用紙サイズ選択メニュー３２を表示する。ユーザにより用紙サイズが選択されて決定スイッチ７が押下されると、パラメータの設定プロセス２４は選択された用紙サイズに基づいて変換パラメータを設定する。
【００４８】
Ｓ１１５では、オブジェクトの入力プロセス２３はオブジェクト選択メニュー３３を表示する。ユーザによりオブジェクトのファイル名が選択されて決定スイッチ７が押下されると、選択されたオブジェクトのファイル名で特定されるオブジェクトを合成画像の表出プロセス２５に出力する。
Ｓ１２０では、合成画像の表出プロセス２５は合成画像を作成して印刷する。
【００４９】
以上、プリンタ１の処理について説明した。第一実施例に係るプリンタ１によると、複数のオブジェクトの配置は互いに異なる暫定座標系によって定義される。例えばユーザによって入力されるオブジェクトＡをＡ４の印刷用紙においてもＢ４の印刷用紙においても左端から１０ｍｍ、上端から１０ｍｍの位置に印刷するようにし、同時にテンプレートに予め定義されたオブジェクトＢをＡ４の印刷用紙においてもＢ４の用紙においても右端から５ｍｍ、下端から５ｍｍの位置に印刷するようにしたいとする。プリンタ１によると、オブジェクトＡを配置する配置座標とオブジェクトＢを配置する配置座標とを互いに異なる暫定座標系でテンプレートに定義すれば、同一のテンプレートを用いてＡ４の印刷用紙においてもＢ４の印刷用紙においてもオブジェクトＡとオブジェクトＢとを目的の位置に同じサイズで配置することができる。すなわち、テンプレートは特定のサイズの用紙に対してのみ配置を設定しているのではなく、任意のサイズの印刷用紙に対して配置を設定している。従って本発明の第一実施例に係るプリンタ１によると、未確定の描画領域に対して複数のオブジェクトの配置を予め設定することができる。
【００５０】
（第二実施例）
第二実施例では、ディスプレイに合成画像を表示する場合を例に説明する。従って描画空間とは第二実施例ではディスプレイの表示領域のことをいい、表出とはディスプレイに表示することをいう。また、以下の説明において描画領域とは描画空間の座標系である出力座標系で描画空間上に定義される矩形の領域のことをいい、合成画像は描画領域内に表示されるものとする。尚、第二実施例においては第一実施例と実質的に同一の部分については説明を省略する。
【００５１】
図１３は本発明の第二実施例による合成描画システムとしてのパーソナルコンピュータ（ＰＣ）４０の外観を示す模式図であり、図１４はＰＣ４０のブロック図である。
【００５２】
ＰＣ４０は、ＣＰＵ４１、ＲＯＭ４３、ＲＡＭ４２、ハードディスク（ＨＤ）４４、ディスプレイ４８、ディスプレイ制御部４５、操作部４６、入力部４７などを備え、バス４９で相互に接続されている。
【００５３】
ＣＰＵ４１はＲＯＭ４３に記憶された制御プログラムやハードディスク４４に記憶された基本プログラム（ＯＳ）を実行することによりＰＣ４０の各部を制御する他、本発明の第二実施例による合成描画プログラム、ディスプレイドライバなどを実行することにより合成画像をディスプレイ４８に表示させる。ＲＯＭ４３はＣＰＵ４１が動作するために最低限必要な制御プログラムやデータを予め記憶しているメモリである。ＲＡＭ３６は各種のプログラムやデータ等を一時的に記憶するメモリであり、且つ第一実施例におけるワークメモリとして用いられるメモリである。
【００５４】
ハードディスク４４は図示しないハードディスクコントローラを備える。ハードディスク４４には入力部４７により入力されたテンプレート、オブジェクトなどが記憶される他、基本プログラム（ＯＳ）、ディスプレイドライバ、合成描画プログラムなどが記憶されている。
【００５５】
ディスプレイ４８は、ＣＲＴ（Ｃａｔｈｏｄｅ　Ｒａｙ　Ｔｕｂｅ）やＬＣＤ（Ｌｉｑｕｉｄ　ＣｒｙｓｔａｌＤｉｓｐｌａｙ）などで構成され、ディスプレイ制御部４５によって制御される。ディスプレイ制御部４５は、ＶＲＡＭ、駆動回路等を備える。ディスプレイ制御部４５は、ＣＰＵ４１に制御され、ＶＲＡＭに格納された合成画像をディスプレイ４８に表示させる。
【００５６】
入力部４７は、ＣＰＵ４１によって制御され、リムーバブルメモリ４に格納されたデータを読み出してＲＡＭ４２に格納する。リムーバブルメモリ４は入力部４７に脱着自在の記録媒体であって、具体的には例えばディジタルカメラに脱着自在のカード型フラッシュメモリである。尚、フレキシブルディスク、光磁気ディスク（ＭＯ）、コンパクトディクス（ＣＤ−ＲＯＭ）などのリムーバブルメディアを利用する記憶装置を入力部として用いてもよい。また、ＰＣ４０は入力手段としてネットワークインタフェースを備え、ネットワークを介してオブジェクトを入力してもよい。
【００５７】
第二実施例のパラメータの設定プロセス２４は、ディスプレイの解像度をＯＳから取得する処理を行うプロセスである。パラメータの設定プロセス２４はメニューの表示は行わず、ＯＳから取得した解像度に基づいて、変換パラメータを合成画像の表出プロセス２５に出力する。これにより変換パラメータを設定する。
【００５８】
第二実施例の合成画像の表出プロセス２５は、作成した合成画像をディスプレイ４８に表示させる。
ＰＣ４０の作動については第一実施例における印刷が表示に変わる他は実質的に同一であるため説明は省略する。
【００５９】
尚、第一、第二実施例では合成描画システムとしてそれぞれプリンタ、ＰＣを例に説明したが、合成描画システムは例えばプロジェクタであってもよい。
【図面の簡単な説明】
【図１】本発明の第一実施例による合成描画システムにおけるテンプレートの概念図である。
【図２】本発明の第一実施例による合成描画システムの外観を示す斜視図である。
【図３】本発明の第一実施例による合成描画システムのディスプレイ及び操作部を拡大して示す図である。
【図４】本発明の第一実施例による合成描画システムのブロック図である。
【図５】本発明の第一実施例による合成描画システムのテンプレートを示す図である。
【図６】本発明の第一実施例による合成描画システムにおいて暫定座標系から出力座標系への変換を説明する図である。
【図７】本発明の第一実施例による合成描画システムにおいて暫定座標系から出力座標系への変換を説明する図である。
【図８】本発明の第一実施例による合成描画システムのデータフロー図である。
【図９】本発明の第一実施例による合成描画システムが表示するテンプレートを選択するメニューを示す図である。
【図１０】本発明の第一実施例による合成描画システムが表示する用紙サイズを選択するメニューを示す図である。
【図１１】本発明の第一実施例による合成描画システムが表示するオブジェクトを選択するメニューを示す図である。
【図１２】本発明の第一実施例による合成描画システムの処理を表すフローチャートである。
【図１３】本発明の第二実施例による合成描画システムの外観を示す斜視図である。
【図１４】本発明の第二実施例による合成描画システムのブロック図である。
【符号の説明】
１　プリンタ（合成描画システム）
１１、４８　ディスプレイ（メニュー表示手段、印刷設定手段、オブジェクト入力手段、出力手段）
１２、４５　ディスプレイ制御部（メニュー表示手段、印刷設定手段、オブジェクト入力手段、出力手段）
１３、４６　操作部（印刷設定手段、オブジェクト入力手段）
１４、４７　入力部（オブジェクト入力手段）
１５　制御部（メニュー表示手段、オブジェクト入力手段、印刷設定手段、出力設定手段、出力手段）
１６　ワークメモリ（記憶手段）
１７　画像処理部（出力手段）
１８　プリンタエンジン（出力手段）
２１　テンプレートの入力プロセス（メニュー表示手段）
２３　オブジェクトの入力プロセス（オブジェクト入力手段）
２４　パラメータの設定プロセス（印刷設定手段、出力設定手段）
２５　合成画像の表出プロセス（出力手段）
４２　ＲＡＭ（記憶手段）
４４　ハードディスク（記憶手段）
【図１】
2004096560.tif 000003
【図２】
2004096560.tif 000004
【図３】
2004096560.tif 000005
【図４】
2004096560.tif 000006
【図５】
2004096560.tif 000007
【図６】
2004096560.tif 000008
【図７】
2004096560.tif 000009
【図８】
2004096560.tif 000010
【図９】
2004096560.tif 000011
【図１０】
2004096560.tif 000012
【図１１】
2004096560.tif 000013
【図１２】
2004096560.tif 000014
【図１３】
2004096560.tif 000015
【図１４】
2004096560.tif 000016