(57)【要約】【課題】  割り付け印刷の無駄な空白の削減と、文字の見易さの両立。【解決手段】  原稿をページ単位で読み込み、ページ内のデータの最大幅を測定する。測定されたデータ幅で原稿ページをトリミングして出力用紙に割り付けて印刷する。【選択図】  図１
2007025968.tif 000002
【特許請求の範囲】
【請求項１】
２ページ以上の原稿データを印刷装置が処理可能なプリントデータに変換する印刷制御装置であって、論理ページ１ページを記憶する論理ページバッファと、前記論理ページを前記物理ページに変換するデータ処理装置と、前記物理ページを記憶する物理ページバッファとを備え、
前記データ処理装置は、前記Nページの原稿データから論理ページ１ページを読み出して前記論理ページバッファに記憶する論理ページ読取装置と、前記論理ページバッファに記憶された論理ページ内のデータ領域を測定するデータ領域測定装置と、前記データ領域で前記論理ページをトリミングする論理ページ成形装置と、前記論理ページ成形装置で成形された論理ページを物理ページバッファに配置する物理ページ配置装置とを備える事を特徴とする印刷制御装置。
【請求項２】
論理ページのトリミングは、前記データ領域のうち、データの幅で行う事を特徴とする請求項１に記載の印刷制御装置。
【請求項３】
論理ページのトリミングは、前記データ領域のうち、データの高さで行う事を特徴とする請求項１または請求項２に記載の印刷制御装置。
【請求項４】
２ページ以上の原稿データをプリントデータに変換する印刷制御方法であって、
前記２ページ以上の原稿データから論理ページ１ページを読み出して記憶する論理ページ読取工程と、前記記憶された論理ページ内のデータ領域を測定するデータ領域測定工程と、前記データ領域で前記論理ページをトリミングする論理ページ成形工程と、前記論理ページ成形工程で成形された論理ページを物理ページに配置して記憶する物理ページ配置工程とを備える事を特徴とする印刷制御方法。
【請求項５】
論理ページのトリミングは、前記データ領域のうち、データの幅で行う事を特徴とする請求項１に記載の印刷制御装置。
【請求項６】
論理ページのトリミングは、前記データ領域のうち、データの高さで行う事を特徴とする請求項１または請求項２に記載の印刷制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばホストコンピュータなどで作成された描画データを、所定のフォーマットに変換して印刷装置に出力する印刷制御方法および印刷制御装置に関するものである。
【背景技術】
【０００２】
従来より、各種アプリケーションで作成した複数ページの原稿データを１ページの印刷用紙に割り付ける「割り付け印刷」という機能がプリンタドライバに搭載されている。この機能は「Nアップ印刷」とも呼ばれ、Nは物理ページ１ページに割り付ける論理ページの枚数を示し、２アップ、４アップ、６アップ、９アップ、１６アップ印刷が一般的である。尚、「物理ページ」とは印刷する用紙上のページであり、「論理ページ」とは原稿上のページである。通常印刷では論理ページと物理ページは１対１で対応するが、割り付け印刷の場合は物理ページ１ページに対してNページの論理ページが配置される。割り付け印刷により、一覧性が向上するとともに用紙の節約が図られる。
【０００３】
割り付け印刷は、通常、N分の１に縮小した論理ページを、N等分した物理ページ領域に割り付けることで実現される。図４の原稿401を４アップ印刷する場合を例にとって具体的に説明する。まず、原稿401の各論理ページを面積比で４分の１に縮小する。次に図５の物理ページ501に対して縮小した論理ページ502,503,504,505を配置する。そして、色処理などを行ってプリントデータを作成して印刷を行う。
【特許文献１】特開２０００−３３５０３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来技術の割り付け印刷は各論理ページが縮小されるだけであり、空白が多い原稿を割り付け印刷する場合、印刷結果の空白の比率は原稿と変わらない。
【０００５】
例えば、原稿401のようなデータが左右一方に偏っていて縦方向に長いデータを４アップで割り付け印刷した場合、図５の各論理ページ502,503,504,505内の空白の割合は多く、また、文字も通常印刷より小さく見にくいものとなっている。
【０００６】
上記特許文献には原稿の各ページのレイアウト方向やサイズから割り付けの方向を決定して、用紙の無駄をなくす方法が提案されている。しかしながら、割り付けの方法は従来と変わらず単純にN分の１に縮小しているため、無駄な空白や文字の小ささは改善されていない。
【０００７】
本発明は、上記課題を鑑みてなされたものであり、無駄な空白をなくし、かつ、文字のサイズを変えない割り付け印刷を行う印刷制御方法および装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、上記目的を達成するために以下の構成を有する。
【０００９】
Nページ(但し、Nは２以上の整数)の原稿データを印刷装置が処理可能なプリントデータに変換する印刷制御装置であって、前記原稿データの１ページ分の論理ページを記憶する論理ページバッファと、前記論理ページを前記物理ページにトリミングするデータ処理装置と、前記物理ページを記憶する物理ページバッファとを備え、前記データ処理装置は、前記論理ページバッファに記憶された論理ページのサイズを測定する論理ページサイズ測定装置と、前記論理ページサイズで前記論理ページを成形する論理ページ成形装置と、前記論理ページ成形装置で成形された論理ページを物理ページバッファに配置する物理ページ配置装置とを備える事を特徴とする。
【発明の効果】
【００１０】
無駄な空白をなくし、かつ、文字のサイズを変えない割り付け印刷を行うことが出来る。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して本発明の実施の形態を詳細に説明する。
【００１２】
《システム全体の説明》
図１は、本発明の第１の実施形態におけるプリントシステムの構成例を表したブロック図である。OS上で印刷を行う場合、GUIを使用してアプリケーションで作成したデータを印刷するアプリケーション経由の印刷と、GUIを使用せずに、コマンドラインから直接画像ファイルなどを指定して印刷を行うコマンドライン印刷の二つの方法がある。アプリケーションからの印刷では、アプリケーション上でデータを作成し印刷を指示すると、アプリケーションはPostScript（登録商標）などの形式にデータを変換して出力する。PostScriptデータを印刷することのできるPostScript（PS）プリンタを使用する場合には、アプリケーションから出力されたPostScriptデータをプリンタへ出力することで印刷を行うことが可能だが、PostScriptデータを印刷できないインクジェットプリンタなどでは、アプリケーションから出力されたPostScriptデータを、プリンタへ送るためのプリントデータに変換する処理が必要となる。一般的には、アプリケーションから出力されるPostScriptデータを、まずレンダラでビットマップデータに変換する。そして、出力されたビットマップデータを、プリントフィルタがプリンタの解釈できるプリントデータに変換してプリンタに送信することで、印刷を行っている。このように、アプリケーションはPostScriptファイルを出力し、レンダラがビットマップデータに変換し、プリントフィルタはビットマップデータをプリントデータに変換するというように、各プログラムが順次データを変換する形で印刷を行っている。
【００１３】
本実施例では、アプリケーション102で作成したデータの印刷を行う。また、レンダラを使用するものとする。
【００１４】
《コンピュータおよびプリンタの構成の説明》
次に、コンピュータ101とプリンタ105のハードウェア構成について図3を参照して説明する。
【００１５】
コンピュータ301は処理部303とこれに周辺装置を含めてコンピュータ全体を構成している。また、プリンタ302は、記録ヘッド325、記録ヘッド325を搬送するキャリアを駆動するキャリア(CR)モータ326、用紙を搬送する搬送(LF)モータ327などの駆動部と、制御回路部304とから構成されている。
【００１６】
コンピュータ301の処理部303は、制御プログラムに従ってホスト装置の全体制御を司るMPU305、システム構成要素を互いに接続するバス308、MPU305が実行するプログラムやデータ等を一時記憶するDRAM307、システムバスとメモリバス、MPU305を接続するブリッジ306、例えば、CRTなどの表示装置313にグラフィック情報を表示するための制御機能を備えたグラフィックアダプタ309を含んでいる。
【００１７】
さらに、処理部303はHDD装置314とのインタフェースを司るHDDコントローラ310、キーボード315とのインタフェースを司るキーボードコントローラ311、IEEE1284規格に従ってプリンタ302との間の通信を司る、パラレルインタフェースである通信I/F312を備えている。
【００１８】
さらに、処理部303には、グラフィックアダプタ309を介して操作者にグラフィック情報等を表示する表示装置313(この例では、CRT)が接続されている。更に、プログラムやデータが格納された大容量記憶装置であるハードディスクドライブ(HDD)装置314、キーボード315が夫々、コントローラを介して接続されている。
【００１９】
一方、プリンタ302は本実施形態ではインクジェット方式のシリアルプリンタである。プリンタ302の制御回路部304は、制御プログラム実行機能と周辺装置制御機能とを兼ね備えた、プリンタ302の全体制御を司るMCU318、制御回路部内部の各構成要素を接続するシステムバス316、記録データの記録ヘッド325への供給、メモリアドレスデコーディング、キャリアモータへの制御パルス発生機構等を制御回路として内部に納めたゲートアレイ(G.A.)317を備えている。
【００２０】
また、制御回路部304は、MCU318が実行する制御プログラムやホスト印刷情報等を格納するROM320、各種データ(画像記録情報やヘッドに供給される記録データ等)を保存するDRAM321、IEEE1284規格に従いホスト装置301との間の通信を司るパラレルインタフェースである通信I/F319、ゲートアレイ317から出力されたヘッド記録信号に基づき、記録ヘッド325を駆動する電気信号に変換するヘッドドライバ322を備えている。
【００２１】
さらに、制御回路部304は、ゲートアレイ317から出力されるキャリアモータ制御パルスを実際にキャリア(CR)モータ326を駆動する電気信号に変換するCRモータドライバ323、MCU318から出力された搬送モータ制御パルスを、実際に搬送モータを駆動する電気信号に変換するLFモータドライバ324を備えている。
【００２２】
図１に示すシステムの各ブロックは、図3のコンピュータにおいて、後述する図2の手順のプログラムを初めとするプログラムを実行することで実現されている。
【００２３】
《システムの構成》
アプリケーション102は、文書作成用プログラムや画像編集プログラムなどであり、作成したデータを印刷する機能を有している。印刷時にはまず、印刷する画像や文書をPostScriptファイルに変換し、続けてレンダラを起動し、レンダラでPostScriptファイルをビットマップデータに変換してプリントフィルタ104に送る機能を有しているものである。
【００２４】
プリントフィルタ104は、印刷設定を行うためのUIの制御や、レンダラの出力するビットマップデータをプリントデータに変換してプリンタ105に送るなどの処理を行うものである。プリントフィルタ104は論理ページ読取装置107、論理ページバッファ108、データ領域測定装置109、論理ページ成形装置110、物理ページ配置装置111、物理ページバッファ112、画像処理装置113で構成される。
【００２５】
以下、本実施形態におけるプリントシステムについて、図1および図2を参照して詳細に説明する。
【００２６】
《印刷実行までのシステムの処理》
図2は、図1に示すプリントシステムにおいて印刷を行う際の処理を表したフローチャートである。
【００２７】
アプリケーション102上の画像や文書等のデータを印刷する際、まず、印刷設定UIを起動する(S201)。ここで行う印刷設定は、アプリケーション102から出力されるPostScriptファイルの１ページのサイズなどであり、用紙の種類や印刷品位などのプリンタ固有の設定はここでは行わない。
【００２８】
そして、印刷に使用するプリンタを指定してアプリケーション102の印刷ダイアログで印刷を実行すると、アプリケーション102は自身の印刷ダイアログにおいて指定された出力サイズでPostScriptファイルとして全ページを出力する(S202)。
【００２９】
続けてレンダラを起動し、S202で作られたPostScriptファイルをビットマップデータに変換する(S203)。詳細には、アプリケーション102は印刷設定UIでの設定に従って出力させるデータのフォーマットや論理ページ1ページのサイズなどを指定してレンダラを起動する。たとえば、A4サイズのbmpファイルで出力する、などの指定を行う。そして、レンダラにPhostScriptファイルを渡す。レンダラは、入力されたPostScriptファイルを指定された形式のビットマップデータにレンダリングし、標準出力106を介してプリントフィルタ104に渡す。
【００３０】
《物理ページ作成処理》
プリントフィルタ104は、まずプリンタ設定UIを起動して用紙の種類・品位などのプリンタ固有の設定を行う(S204)。本実施例では「自動幅割り付け」が設定される。プリンタは用紙１ページ単位で印刷を行うので、プリントデータの生成は物理ページごとに処理を繰り返す。本実施例は複数の論理ページを「自動幅割り付け」で１ページの物理ページに割り付けて印刷するので、以下の手順に従って複数の論理ページから物理ページ１ページを作成する。ここで、物理ページの印字可能幅をmaxW、物理ページを構成する論理ページの幅の和をsumW、論理ページ内のデータの最大幅をdataWとする。このステップにおいて、印刷設定で指定された用紙の種類・サイズ等の情報からmaxWを計算し、同時にsumWを0で初期化する。
【００３１】
次に、レンダラから送られたビットマップデータが標準出力106に残されていないかチェックする(S205)。標準出力106にビットマップデータが残されていない場合は終了処理(S213)に進み、残っている場合は以下の処理を続けて行う。
【００３２】
論理ページ読取装置107は標準出力106から論理ページ１ページ分のビットマップデータを論理ページバッファ108に読み込む(S206)。
【００３３】
次に、データ領域測定装置109は論理ページバッファ108内の論理ページをラスタ単位で検索してデータの最大幅dataWを計算して、物理ページ配置装置111に渡す(S207)。図7は標準出力から論理ページバッファ108に読み込まれた論理ページの一例である。
【００３４】
図6の601は物理ページバッファ112の状態を示す一例であり、トリミングされた論理ページ602,603が割り付けられている。物理ページ配置装置111は、これまでに物理ページに割り付けられた論理ページの幅の和sumWと、このステップで割り付ける論理ページ内のデータの最大幅dataWの和を物理ページの印字可能幅maxWと比較する(S208)。
【００３５】
dataW + sumW < maxW(S208がNo)の場合、論理ページ成形装置110は論理ページ701を幅dataWで切り出して物理ページ配置装置111へ渡す。物理ページ配置装置111は、論理ページ成形装置110から渡された論理ページ702を、物理ページバッファ112の左からsumWの位置に追加する(S209)。その結果、物理ページバッファ112の内容は、図8の801のようになる。次に、sumWにdataWを加えて(S210)、S205へ戻る。
【００３６】
一方、dataW + sumW >= maxW(S208がYes)の場合は、これ以上の論理ページを割り付けられないので、物理ページバッファ112の内容を画像処理装置113へ送ってプリントデータに変換してインターフェイスを介してプリンタ105に送り、物理ページ１ページの印刷を完了する(S211)。そして、sumWをリセットし(S212)、物理ページバッファ112をクリヤしてS205へ戻る。
【００３７】
《終了処理》
終了処理では、まず、sumWが0かどうか確認する(S213)。sumWが0である場合はそのまま印刷処理を終了し、0でない場合は物理ページバッファ112に印刷していないデータが残っているので印刷する(S214)。
【００３８】
本実施例では、テキスト印刷を例に挙げて説明したが、図９の901のような画像印刷でも同様の効果が得られる。
【図面の簡単な説明】
【００３９】
【図１】第一の実施形態のプリントシステムの構成を表すブロック図
【図２】第一の実施形態における印刷処理の流れを表すフローチャート
【図３】第一の実施形態におけるコンピュータ及びプリンタのブロック図
【図４】テキスト原稿を示す図
【図５】従来技術の割り付け印刷結果を示す図
【図６】第一の実施形態における物理ページバッファの内容を示す図
【図７】第一の実施形態における論理ページを示す図
【図８】第一の実施形態における割り付け印刷結果を示す図
【図９】第一の実施形態における画像原稿を示す図
【符号の説明】
【００４０】
101  コンピュータ
104  プリントフィルタ
303  処理部
304  制御回路部
401  原稿
501  用紙
502,503,504,505,701  論理ページ
601,801,901  物理ページ
602,603,702,902  トリミングされた論理ページ
【図１】
2007025968.tif 000003
【図２】
2007025968.tif 000004
【図３】
2007025968.tif 000005
【図４】
2007025968.tif 000006
【図５】
2007025968.tif 000007
【図６】
2007025968.tif 000008
【図７】
2007025968.tif 000009
【図８】
2007025968.tif 000010
【図９】
2007025968.tif 000011