JPS6370381A - イメ−ジ・デ−タの回転方法 - Google Patents

イメ−ジ・デ−タの回転方法

Info

Publication number
JPS6370381A
JPS6370381A JP61214232A JP21423286A JPS6370381A JP S6370381 A JPS6370381 A JP S6370381A JP 61214232 A JP61214232 A JP 61214232A JP 21423286 A JP21423286 A JP 21423286A JP S6370381 A JPS6370381 A JP S6370381A
Authority
JP
Japan
Prior art keywords
buffer
bits
image data
line
rectangular area
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
Application number
JP61214232A
Other languages
English (en)
Inventor
恭正 林
岡 克正
宏 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP61214232A priority Critical patent/JPS6370381A/ja
Priority to DE3788257T priority patent/DE3788257T2/de
Priority to EP87308036A priority patent/EP0260883B1/en
Publication of JPS6370381A publication Critical patent/JPS6370381A/ja
Priority to US07/364,550 priority patent/US4947344A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • G06T3/606Rotation of whole images or parts thereof by memory addressing or mapping

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 A、産業上の利用分野 本発明は、文書のソース矩形領域のイメージ・データの
回転に関する。更に具体的に言うならば、本発明はソー
ス矩形領域のイメージ・データの90″又は270aの
回転に関する。そして1回転されたイメージ・データは
、互いににビットだけ雛されている境界線により区切ら
れているイメージ記憶装置の宛先矩形領域に記憶される
。ここで境界線相互間のにビットは、イメージ記憶装置
の読取り書込動作の間例えばバイト又はワードの如き−
グループのビットとして取扱われる。
B、従来技術及び問題点 メモリ領域に記憶されているイメージ・データを90’
 、180’又は2700だけ回転し、そしてこの回転
されたイメージ・データを別のメモリ領域に記憶する多
くの努力がなされてきた。伝統的なイメージ回転処理に
おいては、回転されるべきイメージ・データは1ビット
づつ回転された。
即ち、所望のイメージの回転を行うために、ソース・メ
モリ領域のイメージ・データの第1番目のビットがとり
出されて宛先メモリ領域に記憶される。次に、第2番目
のビットがとり出されて宛先メモリ領域に記憶され、以
下これが行なわれる。
このビットづつの処理は長い処理時間を必要とする。処
理時間を改善するために、特開昭57−130144号
に開示されている解決策が提案された。この公報では、
イメージ・データ・メモリに記憶されている元のイメー
ジ・データはワード単位でとり出され、そしてこのとり
出されたワードは回転メモリに記憶されるa1ワードは
Nビットより成り、そして回転メモリはMワード記憶す
る。
イメージ・データ・メモリ即ちソース・メモリに記憶さ
れたイメージ・データはワードづつ回転メモリに記憶さ
れ、そしてこの記憶されたイメージ・データは、90°
又は27o°の回転角度により決定される方向で回転メ
モリから読出される。そして、米国特許第408419
5号は、ドツト・プリンタのためのイメージ回転システ
ムを示しており、ここで文書のイメージ・データはペー
ジ・バッファに一旦記憶され、そしてここからイメージ
・データの複数ペル・ラインが水平帯バッファに記憶さ
れる。このバッファは、このプリンタのインク・ジェッ
ト・ノズルの数に等しいデータ・ラインを有し且つ複数
のバイト別に分けられている。バイト別の1つおきのバ
イトは90°回転手段により回転されそして垂直帯バッ
ファのうちの一方へ転送される。これらの方法は、イメ
ージ・データ・メモリと、回転メモリからの回転後のイ
メージ・データが記憶されるメモリ領域との読取り及び
書込み動作が、Mビットの回転イメージ・データのアド
レスがメモリ領域上で自由に割当てられるようにビット
毎になされる場合には効果がある。しかしながら、もし
もイメージ・データ・メモリ及びメモリ領域の両方が、
これらの読取り及び書込み動作をするに当りバイトづつ
若しくはワードづつ行なわれるように、バイト境界若し
くはワード境界を有している時には第2図に示すような
開運が生じる6第2図において、イメージ13は90’
回転されそしてメモリ領域11の領域16に記憶され、
そしてこのメモリ領域11はバイト境界14を有すると
する。イメージ13の回転を行なうためには、イメージ
13の1バイト12は領域16のバイト位置15に記憶
されねばならない、この場合には、この1バイト位置1
5はバイト境界14に一致しておらず、従って1バイト
を記憶するのに2つの書込み動作17が必要となりそし
て各バイト毎に複雑なマスクシフト及び残りのビットの
記憶動作が必要とされ、その結果動作は時間がかかり且
つ複雑となる。
C0問題点を解決するための手段 本発明によると、ホスト・プロセッサは1ページの文書
のイメージ・データ及びイメージ・オーダを表示端末装
置に送る。イメージ・オーダは、1ページの文書の中の
ソース矩形領域の座標位置及び寸法を指定し、更に上記
ソース矩形領域のイメージ・データが90@、180°
若しくは270°回転されて記憶されるイメージ記憶装
置の宛先矩形領域の座標位置を指定する。このイメージ
記憶装置は、表示ユニットの表示バッファとして勤らき
そして表示ユニットは、イメージ記憶装置の宛先矩形領
域のイメージ・データを表示する。
イメージ記憶装置は、互いににビットだけ離されている
境界線により区切られている。2本の境界線の間のにビ
ットは、このイメージ記憶装置の読取り及び書込み動作
の間1グループのビット例えば1バイト若しくは1ワー
ド等として取扱われる。
即ち、読取り及び書込動作はバイト単位で若しくはワー
ド単位でなされる。ソース矩形領域のイメージ・データ
は、文書の水平方向の総ベル数に対応する水平方向のビ
ット及び垂直方向のにビットを有する第1バッファに記
憶される。第1バッファは、夫々K×Kビットを有する
複数個の正方形ブロックに分けられている。第1バッフ
ァ内のイメージ・データは、後述するように1回転され
そしてイメージ記憶装置に記憶される。
表示端末装置の制御装置例えばマイクロ・プロセッサは
、ソース矩形領域の座標データ及び寸法並びに宛先矩形
領域の座標位置を解読し、そしてソース矩形領域の1つ
のエツジの領域例えば上端のエツジ領域が回転された後
に(例えば時計方向に90°)記憶される所の宛先矩形
領域のエツジの領域とこのイメージ記憶装置のバイト若
しくはワード境界との間のスペース(Mビットで表わす
)を見い出す、即ち検出する。マイクロ・プロセッサは
、ソース矩形領域の上端のエツジの領域のイメージ・デ
ータを第1バッファに記憶する。ここで上端のエツジの
領域の上側にMビットに等しいスペースが与えられる。
マイクロ・プロセッサは、第1バッファの上記上端のエ
ツジ領域を記憶しているブロックの1つのK×Kビット
を取出して、K×Kビットの回転バッファに記憶する。
選択された回転を行なうために、マイクロ・プロセッサ
は1回転角度に従う方向で回転バッファからにビットの
グループの夫々逐次取出しそしてこの取出した各にビッ
トのグループを、K×Kビットの第2バッファに記憶す
る。Kビット・グループをイメージ記憶装置に記憶する
前に上記スペースのビットを0ビットに変換する。そし
て、マイクロ・プロセッサは、イメージ・ビット及びO
ビットを含む各にビット・グループを取り出しそしてイ
メージ記憶装置に記憶する。
D、実施例の説明 第1図は本発明に従うブロック図である。ホスト・プロ
セッサ21は、中央処理ユニットであり。
そしてこれに通信線を介して接続された複数の表示端末
装置22を制御する。表示端末装置22は。
レジスタ23、計算ユニット24、レジスタ25゜デー
タ伸張ユニット26、マイクロ・プロセッサ27、第1
バッファ即ち8ライン・バッファ28゜回転バッファ2
9、第2バッファ即ち作業用バッファ31.イメージ記
憶装置30、及び表示ユニット(図示せず)を有する。
イメージ記憶装置30は1表示ユニットのバッファとし
て働らき、そして表示ユニットは、このイメージ記憶装
置30に記憶されている宛先矩形領域の回転イメージ・
データを表示する。
マイクロ・プロセッサ28は、上記各構成体との接続線
を介して各構成体のための種々な制御動作を行なう。し
かしながら、これらの制御線は図面を簡略にするために
図示されていない。7にバイトの通信バッファ34がホ
スト・プロセッサ21及び表示端末装置22の間に示さ
れている。この通信バッファ34は、ホスト・プロセッ
サ21及び表示端末装置22の間のインターフェイスと
して働く通信用インターフェイス(図示せず)に設けら
れている。イメージ・オーダ及び1ページの文書を表わ
す圧縮された形のイメージ・データの両方は通信インタ
ーフェイスに供給されそしてここからイメージ・オーダ
は直ちに表示端末装置22に送られ、そして圧縮された
イメージ・データは通信バッファ34に保持される。計
算ユニット24が、レジスタ23にあるデータを計算す
ることにより、イメージ回転処理を制御するためのパラ
メータを発生し、パラメータがレジスタ25に記憶され
終え、その結果表示端末装置22がイメージ回転処理の
準備を終えた後に、マイクロ・プロセッサ27は、通信
バッファ34に記憶されている圧縮イメージ・データの
伸張を行なうように伸張ユニット26を制御する。
第3図は、1ページの文書36のソース矩形領域35及
びイメージ記憶装置30の宛先矩形領域35′を示す、
イメージ記憶装置30は、互いににビットだけ離されて
いる境界線301により区切られている。説明中の実施
例では、8ビットかにビットの例示的な数として用いら
れる。即ち、イメージ記憶装置30の境界線301は、
バイト境界を意味し、そしてこのイメージ記憶装置30
の読取り及び書込み動作はバイト単位で行なわれる。第
1図に示す8ライン・バッファは、文書36の水平方向
の惚ペル数を記憶するための水平方向のビット数例えば
2:56x8ビット及び垂直方向の8ビットを有する。
8ライン・バッファ28は、夫々8X8ビットを有する
複数個の正方形ブロックに分けられている。第3図に示
すソース矩形領域35を含む文書36のペル・ラインの
第1番目のベル位置は、8ライン・バッファ28の水平
方向のデータ・ラインの第1番目のビット位置に整列さ
れ、そしてイメージ・データの8ペル・ライン・グルー
プの夫々は8ライン・バッファに逐次的に記憶され、こ
れにより文書36は前述の如く境界線301により仮想
的に区切られる。従って、垂直方向のビット境界線30
1が文書36に重ねて表示されている。又、第3図は、
アドレス(Xs、 Ys)にある巾W及び高さHのソー
ス矩形領域35のイメージ・データが時計方向に90’
回転されて、アドレス(X o、 Y o )の宛先矩
形領域35′に記憶されることを示している。再び第1
図を参照するに、ホスト・プロセッサ21は表示端末装
置22にイメージ・オーダを前爪って送る。イメージ・
オーダは1ペ一ジ文書36を表わす圧縮された形のデー
タ・ストリームからソース矩形領域35のイメージ・デ
ータを取り出し、ソース矩形領域3Sのイメージ・デー
タを回転角度90”、180@又は270”だけ回転し
、そしてイメージ記憶装置30の宛先矩形領域35′に
、回転されたイメージ・データを記憶することを表示端
末装置22に指令する。イメージ・オーダは又次のこと
を指定する(第3図参照)。
1ペ一ジ文書36上のソース矩形領域35の座標位置(
Xs、 Ys) 、巾W及び高さ11゜ソース矩形領域
35の回転されたイメージ・データが記憶されるイメー
ジ記憶装置30の宛先矩形領域35′の座標位E (X
o、 Yo)。
回転角度即ち90°、ユ80’又は270°。
これらのデータは第1図のレジスタ23に記憶される。
第1図の計算ユニット24は、上記データを計算し、そ
してソース矩形領域35の上端のエツジ領域の処理のた
めの以下のようなパラメータを発生し、そしてこれらの
パラメータはレジスタ25に記憶される。
(a)文書の最も上のペル・ラインからソース矩形領域
35迄計数したペル・ライン番号。
このペル・ラインの番号を以下ポインタ1と呼ぶ。最初
、このポインタ1はソース矩形領域35の最初のペル・
ラインを指定し、そして処理の進行につれて次のペル・
ラインを指定するように歩進される。
(b)伸張された1ペル・ラインのイメージ・データが
書込まれる8ライン・バッファ28のペル・ライン番号
このバッファ28のペル・ライン番号を以下ポインタ2
と呼ぶ。時計方向に90″′回転する場合には、ポイン
タ2の初期値は第4図に示すようにN+1 (ビット)
に等しい。このポインタ2も又処理の進行につれて歩進
される6(c) ビット・ライン即ち1バイトが取り出
される作業用バッファ31のビット・ライン番号。この
ビット・ライン番号を以下ポインタ3と呼ぶ。
時計方向の90″の回転においては、このポインタ3の
初期値は第4図に示す如(N+1 (ビット)に等しい
、このポインタ3も又処理の進行につれて歩進される。
(d)8X8ビット即ち1ブロツクのイメージ・データ
が回転バッファ29に取り出される8ライン・バッファ
28のブロック番号。このブロック番号を以下ポインタ
4と呼び、そしてこのポインタ4も又処理の進行につれ
て歩進される。
(e)ブロックを逐次取り出す動作を制御するために用
いられ、ソース矩形領域35の巾W及び高さ工(を表わ
すカウント値。
これらのパラメータ(a)乃至(e)はレジスタ25に
記憶される。これらのパラメータがレジスタ25に記憶
された後、即ち表示端末装置22がイメージ回転処理の
準備を終えた後に、表示端末装置22は1通信バッファ
34に記憶されている1ペ一ジ文書36の圧縮された形
のイメージ・データの処理を開始する。データ圧縮及び
伸張方式は、この分野で周知の1次元若しくは2次元の
圧縮及び伸張方式のいづれでもよい。従ってこのデータ
圧縮及び伸張方式の詳細は本明細書では説明しない。第
1.3.4.5及び6図を参照して本発明に従う動作を
詳細に説明すると、マイクロ・プロセッサ27は、第5
図のブロック501で動作を開始する。ブロック502
において、マイクロ・プロセッサ27の制御のもとに、
計算ユニット24は、レジスタ23に記憶されているデ
ータを計算しそして以下に示すパラメータ(a)乃至(
e)を発生する。
第4図に示す動作例の場合にレジスタ25に記憶される
パラメータは次の通りである。
(a)ポインタ1の初期値=Y、。
(b)ポインタ2の初期値=M+1゜ (c)ポインタ3の初期値=N+1゜ (d)ポインタ4の初期値=2゜ (e)水平方向のカウント値=W。垂直方向のカウント
値=H6 第4図に示す如く、Mビットは、イメージ記憶装置30
の境界線と宛先矩形領域35′の右側エツジとの間のス
ペース即ちビット数を表わし、そしてNビットはソース
矩形領域35の左側エツジと境界線301との間のビッ
ト数を表わす。マイクロ・プロセッサ27は、データX
8、ys、w。
H,Xo及びYo並びに境界線301のアドレスを計算
ユニット24において計算することによって値M及びN
を発生する。イメージ記憶装置30におけるMビットは
、回転バッファ29におけるMラインを意味し、そして
回転バッファ29におけるNビットは、作業用バッファ
31におけるNラインを意味する。更に述べると、ソー
ス矩形領域35を含む文書36のペル・ラインの第1番
目のベル位置は、8ライン・バッファ28の水平方向の
データ・ラインの第1番目のビット位置に整列され、そ
してイメージ・データの8ペル・ライン・グループの夫
々は8ライン・バッファに逐次的に記憶さね、これによ
り文書36は前述の如く境界線301により仮想的に区
切られる。8ライン・バッファ28への文書36の上側
エツジ領域の書込動作はスペース即ちMラインを与える
ように行なわれる。後にサブ・ブロック33として説明
するブロック#2のNビットは回転後無視されるビット
である。
マイクロ・プロセッサ27は、通信バッファ34の圧縮
イメージ・データを文書36の一番上のペル・ラインか
ら伸張し始める。マイクロ・プロセッサ27は、伸張動
作が進むにつれて、伸張されつつあるペル・ラインを計
数する。マイクロ・プロセッサ27は、このカウント値
がポインタ1の値即ちYsに等しくなる迄、伸張イメー
ジ・データを8ライン・バッファ28に記憶しない、カ
ウント値がポインタ1の値Ysに等しくなった時に、ペ
ル・ラインYsの文書の左端から右端迄のイメージ・デ
ータが、ポインタ2の値M+1によって指定されている
8ライン・バッファ28のラインに書き込まれ、そして
マイクロ・プロセッサ27はポインタ1の値をys+1
に歩進し、そしてカウント値を歩進する。又、マイクロ
・プロセッサ27はポインタ2の値をM+2に歩進する
これら歩進されたポインタ1の値及びカウント値が等し
いので、ペル・ラインYS+1の全体のイメージ・デー
タが、ポインタ2により指定されている8ライン・バッ
ファ28のM+2ラインに書き込まれる。このようにし
て、ペル・ラインYsで開始したペル・ラインの伸張イ
メージ・データは、8ライン・バッファ28にこれが一
杯になる迄逐次記憶される。この動作は第5図のブロッ
ク503乃至508において示されている。ブロック5
03において、マイクロ・プロセッサ27はソース矩形
領域35の処理が終了したか否かを調べる。もしもそう
でなければ圧縮イメージ・データのうち1ペル・ライン
分がブロック505で伸張される。ブロック506にお
いて、マイクロ・プロセッサ27は、伸張されたペル・
ラインのカウント値がポインタ1の値に等しいか否かを
調べる。もしもそうでないならば、動作はブロック50
3に戻る。もしもそうであれば、ブロック507におい
て、伸張された1ペル・ラインのイメージ・データは8
ライン・バッファ28に書込まれる。マイクロ・プロセ
ッサ27は8ライン・バッファ28が一杯であるか否か
をブロック508で調べる。もしもそうでなければ、動
作はブロック503に戻る。もしもそうであれば、マイ
クロ・プロセッサ27はブロック509において、8ラ
イン・バッファ28のイメージ・データの回転処理を開
始する。もしもブロック503の出力がイエスの場合に
は、マイクロ・プロセッサ27は、ブロック504にお
いて8ライン・バッファ28が空であるか否かを調べる
。もしもイエスであればこの動作はブロック510で終
了する。もしもノーであれば、動作はブロック509に
進む。
ブロック509の詳細な動作は第6図に示されている。
動作はブロック600で開始する。ブロック601にお
いて、マイクロ・プロセッサ27は、第4図に示すよう
に、ポインタ4によって指されている8ライン・バッフ
ァ28のうちのブロック#2の8X8ビット全てを取り
出し、そしてこれら8×8ビット全てを回転バッファ2
9に書き込む。ブロック602において、マイクロ・プ
ロセッサ27は、回転角度により指定される方向で回転
バッファ29の8X8ビットを取り出し作業用バッファ
31へ書込む。時計方向に90’の回転を行なう場合に
は、回転バッファ29の左端の垂直な8ビットが最初に
取り出される。この取り出された8ビットのうち、サブ
・ブロック32のビットは0ビットに変換される。そし
てこのOビットを含む左端の垂直な8ビットは、作業用
バッファ31の水平方向の最初のビット・ラインに書込
まれ、そして次の垂直な8ビットが回転バッファ29か
ら取り出され、そしてサブ・ブロック32に含まれてい
る。ビットがOビットに変換されて、これら8ビットは
作業用バッファ31の水平方向の第2のビット・ライン
に書込まれる。結果として、第4図に示す如く1回転バ
ッファ29のイメージ・データを含む8×8ビットは、
90゜の回転角度だけ回転されそして作業用バッファ3
1に記憶される。上述の如く、サブ・ブロック32のビ
ットはOビットに変換されていることに注目されたい。
ブロック603において、マイクロ・プロセッサ27は
ポインタ4を値3に歩進する。この値3は、8ライン・
バッファ28の次のブロック#3を指す。
次に、マイクロ・プロセッサ27は、ブロック604乃
至609において1作業用バッファ31に記憶されてい
るイメージ・データを取り出し、そしてイメージ記憶装
置30に書込む。更に具体的に説明すると、マイクロ・
プロセッサ27は作業用バッファ31にあるソース矩形
領域35のイメージ・データの第1バイトを書込む1バ
イトのアドレス即ち座標位!tW(Xo工、Y、1)を
発生し終えている。アドレス(Xot、 Yoz、)は
、ホスト・プロセッサ21から送られたイメージ・オー
ダに含まれていた宛先矩形領域35′のアドレス(Xo
、Yo)並びにソース矩形領域35の高さを表わすデー
タHに基づいて発生されている。ブロック6゜4におい
て、マイクロ・プロセッサ27はポインタ3を参照する
。これの初期値はN+1である。
そしてマイクロ・プロセッサ27は作業用バッファ31
のN+1データ・ラインの第1番目の1バイトを取出す
(第4図参照)、即ち、マイクロ・プロセッサ27はブ
ロック604において、N+1番目のバイトからバイト
の取出し及び書込み動作を開始する。又、マイクロ・プ
ロセッサ27は、イメージ記憶装置30のアドレス(X
oo、Y8、)にある第1番目の1バイトのうち8−M
ビットを0ビットに変換し、そして作業用バッファ31
がら取出した第1番目の1バイト及びアドレス(XOX
、 Yot)の第1番目の1バイトの論理OR動作を行
うことにより、上記ポインタ3が示す第1番目の1バイ
トをバイト位a (Xo工、YDよ)に芹込む動作を行
なう。イメージ記憶装置3oのうち宛先矩形領域35′
を囲む背景データは、これに重なる各バイトのMビット
が0ビットに変換されているので破壊されないことに注
目さ才tたい。マイクロ・プロセッサ27は、ブロック
605において、この場合カウント値(W)を1だけ減
少して値W−1にする。そしてブロック606において
マイクロ・プロセッサ27はこの逆歩進されたカウント
値がOに等しいか否かを調べる。もしもイエスであれば
、動作はブロック607において終了する。もしもノー
であれば、マイクロ・プロセッサ27はブロック608
においてポインタ3を1だけ歩進しそしてイメージ記憶
装置30のバイト・アドレスを1だけ歩進する。ブロッ
ク609において、マイクロ・プロセッサ27は、作業
用バッファ31が空であるか否かを調べる。もしもノー
であるならば、処理はブロック604に戻される。もし
もイエスであれば、ブロック610において、マイクロ
・プロセッサ27は、作業用バッファ31の一番上のバ
イト・ラインを指すようにポインタ3をセットする。そ
して処理は、ブロック601に戻され、ここでポインタ
4によって指されている次のブロックの8X8ビットが
回転バッファ29に書込まれる。
ブロック604乃至609のループについて更に説明す
ると、ブロック604において1歩進されたポインタ3
 (N+2)により指し示さ九ている作業用バッファ3
1内の第2番目のバイトが。
ブロック609のノー出力に応答して取出される。
そして、イメージ記憶装置3oの第2番目の1バイトの
うち8−Mビットが0ビットに変換され、そしてこれら
第2番目のバイト同志の論理的OR動作が行なわれ、そ
の結果作業用バッファ3−の第2番目の1バイトはイメ
ージ記憶装置3oの第2呑目の1バイトに記憶される作
業用バッファ31の8バイトがイメージ記憶装置30に
記憶され終える迄ブロック604乃至609の動作ルー
プが繰返されることに注目されたい。ブロック609の
イエス出力で示されるように作業用バッファ31の8バ
イトがイメージ記憶装置3oに記憶され終えると、処理
はブロック601に戻され、モして8ライン・バッファ
28の次のブロック(ブロック#3〜#6)が回転バッ
ファ29に逐次書込まれる。8ライン・バッファ28の
最後のブロツク#6の処理の間に、第6図のブロック6
06は1文書36の巾Wのうちの残りビット数即ち未処
理ビット数を表わすカウント値が0に等しくなったこと
即ち巾Wのうちの全てのビットが処理され終えたことを
見い出す。そして、第1番目の8ペル・ラインの処理が
第6図のブロック607で終了され、そして動作は第5
図のブロック503に戻される。ブロック503におい
て、マイクロ・プロセッサ27は、ソース矩形領域35
の処理が終了したか否かを調べる。この場合、ブロック
503の出力はノーであるので、通信バッファ34の圧
縮イメージ・データから8ペル・ラインが伸張されそし
て8ライン・バッファ28に書込まれ、そして上述のよ
うにこの新たな第2番目の8ペル・ラインのイメージ回
転動作が行なわれる。同様にして、文書36のソース矩
形領域35の後続の8ペル・ラインが処理される。各8
ペル・ライン毎に、第5図のブロック503はソース矩
形領域35の処理が終了されたか否かを調べる。このこ
とは、ソース矩形領域35の処理済のペル・ラインの総
数を、この領域35の高さを表わすカウント値I(に比
較することにより行なわれる。もしもブロック503が
イエス出力を生じそしてブロック504がイエス出力を
生じると、このソース矩形領域35の処理はブロック5
10において終了される。
このようにして、ソース矩形領域35の伸張イメージ・
データの最初の8ペル・ラインが8ライン・バッファ2
8に記憶され、回転されそしてイメージ記憶装置W30
の宛先矩形領域35′に記憶され、そしてソース矩形領
域35の伸張イメージ・データの次の8ペル・ラインが
通信バッファ34から8ライン・バッファ28に記憶さ
れ1回転されそしてイメージ記憶装置30に記憶される
。ソース矩形領域35の上方エツジ領域即ち第16目の
8ペル・ラインの処理のためのパラメータだけを説明し
たが、マイクロ・プロセッサ27は後続の8ペル・ライ
ンの処理のためにレジスタ25のパラメータを更新する
。そして、マイクロ・プロセッサ27は、これらを用い
て第1番目の8ペル・ラインの処理と同様にしてソース
矩形領域35の後続即ち第2、第3、第4・・・・番目
の8ペル・ラインの処理をする。これらのパラメータの
値は既に説明した内容に基づいて当業者により容易に考
えられ得るものと考える。従って、これらについては説
明しない。
マイクロ・プロセッサ27がソース矩形領域35を処理
し終えると、マイクロ・プロセッサ27はイメージ回転
処理を終了する。即ち、マイクロ・プロセッサ27は、
ソース矩形領域35と文書36の最後との間のイメージ
・データを無視する。
マ・イクロ・プロセッサ27は、各8X8ビットのブロ
ックがイメージ記憶装置30の宛先矩形領域35′に書
込まれるにつれて表示ユニットの表示画面上に表示する
。回転バッファ29の回転出力データは作業用バッファ
31を介してイメージ記憶袋ff130に書込まれたが
、この回転バッファ29の回転出力データは直接イメー
ジ記憶装置3゜に書込まれることもできる。この場合に
は、ポインタ3の値N+1は回転バッファ29のN+1
ビット位置を指すように制御される。
前述の如く、イメージ記憶装置30の宛先矩形領域35
′の囲りの背景データの破壊を防止するために、各バイ
トをイメージ記憶装置30に書込む前に各バイトのMビ
ットを0ビットに変換することが必要である。説明した
実施例においては、第6図のブロック602に関して説
明したように。
8ビットが作業用バッファ31に書込まれる時にMビッ
トがOビットに変換される6しかしながら、Mビットは
ブロック602の代わりに他の処理工程で0ビットに変
換されることができる。
この変換を、伸張ユニット26から8ペル・ラインを8
ライン・バッファ28に書込む動作において行なうこと
ができる。8ペル・ラインが書込まれる前に、8ライン
・バッファ28の全てのビットが0ビットにリセットさ
れる。次いで、第5図のブロック507において、1ペ
ル・ラインが8ライン・バッファ28に書込まれる。
代わりに、この変換は、8ライン・バッファ28の1ブ
ロツクの8×8ビットを回転バッファ29に書込む第6
図のブロック6o2の書込み動作の間に行なわれること
ができる。最初に、回転バッファ29の全てのビットが
0ビットにリセットされる。そして、8ライン・バッフ
ァ28の1ブロツクから回転バッファ29へのMライン
の書込動作の間に、これらMラインはマスクされ、従っ
てこれらMラインは回転バッファ29のサブ・ブロック
32に書込まれない。次いで、イメージ・ビットを含む
残りのビットがマスクされることなく回転バッファ29
に書込まれ、これによりサブ・ブロック32は0ビット
を含むようになる。
代おりに、この変換は1作業用バッファ31のバイトを
イメージ記憶装置3oに書込む第6図のブロック604
の書込動作において行なわれることができる。作業用バ
ッファ31から1バイトを取り出した後、この1バイト
のうちのMビットが0ビットに変換される。
前述の如く、回転バッファ29の8X8ビットは回転角
度により決まる方向で取り出される。180”の回転の
場合には、回転バッファ29からの取出し動作は一番下
の水平方向の8ビットから一番上の水平方向の8ビット
に向ってなされ、そして作業用バッファ31への書込み
動作は、一番上の水平方向の8ビットを作業用バッファ
31の−I上のビット・ライン即ちバイト位置に書込み
そして−参上の水平方向の8ビットを作業用バッファ3
1の一番下のビット・ラインに書込むようになされる。
時計方向に270”回転する場合には、回転バッファ2
9の右端の垂直な8ビットを作業用バッファ31の一番
上のビット・ラインに記憶し、そして左端の垂直な8ビ
ットを一番下のビット・ラインに記憶するように取出し
及び書込動作が行なわれる。実施例においては、バイト
境界が用いられたが即ちに=8であるとして説明したが
、他の境界例えば16ビット、32ビット等の境界を用
いることもできる。領域35及び35′は矩形領域とし
て説明したが、これら領域は正方形の領域をも含む。
【図面の簡単な説明】
第1図は本発明に従うブロック・ダイアグラムを示す図
、第2図は従来技術の回転方式を示す図、第3図は1ペ
一ジ文書のソース矩形領域及びイメージ記憶装置の宛先
矩形領域を示す図、第4図はソース矩形領域のイメージ
・データを回転し、そしてイメージ記憶装置の宛先矩形
領域に記憶する動作を示す図、第5図は本発明の全体の
処理を示すフローチャート、第6図は8ライン・バッフ
ァとイメージ記憶装置の間のイメージ処理を示すフロー
チャート。 21・・・・ホスト・プロセッサ、22・・・・表示端
末装置、23.2S・・・・レジスタ、24・・・・計
算ユニット、26・・・・データ伸張ユニット、28・
・・・8ライン・バッファ、29・・・・回転バッファ
。 30・・・・イメージ記憶装置、31・・・・作業用記
憶装置、32.33・・・・サブ・ブロック、34・・
・・通信バッファ、35・・・・ソース矩形領域、35
′・・・・宛先矩形領域、36・・・・1ペ一ジ文書。 第1図 ]1 第2図 手続補正書く自発) 昭和61年 9月25日 特許庁長官 黒 1)明 雄 殿 1、事件の表示 昭和61年9月12日提出の特許! (4)ぐ イメージ・データの回転方法 3、補正をする者 事件との関係  特許出願人 4、代理人 6、補正の対象 明細書の発明の詳細な説明の欄 7、補正の内容 (1)明細書の発明の詳細な説明の欄の第8頁の第9〜
10行目の「イメージ・データ及びイメージ・オーダ」
を「イメージ・データ、コマンド情報即ちイメージ・オ
ーダ及び制御データ」と補正する。 (2)同温の第8頁の第10行目の「イメージ・オーダ
は、」を「時計方向に90’回転する場合にはコマンド
情報即ちイメージ・オーダは、″ソース矩形領域を取り
出せ771190度回転せよ″及び″宛先矩形領域に書
込め″を含む。制御データは、Jと補正する。 (3)同温の第9頁の第14行目のrソースJを「制御
データ即ちソース」と補正する。 (4)同温の第12頁の第3行目の「イメージ・オーダ
」を「イメージ・オーダ、制御データ」と補正する。 (5)同温の第12頁の第5行目の「の両方」を削除す
る。 (6)同欄の第12頁の第9行目の「データ」をrit
/Jajデータ」と補正する。 (7)同温の第12頁の第15行目の「を行なう」を「
動作を開始させる」と補正する。 (8)同温の第10頁の第18行と第19行との間に別
紙の記載を挿入する。 更に本発明によると、イメージ・オーダ、制御データ及
び圧縮された形の1ペ一ジ文書のイメージ・データがポ
スト・プロセッサから通信インターフェイスに送られ、
そしてここから最初にイメージ・オーダ及び制御データ
の両方が表示端末装置に送られる。表示端末装置のマイ
クロプロセッサはイメージ・オーダを解読し、そして制
御データを計算して後続のイメージ処理動作で用いるパ
ラメータを発生する6表示端末装置がパラメータを発生
し終えた後に1表示端末装置は文書の初めからイメージ
処理動作を開始する。即ち、表示端末装置は、イメージ
処理の準備を完了する迄1ペ一ジ文書の処理を開始しな
い6 マイクロプロセッサは、文書の上端から圧縮イメージ・
データを伸張することによりイメージ処理動作を開始す
る。文書のイメージが再現されるにつれて、マイクロプ
ロセッサはこの再現文書イメージのペル・ラインを計数
する。再現文書イメージのペル・ラインの数が1つのパ
ラメータに等しくなったことをマイクロプロセッサが検
出する迄、マイクロプロセッサは再現文書イメージをに
ペル・ラインの第1バッファに書込まない。マイクロプ
ロセッサが、再現文書イメージのペル・ラインの数が1
つのパラメータに等しくなったことバッファに書込む。 そして、マイクロプロセッサは、K×Kビット・グルー
プの夫々について逐次イメージ処理動作を行ない、そし
てこの結果生じたデータを、イメージ記憶装置に記憶し
そしてこれらを表示画面上に表示する。これらのイメー
ジ・データ即ち第1番目のにペル・ライン・グループが
処理され終ると、マイクロプロセッサは第2番目のにペ
ル・ライン・グル−プを第1バッファに書込みそしてこ
のにペル・ライン・グループのイメージ処理動作を行な
い、そしてこの結果生じたデータをイメージ記憶装置に
記憶しこれらを表示画面上に表示する。このようにして
後続のにペル・ライン・グループが逐次的に第1バッフ
ァに書込まれそして処理されたイメージ・データはイメ
ージ記憶装置に記憶される。 文書の解像度が100ペル72.5amの場合には、例
えばA4サイズの文書の1ペ一ジ全部の伸張即ち再現イ
メージ・データを記憶するためには128にバイトのペ
ージ・バッファが各表示端末装置毎に必要であるが、こ
の機能により表示端末装置は大容量のページ・バッファ
を有する必要はない。

Claims (10)

    【特許請求の範囲】
  1. (1)文書のソース矩形領域のイメージ・データを指定
    された回転角度だけ回転し、互いにKビットだけ離され
    ている境界線により区切られている記憶手段の宛先矩形
    領域に上記回転されたイメージ・データを記憶するイメ
    ージ・データの回転方法において、 上記記憶手段における上記宛先矩形領域のエッジと上記
    境界線との間のスペースを検出し、夫々がK×Kビット
    の大きさを有する複数個のブロックに分けられたライン
    ・バッファに、上記エッジの領域に対応する上記ソース
    矩形領域のイメージ・データに、上記スペースに対応す
    るスペースをつけ加えて記憶し、 上記第1バッファの1つのブロックのK×KビットをK
    ×Kビットの大きさの回転バッファに記憶し、 上記回転角度に従う方向で上記回転バッファから上記イ
    メージ・データを含むKビット・グループの夫々を取り
    出し該Kビット・グループを上記記憶手段の上記宛先矩
    形領域に記憶することを特徴とする上記イメージ・デー
    タの回転方法。
  2. (2)上記回転角度は90°及び180°のうちの1つ
    であることを特徴とする特許請求の範囲第(1)項記載
    のイメージ・データの回転方法。
  3. (3)上記記憶手段における上記宛先矩形領域のエッジ
    と上記境界線との間の上記スペースは、上記ソース矩形
    領域の巾及び高さ並びに上記記憶手段における上記宛先
    矩形領域の位置に基づいて検出されることを特徴とする
    特許請求の範囲第(1)項記載のイメージ・データの回
    転方法。
  4. (4)上記記憶手段における上記宛先矩形領域のエッジ
    と上記境界線の上記スペースはMビットで表わされ、上
    記ソース矩形領域の上記イメージ・データの第1ペル・
    ラインは上記ライン・バッファのM+1ラインに記憶さ
    れ、そして上記つけ加えられたスペースはMペル・ライ
    ンを含むことを特徴とする特許請求の範囲第(1)項記
    載のイメージ・データの回転方法。
  5. (5)上記つけ加えられたMペル・ラインのビットは上
    記にビット・グループの夫々が上記記憶手段に記憶され
    る前に0ビットに変換されることを特徴とする特許請求
    の範囲第(3)項記載のイメージ・データの回転方法。
  6. (6)上記ライン・バッファ内の上記つけ加えられたM
    ペル・ラインに含まれるビットは0ビットであることを
    特徴とする特許請求の範囲第(4)項記載のイメージ・
    データの回転方法・
  7. (7)上記回転バッファの全てのビットをリセットし、
    上記ライン・バッファの上記ブロックのM+1ラインか
    らKビット・グループを逐次的に取り出し、上記回転バ
    ッファのM+1ラインから始まるラインに逐次的に記憶
    することを含むことを特徴とする特許請求の範囲第(4
    )項記載のイメージ・データの回転方法。
  8. (8)上記回転バッファから取り出された上記Kビット
    ・グループの夫々をK×Kビットの作業用バッファに逐
    次的に記憶し、該作業用バッファから上記イメージ・デ
    ータを含むKビット・グループを逐次的に取り出し、該
    取り出されたKビット・グループを上記記憶手段の上記
    宛先矩形領域に逐次的に記憶することを特徴とする特許
    請求の範囲第(1)項記載のイメージ・データの回転方
    法。
  9. (9)上記回転バッファから取り出された上記Kビット
    ・グループの夫々の上記スペースのビットが0ビットに
    変換されることを特徴とする特許請求の範囲第(8)項
    記載のイメージ・データの回転方法。
  10. (10)上記作業用バッファから取り出された上記Kビ
    ット・グループの夫々の上記スペースのビットが0ビッ
    トに変換されることを特徴とする特許請求の範囲第(8
    )項記載のイメージ・データの回転方法。
JP61214232A 1986-09-12 1986-09-12 イメ−ジ・デ−タの回転方法 Pending JPS6370381A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP61214232A JPS6370381A (ja) 1986-09-12 1986-09-12 イメ−ジ・デ−タの回転方法
DE3788257T DE3788257T2 (de) 1986-09-12 1987-09-11 Bilddrehungsverfahren.
EP87308036A EP0260883B1 (en) 1986-09-12 1987-09-11 Method for rotating an image
US07/364,550 US4947344A (en) 1986-09-12 1989-05-17 Method of rotating image data in a partitioned display buffer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61214232A JPS6370381A (ja) 1986-09-12 1986-09-12 イメ−ジ・デ−タの回転方法

Publications (1)

Publication Number Publication Date
JPS6370381A true JPS6370381A (ja) 1988-03-30

Family

ID=16652376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61214232A Pending JPS6370381A (ja) 1986-09-12 1986-09-12 イメ−ジ・デ−タの回転方法

Country Status (4)

Country Link
US (1) US4947344A (ja)
EP (1) EP0260883B1 (ja)
JP (1) JPS6370381A (ja)
DE (1) DE3788257T2 (ja)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0715706B2 (ja) * 1986-03-27 1995-02-22 日本電気株式会社 メモリ制御装置
JPH0751370B2 (ja) * 1988-07-15 1995-06-05 インターナショナル・ビジネス・マシーンズ・コーポレーション 像形成装置
US5079739A (en) * 1988-09-23 1992-01-07 Datacard Corporation Apparatus and method for converting bit-mapped data from row orientation to column or orientation
US5764815A (en) * 1989-05-01 1998-06-09 Canon Kabushiki Kaisha Image communication apparatus
US5305397A (en) * 1989-05-01 1994-04-19 Canon Kabushiki Kaisha Image communication apparatus
EP0439087B1 (en) * 1990-01-25 1996-12-11 Radius Inc. Method for resizing and moving computer display windows
JPH0455986A (ja) * 1990-06-26 1992-02-24 Toshiba Corp 画像処理装置
US5177617A (en) * 1991-10-18 1993-01-05 Xerox Corporation Book edge copier inversion sorting
DE69231942T2 (de) * 1991-11-22 2002-04-04 Eastman Kodak Co., Rochester Verfahren und Gerät zum Steuern der raschen Anzeige mehrere Bilder aus einer digitalen Bilddatenbank
US5301036A (en) * 1992-04-06 1994-04-05 Xerox Corporation Image orientation control
DE4224955C2 (de) * 1992-07-24 1998-11-26 Francotyp Postalia Gmbh Anordnung und Verfahren für einen internen Kostenstellendruck
US6046753A (en) * 1992-09-25 2000-04-04 Quantel Limited Electronic image processing system for modifying initial image data
GB2271035B (en) * 1992-09-25 1996-11-13 Quantel Ltd An electronic image processing system and method
US5563625A (en) * 1994-09-08 1996-10-08 Ibm Corporation Fast 180 degree image rotation and reversal
JP2723056B2 (ja) * 1994-09-29 1998-03-09 日本電気株式会社 データ変換装置
US5670982A (en) * 1995-02-08 1997-09-23 International Business Machines Corporation System for fast 90-degree rotation of bi-level images
US5920688A (en) * 1995-11-13 1999-07-06 International Business Machines Corporation Method and operating system for manipulating the orientation of an output image of a data processing system
US5986658A (en) * 1997-01-31 1999-11-16 Hewlett-Packard Co. Method and apparatus for raster computer graphics display of rotation invariant line styles
JPH11109911A (ja) * 1997-09-30 1999-04-23 Fuurie Kk 表示装置
US5973664A (en) * 1998-03-19 1999-10-26 Portrait Displays, Inc. Parameterized image orientation for computer displays
US6055000A (en) * 1998-05-28 2000-04-25 Snk Corporation Storage memory for images
KR100303793B1 (ko) * 1998-11-05 2001-11-22 윤종용 폴더타입 통신단말기의 표시장치 및 표시방법
US6307966B1 (en) * 1998-11-24 2001-10-23 Xerox Corporation 180° rotation of digital images with concurrent compression
US7376286B2 (en) * 2002-09-18 2008-05-20 Nxp B.V. Block-based rotation of arbitrary-shaped images
US7680590B2 (en) * 2002-11-22 2010-03-16 Hewlett-Packard Development Company, L.P. Boundary detection algorithm for embedded devices
JP4130207B2 (ja) * 2003-09-16 2008-08-06 富士通株式会社 画像処理表示装置および画像処理表示方法
US7307635B1 (en) 2005-02-02 2007-12-11 Neomagic Corp. Display rotation using a small line buffer and optimized memory access
US7768678B2 (en) * 2006-05-15 2010-08-03 Xerox Corporation Systems, methods and devices for rotating images
JP5079341B2 (ja) * 2006-06-01 2012-11-21 株式会社リコー 印刷データ処理装置
WO2009040681A2 (en) * 2007-09-04 2009-04-02 Lg Electronics Inc. System and method for changing orientation of an image in a display device
US8659620B2 (en) * 2009-04-13 2014-02-25 Accusoft Corporation Methods and apparatus for rendering images
CN105468921B (zh) * 2015-12-08 2018-01-23 四川大学 消化道胶囊内窥镜视频的纵览图生成方法
KR102637732B1 (ko) 2018-09-21 2024-02-19 삼성전자주식회사 이미지 신호 프로세서, 상기 이미지 신호 프로세서의 동작 방법 및 상기 이미지 신호 프로세서를 포함하는 애플리케이션 프로세서

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4084195A (en) * 1976-12-30 1978-04-11 International Business Machines Corporation Image data remapping system
GB1547119A (en) * 1977-12-09 1979-06-06 Ibm Image rotation apparatus
US4271476A (en) * 1979-07-17 1981-06-02 International Business Machines Corporation Method and apparatus for rotating the scan format of digital images
JPS57130144A (en) * 1981-02-05 1982-08-12 Mitsubishi Electric Corp Image data rotating circuit
JPS58159184A (ja) * 1982-03-17 1983-09-21 Nec Corp 画像回転装置
JPS6073671A (ja) * 1983-09-30 1985-04-25 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション パタ−ン処理装置
EP0158314B1 (en) * 1984-04-10 1993-07-21 Ascii Corporation Video display control system
JPS60231235A (ja) * 1984-04-27 1985-11-16 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション イメ−ジ処理システム
FR2576124B1 (fr) * 1985-01-11 1987-02-20 Sintra Generateur de caracteres et utilisation d'un tel generateur dans un systeme de visualisation
US4736442A (en) * 1985-05-23 1988-04-05 Kornfeld Cary D System and method for orthogonal image transformation
US4694405A (en) * 1985-07-09 1987-09-15 Office Automation Systems, Inc. Laser printer controller data alignment device
JPS62280043A (ja) * 1986-05-30 1987-12-04 Oki Electric Ind Co Ltd 文字パタ−ン変換回路
US4806985A (en) * 1986-07-11 1989-02-21 Xerox Corporation Stripper fingers

Also Published As

Publication number Publication date
DE3788257T2 (de) 1994-05-19
US4947344A (en) 1990-08-07
EP0260883B1 (en) 1993-11-24
EP0260883A2 (en) 1988-03-23
DE3788257D1 (de) 1994-01-05
EP0260883A3 (en) 1989-03-08

Similar Documents

Publication Publication Date Title
JPS6370381A (ja) イメ−ジ・デ−タの回転方法
EP0216501B1 (en) Digital image rotation
KR920003477B1 (ko) 화상처리장치
JPS6060686A (ja) イメ−ジデ−タの切出し制御方式
JP3154741B2 (ja) 画像処理装置及びその方式
JPH05204591A (ja) 画像描画装置
JPS6371779A (ja) イメ−ジ表示システム
JP3854646B2 (ja) 画像データ処理装置および画像データ処理方法
JPH01130957A (ja) 文字制御装置
JP3005014B2 (ja) 印刷装置
JPH0114608B2 (ja)
JP3757297B2 (ja) 印字装置
JPH0325667A (ja) 日本語処理方式
JPS63239542A (ja) 画像メモリ装置および画像処理装置
JPS5975285A (ja) 表示画面分割制御方式
JPS6377091A (ja) 字形パタ−ンの圧縮記憶方式とその復元方式
JPH0327094A (ja) フオント情報の圧縮方法
JPS63101970A (ja) イメ−ジ情報の拡大・縮小による画面表示方法
JPH03155593A (ja) グラフィック表示装置
JPH04360286A (ja) 空間フィルタリング画像処理装置
JPS59172881A (ja) 画像情報処理方式
JPH07175919A (ja) 非圧縮ビットイメージデータの1バイト文字型変数を用 いた縦横変換方法
JPH05158456A (ja) 文字表示エミュレ−ション方法
JPH0553557A (ja) 文字データ発生装置
JPH01223573A (ja) イメージ画像処理方式