JP3137002B2 - 印刷データ生成方法及び印刷データ生成装置及び印刷データ生成装置を備えた印刷システム - Google Patents
印刷データ生成方法及び印刷データ生成装置及び印刷データ生成装置を備えた印刷システムInfo
- Publication number
- JP3137002B2 JP3137002B2 JP08232339A JP23233996A JP3137002B2 JP 3137002 B2 JP3137002 B2 JP 3137002B2 JP 08232339 A JP08232339 A JP 08232339A JP 23233996 A JP23233996 A JP 23233996A JP 3137002 B2 JP3137002 B2 JP 3137002B2
- Authority
- JP
- Japan
- Prior art keywords
- printing
- area
- data
- printed
- 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.)
- Expired - Lifetime
Links
Landscapes
- Character Spaces And Line Spaces In Printers (AREA)
Description
及び印刷データ生成装置及び印刷システムに係り、特
に、シリアルプリンタにおいてデータを高速・高精度に
印刷するための印刷データを生成する印刷データ生成方
法、印刷データ生成装置及び印刷システムに関する。
インパクトインクジェット式のプリンタでは、文字、数
字、罫線素片等のモノクロのテキストデータを印刷する
場合、単方向印刷と双方向印刷とのいずれかを選択でき
るようになっている。ここで、単方向印刷とは、固定さ
れた一方向で印刷を行うものであり、高画質印刷モード
とも呼ばれる。また、双方向印刷とは、左右両方向から
印刷を行うものであり、高速印刷モードとも呼ばれる。
から印刷を行うので、印刷パス、即ちプリントヘッドの
移動量が増大して印刷時間が長くなる。しかし、単方向
印刷では、プリントヘッドの機械的精度等による印刷位
置ずれの影響が極めて少ないため、高品質の印字を行う
ことができる。これに対し、双方向印刷では、左右いず
れの方向からも印刷を行うので、単方向印刷よりも印刷
パスが半減して印刷時間が短くなる。しかし、双方向印
刷では、印刷位置ずれの影響を受けるため、例えば縦倍
角文字や縦罫線のように印刷ドットが縦(副走査方向)
につながるものを印刷する場合には、印刷ドットの不連
続性が視覚的に顕在化して印刷品質が低下する。
性質を考慮して、1つの印刷ジョブ毎に、つまり、文書
単位で単方向印刷を行うか双方向印刷を行うかの指定を
かけることができるようになっている。従って、単方向
印刷を指定した場合は、全角文字等で構成されている部
分が文書中に存在していても全て単方向で印刷され、双
方向印刷を指定した場合には、縦倍角文字や縦罫線等が
部分的に存在していても全て双方向で印刷される。しか
し、実際の印刷すべき文書中には、全角文字等の双方向
印刷が可能な部分と縦倍角文字等の単方向印刷すべき部
分とが混在しているのが普通である。従って、印刷ジョ
ブ単位で単方向印刷又は双方向印刷の指定をかけたので
は、不要な印刷パスの増大によって印刷時間が長くなっ
たり、あるいは部分的に印刷品質が劣化したりする不具
合があった。
報、特開平2−233275号公報、特開平8−113
53号公報等には、展開されたイメージデータを解析
し、単方向印刷を行うか双方向印刷を行うかを決定する
技術が開示されている。
の従来技術(第1の公報記載技術という)では、展開さ
れたパターンの縦方向ドット数が所定幅よりも大きくな
り、文字パターンが複数のゾーンに分けてイメージ展開
されたときには単方向印刷を行い、文字パターンが単一
のゾーンでイメージ展開されたときには双方向印刷を行
うようになっている。また、特開平2−233275号
公報に記載の技術(第2の公報記載技術という)では、
垂直方向のドット行ブレークを検出し、このドット行ブ
レークの検出位置に応じて双方向印刷を行うか単方向印
刷を行うかを判断している。さらに、特開平8−113
53号公報に記載の技術(第3の公報記載技術という)
では、属性情報に基づいて文字列の高さ方向寸法を解析
し、イメージデータの連続性を考慮して印字ヘッドの送
り方向の反転、非反転を判断している。
術では、展開された文字パターンの大きさに応じて単方
向印刷と双方向印刷とを切り換えることができるため、
印刷ジョブ単位で単方向印刷又は双方向印刷のいずれか
を選択するものよりも、印刷時間を短くしつつ印字品質
を高めることが可能である。
る行の文字パターンがゾーン分けされているか否かに基
づいて単方向印刷又は双方向印刷を選択するに過ぎず、
当該文字パターンの上下に位置する他の文字パターンの
大きさ等との関係を何ら考慮していない。従って、不要
な印刷パスを完全に取り除くことができず、最短の印刷
時間を達成していないという問題がある。即ち、例え
ば、ある行の文字パターンが全角文字のみで構成されて
おり、プリントヘッドの一回の主走査で印刷可能であっ
ても、隣接する他の行との関係を考慮しなければ、印刷
パスを短縮することができない場合がある。
れたドット行ブレークに後続する次のイメージデータの
大きさを何ら考慮していないため、ドット行ブレークに
続く文字列の高さとヘッド寸法との関係によっては、印
刷パス数が増大する場合が生じる。
に基づいて文字の頂部と最下部を検出し、次行の文字の
頂部の有無、即ち、空白領域に続く次の文字データ、イ
メージデータまで考慮している点で優れている。しか
し、この第3の公報記載の技術では、属性情報の解析に
よって得られた印刷方向によって、バッファに記憶され
た全てのデータの印刷が支配される。つまり、バッファ
に記憶された印刷すべき全てのデータに対して、属性情
報の解析に基づいた一定の印刷ロジックが適用される。
しかし、実際には、打つべきデータを持たない空白領域
を検出する毎に、その空白領域で印刷方向を反転すべき
か、あるいは、空白領域の前後の印刷領域を合わせて印
刷すべきか判断する必要が生じる場合があり、かかる場
合に第3の公報記載技術は対応できないという問題点が
ある。
なされたものであり、その目的は、双方向印刷が可能な
パターンと単方向印刷すべきパターンとが混在している
場合に、印刷時間を短縮しつつ印刷品質の低下を防止で
きるようにした印刷データ生成方法、印刷データ生成装
置及び印刷システムを提供することにある。また、本発
明の他の目的は、高い印刷品質を確保しつつ印刷時間の
低減を実現できると共に、ドットパターンデータを記憶
するために使用するメモリ量を低減できるようにした印
刷データ生成方法、印刷データ生成装置及び印刷システ
ムを提供することにある。
生成方法が採用する構成の特徴は、印刷内容をドットパ
ターンデータに展開するドットパターンデータ展開ステ
ップと、該ドットパターンデータに基づいて、印刷すべ
きドットを含むラインが副走査方向に連続する複数の印
刷領域と該各印刷領域間の空白領域とを検出する領域検
出ステップと、前記各印刷領域のライン数及び空白領域
のライン数とプリントヘッドのドット形成要素数との関
係に基づいて、一回の主走査で印刷すべき印刷ブロック
を決定し、当該印刷ブロックを単方向で印刷するか双方
向で印刷するかを判別する印刷方向判別ステップと、前
記印刷方向を示す印刷方向コマンドと前記プリントヘッ
ドの一回の主走査で印刷されるドットパターンデータと
印字起動コマンドとを含む印刷データを作成する印刷デ
ータ作成ステップとを、少なくともこの順序で実行する
点にある。
字等のみで構成されている部分のように双方向印刷が可
能な部分と、縦倍角文字や縦罫線等を含んで構成されて
いる部分のように単方向印刷をしなければ印刷品質が劣
化する部分とが混在している場合が多い。また、印刷す
べき頁は、例えば複数の行のように、複数の印刷領域を
含む場合が多い。ここで、ある印刷領域がプリントヘッ
ドの一回の主走査で印刷可能なライン数を有する場合、
当該印刷領域は双方向印刷が可能である。しかし、この
印刷領域に続く空白領域のライン数及び空白領域に続く
他の印刷領域のライン数をも考慮して印刷方向を決定し
なければ、全体としての印刷パス数を低減することはで
きない。何故なら、最初に印刷される第1の印刷領域の
ライン数、空白領域のライン数、次に印刷される第2の
印刷領域のライン数及びプリントヘッドのドット形成要
素数の関係によっては、双方向印刷が可能な第1の印刷
領域も単方向印刷した方が印刷パスが短くなる場合があ
るからである。従って、本発明では、公報記載の従来技
術のように、ある印刷領域のライン数とプリントヘッド
のドット形成要素数との関係のみで印刷方向を決定する
のではなく、後続する空白領域及び第2の印刷領域のラ
イン数をも考慮して、一回の主走査で印刷すべき印刷ブ
ロックと該印刷ブロックの印刷方向を決定することによ
り、印刷パス数を低減して印刷時間の短縮を図ってい
る。
第1の印刷領域のライン数をa1、第2の印刷領域のラ
イン数をa2、空白領域のライン数をb1、プリントヘ
ッドのドット形成要素数をdNとしたときに、dN<a
1が成立するときは単方向印刷を選択し、a1≦dN≦
a1+b1が成立するときは双方向印刷を選択し、a1
+b1<dN<a1+b1+a2が成立するときは、さ
らに、a2/dNを切り上げてなる整数値mBと(a1
+b1+a2)/dNを切り上げてなる整数値mUとを
比較して、mB<mUが成立するときには前記第1の印
刷領域のみを双方向印刷した後に前記第2の印刷領域を
単方向印刷するように印刷方向を選択し、mB<mUが
成立しないときには単方向印刷を選択し、a1+b1+
a2≦dNが成立するときはa1+b1+a2を新たな
a1と置き換えて再度の判別を実行することである。
ヘッドの一回の主走査で第1の印刷領域を印刷できず、
双方向印刷を行うと印刷ドットの不連続性によって印刷
品質が低下する場合である。従って、この場合には、単
方向印刷を行う。a1≦dN≦a1+b1が成立する場
合とは、プリントヘッドの一回の主走査で第1の印刷領
域を印刷することができ、プリントヘッドが第2の印刷
領域にかからない場合である。従って、この場合には、
双方向印刷を行う。a1+b1<dN<a1+b1+a
2が成立する場合とは、プリントヘッドが第2の印刷領
域の途中にまで及んでいる場合である。この場合は、プ
リントヘッドが及んでいる範囲の全てを印刷してからプ
リントヘッド分だけ紙送りし、次に第2の印刷領域の残
された部分を印刷することもできるし、あるいは最初に
第1の印刷領域のみを印刷してから空白領域のライン数
だけ紙送りし、次に第2の印刷領域を先頭から印刷する
こともできる。いずれを採用するかは、第1,第2の印
刷領域のライン数及び空白領域のライン数とプリントヘ
ッドのドット形成要素数との関係によって定まり、これ
によって、a1〜a2までを印刷するのに要する印刷パ
ス数が変化する。そこで、双方向印刷の優位性を示す指
標として、a2/dNを切り上げてなる整数値mBを求
め、また、単方向印刷の優位性を示す指標として、(a
1+b1+a2)/dNを切り上げてなる整数値mUを
求める。つまり、整数値mBは、第1の印刷領域を双方
向印刷し、第2の印刷領域を単方向印刷した場合の合計
印刷パス数に関連したパラメータであり、整数値mU
は、第1,第2の印刷領域を全て単方向印刷した場合の
合計印刷パス数に関連したパラメータである。従って、
合計印刷パス数が少なくなるように、mB<mUが成立
するときには双方向印刷を選択し、mB<mUが成立し
ないときには単方向印刷を選択する。さらに、a1+b
1+a2≦dNが成立する場合とは、プリントヘッドが
第2の印刷領域の全てにまで及んでいる場合である。そ
こで、この場合は、a1+b1+a2を新たなa1と置
き換えて再度の判別を実行する。即ち、a1+b1+a
2→a1、b2→b1、a3→a2と置き換えて上述し
た判別処理を行う。
る場合は、第2の印刷領域の全体を検出しており、ライ
ン数a2を正確に検出することが可能である。しかし、
ドットパターンデータを展開するためのメモリ量を十分
に確保できない場合やメモリ資源を節約する場合は、第
2の印刷領域のライン数a2を正確に検出できない可能
性がある。そこで、第2の印刷領域の全体を検出したか
否かを判定し、第2の印刷領域を全て検出していない場
合は、単方向印刷を選択することにより印刷品質の低下
を防止する。
刷パスと同一の方向に印刷を行う拡張単方向印刷を採用
し、プリントヘッドの移動量が最小値となる方向に印刷
を行う拡張双方向印刷を採用するのが好ましい。
施の形態について詳細に説明する。
印刷データ生成方法及び印刷データ生成装置が適用され
る印刷システムの要部を示す機能ブロック図である。こ
の印刷システムは、ホストコンピュータ1で作成される
後述の印刷データ20をプリンタ2に送出することによ
り、所望の印刷結果を得るものである。
ーションソフトウエア(以下、「アプリケーション」と
いう)3は、プリンタドライバ4が備えた各種関数・手
続きを呼び出してソースコードを生成する。プリンタド
ライバ4のラスタライザ5は、フォントデータ6等を参
照することにより、ソースコードを図示しないイメージ
メモリ上でドットパターンデータに展開する。ここで、
前記ラスタライザ5は、アプリケーション3が作成した
印刷内容を1頁毎にドットパターンデータに展開する。
次に、解析部7は、後述する印刷アルゴリズムに従って
ドットパターンデータを解析する。印刷データ作成部8
では、解析部7の解析結果に従って印刷データ20を作
成する。作成された印刷データ20は、インターフェー
ス(以下、「I/F」という)9を介してプリンタ2に
送出される。ここで、ホストコンピュータ1は、種々の
データを随時記憶したり読み出したりするためのメモリ
資源(例えば、データメモリ及びイメージメモリを含
む)と各データの演算等を実行するためのCPU資源等
のコンピュータ資源(いずれも図示せず)を備えてお
り、これらのコンピュータ資源は、ホストコンピュータ
1に実体化されたプリンタドライバ4によって利用され
る。
トコンピュータ1が読み取り可能な記憶媒体MMに記憶
されたプログラムを該ホストコンピュータ1が読み込む
ことにより、ホストコンピュータ1内に具現化されるも
のである。そして、プリンタドライバ4は、ホストコン
ピュータ1のコンピュータ資源を利用して印刷に必要な
処理を実行する。なお、記憶媒体MMとしては、フロッ
ピーディスク、ハードディスク、CD−ROM、ICカ
ード、光磁気ディスク、磁気テープ等の外部記憶媒体に
限らず、メモリ等の内部記憶媒体も含む。また、例え
ば、紙やプラスチックシートの如き印刷記憶媒体に、ホ
ストコンピュータ1が読み取り可能な形式でプリンタド
ライバ4を実現するプログラムを印刷、刻印、穿孔等し
て記憶することも可能である。さらに、可搬性のある独
立した物品としての記憶媒体に限らず、例えばネットワ
ーク(通信媒体)を介して、サーバからプリンタドライ
バ4を具現化するプログラムをホストコンピュータ1に
ダウンロードすることも可能である。
「プリンタ制御手段」としてのプリンタコントローラ1
0とプリントエンジン11とから構成されている。プリ
ンタコントローラ10では、I/F12を介してホスト
コンピュータ1からの印刷データ20を受信し、受信し
た印刷データ20を入力バッファ13に記憶する。解釈
部14は、入力バッファ13から読み出した印刷データ
20を解釈するものであり、印刷データ20中のドット
パターンデータを出力バッファ15に送り、また、解釈
部14は、印刷データ20中の印刷方向コマンドをもと
に印刷方向フラグを印刷方向記憶部16で記憶させる。
さらに、解釈部14は、印刷データ20中の垂直印刷位
置データ(副走査方向の印刷位置)、水平印刷位置デー
タ(主走査方向の印刷位置)、印字起動コマンドをプリ
ントエンジン11の各要素に出力する。
ン11は、プリントヘッド17と、キャリッジ機構(図
中「キャリッジ」と示す)18と、紙送り機構(図中
「紙送り」と示す)19とを備えている。プリントヘッ
ド17は、副走査方向に多数のドット形成要素が形成さ
れており、各ドット形成要素は、例えばノズル穴、イン
ク流路及びインク吐出機構等から構成されている。そし
て、プリントヘッド17は、出力バッファ15が記憶し
たドットパターンデータに応じて所定タイミングで所定
のドット形成要素からインクを吐出することにより、印
刷記録媒体としての紙面に印刷を行うようになってい
る。キャリッジ機構18は、プリントヘッド17を搭載
したキャリッジと、このキャリッジをタイミングベルト
等を介して走行させるキャリッジモータ等からなり、プ
リントヘッド17を主走査させるものである。紙送り機
構19は、紙送りローラと、紙送りモータ等からなり、
紙面を順次送り出して副走査を行うものである。
ルゴリズムについて詳述する。図2には、拡大された文
字列「ABCDE」が2行と標準の文字列「FGHI
J」とが示されている。紙面の印刷内容は、1ドット分
のラインが副走査方向に多数配列された集合体として捉
えることができる。ここで、本明細書では、打つべきド
ット(データ)を含むラインが副走査方向に連続する領
域を「印刷領域」と呼び、打つべきドットを含まないラ
インが副走査方向に連続する領域を「空白領域」と呼
ぶ。但し、これら印刷領域及び空白領域には、それぞれ
ラインが単一の場合を含む。
含むライン数a1の第1の印刷領域A1と、ライン数b
1の第1の空白領域B1と、次の拡大文字列「ABCD
E」を含むライン数a2の第2の印刷領域A2と、ライ
ン数b2の第2の空白領域B2と、標準文字列「FGH
IJ」を含むライン数a3の第3の印刷領域A3とが示
されている。例えば、拡大文字列「ABCDE」が48
ドットの高さを有する場合、第1の印刷領域A1及び第
2の印刷領域A2のライン数a1,a2は、それぞれ4
8ラインとなる。プリントヘッド17のドット形成要素
数をdNとしたとき、このドット形成要素数dNと前記
各領域A1,B1,A2のライン数a1,b1,a2等
との関係は、以下のように分類される。なお、図3以降
の説明では、印刷領域を斜線部で示す。
が第1の印刷領域A1のライン数a1よりも小さい場合
(dN<a1)が示されている。この場合は、プリント
ヘッド17の一回の主走査で第1の印刷領域A1を全て
印刷することができない。また、ドットが副走査方向に
連続しているので、双方向で印刷すると印刷位置ずれに
よって印刷品質が低下する可能性がある。従って、dN
<a1の場合は、「拡張単方向印刷」を行う。
向印刷を拡張した概念であり、印刷パスの方向を直前の
印刷パスと同方向に制限するものである。即ち、通常の
単方向印刷では、例えば、左→右のように予め定まった
一方向から印刷するが、拡張単方向印刷では、左→右、
右→左のいずれの方向からも印刷可能である。つまり、
拡張単方向印刷では、あるパスを左→右で印刷した場合
は次のパスも左→右で印刷し、あるパスを右→左で印刷
した場合は次のパスも右→左で印刷する。
如く、プリントヘッド17の主走査と紙送りとが制御さ
れる。まず、主走査Q1を行ってプリントヘッド17を
図中左端から反対側に移動させる。これにより、プリン
トヘッド17のドット形成要素dN分の印刷領域が印刷
される。次に、dN分だけ紙送りF1を行い、プリント
ヘッド17を元の位置に空走させて戻す(R1)。そし
て、再度、主走査Q1と同方向の主走査Q2を行うこと
により、一回目の主走査Q1で残された印刷領域を印刷
する。ここで、各領域A1,B1,A2の検出は、主走
査毎にそれぞれ行われる。従って、一回目の主走査Q1
によって既に印刷された領域のライン数(dN)だけ、
第1の印刷領域A1のライン数a1は減少する(a1=
a1−dN)。
が、第1の印刷領域A1の先頭から第2の印刷領域A2
の最後までのライン数(a1+b1+a2)以上である
場合が示されている。この場合は、印刷方向を決定せ
ず、各領域A1,B1,A2を新たな第1の印刷領域A
1に置き換えて再度の判別を行う。即ち、a1=a1+
b1+a2、b1=b2、a2=a3と置き直される。
従って、例えば、幅1ドットの横線が1ラインおきに引
かれている場合、プリントヘッド17に収まる範囲の1
ドットの横線が全てひとまとめにされて、第1の印刷領
域A1として処理される。
の全てを覆うが、第2の印刷領域A2には及ばない場合
が示されている。この場合は、第1の印刷領域A1を
「拡張双方向印刷」する。
向印刷を拡張した概念であり、単に主走査毎に印刷方向
を逆向きに設定するのではなく、プリントヘッド17の
移動量が最小となるように印刷方向を決定するものであ
る。このようなプリントヘッドの移動量を最小化する方
法は、いわゆる「ロジカルシーク」と呼ばれており、例
えば特公平4−53187号公報、特公平4−6378
4号公報、特公昭63−56866号公報等に記載され
ている。
って第1の印刷領域A1を拡張双方向印刷し、次に、第
1の印刷領域A1のライン数a1+第1の空白領域B1
のライン数b1だけ、紙送りF1を実行する。そして、
主走査Q1実行前の第2の印刷領域A2は、新たに第1
の印刷領域A1として検出され、主走査Q1とは逆方向
の主走査Q2によって印刷される。なお、図5中の上段
において、例えば、第2の印刷領域A2の左端が、第1
の印刷領域A1の右端以上に右側に位置する場合には、
プリントヘッド17の移動量を最小化すべく、2回目の
主走査Q2の方向は一回目の主走査Q1の方向と同じに
なる。
2の場合 図6〜図9は、プリントヘッド17が第2の印刷領域A
2の途中にまで及んでいる場合をそれぞれ示している。
この場合は、(I)第1の印刷領域A1のみを拡張双方
向印刷し、次に第2の印刷領域A2を拡張単方向印刷す
るか、あるいは、(II)第1の印刷領域A1を含めた
全体を拡張単方向印刷することが考えられる。そこで、
図6〜図9の各タイプ毎に、前記(I),(II)によ
るそれぞれの印刷パスを検討する。
し、第2の印刷領域A2を拡張単方向印刷した場合が示
されている。この場合は、まず、主走査Q1によって第
1の印刷領域A1のみを拡張双方向印刷し、第1の印刷
領域A1のライン数a1+第1の空白領域B1のライン
数b1だけ紙送りF1を行ってプリントヘッド17を第
2の印刷領域A2の先頭に合わせる。次に、主走査Q2
を行って第2の印刷領域A2の上側をドット形成要素数
dN分だけ拡張単方向印刷し、ドット形成要素数dN分
の紙送りF2を行う。そして、無印刷走査R1によって
プリントヘッド17を元の位置に戻し、主走査Q3によ
って第2の印刷領域A2の下側を印刷する。従って、こ
の場合の印刷に要するパス数は、Q1,Q2,R1,Q
3の「4」となる。
2の印刷領域A2までを全て拡張単方向印刷した場合が
示されている。この場合は、最初に、主走査Q1によっ
てドット形成要素数dN分だけ拡張単方向印刷する。こ
の主走査Q1によって、第1の印刷領域A1の全てと第
2の印刷領域A2の上側の一部とが印刷される。次に、
ドット形成要素数dN分の紙送りF1を行い、無印刷走
査R1を実行してから主走査Q2を行う。同様にして、
紙送りF2、無印刷走査R2、主走査Q3を行うことに
より印刷を終了する。従って、この場合の印刷に要する
パス数は、Q1,R1,Q2,R2,Q3の「5」とな
る。
を拡張双方向印刷し、第2の印刷領域A2を拡張単方向
印刷した場合が示されている。この場合の印刷に要する
パス数は、Q1,Q2,R1,Q3の「4」となる。一
方、図7中の右側には全てを拡張単方向印刷した場合が
示されている。この場合の印刷に要するパス数は、Q
1,R1,Q2,R2,Q3の「5」となる。従って、
図6,図7のいずれも、第1の印刷領域A1のみを拡張
双方向印刷し、第2の印刷領域A2を拡張単方向印刷し
た方が印刷に要するパス数が少なくなる。
を拡張双方向印刷し、第2の印刷領域A2を拡張単方向
印刷した場合が示されており、この場合の印刷に要する
パス数は、Q1,Q2,R1,Q3,R2,Q4の
「6」となる。一方、図8中の右側には全てを拡張単方
向印刷した場合が示されており、この場合の印刷に要す
るパス数は、Q1,R1,Q2,R2,Q3の「5」と
なる。
張双方向印刷し、第2の印刷領域A2を拡張単方向印刷
した場合が示されている。この場合の印刷に要するパス
数は、Q1,Q2,R1,Q3,R2,Q4の「6」と
なる。一方、図9中の右側には全てを拡張単方向印刷し
た場合が示されている。この場合の印刷に要するパス数
は、Q1,R1,Q2,R2,Q3の「5」となる。従
って、図8,図9のいずれも、第1の印刷領域A1〜第
2の印刷領域A2までを全て拡張単方向印刷した方が印
刷に要するパス数が少なくなる。
化する。まず、第2の印刷領域A2のライン数a2をド
ット形成要素数dNで除算した値(=a2/dN)を切
り上げて整数化した値をmBとし、一方、第1の印刷領
域A1から第2の印刷領域A2までの合計ライン数をド
ット形成要素数dNで除算した値((a1+b1+a
2)/dN)を切り上げて整数化した値をmUとする。
1の印刷領域A1のみを拡張双方向印刷し、第2の印刷
領域A2を拡張単方向印刷した方が印刷に要するパス数
は少なくなる。前記図6,図7の場合は、ともにmB=
2、mU=3となり、mB<mUが成立する。一方、m
B<mUが成立しないときは、第1の印刷領域A1〜第
2の印刷領域A2までを拡張単方向印刷した方が印刷に
要するパス数は少なくなる。前記図8,図9の場合は、
ともにmB=3、mU=3となり、mB=mUとなっ
て、mB<mUが成立しない。
し、拡張単方向印刷か拡張双方向印刷かを最適に決定す
るアルゴリズムについて、図10の流れ図を参照しつつ
説明する。本アルゴリズムにより、今回の主走査で印刷
される印刷ブロックが決定されると共に、次回の主走査
における印刷方向が決定される。ここで、「印刷ブロッ
ク」とは、プリントヘッド17の一回の主走査で印刷さ
れるべき範囲を示す概念である。
は、第1の印刷領域A1,第1の空白領域B1,第2の
印刷領域A2,第2の空白領域B2,第3の印刷領域A
3を検出し、これら各領域A1,B1,A2,B2,A
3のライン数a1,b1,a2,b2,a3をそれぞれ
求める。ラスタライザ5がイメージメモリ上に展開した
ドットパターンデータを各ライン毎に走査し、ドットを
有するラインのアドレスの検出及びライン数のカウント
によって、各領域A1,B1,A2,B2,A3と各ラ
イン数a1,b1,a2,b2,a3とが検出される。
これら各ライン数a1,b1,a2,b2,a3は図示
せぬデータメモリに記憶される。
否かを判定する。前記(1)で述べたように、ドット形
成要素数dNが第1の印刷領域A1のライン数a1より
も小さい場合は、印刷品質の劣化防止の観点から双方向
印刷を選択することはできない。そこで、S3では、印
刷方向として拡張単方向印刷を指定し、ドット形成要素
数dN分の印刷を行うと共にドット形成要素数dNだけ
紙送りするように印刷データ20を生成する。なお、S
3及び後述するS5,S8,S9中の「P」とは、図6
中の右側に示す如く、本印刷処理の判断基点である。従
って、P=P+dNとは、dNだけ紙送りすることを意
味すると共に、この新たな判断基点Pから前記各領域A
1〜A3が新たに検出されることを意味する。
S4によって、a1≦dN≦a1+b1が成立するか否
かを判定する。前記(3)で述べたように、第1の印刷
領域A1がプリントヘッド17内に収まり、該プリント
ヘッド17が第2の印刷領域A2にかからない場合は、
拡張双方向印刷を行うことができる。そこで、S5で
は、拡張双方向印刷を指定し、第1の印刷領域A1のラ
イン数a1分の印刷を行うと共にa1+b1だけ紙送り
するように印刷データ20を作成する。
S6によって、a1+b1<dN<a1+b1+a2が
成立するか否かを判定する。前記(4)で述べた通り、
この場合には、(a2/dN)を切り上げて整数化して
なる値mBと、((a1+b1+a2)/dN)を切り
上げて整数化してなる値mUとの大小関係によって、好
ましい印刷方向が定まる。そこで、S7では、mB及び
mUを求めて、mB<mUが成立するか否かを判定す
る。mB<mUが成立する場合は、S8によって、拡張
双方向印刷を指定し、ライン数a1分の印刷を行うと共
にa1+b1だけ紙送りを行うように印刷データ20を
作成する。mB<mUが成立しない場合は、S9によっ
て、拡張単方向印刷を指定し、ドット形成要素数dN分
だけ印刷を行うと共にdNだけ紙送りするように印刷デ
ータ20を作成する。
は、a1+b1+a2≦dNの場合、即ち、ドット形成
要素数dNが第2の印刷領域A2以上に及ぶ場合であ
る。従って、前記(2)で述べたように、a1+b1+
a2を新たなa1とし、b2を新たなb1とし、a3を
新たなa2として上述したS1〜S9の処理を行う。
の結果、印刷ブロック及び印刷方向が決定されて作成さ
れる印刷データ20について図11に基づき説明する。
この印刷データ20は、プリントヘッド17の一回の主
走査で印刷されるデータであり、次の主走査で印刷され
る印刷データ20を拡張双方向印刷又は拡張単方向印刷
のいすれで行うかを指定する「印刷方向コマンド」とし
ての印刷方向指定コマンド21と、単数又は複数の1ラ
イン分づつのデータ22と、印字起動コマンド23とか
ら構成されている。そして、前記1ライン分づつのデー
タ22は、印刷開始の副走査位置を示す垂直位置データ
22Aと、印刷開始の主走査位置を示す水平位置データ
22Bと、データ種別及びデータ長を示すデータ長22
Cと、ラスタデータ22Dとからそれぞれ構成されてい
る。ここで、前記印刷方向指定コマンド21により次の
主走査分の印刷データ20の印刷方向が指定されると同
時に、印字起動コマンド23の挿入により、今回の1主
走査分のデータのブロックが確定されることになる。
成になっているプリンタドライバ4から印刷データ20
を受け取ることで、印刷データ20中の印刷方向指定コ
マンド21の内容から次の主走査の印刷方向を印刷方向
記憶部16に記憶すると共に、各1ライン分のデータ2
2中のラスタデータ22Dを出力バッファ15に出力す
る。なお、プリンタ2は、印字起動コマンド23によっ
てキャリッジを主走査方向に移動させ印刷動作を開始す
るものである。故に、出力バッファ15にプリントヘッ
ド17の全ドット形成要素数分のデータが蓄積されるの
を待たずに印刷動作を開始することも頻繁におこる。
ば、ホストコンピュータ1のプリンタドライバ4で展開
されたドットパターンデータを、前記(1)〜(4)の
印刷アルゴリズムに基づいて解析し、この解析結果に応
じて得られた印刷データ20をプリンタ2に出力するた
め、印刷品質の劣化を防止しつつ不要な印刷パスをなく
して印刷時間を低減することができる。
果を示す説明図である。図12中の左側には、本実施の
形態により印刷を行った場合のパス及び紙送りが示さ
れ、図12中の右側には通常の単方向印刷を行った場合
のパスのみが示されている。紙面24の印刷内容は、各
種の文字、記号、線図等からなる複数の印刷領域A1〜
A6から構成されている。印刷領域A1〜A5は、プリ
ントヘッド17よりも短い幅を有し、紙面最後の印刷領
域A6は、プリントヘッド17よりも長い幅を有する。
って拡張双方向印刷される。主走査Q2から主走査Q3
に移るときはロジカルシークが機能し、プリントヘッド
17の移動量が最小化されると共に、最適な印刷方向が
決定される。印刷領域A6は拡張単方向印刷される。最
終的な合計パス数は、Q1〜Q8とR1,R2との和で
ある「10」となる。一方、同一の紙面24を単方向印
刷した場合の合計パス数は、図12中の右側に示すよう
に、Q1〜Q8とR1〜R7との「15」になる。従っ
て、本実施の形態によれば、印刷品質を低下させること
なく印刷時間を大幅に短縮することができる。
図13に基づき説明する。なお、以下の各実施の形態で
は、上述した第1の実施の形態と同一の構成要素に同一
の符号を付し、その説明を省略するものとする。本実施
の形態の特徴は、プリンタドライバ4が、ドットパター
ンデータを展開するために、十分なイメージメモリをホ
ストコンピュータ1上で利用できない場合において、前
記(1)〜(4)の印刷アルゴリズムを実現した点にあ
る。
流れ図を示す。図13中のS22,S23,S24,S
25,S26,S28,S29,S30,S31は、前
記第1の実施の形態で述べた図10中のS2,S3,S
4,S5,S6,S7,S8,S9,S10にそれぞれ
対応し、同一の処理を行うため、説明を省略する。
21,S27について説明する。S21では、第1の印
刷領域A1,第1の空白領域B1,第2の印刷領域A2
を検出し、各領域のライン数a1,b1,a2をそれぞ
れ検出する。ここで、本実施の形態では、プリンタドラ
イバ4が1頁分のイメージメモリを利用しない場合を前
提にしている。従って、第2の印刷領域A2の幅が長い
場合、即ち、ライン数a2が大きい場合は、プリンタド
ライバ4が利用できるイメージメモリが一杯になるまで
の範囲で、第2の印刷領域A2,ライン数a2を検出す
る。換言すれば、第2の印刷領域A2を検出する前にイ
メージメモリが一杯になったときには、その時点での値
が第2の印刷領域A2,a2として検出される。
a2が成立するときは、S27でイメージメモリが一杯
か否かを判定する。イメージメモリが一杯でないと判定
した場合は、イメージメモリの容量内で第2の印刷領域
A2を全て検出できた場合である。従って、この場合
は、第1の実施の形態で述べた各整数値mB,mUの大
小関係により印刷方向を指定する(S28〜S30)。
これに対し、S27でイメージメモリが一杯であると判
定した場合は、第2の印刷領域A2を全て検出する前に
イメージメモリの空き容量が無くなった場合であり、実
際の第2の印刷領域A2のライン数a2が不明な場合で
ある。この場合は、S30に移って拡張単方向印刷を行
う。
出できない場合は、強制的に拡張単方向印刷を指定する
が、それでも結果として生じる印刷パス数は従来の単方
向印刷と同様であり、増えることはない。従って、本実
施の形態では、フェイルセーフが担保される。しかも、
ホストコンピュータ1にとっては、プリンタドライバ4
に割り当てるメモリ資源を少なくできるため、ホストコ
ンピュータ1の負担を軽減しつつ印刷品質及び印刷時間
の向上を実現することができる。
載された本発明の要旨の範囲内で種々の追加、変更等が
可能である。
タドライバ4の初期設定値としておき、ユーザによって
高速印刷モードが指定された場合には、ユーザー指定を
優先するように構成することもできる。
ータ生成方法、印刷データ生成装置及び印刷システムに
よれば、印刷内容のドットパターンデータを解析して主
走査毎に印刷方向を決定するため、印刷パス数を低減し
て印刷時間を短縮しつつ、高品質の印刷を行うことがで
きる。
機能ブロック図。
す説明図。
印刷パスを示す説明図。
印刷パスを示す説明図。
印刷パスを示す説明図。
印刷パスを示す説明図。
示すフローチャート。
図。
よる印刷パスとを比較して示す説明図。
示すフローチャート。
Claims (6)
- 【請求項1】 複数のドット形成要素を有するプリント
ヘッドを備えたプリンタ装置によって印刷内容を印刷記
録媒体に具現化させるための印刷データを生成する方法
であって、 前記印刷内容をドットパターンデータに展開するドット
パターンデータ展開ステップと、 前記ドットパターンデータに基づいて、印刷すべきドッ
トを含むラインが副走査方向に連続する複数の印刷領域
と該各印刷領域間の空白領域とを検出する領域検出ステ
ップと、 前記各印刷領域のライン数及び空白領域のライン数と前
記プリントヘッドのドット形成要素数との関係に基づい
て、一回の主走査で印刷すべき印刷ブロックを決定し、
当該印刷ブロックを単方向で印刷するか双方向で印刷す
るかを判別する印刷方向判別ステップと、 前記印刷方向を示す印刷方向コマンドと前記印刷ブロッ
クに対応したドットパターンデータと印字起動コマンド
とを含む印刷データを作成する印刷データ作成ステップ
とを、 少なくともこの順序で実行することを特徴とする印刷デ
ータ生成方法。 - 【請求項2】 前記印刷方向判別ステップは、最初に検
出される第1の印刷領域のライン数をa1、次に検出さ
れる第2の印刷領域のライン数をa2、前記各印刷領域
間の空白領域のライン数をb1、前記プリントヘッドの
ドット形成要素数をdNとしたときに、 dN<a1が成立するときは単方向印刷を選択し、 a1≦dN≦a1+b1が成立するときは双方向印刷を
選択し、 a1+b1<dN<a1+b1+a2が成立するとき
は、さらに、a2/dNを切り上げてなる整数値mBと
(a1+b1+a2)/dNを切り上げてなる整数値m
Uとを比較して、mB<mUが成立するときには前記第
1の印刷領域のみを双方向印刷した後に前記第2の印刷
領域を単方向印刷するように印刷方向を選択し、mB<
mUが成立しないときには単方向印刷を選択し、 a1+b1+a2≦dNが成立するときはa1+b1+
a2を新たなa1と置き換えて再度の判別を実行するこ
とを特徴とする請求項1に記載の印刷データ生成方法。 - 【請求項3】 前記印刷方向判別ステップは、a1+b
1<dN<a1+b1+a2が成立するときは、前記第
2の印刷領域を全て検出したか否かを判定し、前記第2
の印刷領域を全て検出したと判定した場合には単方向印
刷を選択し、前記第2の印刷領域を全て検出していない
と判定した場合には、さらに、a2/dNを切り上げて
なる整数値mBと(a1+b1+a2)/dNを切り上
げてなる整数値mUとを比較して、mB<mUが成立す
るときには前記第1の印刷領域のみを双方向印刷した後
に前記第2の印刷領域を単方向印刷するように印刷方向
を選択し、mB<mUが成立しないときには単方向印刷
を選択することを特徴とする請求項2に記載の印刷デー
タ生成方法。 - 【請求項4】 前記単方向印刷は直前の印刷パスと同一
の方向に印刷を行う拡張単方向印刷であり、前記双方向
印刷は前記プリントヘッドの移動量が最小値となる方向
に印刷を行う拡張双方向印刷であることを特徴とする請
求項1〜請求項3のいずれか一項に記載の印刷データ生
成方法。 - 【請求項5】 複数のドット形成要素を有するプリント
ヘッドを備えたプリンタ装置によって印刷内容を印刷記
録媒体に具現化させるための印刷データを生成する装置
であって、 前記印刷内容をドットパターンデータとして展開するド
ットパターンデータ展開手段と、 前記ドットパターンデータを各ライン毎に走査してドッ
トの有無を検出し、該ドットを含むライン数をカウント
することにより、印刷すべきドットを含むラインが副走
査方向に連続する複数の印刷領域と該各印刷領域間の空
白領域とを主走査毎にそれぞれ検出する領域検出手段
と、 前記各印刷領域のライン数及び空白領域のライン数と前
記プリントヘッドのドット形成要素数との関係に基づい
て演算を行い、この演算結果に応じて一回の主走査で印
刷すべき印刷ブロックを決定し、当該印刷ブロックを単
方向で印刷するか双方向で印刷するかを判別する印刷方
向判別手段と、 前記印刷ブロックに対応したドットパターンデータに前
記印刷方向判別手段により判別された印刷方向を示す印
刷方向コマンドと前記プリンタ装置に対して印刷を指令
する印字起動コマンドとを加えて印刷データを作成する
印刷データ作成手段と、 を備えたことを特徴とする印刷データ生成装置。 - 【請求項6】 印刷内容に対応した印刷データに基づい
てプリントエンジンの駆動を制御することにより、前記
印刷内容を印刷記録媒体に具現化させる印刷システムで
あって、 前記プリントエンジンは、複数のドット形成要素が形成
されたプリントヘッドを有し、 前記印刷内容を解析することにより、一回の主走査で印
刷すべき印刷ブロックに対応したドットパターンデータ
と該印刷ブロックを単方向で印刷するか双方向で印刷す
るかを示す印刷方向コマンドと印字起動コマンドとを含
む印刷データを生成する印刷データ生成手段と、 前記印刷データ生成手段から入力された印刷データに基
づいて前記プリントエンジンの駆動を制御するプリンタ
制御手段とを備え、 前記印刷データ生成手段は、 前記印刷内容をドットパターンデータとして展開するド
ットパターンデータ展開手段と、 前記ドットパターンデータを各ライン毎に走査してドッ
トの有無を検出し、該ドットを含むライン数をカウント
することにより、印刷すべきドットを含むラインが副走
査方向に連続する複数の印刷領域と該各印刷領域間の空
白領域とを主走査毎にそれぞれ検出する領域検出手段
と、 前記各印刷領域のライン数及び空白領域のライン数と前
記プリントヘッドのドット形成要素数との関係に基づい
て演算を行い、この演算結果に応じて一回の主走査で印
刷すべき印刷ブロックを決定し、当該印刷ブロックを単
方向で印刷するか双方向で印刷するかを判別する印刷方
向判別手段と、 前記印刷ブロックに対応したドットパターンデータに前
記印刷方向判別手段により判別された印刷方向を示す印
刷方向コマンドと前記プリンタ装置に対して印刷を指令
する印字起動コマンドとを加えて印刷データを作成する
印刷データ作成手段と、 を備えたことを特徴とする印刷システム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08232339A JP3137002B2 (ja) | 1996-09-02 | 1996-09-02 | 印刷データ生成方法及び印刷データ生成装置及び印刷データ生成装置を備えた印刷システム |
EP97306795A EP0828227B1 (en) | 1996-09-02 | 1997-09-02 | Print system, printer driver and printer |
DE69726232T DE69726232T2 (de) | 1996-09-02 | 1997-09-02 | Druckersystem, Druckertreiber und Drucker |
US08/921,691 US5953496A (en) | 1996-09-02 | 1997-09-02 | Method and apparatus for utilizing uni-and bidirectional printing on the same print medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP08232339A JP3137002B2 (ja) | 1996-09-02 | 1996-09-02 | 印刷データ生成方法及び印刷データ生成装置及び印刷データ生成装置を備えた印刷システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1076726A JPH1076726A (ja) | 1998-03-24 |
JP3137002B2 true JP3137002B2 (ja) | 2001-02-19 |
Family
ID=16937662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP08232339A Expired - Lifetime JP3137002B2 (ja) | 1996-09-02 | 1996-09-02 | 印刷データ生成方法及び印刷データ生成装置及び印刷データ生成装置を備えた印刷システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3137002B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4065492B2 (ja) * | 2001-05-15 | 2008-03-26 | キヤノン株式会社 | インクジェットプリント装置、インクジェットプリント方法、プログラムおよび該プログラムを格納したコンピュータにより読取可能な記憶媒体 |
-
1996
- 1996-09-02 JP JP08232339A patent/JP3137002B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH1076726A (ja) | 1998-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5557707A (en) | Image forming apparatus with a scanner and method of controlling the same | |
US7365868B2 (en) | Information processing apparatus, method of controlling printing, computer program, and printing system | |
JP3127837B2 (ja) | プリンタ制御装置及びプリンタ制御方法 | |
JP3137002B2 (ja) | 印刷データ生成方法及び印刷データ生成装置及び印刷データ生成装置を備えた印刷システム | |
US5617525A (en) | Image outputting adaptable to various fonts | |
US5953496A (en) | Method and apparatus for utilizing uni-and bidirectional printing on the same print medium | |
US6055061A (en) | Character image processing apparatus and method | |
JP2591167B2 (ja) | シリアルプリンタ | |
US5666478A (en) | Method and apparatus for processing characters based on previously- used scalable font data | |
JP3237233B2 (ja) | 記録装置 | |
JPH0755572B2 (ja) | 印字装置 | |
JPH11151833A (ja) | 画像形成装置 | |
JP2004106192A (ja) | 描画処理装置、情報処理装置、画像形成装置、描画処理方法およびプログラム | |
JP2001138590A (ja) | シリアルプリンタ、印刷システム及びシリアルプリンタにおけるキャリッジの駆動方法 | |
JP2000148429A (ja) | プリンタドライバ | |
US4914621A (en) | Document processing system | |
JP2984156B2 (ja) | 記録方法およびその装置 | |
JPH07104954A (ja) | プリンタ及びその制御方法 | |
JP2000033736A (ja) | シリアルプリンタ及びシリアル印刷方法 | |
JPH10151814A (ja) | テキストデータ印刷装置及びテキストデータ印刷方法 | |
JPH10151813A (ja) | ビットイメージデータ印刷装置及びビットイメージデータ印刷方法 | |
JPH11272439A (ja) | プリンタ装置 | |
JPH082002A (ja) | プリンタ制御装置 | |
JPH02202461A (ja) | 記録装置 | |
JP2002137448A (ja) | 画像形成装置および画像形成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20001107 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081208 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081208 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091208 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101208 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101208 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111208 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111208 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121208 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121208 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131208 Year of fee payment: 13 |
|
EXPY | Cancellation because of completion of term |