JP2004261994A - 印刷制御装置、印刷制御方法および印刷制御プログラム - Google Patents
印刷制御装置、印刷制御方法および印刷制御プログラム Download PDFInfo
- Publication number
- JP2004261994A JP2004261994A JP2003052504A JP2003052504A JP2004261994A JP 2004261994 A JP2004261994 A JP 2004261994A JP 2003052504 A JP2003052504 A JP 2003052504A JP 2003052504 A JP2003052504 A JP 2003052504A JP 2004261994 A JP2004261994 A JP 2004261994A
- Authority
- JP
- Japan
- Prior art keywords
- data
- image
- print job
- printing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/04—Scanning arrangements, i.e. arrangements for the displacement of active reading or reproducing elements relative to the original or reproducing medium, or vice versa
- H04N1/0402—Scanning different formats; Scanning with different densities of dots per unit length, e.g. different numbers of dots per inch (dpi); Conversion of scanning standards
- H04N1/0408—Different densities of dots per unit length
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00912—Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
- H04N1/00957—Compiling jobs, e.g. for batch processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/38—Circuits or arrangements for blanking or otherwise eliminating unwanted parts of pictures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/387—Composing, repositioning or otherwise geometrically modifying originals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0077—Types of the still picture apparatus
- H04N2201/0082—Image hardcopy reproducer
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Record Information Processing For Printing (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
【課題】従来の用紙節約印刷は汎用性が低く実質的には用紙の節約をすることができなかった。
【解決手段】印刷ジョブを実行させるための印刷ジョブデータを取得し、印刷解像度毎に印刷領域を設定し、上記印刷ジョブデータにて指定された印刷解像度が同一であるものについて印刷対象の画像を印刷解像度が同一の印刷領域の余白に配置するとともにその配置を示す配置データを生成しつつ上記印刷ジョブデータをスプールし、印刷ジョブの実行を開始する条件に達したときに上記スプールされた印刷ジョブデータが示す画像を上記配置データに従って印刷する。
【選択図】 図4
【解決手段】印刷ジョブを実行させるための印刷ジョブデータを取得し、印刷解像度毎に印刷領域を設定し、上記印刷ジョブデータにて指定された印刷解像度が同一であるものについて印刷対象の画像を印刷解像度が同一の印刷領域の余白に配置するとともにその配置を示す配置データを生成しつつ上記印刷ジョブデータをスプールし、印刷ジョブの実行を開始する条件に達したときに上記スプールされた印刷ジョブデータが示す画像を上記配置データに従って印刷する。
【選択図】 図4
Description
【0001】
【発明の属する技術分野】
本発明は、印刷制御装置、印刷制御方法および印刷制御プログラムに関する。
【0002】
【従来の技術】
インクジェット等のプリンタにおいてはインクノズルを搭載したヘッドを用紙搬送方向に垂直に移動させる主走査を行いながらインク滴を記録し、主走査後に用紙を搬送する副走査を行って印刷を実行するのが一般的である。このため、印刷対象の画像は主走査方向の一方に詰めて配置するのが一般的である。例えば、印刷用紙の左隅に詰めて画像を配置して印刷を行う。この場合、画像の右側に余白が生じ、印刷用紙に無駄が生じることがある。特に、B0サイズ等の大きな印刷用紙を利用する大判プリンタにおいては、常に用紙の幅一杯に印刷する訳ではなく、用紙右側の余白が無駄になることが多かった。そこで、従来の技術として、同一印刷ジョブを2部位上印刷する場合にページをロール紙の幅に入る限り横に並べてプリンタに送るなどして余白を小さくする技術が知られている。(例えば、非特許文献1参照)
【0003】
【非特許文献1】
「Fiery Spark Professional PS ソフトリップ PRO v2.0 印刷ガイド PX−10000/MC−10000/PM−10000対応」、2002年発行、付録ページA−18,25
【0004】
【発明が解決しようとする課題】
上述した従来の技術においては、汎用性が低く実質的には用紙の節約をすることができなかった。すなわち、上記従来技術では、同一の印刷ジョブについてのみ横に並べるので、同じ印刷対象について2部以上印刷しない場合には用紙の節約ができない。また、同じ印刷ジョブであるため、印刷サイズおよび解像度も共通である必要があり、汎用性が低い。また、用紙幅の2倍以上の印刷対象であれば、横に並べることはできないので、この場合の余白については何ら対策を施すことができない。
本発明は、上記課題にかんがみてなされたもので、多くの場合に自動で印刷用紙の余白を低減することが可能な印刷制御装置、印刷制御方法および印刷制御プログラムの提供を目的とする。
【0005】
【課題を解決するための手段および発明の効果】
上記目的を達成するため、本発明では印刷ジョブデータをスプールする際に印刷解像度毎に印刷領域を設定し、当該印刷領域の印刷解像度に合致した印刷対象の画像を逐次配置して配置データとする。そして、印刷開始条件に達した段階で配置データに従って各印刷対象の画像を印刷する。すなわち、印刷ジョブを実行させるための印刷ジョブデータには、少なくとも印刷対象の印刷解像度および印刷対象の画像を示すデータが含まれているので、この印刷ジョブデータから印刷解像度と画像のサイズを取得することができる。また、印刷解像度が可変のプリンタであっても通常、一回の主走査で印刷解像度は不変であり、ある範囲についてある印刷解像度で主走査および副走査を行った後に別の範囲について印刷解像度を変更する。
【0006】
そこで、本発明においては上記印刷領域を印刷解像度毎に設定し、投入される印刷ジョブの解像度が共通である場合には、印刷対象の画像をこの印刷領域の余白に配置する。このとき、上記印刷画像のサイズを把握して画像同士が重複しないように印刷領域上に画像を配置し、配置位置および配置対象の画像を特定する配置データを作成する。
【0007】
この結果、印刷解像度毎ではあるが印刷領域内の余白に印刷対象の画像を詰めて配置して印刷を実行可能な状態で印刷ジョブをスプールすることができる。従って、異なる印刷解像度の印刷ジョブが複数投入された場合であっても印刷用紙を節約することができる。また、本発明においては印刷解像度が共通であればどのような印刷ジョブであっても余白への配置を行うことができる。すなわち、同一印刷ジョブでなくても印刷解像度が共通である限り自動で配置がなされ、多くの場合に余白を低減することができる。
【0008】
ここで、印刷ジョブデータは印刷ジョブを実行させるためのデータを含んでいれば良く、種々の態様を採用可能である。例えば、ポストスクリプト(ポストスクリプトはアドビシステムズの登録商標)等のページ記述言語で記述されたデータ等を採用可能である。また、印刷ジョブを実行させるために種々のデータを含むことができるが、少なくとも印刷解像度を示すデータと印刷対象画像を示すデータを含んでいればよい。印刷サイズは印刷対象画像の内容を解釈してから取得しても良いし、印刷サイズをピクセル、長さ等によって直接的に示すデータを含むように構成し、当該データから取得しても良い。尚、印刷対象の画像は印刷対象となりうる総ての文字、絵、図、表等を含む。
【0009】
印刷開始条件データとしては、一時的に蓄積されたスプールデータについて印刷を開始する条件を示すデータであれば良く、種々のデータを採用可能である。例えば、印刷ジョブの蓄積数を示すデータであれば、この蓄積数に達するまでスプールを続けることができる。また、スプールした印刷ジョブの画像を印刷したときの大きさを示すデータであれば、得られる印刷物が一定の大きさに達するまでスプールを続けることができる。スプール開始からの経過時間を示すデータであれば、一定時間は印刷開始を待機することができる。所定の印刷領域に対して画像が占める面積の割合を示すデータであれば、印刷画像が印刷領域に対して一定比率の面積に達するまでスプールを続けることができる。
【0010】
また、複数の利用者によって印刷を実行する環境にて好適な構成例として、印刷開始条件データを予め上記印刷ジョブデータの投入主体毎に決めておく構成を採用可能である。すなわち、印刷ジョブデータの投入主体が別であれば別の印刷用紙に印刷を行いたい場合も多いので、印刷開始条件データを印刷ジョブデータの投入主体毎に決めておけば印刷ジョブデータの投入主体別にスプールを行い、また、スプールを終了して印刷を開始することができる。
【0011】
尚、印刷ジョブデータの投入主体は印刷ジョブデータを投入したユーザー自体であっても良いし、印刷ジョブデータの投入を実施したコンピュータであっても良い。また、この投入主体を示すデータが印刷ジョブデータに含まれる場合にはこのデータを取得すればよいし、含まれないのであれば、印刷ジョブデータの投入時に投入主体を示すデータを印刷ジョブデータのヘッダに付加する処理等を実施すればよい。
【0012】
印刷領域は印刷画像を配置する領域を示していればよく、少なくとも印刷領域の縦横の大きさを示していればよい。例えば、縦横の大きさを長さ(mmやインチ等)で指定したデータであっても良いし、大きさを示すための座標データ(四隅の座標や対角2点の座標等)であっても良い。さらに、印刷画像を蓄積するバッファ領域であっても良い。これによれば、バッファの容量によって印刷領域の大きさを示すことができる。むろん、縦横に配置可能なピクセル数等、画像の大きさに対応した情報が分かるようにしておく。
【0013】
この印刷領域は新たな印刷解像度の印刷ジョブデータが投入された後に設定すれば充分であるが、むろん、予め用意しておいても良い。また、上述のように印刷ジョブデータの投入主体別にスプールを行うためには、上記印刷領域も投入主体別に設定するのが好ましい。すなわち、同じ印刷解像度であっても投入主体が異なる場合には異なる印刷領域を設定し、投入主体別に印刷画像を配置する。
【0014】
スプール手段は印刷解像度が同一であるものについて印刷対象の画像を印刷解像度が同一の印刷領域の余白に配置して配置データを生成しながら印刷ジョブデータを蓄積することができればよい。すなわち、印刷対象画像の大きさを示すデータを取得すれば、印刷領域内に配置可能であるか否かを判定することができるので、印刷ジョブデータの投入順に印刷領域内で左側かつ上側に詰めるように配置するなどして印刷領域内の位置を決定することができる。特に、後から投入された印刷ジョブデータにおける印刷対象の画像が上記印刷領域の余白中で主走査方向に配置可能である場合に当該主走査方向に並べて配置することで、効果的に余白を低減することができる。
【0015】
画像の配置を決定したら、印刷領域内でのその画像の配置を示すデータを配置データとすればよい。例えば、印刷領域内での位置を特定可能な座標データを配置データとすることができる。配置データの形式としては種々の形式を採用可能であり、印刷ジョブデータ内で画像の位置を記述する部分に配置データを書き込むなどの構成を採用可能である。印刷ジョブデータの蓄積対象としては、ハードディスクドライブやRAM,EEPROM等種々の記憶媒体を採用可能である。
【0016】
スプールを行う際に好適な構成例として、印刷ジョブデータにて指定された印刷解像度が同一であるものについては上記配置データによって印刷対象の各画像の配置を指定した単一のファイルとしてスプールする構成を採用可能である。すなわち、ある一定範囲の印刷領域について画像を印刷する場合には単一のファイルで印刷対象および解像度等の各種設定を記述するのが好ましく、特に、印刷用紙上で主走査方向に画像を並べて印刷を行う場合に単一のファイルで印刷対象を記述してあると非常に容易に印刷を実行することができる。
【0017】
すなわち、単一のファイルにおいて一定範囲の印刷領域について印刷を実行させるデータを構成する場合には、このファイルにて印刷を実行する印刷解像度を一つ指定しておけばよいし、画像の位置としても配置を示す配置データをファイル内に含めるのみで各印刷ジョブでの画像位置を指定することができる。むろん、このとき画像を示すデータもファイル内に含める必要がある。より具体的には、上記ページ記述言語で指定されたファイルが既にスプールされており、その後、他のファイルで記述された印刷ジョブが投入された場合、この印刷ジョブの画像の配置を特定する配置データおよび画像を記述した部分を既存のスプールファイルに付加する構成を採用可能である。
【0018】
さらに、スプール時の処理として好適な構成例として、印刷領域に充分な余白が存在しないときに副走査方向に印刷領域を拡張する構成を採用しても良い。すなわち、印刷領域の副走査方向としては印刷画像の下端に近い方が余白が少なくなるものの、投入される印刷ジョブを主走査方向に配置すると、余白が足りなくなることもある。この場合に印刷領域を副走査方向に拡張することにより、印刷領域に余白を確保することができるので、印刷対象の画像を配置することが可能になる。
【0019】
印刷実行手段においては、印刷ジョブデータおよび配置データに従って印刷を実行することができれば良く、印刷ジョブデータがページ記述言語で記述されている場合には、当該ページ記述言語を解釈し、色変換やハーフトーン処理等を行って印刷データを生成し、プリンタに対して出力する。むろん、配置データが印刷ジョブデータに含まれている場合には、スプールされた印刷ジョブデータに従って印刷を実行することができれば良く、配置データが上記ページ記述言語のフォーマット通りに記述されているのであれば、印刷実行手段としては汎用的なモジュールで実現可能である。
【0020】
ところで、上述した印刷制御装置は、単独で実施される場合もあるし、ある機器に組み込まれた状態で他の方法とともに実施されることもあるなど、発明の思想としては各種の態様を含むものであって、適宜、変更可能である。また、上述したようなスプール時の画像配置制御手法は、所定の手順に従って処理を進めていくうえで、その根底にはその手順に発明が存在するということは当然である。
したがって、本発明は方法としても適用可能であり、請求項7にかかる発明においても、基本的には同様の作用となる。本発明を実施しようとする際に、印刷制御装置にて所定のプログラムを実行させる場合もある。本発明は、そのプログラムとしても適用可能であり、請求項8にかかる発明においても、基本的には同様の作用となる。
【0021】
むろん、請求項2〜請求項6に記載された構成を上記方法やプログラムに対応させることも可能であることは言うまでもない。また、いかなる記憶媒体もプログラムを提供するために使用可能である。例えば、磁気記録媒体や光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一部がソフトウェアであって、一部がハードウェアで実現される場合においても本発明の思想において全く異なるものではなく、一部を記録媒体上に記録しておいて必要に応じて適宜読み込む形態のものも含まれる。さらに、一次複製品、二次複製品などの複製段階については全く問う余地なく同等である。
【0022】
【発明の実施の形態】
ここでは、下記の順序に従って本発明の実施の形態について説明する。
(1)印刷制御装置の構成:
(2)印刷制御処理:
(2−1)配置データ生成処理:
(3)印刷制御動作:
(4)他の実施形態:
【0023】
(1)印刷制御装置の構成:
図1は、本実施形態にかかる印刷制御処理の構成を説明するブロック図である。本実施形態においては、PCによって生成されたPSファイル11(ポストスクリプトファイル)を印刷制御装置10が図示しないネットワーク経由で取得し、当該印刷制御装置10で解析して印刷データを生成し、プリンタに対して転送する。プリンタ15では、この印刷データに基づいて印刷を行う。印刷制御装置10は汎用的なコンピュータによって構成可能である。すなわち、図示しないCPU,RAM,ROM等からなるプログラムの実行系やHDD(ハードディスクドライブ)等の固定記憶装置,プリンタ15と接続するI/F(インターフェイス)、ディスプレイ12,マウス13a,キーボード13bと接続するI/F等を備えていればよい。
【0024】
プリンタ15はプリンタI/Fを介して印刷制御装置10に接続されており、本実施形態におけるプリンタ15ではCMYKの各色インクを搭載し、各色インクをノズルから吐出することによって印刷媒体上に画像を形成する。HDD20には、ディスプレイ12で表示する画像の色をCMYK表色系で表現したデータをLab表色系で色を表現したデータに変換する複数の印刷プロファイル21と、Lab表色系で色を表現したデータをプリンタ15で使用する色をCMYK表色系で表現したデータに変換する複数のメディアプロファイル22が記憶されている。
【0025】
尚、各プロファイルではディスプレイやプリンタに依存する機器依存色と機器非依存色との変換をすることができれば良く、上記Lab表色系の他、XYZ表色系等、種々の表色系を使用可能である。また、ディスプレイ12で使用する色の表色系はCMYK表色系に限らずRGB表色系でも良いし、プリンタ15で使用する色の表色系としてもCMYK表色系に限らずCMYKlclm表色系であっても良いし、他の表色系であっても良い。本実施形態においては印刷プロファイルとメディアプロファイルとによって色変換を実施可能にしているが、むろん、ディスプレイ12で使用する色を示すデータとプリンタ15で使用する色を示すデータとの対応関係を規定したLUTによって色変換を実施可能に構成しても良い。
【0026】
さらにHDD20には、予め印刷開始条件データ23が記録されている。印刷開始条件データ23においては印刷開始条件が登録されており、当該印刷開始条件は印刷ジョブの投入主体としてのユーザ名が組になって登録されている。図1においては、ユーザ名としてユーザA,ユーザBが存在し、ユーザAの印刷開始条件は印刷ジョブ数3であり、ユーザBの印刷開始条件は5時間である。すなわち、ユーザAが投入した印刷ジョブは3回分スプールされた後に印刷が実行され、ユーザBが投入した印刷ジョブは最初の投入から5時間経過した後に印刷が実行される。
【0027】
印刷ジョブ数が印刷開始条件に達しているか否かは、後述する印刷ジョブの番号によって判定する構成等を採用可能である。すなわち、本実施形態においては印刷ジョブの印刷対象画像に対して一つずつ番号を付与するので当該板号と印刷ジョブ数とが一致したら印刷ジョブ数が印刷開始条件に達していると判定することができる。最初の印刷ジョブの投入からの経過時間が印刷開始条件に達しているか否かを判定するためには、OSの計時機能等を利用し、最初の印刷ジョブの投入から計時を開始し、計時時間と印刷開始条件とを比較すればよい。
【0028】
印刷開始条件は他にも種々の条件を採用可能であり、印刷画像のサイズや印刷画像の面積が印刷用紙の面積に対して占める割合を条件とすることができ、印刷画像のサイズや印刷用紙のサイズはPSファイルに記述されている画像記述コマンドや印刷用紙を特定するデータ等から取得することができる。これらのデータと印刷開始条件として登録されたデータとを比較すればよい。
【0029】
また、HDD20にはスプールファイル24を蓄積可能である。本実施形態において、スプールファイル24としてはPSファイルが蓄積されるようになっており、解像度およびユーザが共通の画像については単一のPSファイルとしてスプールする。図1に示す例では、PSファイル24a,24bともにユーザAが投入した印刷ジョブを実行させるデータであるが、前者は解像度Aであり後者は解像度Bであって印刷解像度が互いに異なっている。
【0030】
印刷制御プログラム30は、スプール制御部31と言語解釈部32とカラーエンジン33とハーフトーン処理部34と印刷データ生成部35とを備えている。
PSファイル11は各ユーザが使用するPC上で起動するフォトレタッチソフトウェア等によって作成され、印刷ジョブ投入時に図示しないネットワークを介して印刷制御装置10に供給される。印刷制御装置10がネットワーク経由でPSファイル11を取得すると当該PSファイル11は言語解釈部32に入力される。
【0031】
PSファイル11には印刷時の解像度とユーザ名と画像記述コマンドとが記述されており、上記印刷ジョブの投入時にユーザが使用するPC上で起動するプリンタドライバにて特定される。本実施形態において、ユーザ名はPCに予め付与されたPC名であり、このPC名がユーザ名としてPSファイル11に記述されることにより、ジョブを投入したPCの使用者としてユーザを特定することとなる。また、上記印刷開始条件データ23に登録されるユーザ名は当該PSファイル11に記述され得るユーザ名であり、印刷開始条件データ23を作成する際にネットワークに接続されたPCのPC名と印刷開始条件データ23に登録されるユーザ名とを一致させておく。
【0032】
むろん、PSファイル11には上述の情報の他にも印刷を実行させるプリンタの機体,印刷用紙の種類,印刷プロファイル等の情報を含むことが可能である。
尚、各種情報を特定するための手法は様々であり、PSファイル11内に情報を記述することが必須というわけではない。例えば、上記プリンタドライバと印刷制御装置10の印刷制御プログラムとが双方向通信を行ってユーザ名を取得するなど、種々の構成を採用可能である。
【0033】
言語解釈部32は、PSファイル11に記述されたポストスクリプト言語を解釈するモジュールであり、上述の解像度とユーザ名やプリンタの機体,印刷用紙の種類,使用する印刷プロファイル等を把握したり、印刷用紙の種類から印刷用紙に適合したメディアプロファイルを特定したりすることが可能である。また、画像記述コマンドを解析して印刷対象の文字や画像をドットマトリクス上の画素で構成し、各画素の色をCMYK各色の階調値で表現した入力CMYK画像データを作成することが可能である。
【0034】
スプール制御部31は、この言語解釈部32と連携してPSファイル11をスプールするモジュールである。すなわち、印刷制御装置10がPSファイル11を取得すると、スプール制御部31は言語解釈部32が解釈した印刷解像度とユーザ名を取得する。そして、印刷開始条件データ23を参照し、当該取得したユーザ名について印刷開始条件データ23が登録されている場合には当該取得したPSファイル11をHDD20にスプールする。HDD20に対して既に他のPSファイルがスプールされている場合には既存のPSファイルに記述された解像度とユーザ名とを検索し、上記取得したPSファイル11の解像度およびユーザ名と共通であれば当該既存のPSファイルに対して上記取得したPSファイル11の画像記述コマンドを追加する。
【0035】
このとき、配置データ生成部31aは既存のPSファイルに追加する画像記述コマンドにて生成される画像の配置を特定して配置データとし、上記PSファイル11に対して当該配置データを追加する。すなわち、配置データ生成部31aは印刷解像度毎に印刷領域を設定し、この印刷領域の中で画像が配置されていない部位(すなわち余白)に対して画像記述コマンドに記述された画像を配置する。尚、この段階では画像の大きさを把握することができればよいので、この段階で画像記述コマンドを総て解釈する必要はない。
【0036】
配置データを作成する際には、配置データ生成部31aが印刷領域を設定し、当該印刷領域内で画像の配置を特定する。印刷領域は印刷解像度毎,ユーザ名毎に設定され、画像を印刷可能な領域の大きさを示しているが、本実施形態においてプリンタの主走査方向の大きさは固定であり、副走査方向の大きさは印刷の状況によって変動可能である。すなわち、印刷領域のサイズのうち主走査方向は印刷用紙の横幅やプリンタの機種に応じて固定的であるが、副走査方向については印刷画像の配置具合によってその下端が含まれるようにすれば良い。
【0037】
尚、印刷用紙が定形サイズである場合には印刷用紙の縦サイズが固定的であるので、1ページ分の印刷領域に副走査方向の最大値が存在するが、印刷用紙がロール紙であれば副走査方向にほぼ上限がない。また、印刷領域を示すデータはスプール処理を実施している間中RAM等に保存していても良いし、スプール処理を実施する度にスプール中のPSファイル24a,24b等から生成しても良い。PSファイル24a,24bから生成する場合には、当該PSファイル24a,24b内に記述された印刷用紙を示すデータから印刷可能な最大範囲を算出する。
【0038】
言語解釈部32は、上述のようにポストスクリプト言語を解釈することが可能であるとともに印刷開始条件データ23を検索しており、印刷開始条件に合致しているか否かを判別する。印刷開始条件に合致したユーザのPSファイルが存在するときには、当該PSファイルを取得して上述の言語解釈の処理を開始する。言語解釈処理の過程では、図示しないRAMに印刷ページに相当するバッファを確保し、言語解釈によって生成された入力CMYK画像データを上記配置データが示す位置にバッファリングする。
【0039】
カラーエンジン33は、プロファイルを参照して色変換を実施するモジュールであり、上記印刷プロファイル21を参照して画像の各画素の色を示すCMYK値をLab値に変換する。さらに、メディアプロファイル22を参照し、このLab値をプリンタ15で使用するCMYK値に変換する。ハーフトーン処理部34は、当該変換後のCMYK値をプリンタ15における各画素でのインク吐出の有無を示すドットデータに変換するモジュールである。また、印刷データ生成部35は当該ドットデータに基づいて上記プリンタ15における図示しないヘッド機構やノズルからなるインク吐出機構を駆動するための印刷データを作成するモジュールである。作成された印刷データはプリンタI/Fに対して出力され、プリンタ15は当該印刷データに基づいて上記余白を抑えつつ画像が配置された状態で画像を印刷する。
【0040】
(2)印刷制御処理:
次に、上記構成における印刷制御処理をフローチャートに従って説明する。図2は印刷制御プログラム30が実施する処理のフローチャートである。ユーザが各自のPCによってPSファイル11を作成して印刷を実行すると、印刷制御プログラム30は図示しないネットワークを介してステップS100にて当該PSファイル11を取得する。PSファイル11を取得すると、ステップS105にて言語解釈部32がPSファイル11内に記述されたユーザ名を取得し、スプール制御部31は当該取得したユーザ名についての印刷開始条件が印刷開始条件データ23として登録済みであるか否かを判別する。
【0041】
ステップS105にてユーザ名が登録済みであると判別されたときには、余白を抑えた配置で印刷するべくステップS110にて配置データ生成処理を実行する。ステップS110の配置データ生成処理が終了すると、ステップS115にて言語解釈部32が印刷開始条件データ23に登録された総てのユーザについての印刷開始条件を検索し、ステップS120にて印刷開始条件を満たしているPSファイルが存在するか否かを判別する。
【0042】
同ステップS120にて印刷開始条件を満たしているPSファイルが存在すると判別されないときには、印刷制御プログラム30がステップS125にて他の印刷ジョブにかかるPSファイルを取得したか否かを判別し、他の印刷ジョブにかかるPSファイルを取得したと判別されないときにはステップS115以降の処理を繰り返す。すなわち、印刷開始条件を満たすか新たに他の印刷ジョブにかかるPSファイルを取得するまで待機する。ステップS125にて他の印刷ジョブにかかるPSファイルを取得したと判別されたときにはステップS105以降の処理を繰り返す。
【0043】
ステップS120にて、印刷開始条件を満たしているPSファイルが存在すると判別されたときには、ステップS130にて言語解釈部32が印刷開始条件を満たしているPSファイルを取得し、ポストスクリプト言語を解釈する。この結果、上記図示しないRAM内に入力CMYK画像データが展開される。このとき、各印刷画像は上記配置データが示す位置に配置される。また、使用する印刷プロファイルやメディアプロファイルが特定される。
【0044】
ステップS135では、カラーエンジン33が上記特定された印刷プロファイルおよびメディアプロファイルを参照して上記入力CMYK画像データをプリンタ15で使用するCMYK値で色を記述したCMYK画像データに変換する。ステップS140ではハーフトーン処理部34が当該変換後のCMYK画像データを上述のドットデータに変換し、ステップS145では印刷データ生成部35が当該ドットデータに基づいて上述の印刷データを作成しプリンタ15に対して印刷データを出力する。この結果、プリンタ15は当該印刷データに基づいて画像を印刷する。この画像は、上記スプール制御部31の制御により、共通の印刷解像度の画像が共通の印刷領域に配置されたものであるので、余白が抑えられており、印刷用紙を節約することが可能になる。
【0045】
一方、上記ステップS105にてユーザ名が登録済みであると判別されないときには、スプール処理をすることなく言語解釈部32がPSファイル11を取得し、各モジュールがステップS130以降の処理を実施することによって当該PSファイル11に示された画像の印刷を実行する。
【0046】
(2−1)配置データ生成処理:
次に、上記ステップS110における配置データ生成処理を詳細に説明する。図3は配置データ生成処理のフローチャートである。スプール制御部31はステップS200において、上記言語解釈部32によって把握されたPSファイル11の解像度を取得する。ステップS210では上記PSファイルを検索し、上記取得した解像度と同一であり、かつ上記ステップS105で登録済みであると判別したユーザが投入したPSファイルが既にスプール済みであるか否かを判別する。
【0047】
同ステップS210にてPSファイルが既にスプール済みであると判別されないときには、配置データ生成部31aが上記ステップS200で取得した解像度に対応した印刷領域を設定する(ステップS220)。ステップS210にてPSファイルが既にスプール済みであると判別されたときおよびステップS220での処理の後、配置データ生成部31aはステップS230にて上記PSファイルの11印刷画像に対してジョブ番号を付与する。このジョブ番号は印刷画像のスプール順に付与される番号であり、スプールファイル24内における単一のPSファイルでは通し番号となっている。
【0048】
また、ジョブ番号は配置データによって特定される位置とその位置に配置する印刷画像とを対応づける番号であり、共通のPSファイル24a,24b内に記述された複数の印刷画像の位置がいずれの配置データによって指定されるのかをこのジョブ番号によって特定する(図1におけるPSファイル24a,24bには画像記述コマンド1,2,3としてジョブ番号が付与されることを示している)。
【0049】
ステップS235では、上記言語解釈部32がPSファイル11に記述された画像記述コマンドから印刷画像のサイズを把握し、配置データ生成部31aが当該印刷画像のサイズを取得する。ステップS240では、言語解釈部32が印刷領域に余白があるか否かを判別する。ここで、スプール対象の解像度と同一の解像度を指定したスプールファイル24が既に存在する場合には、既存の画像の印刷領域内での配置を把握して余白を検出する。スプール対象の解像度と同一の解像度を指定したスプールファイル24が存在しない場合、すなわち、ステップS220の処理を経ている場合には、印刷領域の総てを余白とする。
【0050】
そして、スプール対象の画像を配置可能な余白があるか否かを判別し、余白が存在すると判別されたときにはステップS250にて配置データを生成する。余白が存在すると判別されないときには、ステップS245にて印刷領域を上記スプール対象の画像を配置可能になるまで副走査方向に拡張して充分な余白を確保する。ステップS250においては、余白に対して印刷画像を配置してその配置データを生成する。このとき、この配置データと上記ステップS230にて付与したジョブ番号とを対応付け、スプール対象の解像度と同一の解像度を指定したスプールファイルが既に存在する場合には配置データと画像記述コマンドとを当該スプールファイルに書き込む。スプール対象の解像度と同一の解像度を指定したスプールファイルが既に存在しない場合には、上記生成した配置データを上記ステップS100にて取得したPSファイル11に書き込んでHDD12にスプールする。
【0051】
(3)印刷制御動作:
以下、上記構成およびフローによって実現される印刷制御動作を実例に則して説明する。図4は、ユーザAとユーザCが同図上部に示す印刷解像度および印刷画像のサイズにて印刷ジョブを投入した場合の動作を示す動作説明図である。同図において上部に示す矢印は時間軸であり、最初にユーザAが720×720dpi,210×297mmの画像についての印刷ジョブを投入し、次にユーザAが360×720dpi,210×297mmの画像についての印刷ジョブを投入し、次にユーザCが720×720dpi,210×297mmの画像についての印刷ジョブを投入し、さらにユーザAが720×720dpi,900×900mmの画像についての印刷ジョブを投入したことを示している。
【0052】
また、この図においてはプリンタ15が大判印刷プリンタであって主走査方向に44インチの印刷範囲を有する印刷用紙に対して印刷を実行可能である。ここでは、図1の印刷開始条件データ23に示すようにユーザAの印刷開始条件はジョブ数3であり、ユーザCに関して印刷開始条件は登録されていないこととする。ユーザAが最初に720×720dpi,210×297mmの画像についての印刷ジョブを投入すると、そのPSファイル11が印刷制御プログラム30に取得され、ステップS105にてユーザAの印刷開始条件が印刷開始条件データ23として登録済みであると判別する。
【0053】
そして、ステップS200では印刷解像度の720×720dpiを取得し、ステップS210ではこの印刷解像度のPSファイルがスプールされていないことを判別する。従って、ステップS220にてユーザAかつ印刷解像度720×720dpiの印刷領域を確保する。図4の中段においては、ユーザAの印刷領域を示しており、印刷領域は主走査方向に44インチである。この段階において副走査方向は297mm+マージンという大きさにするのが好ましいが、これより小さくても後の印刷領域拡張処理(ステップS245)によって拡張される。
【0054】
ステップS230ではこの印刷ジョブにジョブ番号1を付与し、ステップS235で印刷画像のサイズ210×297mmを取得し、ステップS240で余白が存在することを確認したら、ステップS250にて印刷画像を配置する。この例では、印刷領域に対して印刷画像が未配置なので左端に詰めてジョブ番号1の印刷画像を配置する。このとき配置データとしては印刷画像の左上端の座標(X1,Y1)を採用し、PSファイル内にジョブ番号1の配置データとして書き込むとともにこの印刷画像の画像記述コマンドを画像記述コマンド1(ジョブ番号1の画像を示す)とし、PSファイル24aとしてHDD20にスプールする。
【0055】
このスプール後にはステップS115,S120にて印刷開始条件に合致しているか否かを判別するが、付与済みのジョブ番号は1のみであり、ユーザAの印刷開始条件はジョブ数3であるので、ステップS125以降の処理で印刷ジョブの投入待ちとなる。続いてユーザAが360×720dpi,210×297mmの画像についての印刷ジョブを投入すると、そのPSファイル11が印刷制御プログラム30に取得され、ステップS105にてユーザAの印刷開始条件が登録済みであるとされる。
【0056】
ステップS200では印刷解像度の360×720dpiを取得するが、この印刷解像度は上記ステップS250でスプールしたPSファイルの印刷解像度と異なるので、再びステップS220の処理を行い、ユーザAかつ印刷解像度360×720dpiの印刷領域を確保する。そして、ステップS230にてこの印刷ジョブにジョブ番号2を付与し、ステップS250にて印刷画像を配置する。
ここでも、印刷領域に対して印刷画像が未配置なので左端に詰めてジョブ番号2の印刷画像を配置し、印刷画像の左上端の座標(X2,Y2)を配置データとしつつそのPSファイルをHDD20にスプールする。
【0057】
このスプール後のステップS115,S120においてもジョブ番号が3に達していないとしてステップS125以降の処理で印刷ジョブの投入待ちとなる。
続いてユーザCが720×720dpi,210×297mmの画像についての印刷ジョブを投入すると、そのPSファイル11が印刷制御プログラム30に取得され、ステップS105にてユーザCの印刷開始条件が登録済みではないと判別される。従って、ステップS105〜S125の処理はスキップし、ステップS130〜S145の処理によって当該PSファイル11の印刷を実行する。
【0058】
ユーザCの投入印刷ジョブについての印刷を行った後には、再びステップS125以降の処理で印刷ジョブの投入待ちとなる。続いてユーザAが720×720dpi,900×900mmの画像についての印刷ジョブを投入すると、そのPSファイル11が印刷制御プログラム30に取得され、ステップS105にてユーザAの印刷開始条件が登録済みであるとされる。
【0059】
ステップS200では印刷解像度の720×720dpiを取得するが、この印刷解像度の印刷ジョブはPSファイル24aとして既にスプール済みであるので、ステップS230にてこの印刷ジョブにジョブ番号3を付与して配置処理を行う。但し、図4に示す720×720dpiの印刷領域では副走査方向に余白が足りないので、ステップS240の判別を経てステップS245にて印刷領域を副走査方向に拡張する。図4の右側中段に示す印刷領域は拡張後の領域であり、破線が拡張前の領域を示している。
【0060】
印刷領域を拡張した後には900×900mmの印刷画像をジョブ番号1の画像に対して主走査方向に並べて配置することができるので、ジョブ番号1の画像の隣に並べて900×900mmの印刷画像を配置する。そして、印刷画像の左上端の座標(X3,Y3)を配置データとしつつそのPSファイルをHDD20にスプールする。このスプール後にステップS115,S120にて印刷開始条件を検索したときには、ジョブ番号3が付与済みであることによって印刷開始条件に合致したと判別し、ステップS130〜S145の処理によって上記PSファイル24aおよび印刷解像度360×720dpiについてのPSファイルを印刷する。
【0061】
(4)他の実施形態:
上述の実施形態は一例であり、共通の解像度の印刷画像について共通の印刷領域に配置してできるだけ余白を少なくすることができる限りにおいて、他にも種々の構成を採用することが可能である。上述の実施形態においては、ネットワークを介して複数のPCを印刷制御装置に接続し、各PCから投入される印刷ジョブを実行する際に余白を低減する配置を行っていたが、むろんかかる構成が必須という訳ではない。
【0062】
例えば、コンピュータに対してプリンタを接続した状態で、当該コンピュータ内で余白を低減する配置を行う印刷制御プログラムを実行するよう構成しても良い。すなわち、当該コンピュータに搭載するプリンタドライバの付属機能としてスプール制御部を構成し、印刷ジョブが投入されるたびに解像度を確認するとともに共通の解像度であれば共通の印刷領域に対して画像を配置しつつスプールする。この場合、ユーザは一人になるため、印刷開始条件とユーザ名とを対応づける必要はないし、ユーザ別に印刷領域を設ける必要もない。
【0063】
また、本発明にかかる印刷制御装置をプリンタ自体に搭載することも可能である。すなわち、プリンタにおいてスプールを実施可能なHDDやEEPROM等の記憶媒体とCPU,RAM等からなるプログラム実行環境を構成し、プリンタ内で印刷制御プログラムを実行しても良い。むろん、デジタルカメラ等の画像機器をUSBケーブル,IEEE1394ケーブル,無線等によって直接的にプリンタに接続し、いわゆるダイレクトプリントを実現する場合に本発明にかかる印刷制御を実施しても良い。
【0064】
また、上記実施形態においては印刷ジョブデータがPSファイルであったが、むろん、他のページ記述言語で記述されていても良いし、画像データに対して種々のデータを付加した各種ファイルフォーマット(PRINT Image Matching(セイコーエプソン株式会社の登録商標),EXIF2.2(社団法人電子情報技術産業境界の登録商標)等)を利用しても良い。この場合、解像度や画像の大きさ等の必要な情報をファイルのヘッダに記述しておく。
【図面の簡単な説明】
【図1】印刷制御処理の構成を説明するブロック図である。
【図2】印刷制御プログラムが実施する処理のフローチャートである。
【図3】配置データ生成処理のフローチャートである。
【図4】印刷ジョブを投入した場合の動作を示す動作説明図である。
【符号の説明】
10…印刷制御装置、11…PSファイル、15…プリンタ、20…HDD、23…印刷開始条件データ、24…スプールファイル、24a,24b…PSファイル、30…印刷制御プログラム、31…スプール制御部、31a…配置データ生成部、32…言語解釈部、33…カラーエンジン、34…ハーフトーン処理部、35…印刷データ生成部
【発明の属する技術分野】
本発明は、印刷制御装置、印刷制御方法および印刷制御プログラムに関する。
【0002】
【従来の技術】
インクジェット等のプリンタにおいてはインクノズルを搭載したヘッドを用紙搬送方向に垂直に移動させる主走査を行いながらインク滴を記録し、主走査後に用紙を搬送する副走査を行って印刷を実行するのが一般的である。このため、印刷対象の画像は主走査方向の一方に詰めて配置するのが一般的である。例えば、印刷用紙の左隅に詰めて画像を配置して印刷を行う。この場合、画像の右側に余白が生じ、印刷用紙に無駄が生じることがある。特に、B0サイズ等の大きな印刷用紙を利用する大判プリンタにおいては、常に用紙の幅一杯に印刷する訳ではなく、用紙右側の余白が無駄になることが多かった。そこで、従来の技術として、同一印刷ジョブを2部位上印刷する場合にページをロール紙の幅に入る限り横に並べてプリンタに送るなどして余白を小さくする技術が知られている。(例えば、非特許文献1参照)
【0003】
【非特許文献1】
「Fiery Spark Professional PS ソフトリップ PRO v2.0 印刷ガイド PX−10000/MC−10000/PM−10000対応」、2002年発行、付録ページA−18,25
【0004】
【発明が解決しようとする課題】
上述した従来の技術においては、汎用性が低く実質的には用紙の節約をすることができなかった。すなわち、上記従来技術では、同一の印刷ジョブについてのみ横に並べるので、同じ印刷対象について2部以上印刷しない場合には用紙の節約ができない。また、同じ印刷ジョブであるため、印刷サイズおよび解像度も共通である必要があり、汎用性が低い。また、用紙幅の2倍以上の印刷対象であれば、横に並べることはできないので、この場合の余白については何ら対策を施すことができない。
本発明は、上記課題にかんがみてなされたもので、多くの場合に自動で印刷用紙の余白を低減することが可能な印刷制御装置、印刷制御方法および印刷制御プログラムの提供を目的とする。
【0005】
【課題を解決するための手段および発明の効果】
上記目的を達成するため、本発明では印刷ジョブデータをスプールする際に印刷解像度毎に印刷領域を設定し、当該印刷領域の印刷解像度に合致した印刷対象の画像を逐次配置して配置データとする。そして、印刷開始条件に達した段階で配置データに従って各印刷対象の画像を印刷する。すなわち、印刷ジョブを実行させるための印刷ジョブデータには、少なくとも印刷対象の印刷解像度および印刷対象の画像を示すデータが含まれているので、この印刷ジョブデータから印刷解像度と画像のサイズを取得することができる。また、印刷解像度が可変のプリンタであっても通常、一回の主走査で印刷解像度は不変であり、ある範囲についてある印刷解像度で主走査および副走査を行った後に別の範囲について印刷解像度を変更する。
【0006】
そこで、本発明においては上記印刷領域を印刷解像度毎に設定し、投入される印刷ジョブの解像度が共通である場合には、印刷対象の画像をこの印刷領域の余白に配置する。このとき、上記印刷画像のサイズを把握して画像同士が重複しないように印刷領域上に画像を配置し、配置位置および配置対象の画像を特定する配置データを作成する。
【0007】
この結果、印刷解像度毎ではあるが印刷領域内の余白に印刷対象の画像を詰めて配置して印刷を実行可能な状態で印刷ジョブをスプールすることができる。従って、異なる印刷解像度の印刷ジョブが複数投入された場合であっても印刷用紙を節約することができる。また、本発明においては印刷解像度が共通であればどのような印刷ジョブであっても余白への配置を行うことができる。すなわち、同一印刷ジョブでなくても印刷解像度が共通である限り自動で配置がなされ、多くの場合に余白を低減することができる。
【0008】
ここで、印刷ジョブデータは印刷ジョブを実行させるためのデータを含んでいれば良く、種々の態様を採用可能である。例えば、ポストスクリプト(ポストスクリプトはアドビシステムズの登録商標)等のページ記述言語で記述されたデータ等を採用可能である。また、印刷ジョブを実行させるために種々のデータを含むことができるが、少なくとも印刷解像度を示すデータと印刷対象画像を示すデータを含んでいればよい。印刷サイズは印刷対象画像の内容を解釈してから取得しても良いし、印刷サイズをピクセル、長さ等によって直接的に示すデータを含むように構成し、当該データから取得しても良い。尚、印刷対象の画像は印刷対象となりうる総ての文字、絵、図、表等を含む。
【0009】
印刷開始条件データとしては、一時的に蓄積されたスプールデータについて印刷を開始する条件を示すデータであれば良く、種々のデータを採用可能である。例えば、印刷ジョブの蓄積数を示すデータであれば、この蓄積数に達するまでスプールを続けることができる。また、スプールした印刷ジョブの画像を印刷したときの大きさを示すデータであれば、得られる印刷物が一定の大きさに達するまでスプールを続けることができる。スプール開始からの経過時間を示すデータであれば、一定時間は印刷開始を待機することができる。所定の印刷領域に対して画像が占める面積の割合を示すデータであれば、印刷画像が印刷領域に対して一定比率の面積に達するまでスプールを続けることができる。
【0010】
また、複数の利用者によって印刷を実行する環境にて好適な構成例として、印刷開始条件データを予め上記印刷ジョブデータの投入主体毎に決めておく構成を採用可能である。すなわち、印刷ジョブデータの投入主体が別であれば別の印刷用紙に印刷を行いたい場合も多いので、印刷開始条件データを印刷ジョブデータの投入主体毎に決めておけば印刷ジョブデータの投入主体別にスプールを行い、また、スプールを終了して印刷を開始することができる。
【0011】
尚、印刷ジョブデータの投入主体は印刷ジョブデータを投入したユーザー自体であっても良いし、印刷ジョブデータの投入を実施したコンピュータであっても良い。また、この投入主体を示すデータが印刷ジョブデータに含まれる場合にはこのデータを取得すればよいし、含まれないのであれば、印刷ジョブデータの投入時に投入主体を示すデータを印刷ジョブデータのヘッダに付加する処理等を実施すればよい。
【0012】
印刷領域は印刷画像を配置する領域を示していればよく、少なくとも印刷領域の縦横の大きさを示していればよい。例えば、縦横の大きさを長さ(mmやインチ等)で指定したデータであっても良いし、大きさを示すための座標データ(四隅の座標や対角2点の座標等)であっても良い。さらに、印刷画像を蓄積するバッファ領域であっても良い。これによれば、バッファの容量によって印刷領域の大きさを示すことができる。むろん、縦横に配置可能なピクセル数等、画像の大きさに対応した情報が分かるようにしておく。
【0013】
この印刷領域は新たな印刷解像度の印刷ジョブデータが投入された後に設定すれば充分であるが、むろん、予め用意しておいても良い。また、上述のように印刷ジョブデータの投入主体別にスプールを行うためには、上記印刷領域も投入主体別に設定するのが好ましい。すなわち、同じ印刷解像度であっても投入主体が異なる場合には異なる印刷領域を設定し、投入主体別に印刷画像を配置する。
【0014】
スプール手段は印刷解像度が同一であるものについて印刷対象の画像を印刷解像度が同一の印刷領域の余白に配置して配置データを生成しながら印刷ジョブデータを蓄積することができればよい。すなわち、印刷対象画像の大きさを示すデータを取得すれば、印刷領域内に配置可能であるか否かを判定することができるので、印刷ジョブデータの投入順に印刷領域内で左側かつ上側に詰めるように配置するなどして印刷領域内の位置を決定することができる。特に、後から投入された印刷ジョブデータにおける印刷対象の画像が上記印刷領域の余白中で主走査方向に配置可能である場合に当該主走査方向に並べて配置することで、効果的に余白を低減することができる。
【0015】
画像の配置を決定したら、印刷領域内でのその画像の配置を示すデータを配置データとすればよい。例えば、印刷領域内での位置を特定可能な座標データを配置データとすることができる。配置データの形式としては種々の形式を採用可能であり、印刷ジョブデータ内で画像の位置を記述する部分に配置データを書き込むなどの構成を採用可能である。印刷ジョブデータの蓄積対象としては、ハードディスクドライブやRAM,EEPROM等種々の記憶媒体を採用可能である。
【0016】
スプールを行う際に好適な構成例として、印刷ジョブデータにて指定された印刷解像度が同一であるものについては上記配置データによって印刷対象の各画像の配置を指定した単一のファイルとしてスプールする構成を採用可能である。すなわち、ある一定範囲の印刷領域について画像を印刷する場合には単一のファイルで印刷対象および解像度等の各種設定を記述するのが好ましく、特に、印刷用紙上で主走査方向に画像を並べて印刷を行う場合に単一のファイルで印刷対象を記述してあると非常に容易に印刷を実行することができる。
【0017】
すなわち、単一のファイルにおいて一定範囲の印刷領域について印刷を実行させるデータを構成する場合には、このファイルにて印刷を実行する印刷解像度を一つ指定しておけばよいし、画像の位置としても配置を示す配置データをファイル内に含めるのみで各印刷ジョブでの画像位置を指定することができる。むろん、このとき画像を示すデータもファイル内に含める必要がある。より具体的には、上記ページ記述言語で指定されたファイルが既にスプールされており、その後、他のファイルで記述された印刷ジョブが投入された場合、この印刷ジョブの画像の配置を特定する配置データおよび画像を記述した部分を既存のスプールファイルに付加する構成を採用可能である。
【0018】
さらに、スプール時の処理として好適な構成例として、印刷領域に充分な余白が存在しないときに副走査方向に印刷領域を拡張する構成を採用しても良い。すなわち、印刷領域の副走査方向としては印刷画像の下端に近い方が余白が少なくなるものの、投入される印刷ジョブを主走査方向に配置すると、余白が足りなくなることもある。この場合に印刷領域を副走査方向に拡張することにより、印刷領域に余白を確保することができるので、印刷対象の画像を配置することが可能になる。
【0019】
印刷実行手段においては、印刷ジョブデータおよび配置データに従って印刷を実行することができれば良く、印刷ジョブデータがページ記述言語で記述されている場合には、当該ページ記述言語を解釈し、色変換やハーフトーン処理等を行って印刷データを生成し、プリンタに対して出力する。むろん、配置データが印刷ジョブデータに含まれている場合には、スプールされた印刷ジョブデータに従って印刷を実行することができれば良く、配置データが上記ページ記述言語のフォーマット通りに記述されているのであれば、印刷実行手段としては汎用的なモジュールで実現可能である。
【0020】
ところで、上述した印刷制御装置は、単独で実施される場合もあるし、ある機器に組み込まれた状態で他の方法とともに実施されることもあるなど、発明の思想としては各種の態様を含むものであって、適宜、変更可能である。また、上述したようなスプール時の画像配置制御手法は、所定の手順に従って処理を進めていくうえで、その根底にはその手順に発明が存在するということは当然である。
したがって、本発明は方法としても適用可能であり、請求項7にかかる発明においても、基本的には同様の作用となる。本発明を実施しようとする際に、印刷制御装置にて所定のプログラムを実行させる場合もある。本発明は、そのプログラムとしても適用可能であり、請求項8にかかる発明においても、基本的には同様の作用となる。
【0021】
むろん、請求項2〜請求項6に記載された構成を上記方法やプログラムに対応させることも可能であることは言うまでもない。また、いかなる記憶媒体もプログラムを提供するために使用可能である。例えば、磁気記録媒体や光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一部がソフトウェアであって、一部がハードウェアで実現される場合においても本発明の思想において全く異なるものではなく、一部を記録媒体上に記録しておいて必要に応じて適宜読み込む形態のものも含まれる。さらに、一次複製品、二次複製品などの複製段階については全く問う余地なく同等である。
【0022】
【発明の実施の形態】
ここでは、下記の順序に従って本発明の実施の形態について説明する。
(1)印刷制御装置の構成:
(2)印刷制御処理:
(2−1)配置データ生成処理:
(3)印刷制御動作:
(4)他の実施形態:
【0023】
(1)印刷制御装置の構成:
図1は、本実施形態にかかる印刷制御処理の構成を説明するブロック図である。本実施形態においては、PCによって生成されたPSファイル11(ポストスクリプトファイル)を印刷制御装置10が図示しないネットワーク経由で取得し、当該印刷制御装置10で解析して印刷データを生成し、プリンタに対して転送する。プリンタ15では、この印刷データに基づいて印刷を行う。印刷制御装置10は汎用的なコンピュータによって構成可能である。すなわち、図示しないCPU,RAM,ROM等からなるプログラムの実行系やHDD(ハードディスクドライブ)等の固定記憶装置,プリンタ15と接続するI/F(インターフェイス)、ディスプレイ12,マウス13a,キーボード13bと接続するI/F等を備えていればよい。
【0024】
プリンタ15はプリンタI/Fを介して印刷制御装置10に接続されており、本実施形態におけるプリンタ15ではCMYKの各色インクを搭載し、各色インクをノズルから吐出することによって印刷媒体上に画像を形成する。HDD20には、ディスプレイ12で表示する画像の色をCMYK表色系で表現したデータをLab表色系で色を表現したデータに変換する複数の印刷プロファイル21と、Lab表色系で色を表現したデータをプリンタ15で使用する色をCMYK表色系で表現したデータに変換する複数のメディアプロファイル22が記憶されている。
【0025】
尚、各プロファイルではディスプレイやプリンタに依存する機器依存色と機器非依存色との変換をすることができれば良く、上記Lab表色系の他、XYZ表色系等、種々の表色系を使用可能である。また、ディスプレイ12で使用する色の表色系はCMYK表色系に限らずRGB表色系でも良いし、プリンタ15で使用する色の表色系としてもCMYK表色系に限らずCMYKlclm表色系であっても良いし、他の表色系であっても良い。本実施形態においては印刷プロファイルとメディアプロファイルとによって色変換を実施可能にしているが、むろん、ディスプレイ12で使用する色を示すデータとプリンタ15で使用する色を示すデータとの対応関係を規定したLUTによって色変換を実施可能に構成しても良い。
【0026】
さらにHDD20には、予め印刷開始条件データ23が記録されている。印刷開始条件データ23においては印刷開始条件が登録されており、当該印刷開始条件は印刷ジョブの投入主体としてのユーザ名が組になって登録されている。図1においては、ユーザ名としてユーザA,ユーザBが存在し、ユーザAの印刷開始条件は印刷ジョブ数3であり、ユーザBの印刷開始条件は5時間である。すなわち、ユーザAが投入した印刷ジョブは3回分スプールされた後に印刷が実行され、ユーザBが投入した印刷ジョブは最初の投入から5時間経過した後に印刷が実行される。
【0027】
印刷ジョブ数が印刷開始条件に達しているか否かは、後述する印刷ジョブの番号によって判定する構成等を採用可能である。すなわち、本実施形態においては印刷ジョブの印刷対象画像に対して一つずつ番号を付与するので当該板号と印刷ジョブ数とが一致したら印刷ジョブ数が印刷開始条件に達していると判定することができる。最初の印刷ジョブの投入からの経過時間が印刷開始条件に達しているか否かを判定するためには、OSの計時機能等を利用し、最初の印刷ジョブの投入から計時を開始し、計時時間と印刷開始条件とを比較すればよい。
【0028】
印刷開始条件は他にも種々の条件を採用可能であり、印刷画像のサイズや印刷画像の面積が印刷用紙の面積に対して占める割合を条件とすることができ、印刷画像のサイズや印刷用紙のサイズはPSファイルに記述されている画像記述コマンドや印刷用紙を特定するデータ等から取得することができる。これらのデータと印刷開始条件として登録されたデータとを比較すればよい。
【0029】
また、HDD20にはスプールファイル24を蓄積可能である。本実施形態において、スプールファイル24としてはPSファイルが蓄積されるようになっており、解像度およびユーザが共通の画像については単一のPSファイルとしてスプールする。図1に示す例では、PSファイル24a,24bともにユーザAが投入した印刷ジョブを実行させるデータであるが、前者は解像度Aであり後者は解像度Bであって印刷解像度が互いに異なっている。
【0030】
印刷制御プログラム30は、スプール制御部31と言語解釈部32とカラーエンジン33とハーフトーン処理部34と印刷データ生成部35とを備えている。
PSファイル11は各ユーザが使用するPC上で起動するフォトレタッチソフトウェア等によって作成され、印刷ジョブ投入時に図示しないネットワークを介して印刷制御装置10に供給される。印刷制御装置10がネットワーク経由でPSファイル11を取得すると当該PSファイル11は言語解釈部32に入力される。
【0031】
PSファイル11には印刷時の解像度とユーザ名と画像記述コマンドとが記述されており、上記印刷ジョブの投入時にユーザが使用するPC上で起動するプリンタドライバにて特定される。本実施形態において、ユーザ名はPCに予め付与されたPC名であり、このPC名がユーザ名としてPSファイル11に記述されることにより、ジョブを投入したPCの使用者としてユーザを特定することとなる。また、上記印刷開始条件データ23に登録されるユーザ名は当該PSファイル11に記述され得るユーザ名であり、印刷開始条件データ23を作成する際にネットワークに接続されたPCのPC名と印刷開始条件データ23に登録されるユーザ名とを一致させておく。
【0032】
むろん、PSファイル11には上述の情報の他にも印刷を実行させるプリンタの機体,印刷用紙の種類,印刷プロファイル等の情報を含むことが可能である。
尚、各種情報を特定するための手法は様々であり、PSファイル11内に情報を記述することが必須というわけではない。例えば、上記プリンタドライバと印刷制御装置10の印刷制御プログラムとが双方向通信を行ってユーザ名を取得するなど、種々の構成を採用可能である。
【0033】
言語解釈部32は、PSファイル11に記述されたポストスクリプト言語を解釈するモジュールであり、上述の解像度とユーザ名やプリンタの機体,印刷用紙の種類,使用する印刷プロファイル等を把握したり、印刷用紙の種類から印刷用紙に適合したメディアプロファイルを特定したりすることが可能である。また、画像記述コマンドを解析して印刷対象の文字や画像をドットマトリクス上の画素で構成し、各画素の色をCMYK各色の階調値で表現した入力CMYK画像データを作成することが可能である。
【0034】
スプール制御部31は、この言語解釈部32と連携してPSファイル11をスプールするモジュールである。すなわち、印刷制御装置10がPSファイル11を取得すると、スプール制御部31は言語解釈部32が解釈した印刷解像度とユーザ名を取得する。そして、印刷開始条件データ23を参照し、当該取得したユーザ名について印刷開始条件データ23が登録されている場合には当該取得したPSファイル11をHDD20にスプールする。HDD20に対して既に他のPSファイルがスプールされている場合には既存のPSファイルに記述された解像度とユーザ名とを検索し、上記取得したPSファイル11の解像度およびユーザ名と共通であれば当該既存のPSファイルに対して上記取得したPSファイル11の画像記述コマンドを追加する。
【0035】
このとき、配置データ生成部31aは既存のPSファイルに追加する画像記述コマンドにて生成される画像の配置を特定して配置データとし、上記PSファイル11に対して当該配置データを追加する。すなわち、配置データ生成部31aは印刷解像度毎に印刷領域を設定し、この印刷領域の中で画像が配置されていない部位(すなわち余白)に対して画像記述コマンドに記述された画像を配置する。尚、この段階では画像の大きさを把握することができればよいので、この段階で画像記述コマンドを総て解釈する必要はない。
【0036】
配置データを作成する際には、配置データ生成部31aが印刷領域を設定し、当該印刷領域内で画像の配置を特定する。印刷領域は印刷解像度毎,ユーザ名毎に設定され、画像を印刷可能な領域の大きさを示しているが、本実施形態においてプリンタの主走査方向の大きさは固定であり、副走査方向の大きさは印刷の状況によって変動可能である。すなわち、印刷領域のサイズのうち主走査方向は印刷用紙の横幅やプリンタの機種に応じて固定的であるが、副走査方向については印刷画像の配置具合によってその下端が含まれるようにすれば良い。
【0037】
尚、印刷用紙が定形サイズである場合には印刷用紙の縦サイズが固定的であるので、1ページ分の印刷領域に副走査方向の最大値が存在するが、印刷用紙がロール紙であれば副走査方向にほぼ上限がない。また、印刷領域を示すデータはスプール処理を実施している間中RAM等に保存していても良いし、スプール処理を実施する度にスプール中のPSファイル24a,24b等から生成しても良い。PSファイル24a,24bから生成する場合には、当該PSファイル24a,24b内に記述された印刷用紙を示すデータから印刷可能な最大範囲を算出する。
【0038】
言語解釈部32は、上述のようにポストスクリプト言語を解釈することが可能であるとともに印刷開始条件データ23を検索しており、印刷開始条件に合致しているか否かを判別する。印刷開始条件に合致したユーザのPSファイルが存在するときには、当該PSファイルを取得して上述の言語解釈の処理を開始する。言語解釈処理の過程では、図示しないRAMに印刷ページに相当するバッファを確保し、言語解釈によって生成された入力CMYK画像データを上記配置データが示す位置にバッファリングする。
【0039】
カラーエンジン33は、プロファイルを参照して色変換を実施するモジュールであり、上記印刷プロファイル21を参照して画像の各画素の色を示すCMYK値をLab値に変換する。さらに、メディアプロファイル22を参照し、このLab値をプリンタ15で使用するCMYK値に変換する。ハーフトーン処理部34は、当該変換後のCMYK値をプリンタ15における各画素でのインク吐出の有無を示すドットデータに変換するモジュールである。また、印刷データ生成部35は当該ドットデータに基づいて上記プリンタ15における図示しないヘッド機構やノズルからなるインク吐出機構を駆動するための印刷データを作成するモジュールである。作成された印刷データはプリンタI/Fに対して出力され、プリンタ15は当該印刷データに基づいて上記余白を抑えつつ画像が配置された状態で画像を印刷する。
【0040】
(2)印刷制御処理:
次に、上記構成における印刷制御処理をフローチャートに従って説明する。図2は印刷制御プログラム30が実施する処理のフローチャートである。ユーザが各自のPCによってPSファイル11を作成して印刷を実行すると、印刷制御プログラム30は図示しないネットワークを介してステップS100にて当該PSファイル11を取得する。PSファイル11を取得すると、ステップS105にて言語解釈部32がPSファイル11内に記述されたユーザ名を取得し、スプール制御部31は当該取得したユーザ名についての印刷開始条件が印刷開始条件データ23として登録済みであるか否かを判別する。
【0041】
ステップS105にてユーザ名が登録済みであると判別されたときには、余白を抑えた配置で印刷するべくステップS110にて配置データ生成処理を実行する。ステップS110の配置データ生成処理が終了すると、ステップS115にて言語解釈部32が印刷開始条件データ23に登録された総てのユーザについての印刷開始条件を検索し、ステップS120にて印刷開始条件を満たしているPSファイルが存在するか否かを判別する。
【0042】
同ステップS120にて印刷開始条件を満たしているPSファイルが存在すると判別されないときには、印刷制御プログラム30がステップS125にて他の印刷ジョブにかかるPSファイルを取得したか否かを判別し、他の印刷ジョブにかかるPSファイルを取得したと判別されないときにはステップS115以降の処理を繰り返す。すなわち、印刷開始条件を満たすか新たに他の印刷ジョブにかかるPSファイルを取得するまで待機する。ステップS125にて他の印刷ジョブにかかるPSファイルを取得したと判別されたときにはステップS105以降の処理を繰り返す。
【0043】
ステップS120にて、印刷開始条件を満たしているPSファイルが存在すると判別されたときには、ステップS130にて言語解釈部32が印刷開始条件を満たしているPSファイルを取得し、ポストスクリプト言語を解釈する。この結果、上記図示しないRAM内に入力CMYK画像データが展開される。このとき、各印刷画像は上記配置データが示す位置に配置される。また、使用する印刷プロファイルやメディアプロファイルが特定される。
【0044】
ステップS135では、カラーエンジン33が上記特定された印刷プロファイルおよびメディアプロファイルを参照して上記入力CMYK画像データをプリンタ15で使用するCMYK値で色を記述したCMYK画像データに変換する。ステップS140ではハーフトーン処理部34が当該変換後のCMYK画像データを上述のドットデータに変換し、ステップS145では印刷データ生成部35が当該ドットデータに基づいて上述の印刷データを作成しプリンタ15に対して印刷データを出力する。この結果、プリンタ15は当該印刷データに基づいて画像を印刷する。この画像は、上記スプール制御部31の制御により、共通の印刷解像度の画像が共通の印刷領域に配置されたものであるので、余白が抑えられており、印刷用紙を節約することが可能になる。
【0045】
一方、上記ステップS105にてユーザ名が登録済みであると判別されないときには、スプール処理をすることなく言語解釈部32がPSファイル11を取得し、各モジュールがステップS130以降の処理を実施することによって当該PSファイル11に示された画像の印刷を実行する。
【0046】
(2−1)配置データ生成処理:
次に、上記ステップS110における配置データ生成処理を詳細に説明する。図3は配置データ生成処理のフローチャートである。スプール制御部31はステップS200において、上記言語解釈部32によって把握されたPSファイル11の解像度を取得する。ステップS210では上記PSファイルを検索し、上記取得した解像度と同一であり、かつ上記ステップS105で登録済みであると判別したユーザが投入したPSファイルが既にスプール済みであるか否かを判別する。
【0047】
同ステップS210にてPSファイルが既にスプール済みであると判別されないときには、配置データ生成部31aが上記ステップS200で取得した解像度に対応した印刷領域を設定する(ステップS220)。ステップS210にてPSファイルが既にスプール済みであると判別されたときおよびステップS220での処理の後、配置データ生成部31aはステップS230にて上記PSファイルの11印刷画像に対してジョブ番号を付与する。このジョブ番号は印刷画像のスプール順に付与される番号であり、スプールファイル24内における単一のPSファイルでは通し番号となっている。
【0048】
また、ジョブ番号は配置データによって特定される位置とその位置に配置する印刷画像とを対応づける番号であり、共通のPSファイル24a,24b内に記述された複数の印刷画像の位置がいずれの配置データによって指定されるのかをこのジョブ番号によって特定する(図1におけるPSファイル24a,24bには画像記述コマンド1,2,3としてジョブ番号が付与されることを示している)。
【0049】
ステップS235では、上記言語解釈部32がPSファイル11に記述された画像記述コマンドから印刷画像のサイズを把握し、配置データ生成部31aが当該印刷画像のサイズを取得する。ステップS240では、言語解釈部32が印刷領域に余白があるか否かを判別する。ここで、スプール対象の解像度と同一の解像度を指定したスプールファイル24が既に存在する場合には、既存の画像の印刷領域内での配置を把握して余白を検出する。スプール対象の解像度と同一の解像度を指定したスプールファイル24が存在しない場合、すなわち、ステップS220の処理を経ている場合には、印刷領域の総てを余白とする。
【0050】
そして、スプール対象の画像を配置可能な余白があるか否かを判別し、余白が存在すると判別されたときにはステップS250にて配置データを生成する。余白が存在すると判別されないときには、ステップS245にて印刷領域を上記スプール対象の画像を配置可能になるまで副走査方向に拡張して充分な余白を確保する。ステップS250においては、余白に対して印刷画像を配置してその配置データを生成する。このとき、この配置データと上記ステップS230にて付与したジョブ番号とを対応付け、スプール対象の解像度と同一の解像度を指定したスプールファイルが既に存在する場合には配置データと画像記述コマンドとを当該スプールファイルに書き込む。スプール対象の解像度と同一の解像度を指定したスプールファイルが既に存在しない場合には、上記生成した配置データを上記ステップS100にて取得したPSファイル11に書き込んでHDD12にスプールする。
【0051】
(3)印刷制御動作:
以下、上記構成およびフローによって実現される印刷制御動作を実例に則して説明する。図4は、ユーザAとユーザCが同図上部に示す印刷解像度および印刷画像のサイズにて印刷ジョブを投入した場合の動作を示す動作説明図である。同図において上部に示す矢印は時間軸であり、最初にユーザAが720×720dpi,210×297mmの画像についての印刷ジョブを投入し、次にユーザAが360×720dpi,210×297mmの画像についての印刷ジョブを投入し、次にユーザCが720×720dpi,210×297mmの画像についての印刷ジョブを投入し、さらにユーザAが720×720dpi,900×900mmの画像についての印刷ジョブを投入したことを示している。
【0052】
また、この図においてはプリンタ15が大判印刷プリンタであって主走査方向に44インチの印刷範囲を有する印刷用紙に対して印刷を実行可能である。ここでは、図1の印刷開始条件データ23に示すようにユーザAの印刷開始条件はジョブ数3であり、ユーザCに関して印刷開始条件は登録されていないこととする。ユーザAが最初に720×720dpi,210×297mmの画像についての印刷ジョブを投入すると、そのPSファイル11が印刷制御プログラム30に取得され、ステップS105にてユーザAの印刷開始条件が印刷開始条件データ23として登録済みであると判別する。
【0053】
そして、ステップS200では印刷解像度の720×720dpiを取得し、ステップS210ではこの印刷解像度のPSファイルがスプールされていないことを判別する。従って、ステップS220にてユーザAかつ印刷解像度720×720dpiの印刷領域を確保する。図4の中段においては、ユーザAの印刷領域を示しており、印刷領域は主走査方向に44インチである。この段階において副走査方向は297mm+マージンという大きさにするのが好ましいが、これより小さくても後の印刷領域拡張処理(ステップS245)によって拡張される。
【0054】
ステップS230ではこの印刷ジョブにジョブ番号1を付与し、ステップS235で印刷画像のサイズ210×297mmを取得し、ステップS240で余白が存在することを確認したら、ステップS250にて印刷画像を配置する。この例では、印刷領域に対して印刷画像が未配置なので左端に詰めてジョブ番号1の印刷画像を配置する。このとき配置データとしては印刷画像の左上端の座標(X1,Y1)を採用し、PSファイル内にジョブ番号1の配置データとして書き込むとともにこの印刷画像の画像記述コマンドを画像記述コマンド1(ジョブ番号1の画像を示す)とし、PSファイル24aとしてHDD20にスプールする。
【0055】
このスプール後にはステップS115,S120にて印刷開始条件に合致しているか否かを判別するが、付与済みのジョブ番号は1のみであり、ユーザAの印刷開始条件はジョブ数3であるので、ステップS125以降の処理で印刷ジョブの投入待ちとなる。続いてユーザAが360×720dpi,210×297mmの画像についての印刷ジョブを投入すると、そのPSファイル11が印刷制御プログラム30に取得され、ステップS105にてユーザAの印刷開始条件が登録済みであるとされる。
【0056】
ステップS200では印刷解像度の360×720dpiを取得するが、この印刷解像度は上記ステップS250でスプールしたPSファイルの印刷解像度と異なるので、再びステップS220の処理を行い、ユーザAかつ印刷解像度360×720dpiの印刷領域を確保する。そして、ステップS230にてこの印刷ジョブにジョブ番号2を付与し、ステップS250にて印刷画像を配置する。
ここでも、印刷領域に対して印刷画像が未配置なので左端に詰めてジョブ番号2の印刷画像を配置し、印刷画像の左上端の座標(X2,Y2)を配置データとしつつそのPSファイルをHDD20にスプールする。
【0057】
このスプール後のステップS115,S120においてもジョブ番号が3に達していないとしてステップS125以降の処理で印刷ジョブの投入待ちとなる。
続いてユーザCが720×720dpi,210×297mmの画像についての印刷ジョブを投入すると、そのPSファイル11が印刷制御プログラム30に取得され、ステップS105にてユーザCの印刷開始条件が登録済みではないと判別される。従って、ステップS105〜S125の処理はスキップし、ステップS130〜S145の処理によって当該PSファイル11の印刷を実行する。
【0058】
ユーザCの投入印刷ジョブについての印刷を行った後には、再びステップS125以降の処理で印刷ジョブの投入待ちとなる。続いてユーザAが720×720dpi,900×900mmの画像についての印刷ジョブを投入すると、そのPSファイル11が印刷制御プログラム30に取得され、ステップS105にてユーザAの印刷開始条件が登録済みであるとされる。
【0059】
ステップS200では印刷解像度の720×720dpiを取得するが、この印刷解像度の印刷ジョブはPSファイル24aとして既にスプール済みであるので、ステップS230にてこの印刷ジョブにジョブ番号3を付与して配置処理を行う。但し、図4に示す720×720dpiの印刷領域では副走査方向に余白が足りないので、ステップS240の判別を経てステップS245にて印刷領域を副走査方向に拡張する。図4の右側中段に示す印刷領域は拡張後の領域であり、破線が拡張前の領域を示している。
【0060】
印刷領域を拡張した後には900×900mmの印刷画像をジョブ番号1の画像に対して主走査方向に並べて配置することができるので、ジョブ番号1の画像の隣に並べて900×900mmの印刷画像を配置する。そして、印刷画像の左上端の座標(X3,Y3)を配置データとしつつそのPSファイルをHDD20にスプールする。このスプール後にステップS115,S120にて印刷開始条件を検索したときには、ジョブ番号3が付与済みであることによって印刷開始条件に合致したと判別し、ステップS130〜S145の処理によって上記PSファイル24aおよび印刷解像度360×720dpiについてのPSファイルを印刷する。
【0061】
(4)他の実施形態:
上述の実施形態は一例であり、共通の解像度の印刷画像について共通の印刷領域に配置してできるだけ余白を少なくすることができる限りにおいて、他にも種々の構成を採用することが可能である。上述の実施形態においては、ネットワークを介して複数のPCを印刷制御装置に接続し、各PCから投入される印刷ジョブを実行する際に余白を低減する配置を行っていたが、むろんかかる構成が必須という訳ではない。
【0062】
例えば、コンピュータに対してプリンタを接続した状態で、当該コンピュータ内で余白を低減する配置を行う印刷制御プログラムを実行するよう構成しても良い。すなわち、当該コンピュータに搭載するプリンタドライバの付属機能としてスプール制御部を構成し、印刷ジョブが投入されるたびに解像度を確認するとともに共通の解像度であれば共通の印刷領域に対して画像を配置しつつスプールする。この場合、ユーザは一人になるため、印刷開始条件とユーザ名とを対応づける必要はないし、ユーザ別に印刷領域を設ける必要もない。
【0063】
また、本発明にかかる印刷制御装置をプリンタ自体に搭載することも可能である。すなわち、プリンタにおいてスプールを実施可能なHDDやEEPROM等の記憶媒体とCPU,RAM等からなるプログラム実行環境を構成し、プリンタ内で印刷制御プログラムを実行しても良い。むろん、デジタルカメラ等の画像機器をUSBケーブル,IEEE1394ケーブル,無線等によって直接的にプリンタに接続し、いわゆるダイレクトプリントを実現する場合に本発明にかかる印刷制御を実施しても良い。
【0064】
また、上記実施形態においては印刷ジョブデータがPSファイルであったが、むろん、他のページ記述言語で記述されていても良いし、画像データに対して種々のデータを付加した各種ファイルフォーマット(PRINT Image Matching(セイコーエプソン株式会社の登録商標),EXIF2.2(社団法人電子情報技術産業境界の登録商標)等)を利用しても良い。この場合、解像度や画像の大きさ等の必要な情報をファイルのヘッダに記述しておく。
【図面の簡単な説明】
【図1】印刷制御処理の構成を説明するブロック図である。
【図2】印刷制御プログラムが実施する処理のフローチャートである。
【図3】配置データ生成処理のフローチャートである。
【図4】印刷ジョブを投入した場合の動作を示す動作説明図である。
【符号の説明】
10…印刷制御装置、11…PSファイル、15…プリンタ、20…HDD、23…印刷開始条件データ、24…スプールファイル、24a,24b…PSファイル、30…印刷制御プログラム、31…スプール制御部、31a…配置データ生成部、32…言語解釈部、33…カラーエンジン、34…ハーフトーン処理部、35…印刷データ生成部
Claims (8)
- 印刷ジョブを実行させるための印刷ジョブデータを取得する印刷ジョブデータ取得手段と、
印刷ジョブの実行を開始する条件を示す印刷開始条件データを所定の記憶媒体に記憶する印刷開始条件データ記憶手段と、
印刷解像度毎に印刷領域を設定し、上記印刷ジョブデータにて指定された印刷解像度が同一であるものについて印刷対象の画像を印刷解像度が同一の印刷領域の余白に配置するとともにその配置を示す配置データを生成しつつ上記印刷ジョブデータをスプールするスプール手段と、
上記印刷開始条件データが示す条件に達したときに上記スプール手段にてスプールされた印刷ジョブデータが示す画像を上記配置データに従って印刷する印刷実行手段とを備えることを特徴とする印刷制御装置。 - 上記スプール手段は、上記印刷ジョブデータにて指定された印刷解像度が同一であるものについては上記配置データによって印刷対象の各画像の配置を指定した単一のファイルとしてスプールすることを特徴とする上記請求項1に記載の印刷制御装置。
- 上記スプール手段は、後から投入された印刷ジョブデータにおける印刷対象の画像が上記印刷領域の余白中で主走査方向に配置可能である場合に当該主走査方向に並べて配置することを特徴とする上記請求項1または請求項2のいずれかに記載の印刷制御装置。
- 上記スプール手段は、上記設定した印刷領域に充分な余白が存在しないときに副走査方向に印刷領域を拡張することを特徴とする上記請求項1〜請求項3に記載の印刷制御装置。
- 上記印刷開始条件データは、上記印刷ジョブデータの投入主体毎に予め決められることを特徴とする上記請求項1〜請求項4のいずれかに記載の印刷制御装置。
- 上記印刷開始条件は、印刷ジョブの蓄積数とスプールした印刷ジョブの画像を印刷したときの大きさとスプール開始からの経過時間と所定の印刷領域に対して画像が占める面積の割合とのいずれかまたはこれらの組み合わせによって決められていることを特徴とする上記請求項1〜請求項5のいずれかに記載の印刷制御装置。
- 投入された印刷ジョブの画像の配置を制御して印刷を実行する印刷制御方法であって、
印刷ジョブを実行させるための印刷ジョブデータを取得する印刷ジョブデータ取得工程と、
印刷解像度毎に印刷領域を設定し、上記印刷ジョブデータにて指定された印刷解像度が同一であるものについて印刷対象の画像を印刷解像度が同一の印刷領域の余白に配置するとともにその配置を示す配置データを生成しつつ上記印刷ジョブデータをスプールするスプール工程と、
印刷ジョブの実行を開始する条件に達したときに上記スプールされた印刷ジョブデータが示す画像を上記配置データに従って印刷する印刷実行工程とを備えることを特徴とする印刷制御方法。 - 投入された印刷ジョブの画像の配置を制御して印刷を実行する印刷制御プログラムであって、
印刷ジョブを実行させるための印刷ジョブデータを取得する印刷ジョブデータ取得機能と、
印刷ジョブの実行を開始する条件を示す印刷開始条件データを所定の記憶媒体に記憶する印刷開始条件データ記憶機能と、
印刷解像度毎に印刷領域を設定し、上記印刷ジョブデータにて指定された印刷解像度が同一であるものについて印刷対象の画像を印刷解像度が同一の印刷領域の余白に配置するとともにその配置を示す配置データを生成しつつ上記印刷ジョブデータをスプールするスプール機能と、
上記印刷開始条件データが示す条件に達したときに上記スプール機能にてスプールされた印刷ジョブデータが示す画像を上記配置データに従って印刷する印刷実行機能とをコンピュータに実現させることを特徴とする印刷制御プログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003052504A JP2004261994A (ja) | 2003-02-28 | 2003-02-28 | 印刷制御装置、印刷制御方法および印刷制御プログラム |
US10/787,896 US20040223018A1 (en) | 2003-02-28 | 2004-02-26 | Printing control apparatus, printing control method and printing control program product |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003052504A JP2004261994A (ja) | 2003-02-28 | 2003-02-28 | 印刷制御装置、印刷制御方法および印刷制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004261994A true JP2004261994A (ja) | 2004-09-24 |
Family
ID=33117362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003052504A Pending JP2004261994A (ja) | 2003-02-28 | 2003-02-28 | 印刷制御装置、印刷制御方法および印刷制御プログラム |
Country Status (2)
Country | Link |
---|---|
US (1) | US20040223018A1 (ja) |
JP (1) | JP2004261994A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014108563A (ja) * | 2012-11-30 | 2014-06-12 | Mimaki Engineering Co Ltd | インクジェット印刷システムおよびインクジェット印刷制御プログラム |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3513147B2 (ja) * | 2002-05-29 | 2004-03-31 | 株式会社ハギワラシスコム | Usbストレージデバイス及びその制御装置 |
JP4135724B2 (ja) * | 2005-04-08 | 2008-08-20 | コニカミノルタビジネステクノロジーズ株式会社 | データ出力装置及びデータ出力制御プログラム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69938486T2 (de) * | 1998-11-06 | 2009-04-09 | Canon K.K. | Bildverarbeitungsverfahren, -system und -gerät, und Speichermedium |
JP3937666B2 (ja) * | 1999-11-02 | 2007-06-27 | キヤノン株式会社 | 印刷制御方法および装置 |
US20020097416A1 (en) * | 2001-01-19 | 2002-07-25 | Chang William Ho | Output controller processor for universal data output |
JP2002321432A (ja) * | 2001-04-26 | 2002-11-05 | Canon Inc | 情報処理装置、印刷制御装置、およびその制御方法、および記憶媒体、およびその制御プログラム |
-
2003
- 2003-02-28 JP JP2003052504A patent/JP2004261994A/ja active Pending
-
2004
- 2004-02-26 US US10/787,896 patent/US20040223018A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014108563A (ja) * | 2012-11-30 | 2014-06-12 | Mimaki Engineering Co Ltd | インクジェット印刷システムおよびインクジェット印刷制御プログラム |
Also Published As
Publication number | Publication date |
---|---|
US20040223018A1 (en) | 2004-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7268910B2 (en) | Just-in-time raster image assembly | |
US8964241B2 (en) | Print control device and non-transitory computer readable medium for storing mark information in accordance with a type of printer | |
US20060017955A1 (en) | Selective graphic instance rendering | |
US20040061897A1 (en) | Printing control method and printing control apparatus | |
US20090268251A1 (en) | Image processing apparatus, image processing method and computer-readable medium | |
US20110007355A1 (en) | Apparatus, method, system and storage medium for setting print status | |
US20050036170A1 (en) | Image processing apparatus and image forming apparatus | |
US8194280B2 (en) | Direct printing of a desired or multiple appearances of object in a document file | |
JP2003348366A (ja) | 画像処理方法及び画像処理装置 | |
US8384920B2 (en) | Image processing apparatus and method, and program for implementing the method | |
JP6917285B2 (ja) | 画像形成装置 | |
JP2006155308A (ja) | 画像形成装置 | |
JP2004261994A (ja) | 印刷制御装置、印刷制御方法および印刷制御プログラム | |
US8908227B2 (en) | Image forming apparatus, image forming system, image data processing method, program, and storage medium | |
JP5896610B2 (ja) | 装置、方法およびプログラム | |
JP4595570B2 (ja) | 印刷制御データ生成装置および印刷制御データ生成方法 | |
JP2015099535A (ja) | プリンタドライバ装置、プリンタ及びプリンタシステム | |
JP4399701B2 (ja) | 画像形成装置及び画像形成方法 | |
JP4132634B2 (ja) | 文書印刷処理システム及びそのプログラムを記録した記録媒体 | |
JP4479289B2 (ja) | 印刷制御装置及び方法、データ展開装置 | |
JP2010039976A (ja) | 画像処理装置,印刷用データ生成方法及びコンピュータプログラム | |
US20240177266A1 (en) | Image processing apparatus, image forming apparatus, image processing method, and storage medium | |
EP4311216A1 (en) | Image forming apparatus, control method for controlling image forming apparatus, and storage medium | |
JP7006372B2 (ja) | 画像処理システム、画像処理装置、画像処理方法、及びプログラム | |
JP4348945B2 (ja) | 印刷装置 |