JPH079709A - プリンタ制御装置 - Google Patents
プリンタ制御装置Info
- Publication number
- JPH079709A JPH079709A JP5179841A JP17984193A JPH079709A JP H079709 A JPH079709 A JP H079709A JP 5179841 A JP5179841 A JP 5179841A JP 17984193 A JP17984193 A JP 17984193A JP H079709 A JPH079709 A JP H079709A
- Authority
- JP
- Japan
- Prior art keywords
- data
- image data
- size
- line
- printer
- 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
Landscapes
- Record Information Processing For Printing (AREA)
Abstract
(57)【要約】
【目的】 メモリ3からイメージデータを読み出し、プ
リンタ15に出力して画像を印刷するプリンタ制御装置
1において、用紙サイズがイメージデータのサイズより
小さい場合でも、画像の一部を乱れることなく印刷する
こと。 【構成】 プリンタ制御装置の出力部4内に、メモリに
展開されているイメージデータのラインサイズと、プリ
ンタにセットされている用紙のラインサイズとの差を算
出するライン差算出部を設ける。そしてポインタ制御部
に、前記ライン差を参考にして、バッファメモリのライ
トポインタを、用紙サイズに入らないデータが転送され
て来た時は移動せず、用紙サイズに入るデータが転送さ
れて来た時には移動するよう制御させる。イメージデー
タのラインサイズが変わった時は、前記ライン差が変わ
るだけで対処出来るので、イメージデータは一定のライ
ンサイズものもでなくともよく、用紙サイズに応じたラ
インサイズのイメージデータを受信して印刷するタイプ
のプリンタの場合でも、乱れなく画像が印刷できる。
リンタ15に出力して画像を印刷するプリンタ制御装置
1において、用紙サイズがイメージデータのサイズより
小さい場合でも、画像の一部を乱れることなく印刷する
こと。 【構成】 プリンタ制御装置の出力部4内に、メモリに
展開されているイメージデータのラインサイズと、プリ
ンタにセットされている用紙のラインサイズとの差を算
出するライン差算出部を設ける。そしてポインタ制御部
に、前記ライン差を参考にして、バッファメモリのライ
トポインタを、用紙サイズに入らないデータが転送され
て来た時は移動せず、用紙サイズに入るデータが転送さ
れて来た時には移動するよう制御させる。イメージデー
タのラインサイズが変わった時は、前記ライン差が変わ
るだけで対処出来るので、イメージデータは一定のライ
ンサイズものもでなくともよく、用紙サイズに応じたラ
インサイズのイメージデータを受信して印刷するタイプ
のプリンタの場合でも、乱れなく画像が印刷できる。
Description
【0001】
【産業上の利用分野】本発明は、メモリからイメージデ
ータを読み出し、プリンタに出力して画像を印刷させる
プリンタ制御装置に関するものである。
ータを読み出し、プリンタに出力して画像を印刷させる
プリンタ制御装置に関するものである。
【0002】
【従来の技術】プリンタ制御装置のメモリ上に展開され
たイメージデータを順次読み出し、プリンタに出力する
時、プリンタにはイメージデータのサイズより小さいサ
イズの用紙しかない場合がある。そのような場合、サイ
ズが合わなくとも印刷を強行することがある。もし、そ
のイメージデータのサイズの用紙が供給されるまで印刷
処理を中断するとなると、その用紙サイズに合うイメー
ジデータがその後に続いていても、それらの印刷も待た
されることになるが、それは避けたいという場合であ
る。
たイメージデータを順次読み出し、プリンタに出力する
時、プリンタにはイメージデータのサイズより小さいサ
イズの用紙しかない場合がある。そのような場合、サイ
ズが合わなくとも印刷を強行することがある。もし、そ
のイメージデータのサイズの用紙が供給されるまで印刷
処理を中断するとなると、その用紙サイズに合うイメー
ジデータがその後に続いていても、それらの印刷も待た
されることになるが、それは避けたいという場合であ
る。
【0003】図6に、イメージデータのサイズより小さ
いサイズの用紙に印刷する場合の図を示す。図6におい
て、30はイメージデータ、31は用紙、32は画像、
33は有効データ、34は無効データ、35はライン幅
データ、36は水平同期信号、37は垂直同期信号であ
る。このイメージデータ30は、「A」という画像32
を印刷するためのイメージデータである。この図では、
イメージデータ30の右上隅を用紙31の右上隅に一致
させて印刷させる場合を例にとっている。用紙31がセ
ットされているプリンタ(図示せず)では、その用紙サ
イズを検出して、水平同期信号36,垂直同期信号37
を発生する。
いサイズの用紙に印刷する場合の図を示す。図6におい
て、30はイメージデータ、31は用紙、32は画像、
33は有効データ、34は無効データ、35はライン幅
データ、36は水平同期信号、37は垂直同期信号であ
る。このイメージデータ30は、「A」という画像32
を印刷するためのイメージデータである。この図では、
イメージデータ30の右上隅を用紙31の右上隅に一致
させて印刷させる場合を例にとっている。用紙31がセ
ットされているプリンタ(図示せず)では、その用紙サ
イズを検出して、水平同期信号36,垂直同期信号37
を発生する。
【0004】サイズが合わない状態で印刷されたにして
も、どのようなイメージデータが印刷されたかの判別は
できるようにしておく必要がある。そのために、イメー
ジデータを用紙サイズに縮小してイメージデータ全体を
不完全ながらも印刷するという方法とか、イメージデー
タの内、用紙サイズで切り取れる部分だけをそのまま印
刷するという方法とかが取られる。用紙サイズに縮小す
る方法は、処理が面倒であり処理時間も長い。それに比
べれば、用紙サイズ部分だけをそのまま印刷する方法
は、処理も簡単であり処理時間も短い。
も、どのようなイメージデータが印刷されたかの判別は
できるようにしておく必要がある。そのために、イメー
ジデータを用紙サイズに縮小してイメージデータ全体を
不完全ながらも印刷するという方法とか、イメージデー
タの内、用紙サイズで切り取れる部分だけをそのまま印
刷するという方法とかが取られる。用紙サイズに縮小す
る方法は、処理が面倒であり処理時間も長い。それに比
べれば、用紙サイズ部分だけをそのまま印刷する方法
は、処理も簡単であり処理時間も短い。
【0005】そこで、イメージデータの内の用紙サイズ
の部分だけをそのまま印刷する従来技術について説明す
る。図6において、ライン幅データ35の内、用紙31
に印刷できるデータを有効データと言い、そのライン幅
方向のサイズを有効データのラインサイズ33と呼び、
はみ出すデータを無効データと言い、そのライン幅方向
のサイズを無効データのラインサイズ34と呼ぶことに
する。AならAという画像32の用紙サイズ部分の画像
を、画像が乱れることなく印刷するためには、或るライ
ンの無効データは印刷に使わないよう処理し、用紙内に
は(言い換えれば、水平同期信号36が立ち上がってい
る時には)有効データのみを印刷する。もし、処理して
おかなければ、無効データが、用紙31内の印刷に使わ
れ、出来上がった画像は何が何だか分からないように乱
れてしまい、「A」の一部とはとうてい判別できない画
像となってしまうからである。
の部分だけをそのまま印刷する従来技術について説明す
る。図6において、ライン幅データ35の内、用紙31
に印刷できるデータを有効データと言い、そのライン幅
方向のサイズを有効データのラインサイズ33と呼び、
はみ出すデータを無効データと言い、そのライン幅方向
のサイズを無効データのラインサイズ34と呼ぶことに
する。AならAという画像32の用紙サイズ部分の画像
を、画像が乱れることなく印刷するためには、或るライ
ンの無効データは印刷に使わないよう処理し、用紙内に
は(言い換えれば、水平同期信号36が立ち上がってい
る時には)有効データのみを印刷する。もし、処理して
おかなければ、無効データが、用紙31内の印刷に使わ
れ、出来上がった画像は何が何だか分からないように乱
れてしまい、「A」の一部とはとうてい判別できない画
像となってしまうからである。
【0006】用紙サイズ内に入るデータか、それともは
み出すデータかを判別するのに、特開平2−74362 号公
報の技術では、イメージデータを常に最大の用紙サイズ
で展開しておき、実際に印刷しようとしている用紙のサ
イズから有効領域を計算し、データの有効,無効を1ド
ット毎に判別している。また、特開平4−83674 号公報
には、プリンタに出力されたイメージデータの内、用紙
からはみ出す部分のデータは出力しないようにするとい
う技術が示されている。
み出すデータかを判別するのに、特開平2−74362 号公
報の技術では、イメージデータを常に最大の用紙サイズ
で展開しておき、実際に印刷しようとしている用紙のサ
イズから有効領域を計算し、データの有効,無効を1ド
ット毎に判別している。また、特開平4−83674 号公報
には、プリンタに出力されたイメージデータの内、用紙
からはみ出す部分のデータは出力しないようにするとい
う技術が示されている。
【0007】
【発明が解決しようとする課題】しかしながら、前記し
た従来の技術は、ラインサイズ(図6のライン幅データ
35のサイズ)が常に一定であるイメージデータだけを
受信して印刷するというタイプのプリンタに対しては適
用出来るが、そうでないプリンタ、例えば用紙サイズに
応じたラインサイズのイメージデータを受信して印刷を
行うというタイプのプリンタに対しては適用できないと
いう問題点があった。本発明は、このような問題点に鑑
み、ラインサイズが一定でなくとも、イメージデータの
内の用紙サイズ部分を印刷できるようにすることを課題
とするものである。
た従来の技術は、ラインサイズ(図6のライン幅データ
35のサイズ)が常に一定であるイメージデータだけを
受信して印刷するというタイプのプリンタに対しては適
用出来るが、そうでないプリンタ、例えば用紙サイズに
応じたラインサイズのイメージデータを受信して印刷を
行うというタイプのプリンタに対しては適用できないと
いう問題点があった。本発明は、このような問題点に鑑
み、ラインサイズが一定でなくとも、イメージデータの
内の用紙サイズ部分を印刷できるようにすることを課題
とするものである。
【0008】
【課題を解決するための手段】前記課題を解決するた
め、本発明では、イメージデータが展開されるメモリ
と、該メモリからDMA転送されるイメージデータをバ
ッファメモリで受け、プリントするに適合した形式およ
びタイミングでプリンタに出力する出力部と、前記DM
A転送の開始アドレスを記録するアドレスレジスタおよ
びイメージデータの未転送データ量を記録するバイトカ
ウントレジスタとを少なくとも具えるDMA制御装置と
を有するプリンタ制御装置において、メモリに展開され
ているイメージデータのラインサイズとプリンタにセッ
トされている用紙のラインサイズとの差を算出するライ
ン差算出部と、算出したライン差を参考にして、前記バ
ッファメモリのライトポインタを、イメージデータ内の
用紙サイズに対応した領域の外にあるデータが転送され
て来た時は移動せず、該領域内にあるデータが転送され
て来た時は移動するよう制御するポインタ制御部とを具
えることとした。
め、本発明では、イメージデータが展開されるメモリ
と、該メモリからDMA転送されるイメージデータをバ
ッファメモリで受け、プリントするに適合した形式およ
びタイミングでプリンタに出力する出力部と、前記DM
A転送の開始アドレスを記録するアドレスレジスタおよ
びイメージデータの未転送データ量を記録するバイトカ
ウントレジスタとを少なくとも具えるDMA制御装置と
を有するプリンタ制御装置において、メモリに展開され
ているイメージデータのラインサイズとプリンタにセッ
トされている用紙のラインサイズとの差を算出するライ
ン差算出部と、算出したライン差を参考にして、前記バ
ッファメモリのライトポインタを、イメージデータ内の
用紙サイズに対応した領域の外にあるデータが転送され
て来た時は移動せず、該領域内にあるデータが転送され
て来た時は移動するよう制御するポインタ制御部とを具
えることとした。
【0009】
【作 用】プリンタ制御装置の出力部内に、メモリに
展開されているイメージデータのラインサイズと、プリ
ンタにセットされている用紙のラインサイズとの差を算
出するライン差算出部を設ける。そして、算出したライ
ン差を参考にして、出力部のバッファメモリのライトポ
インタを、用紙サイズに入らないデータが転送されて来
た時は移動せず、用紙サイズに入るデータが転送されて
来た時に移動するよう制御する。これにより、画像が乱
れることなく印刷される。
展開されているイメージデータのラインサイズと、プリ
ンタにセットされている用紙のラインサイズとの差を算
出するライン差算出部を設ける。そして、算出したライ
ン差を参考にして、出力部のバッファメモリのライトポ
インタを、用紙サイズに入らないデータが転送されて来
た時は移動せず、用紙サイズに入るデータが転送されて
来た時に移動するよう制御する。これにより、画像が乱
れることなく印刷される。
【0010】イメージデータのラインサイズが変わった
場合は、ライン差算出部で算出されるライン差の値が変
わるだけで対処できるので、イメージデータは一定のラ
インサイズのものでなければならないなどという制約は
ない。従って、常に一定のラインサイズのイメージデー
タを受信して印刷するタイプのプリンタのみならず、用
紙サイズに応じたラインサイズのイメージデータを受信
して印刷するタイプのプリンタに対しても適用可能とな
る。
場合は、ライン差算出部で算出されるライン差の値が変
わるだけで対処できるので、イメージデータは一定のラ
インサイズのものでなければならないなどという制約は
ない。従って、常に一定のラインサイズのイメージデー
タを受信して印刷するタイプのプリンタのみならず、用
紙サイズに応じたラインサイズのイメージデータを受信
して印刷するタイプのプリンタに対しても適用可能とな
る。
【0011】
(構成)以下、本発明の実施例を図面に基づいて詳細に
説明する。図1は、本発明のプリンタ制御装置を示す図
である。図1において、1はプリンタ制御装置、2はC
PU(中央演算処理装置)、3はメモリ、4は出力部、
5はDMA制御装置(DMA…ダイレクト・メモリ・ア
クセス)、6はバス、7はバッファメモリ、8はP/S
変換器(P/S…パラレル/シリアル)、9はポインタ
制御部、10は出力制御部、11はライン差算出部、1
2はバイトカウントレジスタ、13はDMA制御部、1
4はアドレスレジスタ、15はプリンタである。
説明する。図1は、本発明のプリンタ制御装置を示す図
である。図1において、1はプリンタ制御装置、2はC
PU(中央演算処理装置)、3はメモリ、4は出力部、
5はDMA制御装置(DMA…ダイレクト・メモリ・ア
クセス)、6はバス、7はバッファメモリ、8はP/S
変換器(P/S…パラレル/シリアル)、9はポインタ
制御部、10は出力制御部、11はライン差算出部、1
2はバイトカウントレジスタ、13はDMA制御部、1
4はアドレスレジスタ、15はプリンタである。
【0012】バス6を介して、CPU2,メモリ3,出
力部4,DMA制御装置5が接続され、出力部4にはプ
リンタ15が接続される。メモリ3上には、イメージデ
ータが展開され、それがDMA制御装置5の制御の下に
出力部4へDMA転送される。出力部4は、メモリ3か
らDMA転送されて来るイメージデータを受け、印刷に
適合する形式およびタイミングでプリンタ15に出力す
る。
力部4,DMA制御装置5が接続され、出力部4にはプ
リンタ15が接続される。メモリ3上には、イメージデ
ータが展開され、それがDMA制御装置5の制御の下に
出力部4へDMA転送される。出力部4は、メモリ3か
らDMA転送されて来るイメージデータを受け、印刷に
適合する形式およびタイミングでプリンタ15に出力す
る。
【0013】まず、出力部4の構成要素について説明す
る。バッファメモリ7は、DMA転送されて来る少量の
イメージデータをいったん格納するメモリであり、これ
には、例えばFIFO(First In First Out)を用いる
ことが出来る。P/S変換器8は、バッファメモリ7で
はパラレルで受け取ったデータを、シリアルに変換して
プリンタ15に出力する。
る。バッファメモリ7は、DMA転送されて来る少量の
イメージデータをいったん格納するメモリであり、これ
には、例えばFIFO(First In First Out)を用いる
ことが出来る。P/S変換器8は、バッファメモリ7で
はパラレルで受け取ったデータを、シリアルに変換して
プリンタ15に出力する。
【0014】出力制御部10は、プリンタ15からの信
号(例、用紙サイズに対応した水平同期信号,垂直同期
信号など)を受け、各部に出力制御信号を発する。ポイ
ンタ制御部9は、バッファメモリ7における書き込み位
置および読み出し位置を指示するポインタを制御する。
ライン差算出部11は、メモリ3に展開されたイメージ
データのラインサイズ(ライン幅データ35のサイズ)
と、プリンタにセットされた用紙のラインサイズ(有効
データのラインサイズ33)とを基に、その差を算出す
る。これは、無効データのラインサイズ34を求めるこ
とに他ならない。
号(例、用紙サイズに対応した水平同期信号,垂直同期
信号など)を受け、各部に出力制御信号を発する。ポイ
ンタ制御部9は、バッファメモリ7における書き込み位
置および読み出し位置を指示するポインタを制御する。
ライン差算出部11は、メモリ3に展開されたイメージ
データのラインサイズ(ライン幅データ35のサイズ)
と、プリンタにセットされた用紙のラインサイズ(有効
データのラインサイズ33)とを基に、その差を算出す
る。これは、無効データのラインサイズ34を求めるこ
とに他ならない。
【0015】次に、DMA制御装置5の構成要素につい
て説明する。バイトカウントレジスタ11は、まだ転送
されずにメモリ3に残っているイメージデータのバイト
数を記録するためのレジスタである。アドレスレジスタ
14は、次にDMA転送するデータの先頭アドレス(即
ち、メモリ3に残っている未転送データの先頭アドレ
ス)を記録するためのレジスタである。
て説明する。バイトカウントレジスタ11は、まだ転送
されずにメモリ3に残っているイメージデータのバイト
数を記録するためのレジスタである。アドレスレジスタ
14は、次にDMA転送するデータの先頭アドレス(即
ち、メモリ3に残っている未転送データの先頭アドレ
ス)を記録するためのレジスタである。
【0016】図2は、本発明の動作の詳細を説明するた
めの図である。符号は図6のものに対応し、SはDMA
転送開始アドレス、1a,1b,…1t,2a,2b,
3a等はそれぞれ各アドレスのデータ(例えば、1バイ
トのデータ)である。水平同期信号36,垂直同期信号
37は、プリンタが用紙31のサイズを検出することに
よって発せられる。図示するように、DMA転送開始ア
ドレスSは、第1ラインの先頭アドレス(データ1aの
アドレス)と定められていると仮定し、更に用紙31の
右上隅をイメージデータ30の右上隅に合わせた状態で
印刷する場合と仮定する。以下、第1ラインを印刷する
場合の動作を、図1を参照しつつ説明する。他のライン
の動作も同様である。
めの図である。符号は図6のものに対応し、SはDMA
転送開始アドレス、1a,1b,…1t,2a,2b,
3a等はそれぞれ各アドレスのデータ(例えば、1バイ
トのデータ)である。水平同期信号36,垂直同期信号
37は、プリンタが用紙31のサイズを検出することに
よって発せられる。図示するように、DMA転送開始ア
ドレスSは、第1ラインの先頭アドレス(データ1aの
アドレス)と定められていると仮定し、更に用紙31の
右上隅をイメージデータ30の右上隅に合わせた状態で
印刷する場合と仮定する。以下、第1ラインを印刷する
場合の動作を、図1を参照しつつ説明する。他のライン
の動作も同様である。
【0017】ライン差算出部11は、イメージデータ3
0のライン幅データ35のサイズと水平同期信号36と
を基に、無効データのラインサイズ34を算出する。算
出した差は、後に説明するポインタ制御部9での制御で
利用される。イメージデータ30の転送が開始されてい
ない当初においては、図1のバイトカウントレジスタ1
2には、イメージデータ30の全バイト数が記録されて
おり、アドレスレジスタ14には、未だ転送されていな
いデータの先頭アドレス、つまりデータ1aのアドレス
が記録されている。
0のライン幅データ35のサイズと水平同期信号36と
を基に、無効データのラインサイズ34を算出する。算
出した差は、後に説明するポインタ制御部9での制御で
利用される。イメージデータ30の転送が開始されてい
ない当初においては、図1のバイトカウントレジスタ1
2には、イメージデータ30の全バイト数が記録されて
おり、アドレスレジスタ14には、未だ転送されていな
いデータの先頭アドレス、つまりデータ1aのアドレス
が記録されている。
【0018】DMA転送が開始されると、先頭のデータ
1aから始まって、1b,1cという順序にバッファメ
モリ7に転送されてゆく。DMA転送が行われる毎に、
アドレスレジスタ14の値は、次の先頭アドレスを示す
ように増大されてゆき,バイトカウントレジスタ12の
値は、転送されたバイト数だけ減らされてゆく。
1aから始まって、1b,1cという順序にバッファメ
モリ7に転送されてゆく。DMA転送が行われる毎に、
アドレスレジスタ14の値は、次の先頭アドレスを示す
ように増大されてゆき,バイトカウントレジスタ12の
値は、転送されたバイト数だけ減らされてゆく。
【0019】図3は、バッファメモリ7の動作を説明す
る図である。20はnull、21〜24はメモリ要素、R
P は次にデータを読み出す位置を示すリードポインタ、
WPは次にデータを書き込む位置を示すライトポインタ
である。null20は、ポインタがどのメモリ要素をも指
さない状態を表すためのものである。即ち、ポインタが
null20を指している場合は、そのポインタがどのメモ
リ要素をも指していないことを表している。
る図である。20はnull、21〜24はメモリ要素、R
P は次にデータを読み出す位置を示すリードポインタ、
WPは次にデータを書き込む位置を示すライトポインタ
である。null20は、ポインタがどのメモリ要素をも指
さない状態を表すためのものである。即ち、ポインタが
null20を指している場合は、そのポインタがどのメモ
リ要素をも指していないことを表している。
【0020】図3では、バッファメモリ7を構成するメ
モリ要素の数は4個(例、4バイト)と仮定している。
図3(イ)は、最初のデータ1aが転送されて来てメモ
リ要素21に書き込まれた時を示している。最初、ライ
トポインタWP はメモリ要素21を指しているので、デ
ータ1aはメモリ要素21に書き込まれている。リード
ポインタRP ,ライトポインタWP をどこに移すかの制
御は、図1のポインタ制御部9によってなされる。
モリ要素の数は4個(例、4バイト)と仮定している。
図3(イ)は、最初のデータ1aが転送されて来てメモ
リ要素21に書き込まれた時を示している。最初、ライ
トポインタWP はメモリ要素21を指しているので、デ
ータ1aはメモリ要素21に書き込まれている。リード
ポインタRP ,ライトポインタWP をどこに移すかの制
御は、図1のポインタ制御部9によってなされる。
【0021】本発明では、無効データが転送されて来た
時にはライトポインタWP を移動(更新)せず、有効デ
ータが転送されて来た時には次のメモリ要素へ移動する
という制御をする。ポインタ制御部9は、転送されて来
たのが無効データか有効データかを、ライン差算出部1
1から提供されるライン差(無効データのラインサイズ
34)に関する情報により判断する。
時にはライトポインタWP を移動(更新)せず、有効デ
ータが転送されて来た時には次のメモリ要素へ移動する
という制御をする。ポインタ制御部9は、転送されて来
たのが無効データか有効データかを、ライン差算出部1
1から提供されるライン差(無効データのラインサイズ
34)に関する情報により判断する。
【0022】図3(ロ)は、次のデータ1bが転送され
て来た時の状態を表しているが、これは無効データのラ
インサイズ34に属するデータであることより無効デー
タであることが知れるから、ライトポインタWP は移動
(更新)されない。そのため、データ1bはデータ1a
の上に上書きされることとなり、データ1aは消える。
無効データが転送されて来る限り、同様の動作が続く。
図3(ハ)は、最後の無効データ1fが転送されて来た
時の状態を表している。これが書き込まれても、依然と
してライトポインタWP は移動されない。
て来た時の状態を表しているが、これは無効データのラ
インサイズ34に属するデータであることより無効デー
タであることが知れるから、ライトポインタWP は移動
(更新)されない。そのため、データ1bはデータ1a
の上に上書きされることとなり、データ1aは消える。
無効データが転送されて来る限り、同様の動作が続く。
図3(ハ)は、最後の無効データ1fが転送されて来た
時の状態を表している。これが書き込まれても、依然と
してライトポインタWP は移動されない。
【0023】ラインサイズ34分の(つまり、ライン差
分の)無効データの書込みが終わった後に転送されて来
るデータは、用紙31に印刷可能なデータ(有効デー
タ)ということになる。図3(ニ)は、その最初のデー
タ1gが転送されて来た時の状態を表している。データ
1gがメモリ要素21に書き込まれると、ライトポイン
タWP は次のメモリ要素22に移動される。ライトポイ
ンタWP がメモリ要素21から離れ、データ1gは読み
出し得る状態となるから、リードポインタRP がnull2
0からメモリ要素21へと移動されて来る。
分の)無効データの書込みが終わった後に転送されて来
るデータは、用紙31に印刷可能なデータ(有効デー
タ)ということになる。図3(ニ)は、その最初のデー
タ1gが転送されて来た時の状態を表している。データ
1gがメモリ要素21に書き込まれると、ライトポイン
タWP は次のメモリ要素22に移動される。ライトポイ
ンタWP がメモリ要素21から離れ、データ1gは読み
出し得る状態となるから、リードポインタRP がnull2
0からメモリ要素21へと移動されて来る。
【0024】図3(ホ)は、バッファメモリ7の全メモ
リ要素21〜24にデータが書き込まれた状態を示して
いる。この時には、ライトポインタWP はnull20に移
される。図3(ヘ)は、データ1gが読み出され、プリ
ンタ15へ出力された状態を表している。データ1gが
読み出し済みとなり、リードポインタRP は次のデータ
1hのところへ移動されるので、ライトポインタWP は
メモリ要素21へ移動される。ここには、次のデータ1
nが書き込まれることになる。以後、有効データが転送
されて来る限り、同様の動作が続けられる。
リ要素21〜24にデータが書き込まれた状態を示して
いる。この時には、ライトポインタWP はnull20に移
される。図3(ヘ)は、データ1gが読み出され、プリ
ンタ15へ出力された状態を表している。データ1gが
読み出し済みとなり、リードポインタRP は次のデータ
1hのところへ移動されるので、ライトポインタWP は
メモリ要素21へ移動される。ここには、次のデータ1
nが書き込まれることになる。以後、有効データが転送
されて来る限り、同様の動作が続けられる。
【0025】以上のように各ポインタが制御されるの
で、バッファメモリ7に無効データが転送されて来てい
る間は、次々と同じメモリ要素に上書きされて消されて
しまい、プリンタ15へ送られることはない。送られる
のは、用紙31の範囲に入る有効データだけである。従
って、用紙31には、画像が乱れることなく印刷され
る。
で、バッファメモリ7に無効データが転送されて来てい
る間は、次々と同じメモリ要素に上書きされて消されて
しまい、プリンタ15へ送られることはない。送られる
のは、用紙31の範囲に入る有効データだけである。従
って、用紙31には、画像が乱れることなく印刷され
る。
【0026】本発明では、ライン差算出部11によって
イメージデータ30のラインサイズと用紙31のライン
サイズとの差を算出し、それを基にポインタを制御する
ものであるから、イメージデータ30のラインサイズは
一定でなくとも適用することが出来る。例えば、メモリ
3のイメージデータ30が、ラインサイズがL1 のイメ
ージデータからラインサイズがL2 のイメージデータに
変わった場合には、ライン差算出部11でライン差を算
出する際のイメージデータのラインサイズの値として、
L2 を使用すれば対応できる。従って、本発明は、常に
一定のラインサイズのデータを受信して印刷するタイプ
のプリンタのみならず、用紙サイズに応じたラインサイ
ズのデータを受信して印刷するタイプのプリンタに対し
ても適用可能である。
イメージデータ30のラインサイズと用紙31のライン
サイズとの差を算出し、それを基にポインタを制御する
ものであるから、イメージデータ30のラインサイズは
一定でなくとも適用することが出来る。例えば、メモリ
3のイメージデータ30が、ラインサイズがL1 のイメ
ージデータからラインサイズがL2 のイメージデータに
変わった場合には、ライン差算出部11でライン差を算
出する際のイメージデータのラインサイズの値として、
L2 を使用すれば対応できる。従って、本発明は、常に
一定のラインサイズのデータを受信して印刷するタイプ
のプリンタのみならず、用紙サイズに応じたラインサイ
ズのデータを受信して印刷するタイプのプリンタに対し
ても適用可能である。
【0027】図2の例では、イメージデータ30の右上
隅に用紙31の右上隅を合わせて印刷しているが、イメ
ージデータ30の任意の領域を印刷することも可能であ
る。図4は、イメージデータの任意の領域を用紙にプリ
ントすることが出来ることを説明する図である。38は
印刷されるデータ、SはDMA転送開始アドレスであ
る。印刷する領域は、DMA転送開始アドレスSをどの
位置に選ぶかによって選定できる。図4(ハ)は図2の
場合に相当する。
隅に用紙31の右上隅を合わせて印刷しているが、イメ
ージデータ30の任意の領域を印刷することも可能であ
る。図4は、イメージデータの任意の領域を用紙にプリ
ントすることが出来ることを説明する図である。38は
印刷されるデータ、SはDMA転送開始アドレスであ
る。印刷する領域は、DMA転送開始アドレスSをどの
位置に選ぶかによって選定できる。図4(ハ)は図2の
場合に相当する。
【0028】図4(ロ)の場合は、左端より34Aのサ
イズだけ進んだ位置にDMA転送開始アドレスSを選定
した場合である。印刷されるデータ38の右端からイメ
ージデータ30の右端までのサイズを34Bとすると、
34A+34Bが、ライン差算出部11で算出したライ
ン差(つまり、無効データのラインサイズ34)に相当
している。図4(ロ)の場合は、34Aのサイズをライ
ン差算出部11で算出したライン差より小さい値に決め
ているわけであるが、このように決めるということは、
無効データを両端に振り分けることを意味することにな
る。図4(ニ)は、DMA転送開始アドレスSをイメー
ジデータ30の内部に選定した場合を示している。
イズだけ進んだ位置にDMA転送開始アドレスSを選定
した場合である。印刷されるデータ38の右端からイメ
ージデータ30の右端までのサイズを34Bとすると、
34A+34Bが、ライン差算出部11で算出したライ
ン差(つまり、無効データのラインサイズ34)に相当
している。図4(ロ)の場合は、34Aのサイズをライ
ン差算出部11で算出したライン差より小さい値に決め
ているわけであるが、このように決めるということは、
無効データを両端に振り分けることを意味することにな
る。図4(ニ)は、DMA転送開始アドレスSをイメー
ジデータ30の内部に選定した場合を示している。
【0029】図4で示した例は、すべてイメージデータ
の1箇所の領域のデータを用紙31に印刷する例である
が、複数箇所のデータを集めて来て、用紙31内に印刷
することも出来る。図5に、イメージデータの離れた複
数箇所のデータを用紙内に印刷する場合の図を示す。符
号は図4のものに対応し、38−1〜38−4は印刷さ
れるデータ、33A〜33Dは有効データのラインサイ
ズ、34A〜34Dは無効データのラインサイズであ
る。
の1箇所の領域のデータを用紙31に印刷する例である
が、複数箇所のデータを集めて来て、用紙31内に印刷
することも出来る。図5に、イメージデータの離れた複
数箇所のデータを用紙内に印刷する場合の図を示す。符
号は図4のものに対応し、38−1〜38−4は印刷さ
れるデータ、33A〜33Dは有効データのラインサイ
ズ、34A〜34Dは無効データのラインサイズであ
る。
【0030】図5(ロ)はイメージデータの1箇所の領
域のデータを用紙31に印刷する例であるが、図5
(イ)との対比のために描かれている。図5(イ)のよ
うにイメージデータの複数箇所のデータを用紙31に印
刷しようとする場合は、ライン差算出部11でライン差
を算出すると、それを複数に分割する。この例の場合、
無効データのラインサイズ34は、34A,34B,3
4C,34Dの4つに分割されている。一方、有効デー
タのラインサイズ33も、33A,33B,33C,3
3Dの4つに分割される。以上の分割は、必ずしも等分
割でなくともよい。
域のデータを用紙31に印刷する例であるが、図5
(イ)との対比のために描かれている。図5(イ)のよ
うにイメージデータの複数箇所のデータを用紙31に印
刷しようとする場合は、ライン差算出部11でライン差
を算出すると、それを複数に分割する。この例の場合、
無効データのラインサイズ34は、34A,34B,3
4C,34Dの4つに分割されている。一方、有効デー
タのラインサイズ33も、33A,33B,33C,3
3Dの4つに分割される。以上の分割は、必ずしも等分
割でなくともよい。
【0031】そして、メモリ3からバッファメモリ7へ
転送する際、ポインタ制御部9は、無効データのライン
サイズ34Aの間に転送されて来るデータは無効データ
と判断して、ライトポインタWP を移動しない。しか
し、有効データのラインサイズ33Aの間に転送されて
来るデータは有効データと判断して、ライトポインタW
P を移動する。以下同様にポインタを制御することによ
り、離れた複数箇所のデータを用紙31内に印刷するこ
とが出来る。
転送する際、ポインタ制御部9は、無効データのライン
サイズ34Aの間に転送されて来るデータは無効データ
と判断して、ライトポインタWP を移動しない。しか
し、有効データのラインサイズ33Aの間に転送されて
来るデータは有効データと判断して、ライトポインタW
P を移動する。以下同様にポインタを制御することによ
り、離れた複数箇所のデータを用紙31内に印刷するこ
とが出来る。
【0032】このようにして印刷された画像は、元の画
像を間隔をおいて縦方向に複数箇所切り抜き、それを間
隔を詰めて寄せ集めた画像となり正確ではないが、イメ
ージデータの左端から右端までの全体像を推測的に認識
し得るには便利な画像となる。図5(ロ)の場合、無効
データのラインサイズ34の部分の画像は完全に欠落す
るから、ここにどのような画像があったのかを推測する
てがかりはない。
像を間隔をおいて縦方向に複数箇所切り抜き、それを間
隔を詰めて寄せ集めた画像となり正確ではないが、イメ
ージデータの左端から右端までの全体像を推測的に認識
し得るには便利な画像となる。図5(ロ)の場合、無効
データのラインサイズ34の部分の画像は完全に欠落す
るから、ここにどのような画像があったのかを推測する
てがかりはない。
【0033】
【発明の効果】以上述べた如く、本発明のプリンタ制御
装置によれば、メモリに展開されているイメージデータ
のラインサイズとプリンタにセットされている用紙のラ
インサイズとのライン差を算出するライン差算出部を設
け、出力部のバッファメモリのライトポインタWP を、
用紙サイズに入らないデータ(無効データ)が転送され
て来た時は移動せず、用紙サイズに入るデータ(有効デ
ータ)が転送されて来た時に移動するよう制御するの
で、無効データはバッファメモリ内で消滅させられ、プ
リンタへは有効データのみが出力される。従って、プリ
ンタでは、用紙サイズに入るだけの画像が乱れることな
く印刷される。
装置によれば、メモリに展開されているイメージデータ
のラインサイズとプリンタにセットされている用紙のラ
インサイズとのライン差を算出するライン差算出部を設
け、出力部のバッファメモリのライトポインタWP を、
用紙サイズに入らないデータ(無効データ)が転送され
て来た時は移動せず、用紙サイズに入るデータ(有効デ
ータ)が転送されて来た時に移動するよう制御するの
で、無効データはバッファメモリ内で消滅させられ、プ
リンタへは有効データのみが出力される。従って、プリ
ンタでは、用紙サイズに入るだけの画像が乱れることな
く印刷される。
【0034】また、メモリ3に展開されているイメージ
データのラインサイズが変わると、ライン差算出部11
で算出するライン差の値が変わるだけで、同様の動作を
するから、やはりイメージデータの一部の画像が用紙内
に乱れることなく印刷される。即ち、本発明には、イメ
ージデータは一定のラインサイズのものでなければなら
ないなどという制約はない。従って、常に一定のライン
サイズのイメージデータを受信して印刷するタイプのプ
リンタのみならず、用紙サイズに応じたラインサイズの
イメージデータを受信して印刷するタイプのプリンタに
対しても適用可能なプリンタ制御装置となる。
データのラインサイズが変わると、ライン差算出部11
で算出するライン差の値が変わるだけで、同様の動作を
するから、やはりイメージデータの一部の画像が用紙内
に乱れることなく印刷される。即ち、本発明には、イメ
ージデータは一定のラインサイズのものでなければなら
ないなどという制約はない。従って、常に一定のライン
サイズのイメージデータを受信して印刷するタイプのプ
リンタのみならず、用紙サイズに応じたラインサイズの
イメージデータを受信して印刷するタイプのプリンタに
対しても適用可能なプリンタ制御装置となる。
【図1】 本発明のプリンタ制御装置を示す図
【図2】 本発明の動作の詳細を説明するための図
【図3】 バッファメモリの動作を説明する図
【図4】 イメージデータの任意の領域を用紙にプリン
トすることが出来ることを説明する図
トすることが出来ることを説明する図
【図5】 イメージデータの離れた複数箇所のデータを
用紙内に印刷する場合の図
用紙内に印刷する場合の図
【図6】 イメージデータのサイズより小さいサイズの
用紙に印刷する場合の図
用紙に印刷する場合の図
1…プリンタ制御装置、2…CPU、3…メモリ、4…
出力部、5…DMA制御装置、6…バス、7…バッファ
メモリ、8…P/S変換器、9…ポインタ制御部、10
…出力制御部、11…ライン差算出部、12…バイトカ
ウントレジスタ、13…DMA制御部、14…アドレス
レジスタ、15…プリンタ、20…null、21〜24…
メモリ要素、30…イメージデータ、31…用紙、32
…画像、33,33A,33B,33C,33D…有効
データのラインサイズ、34,34A,34B,34
C,34D…無効データのラインサイズ、35…ライン
幅データ、36…水平同期信号、37…垂直同期信号、
38…印刷されるデータ、S…DMA転送開始アドレ
ス、RP …リードポインタ、WP …ライトポインタWP
出力部、5…DMA制御装置、6…バス、7…バッファ
メモリ、8…P/S変換器、9…ポインタ制御部、10
…出力制御部、11…ライン差算出部、12…バイトカ
ウントレジスタ、13…DMA制御部、14…アドレス
レジスタ、15…プリンタ、20…null、21〜24…
メモリ要素、30…イメージデータ、31…用紙、32
…画像、33,33A,33B,33C,33D…有効
データのラインサイズ、34,34A,34B,34
C,34D…無効データのラインサイズ、35…ライン
幅データ、36…水平同期信号、37…垂直同期信号、
38…印刷されるデータ、S…DMA転送開始アドレ
ス、RP …リードポインタ、WP …ライトポインタWP
Claims (1)
- 【請求項1】 イメージデータが展開されるメモリと、
該メモリからDMA転送されるイメージデータをバッフ
ァメモリで受け、プリントするに適合した形式およびタ
イミングでプリンタに出力する出力部と、前記DMA転
送の開始アドレスを記録するアドレスレジスタおよびイ
メージデータの未転送データ量を記録するバイトカウン
トレジスタとを少なくとも具えるDMA制御装置とを有
するプリンタ制御装置において、メモリに展開されてい
るイメージデータのラインサイズとプリンタにセットさ
れている用紙のラインサイズとの差を算出するライン差
算出部と、算出したライン差を参考にして、前記バッフ
ァメモリのライトポインタを、イメージデータ内の用紙
サイズに対応した領域の外にあるデータが転送されて来
た時は移動せず、該領域内にあるデータが転送されて来
た時は移動するよう制御するポインタ制御部とを具えた
ことを特徴とするプリンタ制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5179841A JPH079709A (ja) | 1993-06-25 | 1993-06-25 | プリンタ制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5179841A JPH079709A (ja) | 1993-06-25 | 1993-06-25 | プリンタ制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH079709A true JPH079709A (ja) | 1995-01-13 |
Family
ID=16072841
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5179841A Pending JPH079709A (ja) | 1993-06-25 | 1993-06-25 | プリンタ制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH079709A (ja) |
-
1993
- 1993-06-25 JP JP5179841A patent/JPH079709A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH0247154B2 (ja) | ||
| US4975858A (en) | Controller for a printer for printing data received from an external data processor | |
| JPH079708A (ja) | プリンタ制御装置 | |
| US5229865A (en) | Facsimile apparatus | |
| JP3957936B2 (ja) | データ転送装置及び方法 | |
| JP3334258B2 (ja) | プリンタ制御装置および方法 | |
| JP3268644B2 (ja) | Dma制御装置 | |
| JPS62146074A (ja) | 多色プリンタ制御方式 | |
| JPH1027075A (ja) | プリンタ制御装置 | |
| JP2000108416A (ja) | 信号処理装置および信号処理方法 | |
| JP2657138B2 (ja) | プリンタ | |
| JPH09179813A (ja) | Dma転送装置 | |
| JPS631614B2 (ja) | ||
| JPH09240072A (ja) | プリンタ制御装置及びその制御方法及びプリンタ装置 | |
| JPH07254061A (ja) | 画像処理装置のためのdma転送装置 | |
| JPH06106787A (ja) | プリンタ | |
| JPH11320985A (ja) | 出力方法及び装置並びに記憶媒体 | |
| JPH04293156A (ja) | リカバリ印刷方法 | |
| JP2002251265A (ja) | プリンタ動作指令装置 | |
| JPH0546143B2 (ja) | ||
| JPH10119384A (ja) | 画像形成装置 | |
| JPH11249832A (ja) | 画像形成装置 | |
| JPH09288639A (ja) | 情報処理装置 | |
| JP2002254726A (ja) | プリンタ制御装置とその制御方法 | |
| JPH1091365A (ja) | プリンタ制御装置 |