(57)【要約】【課題】  予めレイアウト枠等が印刷された帳票等に精度良く印刷を行う。【解決手段】  帳票処理装置１００は、プリンタを用いて所定のキャリブレーションパターンを印刷し、その後、スキャナによって、かかるキャリブレーションパターンの印刷された用紙を読み込む。そして、キャリブレーションパターンのスキャン時の位置と印刷時の位置と差に基づき、スキャナのスキャン可能領域とプリンタの印刷可能領域とのズレ量を算出する。帳票処理装置１００は、スキャナによって読み取った帳票画像をモニタ上に表示し、かかる画像上で文字等のレイアウトを行う機能を有しており、印刷時には、上述したズレ量分、レイアウトされた文字等の印刷位置をオフセットさせて帳票への印刷を行う。【選択図】  図２
2006195521.tif 000002
【特許請求の範囲】
【請求項１】
スキャナとプリンタとが接続され、帳票の印刷を行う帳票処理装置であって、
前記スキャナによって帳票の画像を読み取る帳票読取手段と、
前記読み取った帳票画像を表示する表示手段と、
前記帳票に印刷すべきデータを入力するデータ入力手段と、
前記データ入力手段によって入力したデータを、前記表示された帳票画像上にレイアウトするレイアウト手段と、
前記レイアウトが施されたデータを印刷データとして前記プリンタに出力することにより、前記プリンタにセットされた前記帳票に対して前記データの印刷を行う印刷手段と
を備える帳票処理装置。
【請求項２】
請求項１に記載の帳票処理装置であって、
更に、前記プリンタによって、予め印刷位置の定められた所定のキャリブレーションパターンを印刷するキャリブレーションパターン印刷手段と、
前記キャリブレーションパターンが印刷された用紙を前記スキャナによって読み取るキャリブレーションパターン読取手段と、
前記キャリブレーションパターン印刷手段によって印刷したキャリブレーションパターンの印刷位置と、前記キャリブレーションパターン読取手段によって読み取ったキャリブレーションパターンのスキャン位置とに基づき、前記プリンタの印刷可能領域と前記スキャナのスキャン可能領域とのズレ量を算出するズレ量算出手段とを備え、
前記印刷手段は、前記ズレ量算出手段によって算出したズレ量に基づき前記レイアウトが施されたデータの印刷位置を補正する手段を備える
帳票処理装置。
【請求項３】
請求項２に記載の帳票処理装置であって、
前記キャリブレーションパターン印刷手段は、前記キャリブレーションパターンとともに、該キャリブレーションパターンが印刷された用紙の上下を区別するための所定の指標を印刷する手段を備える
帳票処理装置。
【請求項４】
請求項２または３に記載の帳票処理装置であって、
前記キャリブレーションパターン印刷手段は、前記キャリブレーションパターンとして、所定形状の複数のマークによって構成されたキャリブレーションパターンを印刷する
帳票処理装置。
【請求項５】
請求項４に記載の帳票処理装置であって、
前記マークは、丸型である
帳票処理装置。
【請求項６】
請求項１ないし５のいずれかに記載の帳票処理装置であって、
前記印刷手段は、前記帳票のサイズに関わらず、前記プリンタで印刷可能な最大の用紙サイズで前記帳票に対して前記データの印刷を行う
帳票処理装置。
【請求項７】
請求項１ないし６のいずれかに記載の帳票処理装置であって、
前記スキャナと前記プリンタとは単一の複合機に搭載されている
帳票処理装置。
【請求項８】
スキャナとプリンタとが接続されたコンピュータが帳票の印刷を行う帳票処理方法であって、
前記スキャナによって帳票の画像を読み取り、
前記読み取った帳票画像を表示し、
前記帳票に印刷すべきデータを入力し、
前記入力したデータを、前記表示された帳票画像上にレイアウトし、
前記レイアウトが施されたデータを印刷データとして前記プリンタに出力することにより、前記プリンタにセットされた前記帳票に対して前記データの印刷を行う
帳票処理方法。
【請求項９】
スキャナとプリンタとが接続されたコンピュータが帳票の印刷を行うためのコンピュータプログラムであって、
前記スキャナによって帳票の画像を読み取る機能と、
前記読み取った帳票画像を表示する機能と、
前記帳票に印刷すべきデータを入力する機能と、
前記入力したデータを、前記表示された帳票画像上にレイアウトする機能と、
前記レイアウトが施されたデータを印刷データとして前記プリンタに出力することにより、前記プリンタにセットされた前記帳票に対して前記データの印刷を行う機能と
をコンピュータに実現させるためのコンピュータプログラム。
【請求項１０】
請求項９に記載のコンピュータプログラムをコンピュータが読み取り可能に記録した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スキャナやプリンタを用いて帳票等への印刷を行う帳票処理装置に関する。
【背景技術】
【０００２】
従来、ハガキやラベル、帳票等のように、予めレイアウト枠等が印刷された用紙に文字等を印刷する場合には、印刷位置の調整が困難であり、印刷内容がレイアウト枠からはみだしてしまうことなどがあった。また、例えば、既に絵が印刷された用紙の空きスペースに文字を追加して印刷する場合や、印刷済みの用紙に取消線などを重ねて印刷する場合にも、印刷位置の調整は困難であった。また、印刷済みの用紙に更に印刷を行う場合において、追加して印刷する文字等と既に印刷されている文字等との大きさや色のバランスを事前に調整することも困難であった。
【０００３】
これに対して、例えば、下記特許文献１には、帳票等のレイアウト構造をスキャナで読み取って電子データ化することにより、印刷用紙に対してレイアウト枠と文字とを同時に印刷する技術が記載されている。
【０００４】
【特許文献１】特開平９−６８６３号公報
【０００５】
特許文献１に記載された技術によれば、レイアウト枠と文字とを同時に印刷するため、印刷内容がレイアウト枠から意図せずにはみだすことはない。しかしながら、レイアウト枠や文字、絵等が既に印刷されている帳票等の用紙に文字等を追加して印刷することは考慮されていなかった。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
本発明は、このような課題に鑑みてなされたものであり、帳票等に精度良く印刷内容を配置して印刷することを目的としている。
【課題を解決するための手段】
【０００７】
上記目的を踏まえ、本発明は、
スキャナとプリンタとが接続され、帳票の印刷を行う帳票処理装置であって、
前記スキャナによって帳票の画像を読み取る帳票読取手段と、
前記読み取った帳票画像を表示する表示手段と、
前記帳票に印刷すべきデータを入力するデータ入力手段と、
前記データ入力手段によって入力したデータを、前記表示された帳票画像上にレイアウトするレイアウト手段と、
前記レイアウトが施されたデータを印刷データとして前記プリンタに出力することにより、前記プリンタにセットされた前記帳票に対して前記データの印刷を行う印刷手段と
を備えることを要旨とする。
【０００８】
本発明の帳票処理装置では、スキャナによって読み込まれた帳票画像がモニタ上に表示され、これを視認しつつ文字等を配置することができる。そのため、印刷位置やサイズ、色等の調整が容易となり、帳票に対する印刷を精度良く行うことが可能になる。また、印刷時には、帳票画像やレイアウト枠を表す画像は出力せず、文字等を表すデータのみを印刷データとして出力するため、印刷速度を向上させることができる。なお、スキャナとプリンタとは、帳票処理装置にそれぞれ独立して接続されるものとしてもよいし、スキャナとプリンタとを一体的に備えるいわゆる複合機が帳票処理装置に接続されるものとしてもよい。
【０００９】
なお、本発明において、「帳票」とは、伝票等のようにレイアウト枠が既に印刷されている用紙に限定されず、文字や絵などが既に印刷されている用紙も「帳票」に含まれるものとする。例えば、郵便番号等を記載する枠が印刷されているハガキや封筒、罫線の印刷されている便箋やラベル、会社名や氏名が既に印刷されている名刺、絵や文字が既に印刷されているハガキや年賀状等の用紙は、本発明における「帳票」に含まれる。また、「帳票に印刷すべきデータ」とは、例えば、文字、ビットマップ、バーコード、２Ｄコード、図形などのことをいう。
【００１０】
上記帳票処理装置において、
更に、前記プリンタによって、予め印刷位置の定められた所定のキャリブレーションパターンを印刷するキャリブレーションパターン印刷手段と、
前記キャリブレーションパターンが印刷された用紙を前記スキャナによって読み取るキャリブレーションパターン読取手段と、
前記キャリブレーションパターン印刷手段によって印刷したキャリブレーションパターンの印刷位置と、前記キャリブレーションパターン読取手段によって読み取ったキャリブレーションパターンのスキャン位置とに基づき、前記プリンタの印刷可能領域と前記スキャナのスキャン可能領域とのズレ量を算出するズレ量算出手段とを備え、
前記印刷手段は、前記ズレ量算出手段によって算出したズレ量に基づき前記レイアウトが施されたデータの印刷位置を補正する手段を備えるものとしてもよい。
【００１１】
このような構成の帳票処理装置によれば、プリンタの印刷可能領域とスキャナのスキャン可能領域との相違を補正することができるため、帳票上へ印刷をより精度良く行うことができる。
【００１２】
上記帳票処理装置において、
前記キャリブレーションパターン印刷手段は、前記キャリブレーションパターンとともに、該キャリブレーションパターンが印刷された用紙の上下を区別するための所定の指標を印刷する手段を備えるものとしてもよい。
【００１３】
このような構成の帳票処理装置によれば、キャリブレーションパターンの印刷された用紙が方向を誤ってスキャナにセットされることを抑制することができる。
【００１４】
上記帳票処理装置において、
前記キャリブレーションパターン印刷手段は、前記キャリブレーションパターンとして、所定形状の複数のマークによって構成されたキャリブレーションパターンを印刷するものとしてもよい。
【００１５】
このような構成の帳票処理装置によれば、マーク毎のズレ量を求め、その平均値を求めることで、より精度良くズレ量を求めることができる。また、２つのマークを通る直線の傾きを求めることで、回転ズレを検出することも可能となる。
【００１６】
キャリブレーションパターンを構成するマークは、丸型であれば好適である。印刷可能領域とスキャン可能領域とに回転ズレが生じていたとしても、容易にマークの中心点を求めることができるためである。
【００１７】
上記帳票処理装置において、
前記印刷手段は、前記帳票のサイズに関わらず、前記プリンタで印刷可能な最大の用紙サイズで前記帳票に対して前記データの印刷を行うものとしてもよい。
【００１８】
このような構成であれば、帳票の端部（特に下端および右端）まで印刷を行うことができる。また、このように、印刷時の用紙サイズを予め固定すれば、ユーザが帳票のサイズをプリンタドライバ等に設定する必要がないため、利便性を向上させることができる。
【００１９】
また、本発明は、上述した帳票処理装置としての構成のほか、コンピュータが帳票の印刷を行う帳票処理方法や、コンピュータが帳票の印刷を行うためのコンピュータプログラムとしても構成することができる。コンピュータプログラムは、コンピュータが読み取り可能な記録媒体に記録されていてもよい。記録媒体としては、例えば、フレキシブルディスクやＣＤ−ＲＯＭ、光磁気ディスク、メモリカードなどを用いることができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の作用・効果を一層明らかにするため、その実施の形態について実施例に基づき次の順序で説明する。
Ａ．帳票処理装置の概略構成：
Ｂ．キャリブレーション処理：
Ｃ．帳票印刷処理：
【００２１】
Ａ．帳票処理装置の概略構成：
図１は、本発明の一実施例としての帳票処理装置１００の概略構成を示す説明図である。図示するように本実施例の帳票処理装置１００は、中央処理装置としてのＣＰＵ１０や、主記憶装置としてのメモリ２０、ＢＩＯＳ（Basic Input/Output System）が記憶されたＲＯＭ３０、各種ソフトウェアのインストールされたハードディスク４０、周辺機器を接続するためのＵＳＢインタフェース５０、モニタ７０に対する表示制御を行うグラフィックコントローラ６０等を備えたコンピュータとして構成されている。これらのハードウェア要素は、所定のバス５５を介して相互に接続されている。
【００２２】
ＵＳＢインタフェース５０には、キーボード８０やマウス９０のほか、光学的に帳票の画像を読み取るスキャナ２００や、帳票への印刷を行うためのプリンタ３００が接続されている。スキャナ２００としては、例えば、フラットベッドスキャナやシートフィーダスキャナなど、種々のタイプものを利用できる。また、プリンタ３００としては、例えば、インクジェットプリンタやレーザプリンタ、熱転写プリンタ、ドットインパクトプリンタなど種々の方式のプリンタを利用することができる。なお、本実施例では、スキャナ２００とプリンタ３００とを個別に帳票処理装置１００に接続するものとしたが、スキャナの機能とプリンタの機能との両者を備えるいわゆる複合機を接続するものとしてもよい。また、スキャナ２００やプリンタ３００は、ＵＳＢによって帳票処理装置１００に接続されるものとしたが、ＲＳ−２３２Ｃやパラレルポート、ＩＥＥＥ１３９４、ネットワークなどによって接続されるものとしてもよい。また、キーボード８０やマウス９０は、ＵＳＢによって帳票処理装置１００に接続されるものとしたが、キーボードインタフェースやＰＳ／２インタフェースなどによって接続されるものとしてもよい。
【００２３】
ハードディスク４０には、帳票処理装置１００の全般的な制御を行う基本ソフトウェアであるオペレーティングシステム４１や、スキャナ２００の制御を行うためのスキャナドライバ４２、プリンタ３００の制御を行うためのプリンタドライバ４３等がインストールされている。また、更に、スキャナ２００やプリンタ３００を用いて帳票への印刷や印刷内容の編集を行うための帳票処理プログラム４４がインストールされている。ＣＰＵ１０は、メモリ２０を作業領域として用いながらこれらのプログラムを実行する。なお、帳票処理プログラム４４は、コンピュータが読み取り可能なフレキシブルディスクやＣＤ−ＲＯＭ等の記録媒体に記憶されているものとしてもよく、所定のインストーラによってかかる記録媒体からハードディスク４０へインストールされるものとしてもよい。また、記録媒体から直接実行するものとしてもよい。
【００２４】
図２は、ＣＰＵ１０が帳票処理プログラム４４を実行することによってモニタ７０上に表示されるアプリケーション画面の一例を示す説明図である。図示するように、このアプリケーション画面は、帳票表示領域ＬＡと操作領域ＣＡとの２つのペインによって構成されている。帳票表示領域ＬＡには、スキャナ２００によって読み取った帳票の画像が表示され、操作領域ＣＡには、種々の操作ボタンが配置されている。操作ボタンとしては、例えば、キャリブレーションボタンＢ１や、新規スキャンボタンＢ２、開くボタンＢ３、文字列入力ボタンＢ４、印刷ボタンＢ５、保存ボタンＢ６等が配置される。また、操作領域ＣＡには、操作ボタン以外にも、後述するキャリブレーション処理によって算出されるズレ量を表示するズレ量表示部ＳＤや、入力済みの文字列の一覧を表示するためのリストボックスＬＢが配置されている。
【００２５】
このアプリケーション画面において、文字列入力ボタンＢ４がマウス９０等のポインティングデバイスによってクリックされると、文字列入力モードになり、ユーザは、マウス９０でカーソルを移動させることにより、帳票表示領域ＬＡ上の任意の位置にキーボード８０を用いて文字列を入力することが可能になる。図中には、帳票として予め罫線の印刷されたラベルが表示され、このラベル上に「ＴＩＴＬＥ」という文字列と、「２００４／９／２０」という文字列とがレイアウトされた例を示している。帳票処理プログラム４４は、こうしてレイアウトされた文字列等をプリンタ３００に出力することによって、帳票への印刷を行う。このような帳票処理プログラム４４によれば、帳票の画像をモニタ７０上で視認しつつ文字等のレイアウトを行うことができるため、精度良く帳票への印刷を行うことができる。
【００２６】
Ｂ．キャリブレーション処理：
一般的に、スキャナは、光学的な読み取り機構の構造上、スキャン面の周辺部に数ｍｍ程度の読み取り不能な領域が存在する。また、一般的なプリンタは、インクジェット方式の一部のプリンタを除き、印刷機構の構造上、用紙の周囲（通常、数ｍｍ〜数ｃｍ）に印刷不能な領域が存在する。つまり、スキャナとプリンタとは、機種毎あるいはその個体毎に、それぞれ固有のスキャン可能領域と印刷可能領域とを有していることになる。そのため、本実施例の帳票処理装置１００は、これらの領域の相違を調整し、帳票への印刷を精度良く行うために以下に説明するキャリブレーション処理を実行する。
【００２７】
図３は、キャリブレーション処理のフローチャートである。この処理は、帳票処理プログラム４４の実行中に、図２に示したキャリブレーションボタンＢ１がマウス９０によってクリックされることにより呼び出される処理である。なお、このキャリブレーション処理は、例えば、帳票処理プログラム４４が初めて実行された場合や、接続されているスキャナ２００やプリンタ３００が他の機種に変更されたことを検出した場合等に、自動的に実行されるものとしてもよい。
【００２８】
このキャリブレーション処理が呼び出されると、帳票処理装置１００のＣＰＵ１０は、まず、プリンタ３００を用いて、所定の印刷用紙にキャリブレーションパターンの印刷を行う（ステップＳ１００）。
【００２９】
図４は、こうして印刷されたキャリブレーションパターンの一例を示す説明図である。本実施例のプリンタ３００は、図中に破線で示した印刷可能領域ＰＡ内にのみ印刷が可能であるものとし、ＣＰＵ１０は、かかる印刷可能領域ＰＡの四隅から一定の間隔を空けて４つのマークｐ１〜ｐ４を印刷する。印刷可能領域ＰＡの位置は、プリンタドライバ４３に問い合わせを行うことで知ることができる。４つのマークは、それぞれ、直径５ミリ程度の黒く塗りつぶされた丸型のマークであり、本実施例では、この４つのマークによってキャリブレーションパターンが構成されているものとした。それぞれのマークの座標（中心点）は、印刷可能領域ＰＡの左上の座標を原点として次のような座標であるものとする。
【００３０】
ｐ１＝（ｘ１，ｙ１）
ｐ２＝（ｘ２，ｙ２）
ｐ３＝（ｘ３，ｙ３）
ｐ４＝（ｘ４，ｙ４）
【００３１】
ＣＰＵ１０は、キャリブレーションパターンの印刷と同時に、用紙の上部および下部に、それぞれ「上」と「下」の文字を印刷する。これは、キャリブレーションパターンの印刷された用紙（以下、「キャリブレーション用用紙」という。）を後述するステップＳ１２０においてスキャナ２００にセットする際に、ユーザがセットする方向を間違えないようにするための指標として用いられる。なお、本実施例では、「上」と「下」の文字を両方印刷するものとしたが、どちらか一方のみを印刷するものとしてもよい。また、文字ではなく、どちらかの方向を指し示す矢印などの図柄を印刷するものとしてもよい。
【００３２】
なお、上記ステップＳ１００の処理では、キャリブレーションパターンの印刷に先立ち、「キャリブレーションパターンの印刷を行います。プリンタにＡ４用紙をセットしてください。」といった旨の記載されたダイアログボックスを表示し、かかるダイアログボックスのＯＫボタンがクリックされた場合にキャリブレーションパターンの印刷を行うものとしてもよい。こうすることにより、ユーザは、プリンタ３００に適切な印刷用紙をセットすることができる。
【００３３】
キャリブレーションパターンの印刷が終了すると、ＣＰＵ１０は、スキャナ２００を用いてキャリブレーション用用紙の読み取りを行う（ステップＳ１１０）。本処理において、例えば、キャリブレーション用用紙の読み取りに先立ち、ＣＰＵ１０は、「キャリブレーションパターンの印刷された用紙をスキャナに正しい向きにセットしてください。」といった旨が記載されたダイアログボックスを表示し、かかるダイアログボックスのＯＫボタンがクリックされた場合に、キャリブレーション用用紙の読み取りを開始するものとしてもよい。こうすることにより、スキャナ２００にキャリブレーション用用紙がセットされないままに読み取りが開始されることを防止することができる。
【００３４】
図５は、スキャナ２００のスキャン面とスキャン可能領域ＳＡとの関係を示す説明図である。本実施例では、スキャナ２００は、図中に一点鎖線で示したスキャン可能領域ＳＡ内の画像を読み取ることが可能であるものとした。図示するように、スキャン可能領域ＳＡは、スキャン面よりも若干狭いため、キャリブレーション用用紙の上端と左端には読み取ることができない領域が存在する。なお、図中には、参考のため、プリンタ３００の印刷可能領域ＰＡを破線で表している。
【００３５】
次に、ＣＰＵ１０は、スキャナ２００によって読み取った画像からキャリブレーションパターンを構成する４つのマークの座標（中心点）を求める（ステップＳ１２０）。
【００３６】
図６は、マークの中心点の求め方を概念的に示す説明図である。なお、図示の便宜上、黒色のマークは、白抜きのマークとして表している。まず、ＣＰＵ１０は、図６（ａ）に示すように、スキャンされた画像の左上の座標から右下の座標までを、１ライン毎にｘ方向に１ドットずつ走査していく。そして、最初に発見した黒色の座標（図中の「×」）からこの黒色が続くｘ方向の幅を調べる。このとき、埃やノイズ等の影響を抑制するため、黒色の幅がある程度の幅以上（例えば、３ドット分以上）にならない場合には、最初に発見した黒色の座標は無視するものとしてもよい。そして、このような走査を、マークの直径よりも大きく設定された所定のライン分行い、この複数のラインの中で最も黒色の続く幅が広いラインをそのマークのｙ座標とする。そして、かかるｙ座標における黒色領域の中点をそのマークのｘ座標とする。こうすることにより、マークの中心点を求めることが可能になる。
【００３７】
なお、本実施例では、図６（ｂ）に示すように、マークの検出を行う領域（ｄ１〜ｄ４）を予め定めておき、この領域の中で、それぞれのマークの中心点を求めるものとする。こうすることで、処理負担が軽減されるとともに、キャリブレーション用用紙に印刷された「上」「下」といった文字がマークの検出に影響することを抑制することができる。
【００３８】
こうして、求められた４つのマークの座標は、スキャン可能領域ＳＡの左上の座標を原点として、次のようなものであるものとする。
【００３９】
Ｐ１＝（Ｘ１，Ｙ１）
Ｐ２＝（Ｘ２，Ｙ２）
Ｐ３＝（Ｘ３，Ｙ３）
Ｐ４＝（Ｘ４，Ｙ４）
【００４０】
説明を図３に戻す。次に、ＣＰＵ１０は、印刷可能領域ＰＡの原点と、スキャン可能領域ＳＡの原点とのズレ量（図５参照）を求める（ステップＳ１３０）。具体的には、上記ステップＳ１２０で求めた４つのマークの座標と、上記ステップＳ１００で印刷した４つのマークの印刷位置との差を求め、この差の平均値をズレ量として算出する。各マークの座標から算出される原点のズレ量は、それぞれ次のようになる。
【００４１】
Δｐ１＝（Ｘ１−ｘ１，Ｙ１−ｙ１）
Δｐ２＝（Ｘ２−ｘ２，Ｙ２−ｙ２）
Δｐ３＝（Ｘ３−ｘ３，Ｙ３−ｙ３）
Δｐ４＝（Ｘ４−ｘ４，Ｙ４−ｙ４）
【００４２】
これらのズレ量から平均値を求めると、次のようになる。
【００４３】
ｘ方向の平均ズレ量Δｘ＝（（Ｘ１−ｘ１）＋（Ｘ２−ｘ２）＋（Ｘ３−ｘ３）＋（Ｘ４−ｘ４））／４
ｙ方向の平均ズレ量Δｙ＝（（Ｙ１−ｙ１）＋（Ｙ２−ｙ２）＋（Ｙ３−ｙ３）＋（Ｙ４−ｙ４））／４
【００４４】
なお、４つのマークの印刷時の解像度と、スキャン時の解像度とが異なる場合には、印刷時の解像度に合わせて上記ステップＳ１２０で求めた座標の値を変換するものとする。例えば、印刷時の解像度が１２００ｄｐｉでスキャン時の解像度が３００ｄｐｉであれば、上記ステップＳ１２０で求めた座標を４倍にすればよい。こうすることで、印刷時の解像度におけるズレ量を求めることができる。
【００４５】
最後に、ＣＰＵ１０は、こうしてズレ量を求めると、かかるズレ量をメモリ２０あるいはハードディスク４０に記憶する（ステップＳ１４０）。こうして記憶されたズレ量は、後述する帳票印刷処理において読み出され、印刷位置の補正に利用されることになる。
【００４６】
なお、本実施例では、４つのマークのズレ量の平均値を求めたが、さらに、４つのマークの座標から印刷可能領域ＰＡとスキャン可能領域ＳＡとの回転ズレも求めるものとしてもよい。こうすることにより、帳票への印刷をより精度良く行うことが可能となる。具体的には、上記ステップＳ１２０で求めたマークＰ２とマークＰ１の座標からこれらの座標間を通る直線の傾きを求め、更に、マークＰ４とマークＰ３の座標からこれらの座標間を通る直線の傾きを求める。そして、この２つの傾きの平均値を求め、この平均値を回転ズレとしてメモリ２０やハードディスク４０に記憶する。
【００４７】
Ｃ．帳票印刷処理：
次に、帳票に対して文字等の印刷を行う帳票印刷処理について説明する。
図７は、帳票印刷処理のフローチャートである。この帳票印刷処理は、帳票処理プログラム４４の実行中に常時呼び出される処理である。
【００４８】
まず、ＣＰＵ１０は、図２に示したアプリケーション画面中の、開くボタンＢ３もしくは新規スキャンボタンＢ２のクリックを検出する（ステップＳ２００）。開くボタンＢ３がクリックされた場合には、ハードディスク等の記憶媒体からユーザの選択に応じて予めスキャンして保存しておいた任意の帳票画像を読み込む（ステップＳ２１０）。新規スキャンボタンＢ２がクリックされた場合には、スキャナ２００を用いて帳票の読み取りを行う（ステップＳ２２０）。かかる処理において、スキャナ２００による読み取りに先立ち、「スキャナに帳票をセットしてください。」といった旨の記載されたダイアログボックスを表示し、かかるダイアログボックスのＯＫボタンが押された後にスキャンを開始するものとしてもよい。こうすることにより、帳票がスキャナにセットされないままにスキャンが行われることを防止することができる。
【００４９】
スキャナ２００によって帳票を読み取る場合には、読み取りの解像度は、例えばモニタ７０の一般的な解像度である７２ｄｐｉなど、比較的低解像度でよい。当該帳票印刷処理では、スキャンされた帳票画像はモニタ７０に表示する用途でのみ用い、高い解像度が必要とされる印刷用途には用いないからである。このように、低解像度で読み込みを行えば、処理の高速化を図ることができる。
【００５０】
次に、ＣＰＵ１０は、スキャナ２００によって読み取った帳票画像、もしくは、ハードディスク４０等から読み出した帳票画像を、図２に示した帳票表示領域ＬＡに表示する（ステップＳ２３０）。そして、文字列入力ボタンＢ４等のクリックに応じて、文字や図形などのデータをユーザから入力し、入力した文字等を帳票画像上にレイアウトする（ステップＳ２４０）。この際には、文字列等のデータの位置やサイズを指定できることはもちろん、色や位置揃え、文字飾りなど、それぞれのデータに対する種々の属性の設定も、画面上に表示された帳票画像を視認しながら行うことができる。
【００５１】
次に、ＣＰＵ１０は、印刷ボタンＢ５がクリックされたか否かを判断する（ステップＳ２５０）。クリックされなかった場合には、上記ステップＳ２４０に処理を戻して引き続き文字等のレイアウトを行う。一方、印刷ボタンＢ５がクリックされた場合には、上述したキャリブレーション処理によって記憶されたズレ量をメモリ２０またはハードディスク４０から読み込む（ステップＳ２６０）。
【００５２】
メモリ２０やハードディスク４０からズレ量を読み込むと、ＣＰＵ１０は、上記ステップＳ２４０によってレイアウトされた位置からズレ量の値を差し引くことで印刷位置を補正し、プリンタ３００に対して印刷データを出力する（ステップＳ２７０）。こうすることにより、スキャン可能領域ＳＡと印刷可能領域ＰＡとの原点のズレが補正され、帳票上の適切な位置に文字等が印刷されることになる。なお、回転ズレの値がメモリ２０やハードディスク４０に記憶されている場合には、かかる値によっても補正を行う。
【００５３】
なお、ＣＰＵ１０は、印刷に先立ち、「モニタ上に表示されている帳票と同じ帳票をプリンタにセットしてください。」といった旨が記載されたダイアログボックスを表示し、かかるダイアログボックスのＯＫボタンのクリックを検出した後に印刷を行うものとしてもよい。こうすることにより、適切な帳票に印刷を行うことができる。
【００５４】
なお、かかる印刷処理では、プリンタ３００にセットされた帳票のサイズの大小にかかわらず、そのプリンタ３００で印刷可能な最大の用紙サイズで印刷するものとしてもよい。こうすることで、帳票の端部（特に下端および右端）まで印刷を行うことができる。また、このように、印刷サイズを予め固定すれば、ユーザが帳票のサイズをプリンタドライバ等に設定する必要がなく、容易に帳票への印刷を行うことができる。
【００５５】
次に、ＣＰＵ１０は、保存ボタンＢ６がクリックされたか否かを判断する（ステップＳ２８０）。保存ボタンＢ６がクリックされた場合には、モニタ７０に表示されている帳票画像をハードディスク４０等の記憶媒体に保存する（ステップＳ２９０）。このとき、入力された文字列のデータやレイアウト位置なども保存するものとしてもよい。保存ボタンＢ６がクリックされない場合には、そのまま一連の帳票印刷処理を終了する。なお、ステップＳ２８０とステップＳ２９０の処理は、印刷の終了後のみならず、上記ステップＳ２２０における帳票画像のスキャン処理の後、いつでも実行可能であるものとしてもよい。
【００５６】
以上のように構成された帳票処理装置１００によれば、帳票の画像をモニタ７０上で視認しつつ文字等のレイアウトを行うことができるため、精度良く帳票への印刷を行うことができる。更に、本実施例では、スキャナ２００のスキャン可能領域ＳＡとプリンタ３００の印刷可能領域ＰＡとのズレを求めてこれを印刷位置に反映させることができるため、帳票への印刷がより精度良く行われることになる。その結果、例えば、予めレイアウト枠の印刷されたハガキや便箋、ラベル、その他種々の帳票に対して、そのレイアウト枠から文字がはみだすことなく印刷が可能となる。また、例えば、既に印刷を行った用紙への追加印刷や重ね合わせ印刷を行う場合にも、印刷済みの文字等とのサイズや色のバランスを容易に調整することができるとともに、適切な位置に印刷を行うことが容易に可能となる。
【００５７】
以上、本発明の実施例について説明したが、本発明はこのような実施例に何ら限定されるものではなく、その趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。例えば、以下のような変形が可能である。
【００５８】
上記帳票印刷処理において、ＣＰＵ１０は、領域抽出やエッジ検出等の周知の画像処理技術を利用して、スキャナ２００で読み取った帳票のサイズを検出し、このサイズ内でのみ文字列のレイアウトを可能とするものとしてもよい。こうすることで、帳票から文字がはみだして印刷されることを抑制することができる。
【００５９】
また、上記キャリブレーション処理において、キャリブレーションパターンの印刷を行った用紙のサイズと、スキャナで読み込んだ用紙のサイズとが異なる場合には、用紙が異なる旨の所定のエラーを表示するものとしてもよい。こうすることにより、ズレ量を的確に算出することができる。スキャナで読み込んだ用紙のサイズは、上述したように、領域抽出やエッジ検出などの周知の画像処理技術を用いて検出することができる。
【００６０】
その他、帳票画像上に入力された文字列をバーコードやＱＲコードに変換して帳票に印刷する機能を備えていても良い。こうすることで、例えば、コード化された住所や名前を名刺などに容易に印刷することができる。
【００６１】
また、上記実施例では、スキャナ２００とプリンタ３００とを個別に用意するものとしたが、スキャナの機能とプリンタの機能とを備えた複合機を用い、さらに、この複合機は、プリンタの用紙送り機構とスキャナの用紙送り機構が共通化されているものとしてもよい。このような複合機であれば、印刷可能領域とスキャン可能領域との相違を精度良く検出することができる。
【００６２】
また、上記実施例では、図１に示しように、帳票処理装置１００とスキャナ２００とプリンタ３００とモニタ７０とを全て個別の装置であるものとしたが、これらを全て備える複合機として構成するものとしてもよい。こうすることにより、単一の装置で精度良く帳票への印刷を行うことができる。
【図面の簡単な説明】
【００６３】
【図１】帳票処理装置１００の概略構成を示す説明図である。
【図２】アプリケーション画面の一例を示す説明図である。
【図３】キャリブレーション処理のフローチャートである。
【図４】キャリブレーションパターンの一例を示す説明図である。
【図５】スキャナ２００のスキャン面とスキャン可能領域ＳＡとの関係を示す説明図である。
【図６】マークの中心点の求め方を概念的に示す説明図である。
【図７】帳票印刷処理のフローチャートである。
【符号の説明】
【００６４】
１０...ＣＰＵ
２０...メモリ
３０...ＲＯＭ
４０...ハードディスク
４１...オペレーティングシステム
４２...スキャナドライバ
４３...プリンタドライバ
４４...帳票処理プログラム
５０...ＵＳＢインタフェース
５５...バス
６０...グラフィックコントローラ
７０...モニタ
８０...キーボード
９０...マウス
１００...帳票処理装置
２００...スキャナ
３００...プリンタ
Ｂ１...キャリブレーションボタン
Ｂ２...新規スキャンボタン
Ｂ３...開くボタン
Ｂ４...文字列入力ボタン
Ｂ５...印刷ボタン
Ｂ６...保存ボタン
【図１】
2006195521.tif 000003
【図２】
2006195521.tif 000004
【図３】
2006195521.tif 000005
【図４】
2006195521.tif 000006
【図５】
2006195521.tif 000007
【図６】
2006195521.tif 000008
【図７】
2006195521.tif 000009