(57)【特許請求の範囲】
【請求項１】
上位機器から画像情報を受信する受信手段と、
前記画像情報を解析する解析手段と、
該解析手段の解析結果に応じて前記画像情報に基づくパターンデータを生成し記憶手段に展開する展開手段と、
前記解析手段が前記画像情報中に改行命令を識別すると前記展開手段が処理する前記記憶手段上の展開位置を改行した位置に移動させる改行処理手段と、
前記パターンデータに網掛け処理を施すか否かを設定記憶する設定記憶手段と、
前記パターンデータに対応する網掛け画像を生成する網掛け画像生成手段と、
前記解析手段が改行命令を識別する毎に前記設定記憶手段の設定値を反転する反転制御手段と、
前記記憶手段の１頁分のデータに基づき記録を行う記録手段とを備え、
前記解析手段が前記画像情報中に改行命令を識別する毎に前記設定記憶手段の設定値に応じて、当該行のパターンデータに前記網掛け画像を合成して記録することを特徴とする記録装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はパーソナルコンピュータ等の上位機器から出力される被フォームデータに対し、自動的にフォーム画像を作成し、フォームオーバレイ印刷を行う記録装置に関する。
【０００２】
【従来の技術】
今日、帳票等の印刷において、印刷処理を高速に行うため罫線枠等のフォームデータを予め登録し、後に被フォームデータを、例えばパーソナルコンピュータ等の上位機器から供給し、両データを合成して印字処理を行うフォームオーバレイ印刷が採用されている。
【０００３】
従来、上述のようなフォームオーバレイ印刷を行う場合、印刷するデータ（被フォームデータ）に対し、予めフォーム作成ユーティリティソフトを使用しフォームデータの作成処理を行っている。記録装置では、このようにして作成したフォームデータに対し、上述のようにホスト機器から送信される被フォームデータを指定されるフォームデータのフィールド（エリア）に重ね合わせ、印刷処理を行っている。
【０００４】
【発明が解決しようとする課題】
上記従来のフォームオーバレイ印刷では、上述のように予め記録装置内でフォームデータを作成しておく必要がある。しかし、１ラインおきに網掛け処理を施すような簡単なフォームデータであっても、被フォームデータに合わせてフォームデータを作成する必要があり、フォームデータの作成に大きな労力を必要としていた。
【０００５】
本発明は上記課題を解決するため、被フォームデータを作成する際、１ラインおきに網掛け処理を施すようなフォームデータも自動的に作成し、容易にフォームオーバレイ印刷を可能とした記録装置を提供するものである。
【０００６】
【課題を解決するための手段】
請求項１記載の発明は上記課題を解決するため、上位機器から画像情報を受信する受信手段と、
前記画像情報を解析する解析手段と、
該解析手段の解析結果に応じて前記画像情報に基づくパターンデータを生成し記憶手段に展開する展開手段と、
前記解析手段が前記画像情報中に改行命令を識別すると前記展開手段が処理する前記記憶手段上の展開位置を改行した位置に移動させる改行処理手段と、
前記パターンデータに網掛け処理を施すか否かを設定記憶する設定記憶手段と、
前記パターンデータに対応する網掛け画像を生成する網掛け画像生成手段と、
前記解析手段が改行命令を識別する毎に前記設定記憶手段の設定値を反転する反転制御手段と、
前記記憶手段の１頁分のデータに基づき記録を行う記録手段とを備え、
前記解析手段が前記画像情報中に改行命令を識別する毎に前記設定記憶手段の設定値に応じて、当該行のパターンデータに前記網掛け画像を合成して記録することを特徴とする記録装置を提供することにより達成できる。
【００１０】
ここで、前記網掛け画像は、例えば前記パターンデータに含まれる文字画像を行単位に修飾する網掛け画像である。
【００１１】
そして、前記網掛け画像生成手段は網掛け画像の作成指示情報であり、例えば当該網掛け画像が指示された場合、対応するプログラムが選択され、網掛け印字を施すラインの印字幅や、網掛け印字の繰り返し回数、等が指定され、対応する領域に網掛け印字を行う。
【００１２】
このように構成することにより、例えば交互の印字ライン毎に網掛け処理を施すフォーム画像や、所定ライン数毎に網掛け処理を施すフォーム画像を短時間で簡単に作成し、容易にフォームオーバレイ印字を行うことができる。
【００１９】
【発明の実施の形態】
以下、本発明の実施形態例を図面を用いて詳細に説明する。
図１は本実施形態例を説明する記録装置のシステム構成図である。尚、本例の説明において使用する記録装置は、例えばパーソナルコンピュータに接続されたプリンタ装置である。
【００２０】
同図において、プリンタ装置１は制御部２とプリンタエンジン３で構成されている。制御部２はデータ受信部４、描画部５、ビデオインターフェイス部（以下、ビデオＩ／Ｆ部で示す）６、ページフレーム７で構成されている。
【００２１】
パーソナルコンピュータ９は画像情報を出力する装置であり、パラレルインターフェイスを介して本例のプリンタ装置１と接続している。パーソナルコンピュータ９は画像情報をプリンタ装置１に出力する上位機器として機能し、本例では画像情報、特に被フォームデータをプリンタ装置１のデータ受信部４に出力する。
【００２２】
データ受信部４はパーソナルコンピュータ９から出力される画像データ（被フォームデータ）の所定量を格納する。データ受信部４に所定量の画像データが格納されると、これらのデータは描画部５に出力される。描画部５では画像データを解析処理し、画像データに含まれるコマンドを解析する。例えば、文字コードは不図示のキャラクタジェネレータに出力し、対応するパターンデータに変換する。また、画像データに含まれるコマンドに対しては、コマンドが指示する命令に従った処理を行う。
【００２３】
描画部５によってコマンド解析され、パターンデータに変換された画像データは、ページフレーム７に出力され１頁分のパターンデータが記憶される。また、ページフレーム７はイエロー（Ｙ）、マゼンダ（Ｍ）、シアン（Ｃ）、ブラック（ＢＫ）の各色の記憶エリアを有し、これらの各記憶エリアに対応する色のパターンデータが展開される。
【００２４】
ビデオＩ／Ｆ６はページフレーム７に展開したパターンデータをプリンタエンジン３に出力するインターフェイスであり、例えばタンデム形式に配設された４個の画像形成ユニットに対し、イエロー（Ｙ）、マゼンダ（Ｍ）、シアン（Ｃ）、ブラック（ＢＫ）のパターンデータを順次出力する。また、ページフレーム７からのデータ読み出しは、後述する改頁コードが入力すると実行され、このようにして出力されたパターンデータに基づき、記録紙にはカラー画像が印字される。
【００２５】
以上の構成のプリンタ装置１において、以下にその処理動作を説明する。
尚、本例の説明では、先ず「通常の印字処理」を説明した後、本例の特徴である「網掛け処理」、「外枠罫線処理」、「行罫線処理（得意先毎の罫線処理）」を個々に説明する。また、各処理の説明の際、図２に示すページフレーム７のメモリ座標を使用する。
【００２６】
先ず、通常印字処理について説明する。
図３はこの通常印字処理を説明するフローチャートである。先ず、ページフレーム７上の初期位置（Ｘ、Ｙ）を設定する（ステップ（以下Ｓで示す）１）。この初期位置は、印字開始時の１文字目の印字スタート位置であり、Ｘ方向の印字開始位置をＸini で示し、Ｙ方向の印字開始位置をＹini で示す。具体的には、図２に示すように１文字目（エリアＣ１）の左下のドット印字位置を示す。
【００２７】
このようにページフレーム７上（用紙上）の初期位置を（Ｘini 、Ｙini ）に設定した後、データ受信処理を行う（Ｓ２）。すなわち、パーソナルコンピュータ９から出力される画像情報（被フォームデータ）を受信し、前述のように文字コードは不図示のキャラクタジェネレータに出力し、対応するパターンデータに変換し、上述の１文字目のエリアＣ１に展開する（Ｓ３がＹ（イエス）、Ｓ４）。そして、例えばポインタをページフレーム７で、Ｘ方向にＸcr移動する（Ｓ５）。ここで、Ｘcrは図３に示すように各文字間の間隔である。
【００２８】
次に、上述の処理を繰り返し、入力するデータが文字コードである間、パターンデータに変換した文字を順次エリアＣ２、Ｃ３、・・・に展開してゆく。
その後、受信したデータが改行コードである場合（Ｓ３がＮ（ノー）、Ｓ６がＹ）、ポインタをＹ方向に１文字分移動すると共に、Ｘ方向の初期位置をＸini に移動する（Ｓ７）。尚、ここでＹ方向の文字間隔は図２に示すように、Ｙlfである。したがって、この処理（Ｓ７）によって第２ライン目の先頭に、ポインタが移動し、以下上述の処理（Ｓ２〜Ｓ７）を繰り返すことにより、ページフレーム７には文字コードに対応するパターンデータが書き込まれてゆく。
【００２９】
その後、改頁コードを受信すると（Ｓ８がＹ）、１頁分のデータがページフレーム７に展開され、その１頁分のデータをプリンタエンジン３に転送する（Ｓ９）。尚、受信したデータが他の制御コードである場合、対応する処理を行う（Ｓ１０）。
【００３０】
以上の処理を実行することにより、ページフレーム７に１頁分のパターンデータを書き込むと共に、当該データを順次プリンタエンジン３に転送し、記録紙に印字処理を行う。また、この印字処理はイエロー（Ｙ）、マゼンダ（Ｍ）、シアン（Ｃ）、ブラック（ＢＫ）の各色毎に行われ、記録紙にカラー印字が行われる。尚、図４の（ａ）は上述の通常印字処理により記録紙に画像を印刷した例である。
＜網掛け印字処理＞
次に、網掛け印字処理について説明する。
【００３１】
図５は網掛け印字処理を説明するフローチャートである。
先ず、本例においてもページフレーム７上の初期位置設定処理を行う（ステップ（以下ＳＴで示す）１）。この初期位置は前述と同様、図２の（Ｘini 、Ｙini ）である。また、本例では上記初期位置設定処理の際、ＡＭＩコードを「１」に設定する。このＡＭＩコードは網掛け処理の有無を指示するコードであり、ＡＭＩコードが「１」の時網掛け処理を行わせ、ＡＭＩコードが「０」の時網掛け処理を行わせない指示である。
【００３２】
このようにページフレーム７上（用紙上）の初期位置を（Ｘini 、Ｙini ）とし、ＡＭＩコードを「１」に設定した後、データ受信処理を行う（Ｓ２）。すなわち、パーソナルコンピュータ９から出力される画像情報（被フォームデータ）を受信し、前述のように文字コードは不図示のキャラクタジェネレータに出力し、対応するパターンデータに変換し、パターンデータに変換した文字を順次エリアＣ２、Ｃ３、・・・に展開してゆく。尚、この時ページフレーム７に展開されるデータは、フォームオーバレイ印字を行うための被フォームデータである。
【００３３】
次に、改行コードを読み出すと（ＳＴＰ３がＮ、ＳＴ６がＹ）、この時ＡＭＩコードが「１」か否か判断する（ＳＴ７）。このＡＭＩコードは、上述のように網掛け処理を施すか否かの判断を行うコードであり、ＡＭＩコードが「１」の時、対応する行に網掛け処理を行う（ＳＴ８）。本例では上述のように、初期時ＡＭＩコードが「１」に設定されているため第１ライン目に網掛け処理を施す。
【００３４】
尚、網掛け処理を行った後、ポインタをＹ方向に１文字分移動すると共に、Ｘ方向の初期位置をＸini に移動する（ＳＴ９）。また、ＡＭＩコードが「１」でない時には、網掛け処理を施すことなく、ＡＭＩコードを「１」に設定すると共に、ポインタを次の行に移動する（ＳＴ７がＮ、ＳＴ１０、ＳＴ９）。
【００３５】
以下、改行処理を行う毎にＡＭＩコードを判断し（ＳＴ７）、ＡＭＩコードが「１」の時、対応する行に網掛け処理を行い（ＳＴ８）、１ラインおきに網掛け処理を施す。
【００３６】
その後、前述の実施例と同様、改頁コードを受信すると（ＳＴ１１がＹ）、１頁分のデータをプリンタエンジン３に転送し、記録紙への印字処理を行う（ＳＴ１２）。
【００３７】
尚、図４（ｂ）のｂ’、ｂ”、・・・は、１頁分のデータに対し、本例の網掛け処理を施した例を示す図である。同図の（ａ）の印刷データに対し、極めて見やすい印刷画像であることがわかる。
＜外枠罫線処理＞
次に、外枠罫線処理について説明する。
【００３８】
図６は外枠罫線処理を説明するフローチャートである。同図の処理においても、先ず、ページフレーム７上の初期位置設定処理を行う（ステップ（以下ＳＴＰで示す）１）。この初期位置は前述と同様、（Ｘini 、Ｙini ）である。また、本例では外枠の最大値の座標（Ｘmax 、Ｙmax ）も初期設定位置として設定する。さらに、例えば網掛け処理の有無を示すＡＭＩコードを「１」に設定する。
【００３９】
次に、前述の場合と同様、データ受信を行い（ＳＴＰ２）、ページフレーム７から読み出したデータが文字コードであれば（ＳＴＰ３がＹ）、上述の初期位置に印字を行い（ＳＴＰ４）、ポインタをＸ方向にＸcr移動する（ＳＴＰ５）。以後入力するデータが文字コードである間、前述と同様の処理を行い、この間、上記処理（ＳＴＰ５）で行ったＸ方向の加算位置（Ｘ）が、初期時設定したＸmax より大きいか判断し（ＳＴＰ６）、設定値が大きい時、その加算値をＸmax とする（ＳＴＰ６がＮ、ＳＴＰ７）。
【００４０】
尚、上述の判断（ＳＴＰ６）において、Ｘ方向の加算位置（Ｘ）がＸmax の値より小さい時（ＳＴＰ６がＹ）、加算値をＸmax に更新することなく、データ受信処理（ＳＴＰ２）を継続する。
【００４１】
次に、改行コードを読み出すと（ＳＴＰ３がＮ、ＳＴＰ８がＹ）、この時ＡＭＩコードが「１」か否か判断し（ＳＴＰ９）、ＡＭＩコードが「１」の時、前述の図５のフローチャートで説明した網掛け処理を行い（ＳＴＰ１０）、ポインタをＹ方向に１文字分移動する（ＳＴＰ１１）。但し、ＡＭＩコードが「１」でない時には、前述と同様ＡＭＩコードを「１」に設定し、網掛け処理を行うことなく、ポインタをＹ方向に１文字分移動する（ＳＴＰ９がＮ、ＳＴＰ１４、ＳＴＰ１１）。
【００４２】
そしてこの間、上記処理（ＳＴＰ１１）で行ったＹ方向の加算位置（Ｙ）が、前述のように設定したＹmax より大きいか判断する（ＳＴＰ１２）。ここで、Ｙmax がＹの値より小さい時、上記加算値ＹをＹmax に更新する（ＳＴＰ１２がＮ、ＳＴＰ１３）。一方、Ｙ方向の加算位置（Ｙ）がＹmax の値より小さい時（ＳＴＰ１２がＹ）、加算値をＹmax に更新することなく、データ受信処理（ＳＴＰ２）を継続する。
【００４３】
以後、上述の処理を繰り返し（ＳＴＰ２〜ＳＴＰ１３）、更新したＸデータがＸmax 値を越える度にＸmax を書き換え、ＹデータがＹmax 値を越える度にＹmax を書き換える。その後、改頁コードが入力すると（ＳＴＰ１５がＹ）、外枠の枠線の設定処理を行う（ＳＴＰ１６）。
【００４４】
この処理を図２を参照しながら具体的に説明する。先ず、図２に示す外枠の左上の座標（Ａx 、Ａｙ）は前述の（Ｘini 、Ｙini ）を基準にして決定され、Ａx ＝Ｘini −Ｙohaku であり、Ａｙ＝Ｙini −Ｃhrh −Ｙohaku である。ここで、上述のＹohaku 、及びＣhrh は同図に示す通りであり、Ｙohaku はＸ方向、Ｙ方向において同一である。したがって、上記計算式から外枠の左上の座標（Ａx 、Ａｙ）が設定される。一方、外枠の右下の座標（Ｂx 、Ｂｙ）は上述の処理（ＳＴＰ５、ＳＴＰ１１）によって設定された（Ｘmax 、Ｙmax ）を使用する。すなわち、Ｂx はＸmax 値にＣhrh とＹohaku を加算することにより得られ（Ｂx ＝Ｘmax ＋Ｃhrh ＋Ｙohaku ）、ＢｙはＹmax 値にＹohaku を加算することで得られる（Ｂｙ＝Ｙmax ＋Ｙohaku ）。
【００４５】
したがって、上述のように設定した外枠の左上の（Ａx 、Ａｙ）と右下の（Ｂx 、Ｂｙ）を、改頁コードが入力することによりプリンタエンジン３に出力し、枠線で描画すると（ＳＴＰ１８、ＳＴＰ１９）、例えば図４（ｃ）に示す外枠罫線を描画することができる。
【００４６】
尚、本例では外枠罫線の描画と共に、網掛け処理も同時に行っており、外枠罫線の外側に印字される網掛け印字部分を削除するため、処理（ＳＴＰ１７）を行っている。すなわち、外枠からはみ出す網掛け部分を削除するため、図４（ｃ）にＩで示すＢox（０、０）、（Ａx 、Ｄｙ）間と、ＩＩで示すＢox（Ｂx 、０）、（Ｄx 、Ｄｙ）間を白色ドットで描画する（ＳＴＰ１７）。
【００４７】
以上の処理の後、前述と同様、改頁コードの受信に従って印字処理を行う（ＳＴＰ１９）。
尚、本例では外枠罫線に網掛け処理を施したので上述の処理（ＳＴＰ１７）を実行したが、外枠罫線の描画処理のみの処理であれば、上記処理（ＳＴＰ１７）は不要である。また、上述の処理の際、パーソナルコンピュータ９から出力されるデータが、文字コードでもなく、改行コードでもなく、改頁コードでもない場合には前述と同様、その他の処理を行う（ＳＴＰ２０）。
＜行罫線処理（得意先毎罫線処理）＞
次に、行罫線処理について説明する。尚、この行罫線処理として、本例では得意先毎罫線処理の例として説明する。
【００４８】
図７は本例を説明するフローチャートである。同図の処理においても、先ずページフレーム７上の初期位置設定処理を行う（ステップ（以下Ｗで示す）１）。この初期位置は前述と同様、１文字目の初期位置の座標（Ｘini 、Ｙini ）を設定するものであり、この場合、例えば網掛け処理の有無を示すＡＭＩコードは「０」に設定する。
【００４９】
次に、前述の場合と同様、データの受信処理を行い（Ｗ２）、ページフレーム７から読み出したデータが文字コードであれば（Ｗ３がＹ）、上述の初期位置に印字を行い（Ｗ４）、ポインタをＸ方向にＸcr移動する（Ｗ５）。
【００５０】
次に、入力した文字がスペース（ＳＰ）ではないことを判断した後（Ｗ６がＮ）、Ｘ方向の加算位置（Ｘ）が、最小値Ｘmin より大きいか判断する（Ｗ７）。初期時、最小値Ｘmin は上述の加算値Ｘより大きい値に設定されており、最初の判断（Ｗ７）はＮである。したがって、判断（Ｗ８）はＹとなり、処理（Ｗ９）を実行し、不図示のカウンタの値を「０」とし、行罫線の初期値Ｌmin をＸとし、Ｌn をＹとする。
【００５１】
その後、加算位置（Ｘ）は設定値Ｘmin を越えるため、判断（Ｗ７がＹ）となり、データの受信処理（Ｗ２）に従って１ライン分のデータをページフレーム７に記憶する。
【００５２】
次に、改行コードを読み出すと（Ｗ３がＮ、Ｗ１１がＹ）、ＡＭＩコードが「０」であるため網掛け処理を行うことなく、ポインタをＹ方向に１文字分移動すると共に、Ｘ方向の初期位置をＸini に移動する（Ｗ１３）。尚、この場合ＡＭＩコードが初期時「１」に設定されていれば、当該ラインのデータに網掛け処理を施して改行処理を行う（Ｗ１２、Ｗ１４、Ｗ１３）。
【００５３】
以上の処理により、Ｘ方向の初期値をＬmin とし、長さがＬn の行罫線の初期位置（初期ポイント）がページフレーム７上に設定される。尚、この位置を図４（ｄ）上に示すと、Ｉ’の位置である。
【００５４】
以下同様に、第２ライン目以降についても処理を行い、カウンタのカウントアップ処理と共に各ライン毎に行罫線の初期位置を設定する（Ｗ２〜Ｗ１３）。このようにして設定される行罫線の初期位置を図４（ｄ）上に示すと、Ｉ’、ＩＩ’、・・・のようになる。
【００５５】
その後、改頁コードが入力すると（Ｗ１５がＹ）、Ａx を「０」に設定し、Ｂx をＭＡＸx に設定し、不図示の他のカウンタ（ｍ）の初期値を「０」に設定し（Ｗ１６）、カウンタ（ｍ）の値を順次更新しながら行罫線の印字処理を行う（Ｗ１７、Ｗ１８）。すなわち、この場合、カウンタの値（ｍ）を「０」からｎまで更新し、長さＬn の行罫線を順次印字する（Ｗ１９）。この処理により、図４の（ｄ）に示す各初期位置Ｉ’、ＩＩ’、・・・から長さＬn の行罫線がそれぞれ作成され、同図の（ｄ）に示す行罫線の印字が記録紙に行われる。
【００５６】
また、上述の処理の際、パーソナルコンピュータ９から出力されるデータが、文字コードでもなく、改行コードでもなく、改頁コードでもない場合には前述と同様、その他の処理を行う（Ｗ２０）。
【００５７】
したがって、本例の行罫線処理を行うことにより、簡単且つ短時間で必要な箇所に行罫線を施したフォームオーバレイ印字を提供することができる。
尚、上述の実施形態例の説明ではプリンタ装置について説明したが、他の記録装置でも適用可能である。
【００５８】
【発明の効果】
以上説明したように本発明によれば、フォームデータをパーソナルコンピュータ等のホスト機器から供給することなく、記録装置内で自動生成できるので、短時間で簡単にフォーム画像を作成し、フォームオーバレイ処理を容易かつ短時間に行うことができる。
【図面の簡単な説明】
【図１】本実施形態例を説明するプリンタ装置のシステム構成図である。
【図２】ページフレームのメモリ座標を説明する図である。
【図３】通常印字処理を説明するフローチャートである。
【図４】（ａ）は通常印字処理により記録紙に画像を印刷した例を示す図であり、（ｂ）は網掛け処理により記録紙に画像を印刷した例を示す図であり、（ｃ）は外枠罫線処理により記録紙に画像を印刷した例を示す図であり、（ｄ）は行罫線処理により記録紙に画像を印刷した例を示す図である。
【図５】網掛け処理を説明するフローチャートである。
【図６】外枠罫線処理を説明するフローチャートである。
【図７】行罫線処理を説明するフローチャートである。
【符号の説明】
１  プリンタ装置
２  制御部
３  プリンタエンジン
４  データ受信部
５  描画部
６  ビデオインターフェイス部
７  ページフレーム
９  パーソナルコンピュータ
【図１】
0004029436.tif 000002
【図２】
0004029436.tif 000003
【図３】
0004029436.tif 000004
【図４】
0004029436.tif 000005
【図５】
0004029436.tif 000006
【図６】
0004029436.tif 000007
【図７】
0004029436.tif 000008