JP2009048248A - 画像処理回路、表示装置及び印刷装置 - Google Patents

画像処理回路、表示装置及び印刷装置 Download PDF

Info

Publication number
JP2009048248A
JP2009048248A JP2007211255A JP2007211255A JP2009048248A JP 2009048248 A JP2009048248 A JP 2009048248A JP 2007211255 A JP2007211255 A JP 2007211255A JP 2007211255 A JP2007211255 A JP 2007211255A JP 2009048248 A JP2009048248 A JP 2009048248A
Authority
JP
Japan
Prior art keywords
image data
image
pixel
pixel value
hatching
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.)
Granted
Application number
JP2007211255A
Other languages
English (en)
Other versions
JP4404116B2 (ja
Inventor
Yoshiyuki Ono
義之 小野
Takashi Sawazaki
高 澤崎
Akira Saito
明 齋藤
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2007211255A priority Critical patent/JP4404116B2/ja
Priority to US12/222,422 priority patent/US8326083B2/en
Priority to CN2008101459531A priority patent/CN101369344B/zh
Priority to EP08014506A priority patent/EP2026323B1/en
Publication of JP2009048248A publication Critical patent/JP2009048248A/ja
Application granted granted Critical
Publication of JP4404116B2 publication Critical patent/JP4404116B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/37Details of the operation on graphic patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • G09G5/024Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using colour registers, e.g. to control background, foreground, surface filling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/13Digital output to plotter ; Cooperation and interconnection of the plotter with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/24Generation of individual character patterns
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/22Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
    • G09G5/30Control of display attribute
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers

Landscapes

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

Abstract

【課題】入力画像の描画領域にハッチング処理を施す際に、そのハッチングパターンに含まれる図形画像と入力画像の描画領域との間のずれをできるだけ小さくする。
【解決手段】メモリHは、ハッチングパターンデータを記憶する。CPU11は、目標位置と図形画像の始点の位置との差分を算出し、シフト回路Fは、メモリHの各パターンビット値の位置から、算出された差分だけ離れた位置の画素値を出力する。乗算器MU0は、シフト回路Fから出力された各パターンビット値と入力画像データの各画素値とを対応する位置毎に乗算する。減算器SUは、入力画像データの各画素値を反転した値を出力する。乗算器MU1は、背景色情報と減算器SUから出力された値とを対応する位置毎に乗算する。加算器ADは、乗算器MU0の乗算結果と乗算器MU1の乗算結果とを対応する位置毎に加算し、出力画像データとして出力する。
【選択図】図2

Description

本発明は、画像領域に複数の図形画像を並べて配置する技術に関する。
画像処理の分野では、ハッチング処理と呼ばれる技術が知られている。このハッチング処理とは、文字や表又は図形などの画像領域に複数の図形画像を規則的に並べて配置することで、いわゆる網掛けや模様付けなどを行う処理のことである。例えば特許文献1には、ハッチング描画用のブロックパターンを指定された領域内に繰り返し転送するBiTBLT(ビットバウンダリ、ブロック転送)回路を用いて、フレームメモリにハッチングパターンを迅速に展開する技術が開示されている。
特開平05−210381号公報
特許文献1に記載された技術は、ブロックパターンのサイズの整数倍の大きさを持つ領域に対してハッチング処理を施す場合には都合がよいものであるが、それ以外の場合には上手くハッチング処理を行うことができない。例えばブロックパターンのサイズを極めて小さくすることで、任意の大きさの領域に対するハッチング処理を可能にしたとしても、そのブロックパターンの転送先となる領域のアドレスを逐一きめ細やかに指定しなければならないため、例えば文字などの複雑な形状の画像に対してハッチング処理を施す際には、ブロックパターンの転送先を指定するための作業や処理が非常に煩雑となる。
そこで、様々な形状や大きさの画像領域に対してのみ簡単にハッチング処理を施すために、例えば所定の間隔で規則的に並べた複数の図形画像からなるハッチングパターンと、ハッチング処理の対象となる入力画像とを対比し、そのハッチングパターンから、入力画像における描画領域内の位置にある図形画像だけを抽出し、入力画像における描画領域に並べて配置する、という技術が考えられる。
しかしながら、このような技術を用いてハッチング処理を行った場合には、ハッチングパターンに含まれる図形画像と入力画像の描画領域との間にずれが生じることがある。つまり、ハッチングパターンにおける各図形画像の位置と、入力画像の描画領域の位置とは、それぞれ無関係に定められるので、入力画像の描画領域の端部において、ハッチングパターンに含まれる図形画像の一部が欠けた状態で現れることがある。このように、ハッチングの図形画像が欠けてしまうと、ハッチングの美しさや図形画像の視認性が損ねられ、画質が劣化するという問題が発生する。特に、星型の図形画像や花をモチーフとした図形画像のように、その一部が欠けると全体の形状を認識しにくくなるような図形画像が並べて配置されるようなハッチングが施される場合には、この問題が顕著になる。
本発明は、このような背景に鑑みてなされたものであり、その目的は、入力画像の描画領域にハッチング処理を施す際に、そのハッチングパターンに含まれる図形画像と入力画像の描画領域との間のずれをできるだけ小さくすることにある。
上記課題を解決するため、本発明は、並べて配置される複数の図形画像を構成する各画素の位置と、その画素値とを記憶する図形画像記憶手段と、0を含む2値で各位置の画素値が表された2値画像データにおいて、前記図形画像との位置を合わせる目標として指定された目標位置と、前記図形画像において、前記2値画像データとの位置を合わせる始点として指定された始点位置との差分を算出する算出手段と、前記図形画像記憶手段に記憶されている各々の前記画素値の位置から前記算出手段によって算出された差分だけ離れた位置の画素値を出力する画素値出力手段と、前記画素値出力手段から出力された各位置の前記画素値と、前記2値画像データに含まれる各位置の画素値とを、それぞれ対応する前記位置毎に乗算する第1の乗算手段と、前記2値画像データに含まれる各位置の画素値を反転する反転手段と、前記2値画像データに含まれる各位置の画素値又は当該2値画像データに基づく画像の背景となる背景画像データに含まれる各位置の画素値と、前記反転手段によって反転された画素値とを、それぞれ対応する前記位置毎に乗算する第2の乗算手段と、前記第1の乗算手段の乗算結果と、前記第2の乗算手段の乗算結果とを、それぞれ対応する前記位置毎に加算し、出力画像データとして出力する加算手段とを備えることを特徴とする画像処理回路を提供する。
これにより、2値画像データによって表される画像の描画領域にハッチング処理を施す際に、そのハッチングパターンに含まれる図形画像と入力画像の描画領域との間のずれを小さくすることができる。
本発明の好ましい態様においては、前記2値画像データにおける前記目標位置と、前記図形画像における前記始点位置とを記憶する位置記憶手段を備え、前記算出手段は、前記位置記憶手段に記憶されている前記目標位置と前記始点位置との差分を算出してもよい。
これにより、目標位置及び始点位置を逐一指定しなくても、2値画像データによって表される画像の描画領域にハッチング処理を施す際に、ハッチングパターンに含まれる図形画像と入力画像の描画領域との間のずれを小さくすることができる。
本発明の好ましい態様においては、利用者による前記目標位置の指定を受け付ける目標受付手段と、前記目標受付手段によって受け付けられた前記目標位置に応じて、前記図形画像における始点位置を決定する始点決定手段とを備え、前記算出手段は、前記目標受付手段によって受け付けられた前記目標位置と、前記始点決定手段によって決定された前記始点位置との差分を算出してもよい。
これにより、利用者が所望の目標位置を指定することができるとともに、利用者によって指定された目標位置に応じて、始点の位置が自動的に決定される。
本発明の好ましい態様においては、各々の前記図形画像毎に前記始点として指定された始点位置を記憶する始点記憶手段と、前記始点記憶手段に記憶されている複数の前記始点位置のうち、前記目標位置に最も近い始点位置を、前記2値画像データとの位置を合わせる始点の始点位置として決定する始点決定手段とを備え、前記算出手段は、前記目標位置と、前記始点決定手段により決定された前記始点位置との差分を算出してもよい。
これにより、目標位置と始点位置との差分を小さくすることができる。
本発明の好ましい態様において、前記図形画像記憶手段は、前記複数の図形画像を構成する各画素の位置を記憶する第1の記憶手段と、前記図形画像の色を表す色情報を、前記複数の図形画像を構成する各画素の画素値として記憶する第2の記憶手段と、前記第2の記憶手段により記憶されている色情報を、前記第1の記憶手段により記憶されている各位置の画素の画素値として出力する色情報出力手段とを備えてもよい。
これにより、2値画像データによって表される画像の描画領域に対して、第2の記憶手段により記憶されている色情報の色の図形画像を並べて配置することができる。
本発明の好ましい態様において、前記第2の記憶手段は、複数種類の色情報を記憶しており、前記色情報出力手段は、前記複数の図形画像のうち同一種類の図形画像を構成する画素毎に、前記第2の記憶手段によって記憶されている複数種類の色情報のうちのいずれかを出力してもよい。
これにより、2値画像データによって表される画像の描画領域において、同一種類で同じ色の図形画像を並べて配置することができる。
本発明の好ましい態様においては、前記2値画像データに含まれる各位置の画素値、又は、当該2値画像データの画像の背景を表す背景画像データに含まれる各位置の画素値のいずれかを指定する指定手段と、前記指定手段によって指定された画素値を前記第2の乗算手段に供給する供給手段とを備えてもよい。
これにより、2値画像データに含まれる各位置の画素値、又は、当該2値画像データの画像の背景を表す背景画像データに含まれる各位置の画素値のいずれかを、出力画像データが表す出力画像における背景領域の画素値として指定することができる。
本発明の好ましい態様においては、予め決められた背景色情報を記憶する第3の記憶手段、又は、表示手段又は印刷手段に出力される画像情報を記憶する第4の記憶手段のいずれかを指定する指定手段と、前記指定手段によって指定された記憶手段に記憶されている情報を、前記背景画像データに含まれる画素値として読み出し、前記第2の乗算手段に供給する供給手段とを備えてもよい。
これにより、予め決められた背景色情報を記憶する第3の記憶手段、又は、表示手段又は印刷手段に出力される画像情報が展開される第4の記憶手段のいずれかを、出力画像データが表す出力画像における背景領域の画素値の供給元の記憶手段として指定することができる。
また、本発明は、上記のいずれかに記載の画像処理回路と、前記加算手段から出力される出力画像データに基づいて画像を表示する表示手段とを備えることを特徴とする表示装置を提供する。
これにより、入力画像の描画領域にハッチング処理を施す際に、そのハッチングパターンに含まれる図形画像と入力画像の描画領域との間のずれをできるだけ小さくすることができ、さらに、その結果得られた画像を表示することができる。
また、本発明は、上記のいずれかに記載の画像処理回路と、前記加算手段から出力される出力画像データに基づいて印刷を行う印刷手段とを備えることを特徴とする印刷装置を提供する。
これにより、入力画像の描画領域にハッチング処理を施す際に、そのハッチングパターンに含まれる図形画像と入力画像の描画領域との間のずれをできるだけ小さくすることができ、さらに、その結果得られた画像を印刷することができる。
[実施形態]
以下に説明する実施形態では、或る画像領域に複数の図形画像を並べて配置する処理のことを、「ハッチング」という。このとき配置される複数の図形画像は、全て同一の図形画像であってもよいし、類似の図形画像であってもよいし、全て異なる図形画像であってもよい。例えば全て同一の方向に延びる線分画像を均等な間隔で繰り返し配置することで“斜線掛け”と呼ばれるハッチングを行うことができる。また、2方向に延びる線分画像をそれぞれ均等な間隔で繰り返し配置することで“網掛け”と呼ばれるハッチングを行うことができる。さらに、ハート型とクローバー型の図形を互い違いに配置するようなハッチングもあるし、形状が全て異なる抽象的な図形をランダムに並べて配置するようなハッチングも考えられる。つまり、ハッチングに用いる図形画像の大きさや形状或いはその個数はどのようなものであってもよい。
図1は、本実施形態に係る画像表示装置1の構成を示す図である。
同図に示すように、画像表示装置1は、CPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、VRAM(Video Random Access Memory)14と、記憶性液晶表示体15と、表示制御装置16と、電源17と、電源制御装置18と、コネクタ19と、記憶制御装置20と、I/O21と、キー22と、記憶装置23と、画像処理回路25とを備えている。CPU11は、ROM12に記憶されている制御プログラムを読み出してRAM13に展開し、その制御プログラムに記述された手順に従って処理を実行する。キー22は、利用者によって操作される操作手段であり、ペンデバイスやジョイスティックなどの操作デバイスを含んでいる。I/O21は、キー22の操作状態を監視しており、ユーザによってキー22が操作されるとその操作に応じた信号をCPU11に供給する。電源17は、例えば充電可能な電池であり、電源制御装置18は、電源17のオンオフ制御や電力の残量監視など各種の電源管理を行う。
コネクタ19に対しては、リムーバブルメディアなどの可搬性の外付記憶装置24が着脱自在である。この外付記憶装置24は、例えばSD(Secure Digital)カードのようなフラッシュメモリ内蔵のカード型記憶媒体であってもよいし、例えばフレキシブルディスクなどの磁気媒体を利用したディスク型記憶媒体であってもよい。記憶装置23は、フラッシュメモリやハードディスクなどの不揮発性の記憶媒体であり、画像表示装置1に内蔵されている。記憶装置23には、ハッチング回路250の動作を指示する値を算出するための演算プログラムが記憶されている。また、記憶装置23又は外付記憶装置24には、テキスト(文字)、グラフィック(図形)又はイメージ(写真画像)などの画像を表す画像データが記憶されている。この画像データは、白を表す「0」という画素値及び黒を表す「1」という画素値によって構成された2値データである。画素値「1」の画素が配置された領域は画像の描画領域であり、画素値「0」の画素が配置された領域は非描画領域である。記憶制御装置20は、CPU11の指示に従い、記憶装置23又は外付記憶装置24から画像データを読み出し、画像処理回路25に供給する。
画像処理回路25は、ハッチング回路250を備えている。このハッチング回路250は、CPU11の指示に従って供給される画像データに対してハッチングを施し、そのハッチングを施した画像データをVRAM14へと出力する。VRAM14は、フレームバッファであり、記憶性液晶表示体15に表示される1ページ分の画像データを記憶する。記憶性液晶表示体15は、コレステリック液晶や電気泳動などを利用した表示手段であり、電力供給が停止しても画像を表示し続けることができるという記憶性を有している。VRAM14に記憶された画像データは、CPU11の指示の下で表示制御装置16に供給される。表示制御装置16は記憶性液晶表示体15を制御して、供給された画像データに基づいた画像を表示させる。
次に、図2は、ハッチング回路250の構成を示す図である。
同図に示すように、ハッチング回路250は、メモリHと、ハッチングカラーレジスタR0,R1と、背景カラーレジスタR2と、横シフト量レジスタR3と、縦シフト量レジスタR4と、シフト回路Fと、セレクタSと、乗算器MU0,MU1と、減算器SUと、加算器ADとを備えている。このハッチング回路250には、記憶装置23もしくは外付記憶装置24から読み出された2値の画像データが、入力画像データとして入力される。ここでは、入力画像データの画素値「0」が白色(最低濃度)を表し、画素値「1」が黒色(最高濃度)を表すものとする。そして、この入力画像データに対してハッチング回路250によりハッチング処理を施した結果が、出力画像データとして出力される。メモリHには、ハッチング処理を行う際に用いるハッチングパターン(つまり複数の図形画像)を構成する各画素の位置が、ハッチングパターンデータとして記憶されている。
ここで、図3は、花柄模様のハッチングを行うためのハッチングパターンデータを模式的に示す図である。
このハッチングパターンデータは、「0」又は「1」という2値のパターンビット値で、花をモチーフとした複数の図形画像が表現されたものである。図において白色のブロックB0を構成する各画素の位置にはパターンビット値「0」が配置され、黒色のブロックB1を構成する各画素の位置にはパターンビット値「1」が配置されている。このハッチングパターンデータによって表されるハッチングパターン全体のサイズは、VRAM14に確保される1ページ分の画像のサイズと同じである。各々のブロックB0,B1はいずれも複数個の画素(例えば16×16=256個の画素)によって構成されるが、ここでは説明を簡単にするために、1つのブロックは1つの画素によって構成されているものと仮定する。この場合、ハッチングパターン全体の横方向の長さは、VRAM14における画像1ページ分の横方向の画素数Mに相当する長さである。また、ハッチングパターン全体の縦方向の長さは、VRAM14における画像1ページ分の縦方向の画素数Nに相当する長さである。
以下の説明では、ハッチングパターンデータにおいて左上端に位置する画素の位置座標を(0,0)とし、その画素から数えて図中のx方向(右方向)にi画素、図中のy方向(下方向)にj画素、進んだ位置の画素を位置座標(i,j)の画素とする。従って、例えば、位置座標(0,0)の画素から数えてx方向に1画素進んだ位置の画素は、位置座標(1,0)にある画素であり、2画素進んだ位置の画素は、位置座標(2,0)にある画素であり、3画素進んだ位置の画素は位置座標(3,0)にある画素である。また、位置座標(0,0)の画素から数えてy方向に1画素進んだ位置の画素は、位置座標(0,1)の画素であり、2画素進んだ位置の画素は、位置座標(0,2)の画素である。このような位置座標の表現方法は、図3に示したハッチングパターンだけに限らず、ハッチング回路250に入力される入力画像データ(後述する図4)や、ハッチング回路250から出力される出力画像データ(後述する図8)においても同じである。
また、記憶装置23には、このハッチングパターンデータによって表される各々の図形画像毎に、その図形画像における始点の位置座標が予め記憶されている。本実施形態において“画像の始点”とは、位置座標(0,0)の画素に最も近い画素の位置のことを言い、始点位置とは、その始点の位置座標のことを言う。すなわち、記憶装置23には、各々の図形画像における左上端の画素の位置座標が、始点位置として記憶されることになる。例えば、図3の場合には、各々の図形画像は、横5画素×縦5画素で構成されている。そのため、記憶装置23には、ハッチングパターンデータの始点位置として、始点A1の位置座標(0,0)、始点A2の位置座標(5,0)、始点A3の位置座標(0,5)、始点A4の位置座標(5,5)などが記憶されることになる。
再び図2の説明に戻る。
ハッチングカラーレジスタR0は、ハッチングパターンデータにおいてパターンビット値「0」の位置にある画素の色を表す色情報を格納している。ここでは、例えば青色を表す色情報「C0」が格納されているものとする。ハッチングカラーレジスタR1は、ハッチングパターンにおいてパターンビット値「1」の位置にある画素の色を表す色情報を格納している。ここでは、例えば黄色を表す色情報「C1」が格納されているものとする。この色情報は、本来は色そのものを指定する情報と、その階調値とを含む。ただし、本実施形態では、色情報の階調値として、その色情報が表す色が有るか無いかの2値しか想定していないので、色情報「C0」だけで「青色」であることを意味すると同時に、その色が「有る」ということを意味している。また、色情報「C1」は、「黄色」であることを意味すると同時に、その色が「有る」ということを意味している。
横シフト量レジスタR3は、ハッチングパターンデータに含まれる各位置のパターンビット値を図3に示したx方向に移動させるための横シフト量を格納している。この横シフト量は、ハッチング回路250に新たな画像データが入力される度に、CPU11によって算出され、横シフト量レジスタR3に書き込まれるようになっている。縦シフト量レジスタR4は、ハッチングパターンデータに含まれる各位置のパターンビット値を図3に示したy方向に移動させるための縦シフト量を格納している。この縦シフト量も、上述と同様にして、ハッチング回路250に新たな画像データが入力される度に、CPU11によって算出され、縦シフト量レジスタR4に書き込まれるようになっている。
シフト回路Fは、メモリHから供給されるハッチングパターンデータに含まれる各パターンビット値を、横シフト量レジスタR3から供給される横シフト量だけ図3に示したx方向に移動させ、縦シフト量レジスタR4から供給される縦シフト量だけ図3に示したy方向に移動させた値を出力する。
セレクタSには、入力信号として、ハッチングカラーレジスタR0に格納されている色情報「C0」と、ハッチングカラーレジスタR1に格納されている色情報「C1」とが入力される。また、このセレクタSには、選択信号として、シフト回路Fから出力される各位置のパターンビット値が、上述した画素の位置座標の順番に従って順次入力される。セレクタSは、選択信号としてパターンビット値「0」が入力されている期間は、色情報「C0」を選択して出力し、選択信号としてパターンビット値「1」が入力されている期間は、色情報「C1」を選択して出力する。
上述したメモリHは、ハッチングパターンを構成する各画素の位置を記憶する第1の記憶手段として機能する。また、ハッチングカラーレジスタR0,R1は、ハッチングパターンの色を表す色情報を、そのハッチングパターンを構成する各画素の画素値として記憶する第2の記憶手段として機能する。そして、セレクタSは、ハッチングカラーレジスタR0,R1に記憶されている色情報を、メモリHに記憶されている各位置の画素の画素値として出力する色情報出力手段として機能する。結局、これらのメモリH、ハッチングカラーレジスタR0,R1及びセレクタSが協働することにより、ハッチングパターンを構成する各画素の位置とその画素値を記憶する図形画像記憶手段26として機能することになる。
乗算器MU0は、第1の乗算手段であり、セレクタSから出力される色情報「C0」又は「C1」と、入力画像データに含まれる画素値「0」(白色)又は「1」(黒色)を、それぞれ対応する画素位置毎に乗算して出力する。この「対応する位置」とは、図3に示した画素の位置座標が同じことを意味している。この入力画像データの画素値「0」又は「1」を、以下では「α」と呼ぶ。すなわち、乗算器MU0は、「C0」又は「C1」と「α」とが入力されて、“α×C0”又は“α×C1”を出力することになる。
減算器SUには、入力画像データの画素値「α」と、「1」という値とが入力され、この「1」という値から「α」を減算した“1−α”を「β」として出力する。これにより、画素値「α」=1の場合は、その1が減算器SUにより反転させられて「0」が出力され、画素値「α」=0の場合は、その0が減算器SUにより反転させられて「1」が出力されることになる。つまり、この減算器SUは、2値で表現された画素値を反転する反転手段として機能する。
背景カラーレジスタR2は、入力画像データによって表される画像が記憶性液晶表示体15に表示されるときの非描画領域(つまり入力画像データに基づく画像の背景となる背景領域)の色を表す色情報を格納している。この色情報は例えば白色を表している。この画像処理回路25では、予め決められた色の背景領域に、入力画像データが表す画像を重ねて描画する、という構成になっている。このため、背景カラーレジスタR2には背景領域の色情報が格納されている。以下、この背景領域の色情報を「背景色情報」という。
乗算器MU1は、第2の乗算手段であり、減算器SUから出力される「β」と、背景カラーレジスタR2から供給される背景色情報とを、対応する画素位置毎に乗算して出力する。すなわち、乗算器MU1からは、“β×背景色情報”が色情報として出力される。
加算器ADは、乗算器MU0から出力された“α×C0”又は“α×C1”と、乗算器MU1から出力された“β×背景色情報”とを、対応する画素位置毎に加算して、その加算した結果を出力画像データとして出力する。すなわち、加算器ADからは、“α×C0+β×背景色情報”という色情報か、“ α×C1+β×背景色情報”という色情報のいずれかが、出力画像データに含まれる各画素の色情報として出力される。
次に、ハッチング回路250の動作について具体的に説明する。
図4は、ハッチング回路250に入力される入力画像データの一例である、“L”という文字画像が描画された入力画像を表す入力画像データを模式的に示す図である。この入力画像は、図3に示したハッチングパターンと同様に、x方向(右方向)にM個、y方向(縦方向)にN個の画素から構成されている。各画素の画素値は、図中の白色部分が「0」であり、黒色部分が「1」である。画素値が「1」の領域は、“L”という文字画像が描画される描画領域であり、画素値が「0」の領域は、文字画像が描画されない非描画領域である。以下の説明では、このような入力画像データがハッチング回路250に入力される場合の動作を例示する。
まず、CPU11は、各々の入力画像データによって表される入力画像毎に予め記憶装置23に記憶されている始点の位置座標と、記憶装置23に記憶されているハッチングパターンデータの始点の位置座標とに基づいて、ハッチングパターンデータに含まれる各位置のパターンビット値を移動させるための移動量、すなわち横シフト量と縦シフト量とを算出する。この移動量の算出は、CPU11が、記憶装置23に記憶されている演算プログラムを実行することによって行われる。
ここで、横シフト量と縦シフト量の算出方法について詳細に説明する。
まず、CPU11は、図4において表される“L”という文字画像の始点位置を記憶装置23から読み出す。前述したように、“画像の始点”とは位置座標(0,0)の画素に最も近い画素の位置のことであるから、例えば、図4に示した入力画像データにおいては、“L”という文字画像における左上端の画素の位置座標(1,1)が始点位置として記憶装置23から読み出される。この位置座標は、ハッチングパターンに含まれる図形画像との位置を合わせる際の目標となるから、以下の説明では、この始点の位置座標を「目標位置座標」という。
続いて、CPU11は、記憶装置23に記憶されているハッチングパターンデータの始点位置を読み出す。そして、CPU11は、読み出した複数の始点位置のうち、目標位置座標までのx方向、y方向への間が最も近い始点位置を特定する。この例では、目標位置座標が(1,1)であるため、図3に示した始点A1の位置座標(0,0)が特定される。つまり、CPU11は、演算プログラムを実行することにより、位置記憶手段に記憶されている複数の始点位置のうち、目標位置に最も近い位置始点を、入力画像データとの位置を合わせる始点の始点位置として決定する始点決定手段として機能する。以下の説明では、特定された位置座標を「基準位置座標」という。
そして、CPU11は、目標位置座標から基準位置座標を減算した値を、x方向とy方向でそれぞれ算出する。この例では、目標位置座標(1,1)から基準位置座標(0,0)を減算したx方向の減算値としては1−0=「1」が、y方向の減算値としては1−0=「1」がそれぞれ算出される。つまり、CPU11は、演算プログラムを実行することにより、入力画像データにおいて、図形画像との位置を合わせる目標として指定された目標位置と、図形画像において、入力画像データとの位置を合わせる始点として指定された始点位置(ここでは基準位置座標)との差分を算出する算出手段として機能する。このようにして算出されたx方向の減算値「1」は、CPU11によって、横シフト量として横シフト量レジスタR3に書き込まれる。また、y方向の減算値「1」は、CPU11によって、縦シフト量として縦シフト量レジスタR4に書き込まれる。
次に、図5を参照して、シフト回路F,セレクタS及び乗算器MU0の動作を説明する。
ハッチング回路250には、図4に示した入力画像データに含まれる各位置の画素値が、位置座標の順番に従って「α」として入力される。例えば、入力画像データの位置座標(0,0)の画素の画素値は「0」であるため、まず、「0」という値が「α」として入力される。続いて、入力画像データの位置座標(1,0)の画素の画素値も「0」であるため、「0」という値が「α」として出力される。同様にして、位置座標(2,0)、(3,0)・・・(M−1,0)というように、図4に示した入力画像データの最上方の1ラインの画素値が順次、ハッチング回路250に「α」として入力される。1ラインの画素値が全てハッチング回路250に入力されると、次に、上から2番目の1ラインに属する位置座標(0,1)、(1,1)、(2,1)・・・(M−1,1)の画素の画素値が順次、ハッチング回路250に「α」として入力される。ここで、位置座標(1,1)、(2,1)、(3,1)、(4,1)の画素の画素値は、それぞれ、「1」、「1」、「1」、「0」である。図5では、これらの画素値が順番に入力されている様子を例示している。
この入力動作と並行して、シフト回路Fには、メモリHから読み出されたハッチングパターンデータと、横シフト量レジスタR3から読み出された横シフト量と、縦シフト量レジスタR4から読み出された縦シフト量とが入力される。そして、このシフト回路Fは、ハッチングパターンデータに含まれる各位置のパターンビット値を、横シフト量及び縦シフト量に基づいた移動量だけ移動させた値を出力する。つまり、シフト回路Fは、記憶手段に記憶されている各々の画素値の位置から算出手段によって算出された差分だけ離れた位置の画素値を出力する画素値出力手段として機能する。
この例では、横シフト量レジスタR3に格納されている横シフト量が「1」であり、縦シフト量レジスタR4に格納されている縦シフト量が「1」であるため、ハッチングパターンに含まれる各パターンビット値は、図3に示したx方向に横シフト量分の「1」、y方向に縦シフト量分の「1」だけ移動させられた位置のパターンビット値に変換されて出力される。例えば、図3に示すようなハッチングパターンデータがメモリHに記憶されている場合、位置座標が(0,0)のパターンビット値「1」は、位置座標(1,1)のパターンビット値に変換されて出力される。続いて、位置座標が(1,0)のパターンビット値「0」は、位置座標(2,1)のパターンビット値に変換されて出力される。同様にして、位置座標が(2,0)のパターンビット値「1」は、位置座標(3,1)のパターンビット値に変換されて出力され、位置座標が(3,0)のパターンビット値「0」は、位置座標(4,1)のパターンビット値に変換されて出力される。シフト回路Fから出力されたハッチングパターンデータは、セレクタSに供給される。
セレクタSには、入力信号として、ハッチングカラーレジスタR0から読み出された色情報「C0」と、ハッチングカラーレジスタR1から読み出された色情報「C1」とが入力され、選択信号として、シフト回路Fから出力された各位置のパターンビット値が供給される。そして、セレクタSは、選択信号として「0」が入力されている期間は色情報「C0」を選択して出力し、選択信号として「1」が入力されている期間は色情報「C1」を選択して出力する。例えば、ハッチングパターンデータにおける位置座標(1,1)の画素については、上述したようにパターンビット値が「1」であるため、セレクタSからは色情報「C1」が出力される。続いて、ハッチングパターンデータにおける位置座標(2,1)の画素については、パターンビット値が「0」であるため、セレクタSからは色情報「C0」が出力される。同様にして、ハッチングパターンデータにおける位置座標(3,1)の画素については、パターンビット値が「1」であるため、色情報「C1」が出力され、ハッチングパターンデータにおける位置座標(4,1)の画素については、パターンビット値が「0」であるため、色情報「C0」が出力される。セレクタSから出力された色情報は順次、乗算器MU0に供給される。
乗算器MU0は、入力画像データに含まれる各位置の画素値「α」と、セレクタSから供給された色情報「C0」又は「C1」とを、対応する画素位置毎に乗算し、“α×C0”又は“α×C1”を出力する。例えば、位置座標(1,1)の画素については、αが「1」、色情報が「C1」であるため、1×C1=「C1」が、つまりセレクタSから供給される色情報「C1」がそのまま出力される。続いて、位置座標(2,1)の画素については、αが「1」、色情報が「C0」であるため、1×C0=「C0」が、つまりセレクタSから供給される色情報「C0」がそのまま出力される。同様にして、位置座標(3,1)の画素についても、αが「1」であるため、セレクタSから供給される色情報「C1」がそのまま出力される。続く位置座標(4,1)の画素については、セレクタSから供給されるαが「0」であるため、0×C0=「0」という値が出力される。このように、乗算器MU0による乗算の結果、入力画像データの画素値が「0」である画素、つまり文字画像が描画されない非描画領域の画素については、「0」という値が出力される。一方、入力画像データの画素値が「1」である画素、つまり文字画像が描画される描画領域の画素については、ハッチングパターンデータに含まれる各画素の色情報が出力されることになる。乗算器MU0から出力された“α×C0”又は“α×C1”、つまり“α×ハッチングパターンの色情報”は、加算器ADに供給される。
次に、図6を参照して、減算器SU及び乗算器MU1の動作を説明する。
入力画像データに含まれる各位置の画素値「α」は、上述した乗算器MU0のほか、減算器SUにも供給される。減算器SUは、この「α」と「1」とが入力され、この「1」から「α」を減算した“1−α”を「β」として出力する。例えば位置座標(1,1)の画素については、αが「1」であるため、1−1=「0」という値が「β」として出力される。同様にして、位置座標(2,1)の画素については、αが「1」であるため、1−1=「0」という値が「β」として出力され、位置座標(3,1)の画素についても、αが「1」であるため、1−1=「0」という値が「β」として出力される。続く(4,1)の画素については、αが「0」であるため、1−0=「1」という値が「β」として出力される。減算器SUから出力された「β」は、乗算器MU1に供給される。
乗算器MU1には、減算器SUから「β」が供給されるとともに、背景カラーレジスタR2から背景色情報が供給される。乗算器MU1は、この「β」と背景色情報とを、対応する画素位置毎に乗算した“β×背景色情報”を出力する。すなわち、入力画像データの画素値が「0」である画素、つまり文字画像が描画されない非描画領域の画素については、「β」が「1」になるため、乗算器MU1からは背景色情報がそのまま出力される。一方、入力画像データの画素値が「1」である画素、つまり文字画像の描画領域の画素については、βが「0」になるため、乗算器MU1からは「0」という値が出力される。例えば位置座標(1,1)の画素については、減算器SUから供給されるβが「0」であるため、「0」という値が出力される。同様にして、位置座標(2,1),(3,1)の画素についても、減算器SUから供給されるβが「0」であるため、「0」という値が出力される。続く位置座標(4,1)の画素については、減算器SUから供給されるβが「1」であるため、背景カラーレジスタR2から供給される背景色情報がそのまま出力される。乗算器MU1から出力された“β×背景色情報”は、加算器ADに供給される。
次に、図7を参照して、加算器ADの動作を説明する。
加算器ADは、乗算器MU0から供給される“α×ハッチングパターンの色情報”と、乗算器MU1から供給される“β×背景色情報”とを、対応する画素位置毎に加算した“α×ハッチングパターンの色情報+β×背景色情報”の値を出力する。例えば位置座標(1,1)の画素については、乗算器MU0から供給される“α×ハッチングパターンの色情報”の値が「C1」であり、乗算器MU1から供給される“β×背景色情報”の値が「0」であるため、ハッチングパターンの色情報「C1」が出力される。続く位置座標(2,1)の画素については、乗算器MU0から供給される“α×ハッチングパターンの色情報”の値が「C0」であり、乗算器MU1から供給される“β×背景色情報”の値が「0」であるため、ハッチングパターンの色情報「C0」が出力される。同様にして、位置座標(3,1)の画素については、“α×ハッチングパターンの色情報”の値が「C1」であり、“β×背景色情報”の値が「0」であるため、ハッチングパターンの色情報「C1」が出力される。そして、位置座標(4,1)の画素については、“α×ハッチングパターンの色情報”の値が「0」であり、“β×背景色情報”の値が「背景色情報」であるため、この「背景色情報」が出力される。つまり、加算器ADにおいては、図4において表されるような入力画像における描画領域の画素の色情報が、シフト回路Fによって各パターンビット値が移動されたハッチングパターンの色情報に置き換えられる。一方、入力画像における非描画領域の画素の色情報については、背景色情報に置き換えられる。そして、このようにして置き換えられた色情報からなる出力画像データが、加算器ADから出力されることになる。加算器ADから出力された出力画像データは、VRAM14にいったん記憶された後、表示制御装置16によって解釈されて、記憶性液晶表示体15に画像として表示される。
ここで、図8は、出力画像データに基づいて記憶性液晶表示体15に表示される出力画像を示す図である。
同図に示すように、この出力画像は、図4において表された“L”という文字画像の描画領域には、図3において表されたハッチングパターンをx方向に「1」、y方向に「1」だけ移動させたハッチングパターンに相当する、青色と黄色の花柄模様のハッチングが施されている。そのため、花をモチーフとした図形画像の形状が損なわれておらず、その全体を視認することができる。また、入力画像の非描画領域には、ハッチングは施されておらず、背景色情報が表す白色の背景画像となっている。例えば位置座標(1,1)の画素の色は、ハッチングパターンの色情報「C1」が表す黄色であるし、位置座標(2,1)の画素の色はハッチングパターンの色情報「C0」が表す青色であるし、位置座標(3,1)の画素の色は、ハッチングパターンの色情報「C1」が表す黄色である。また、位置座標(4,1)の画素の色は、背景色情報が表す白色である。
ここで、ハッチングパターンデータに含まれる各パターンビット値をシフト回路Fによって移動させずに、メモリHに格納されているハッチングパターンデータを直接セレクタSに供給させた場合に、入力画像に対して施されるハッチングについて考えてみる。図9は、この場合の出力画像を示す図である。同図に示すように、この出力画像は、図4において表される“L”という文字画像の描画領域には、図3において表されるハッチングパターンに相当する青色と黄色の花柄模様の図形画像がそのままの位置で施されている。つまり、ハッチングパターンに含まれる図形画像と入力画像の描画領域との間にずれがあるため、ハッチングパターンに含まれる図形画像の全体が文字画像の描画領域内に収まっておらず、図形画像の一部が欠損したように見える。この出力画像からは、花をモチーフとした図形画像のハッチングが施されていることを視認するのが難しい。
以上説明した実施形態によれば、入力画像の描画領域にハッチング処理を施す際に、そのハッチングパターンに含まれる図形画像と入力画像の描画領域との間のずれをできるだけ小さくすることができる。また、レジスタ、セレクタ、シフト回路、乗算器、加算器及び減算器からなる比較的簡易な構成の回路を用いるだけで、入力画像における文字などの描画領域だけにハッチングを施すことができ、ハッチング対象となる領域の位置座標或いはメモリアドレスなどを逐一指定する手間が不要となる。さらに、このシフト回路は、ハッチングパターンに含まれる各図形画像の画像サイズ分だけ各パターンビット値を移動させられるものであれば十分である。例えば、図3において表されるハッチングパターンであれば、各図形画像が横5画素×縦5画素で構成されている。そのため、シフト回路Fは、各パターンビットをx方向に5、y方向に5だけ移動させられるものであれば、目標位置としてどのような位置が指定された場合であっても、ハッチングパターンに含まれる図形画像の全体が文字画像の描画領域内に収まるように、パターンビット値の位置を移動させることができる。また、ハッチングカラーレジスタR0,R1に所望の色を記憶させるだけで、所望の色のハッチングを施すことができる。
[変形例]
以上が実施形態の説明であるが、この実施形態の内容は以下のように変形し得る。また、以下の変形例を適宜組み合わせてもよい。
(1)上述した実施形態において、シフト回路Fは、ハッチングパターンに含まれる各パターンビット値を、図3に示したx方向(右方向)に横シフト量分、y方向(下方向)に縦シフト量分だけ移動させた値を出力していた。これに対し、シフト回路Fは、ハッチングパターンに含まれる各パターンビット値を、図3に示したxと逆方向(左方向)、yと逆方向(上方向)に移動させた値を出力してもよい。例えば、図3に示した始点A4の位置座標(5,5)を基準位置座標とし、目標位置座標が(1,1)であるとすると、横シフト量は1−5=「−4」になり、縦シフト量は1−5=「−4」になる。この場合、シフト回路Fは、ハッチングパターンに含まれる各パターンビット値を、図3に示したx方向(右方向)に横シフト量分の「−4」、つまりxと逆方向(左方向)に「4」、図3に示したy方向(下方向)に縦シフト量分の「−4」、つまりyと逆方向(上方向)に「4」だけ移動させた値を出力する。この構成であっても、上述した実施形態と同様の効果が得られる。
(2)上述した実施形態において、シフト回路Fは、ハッチングパターンデータに含まれる各パターンビット値を、横シフト量及び縦シフト量分だけ移動させて、出力していた。このシフト回路Fに代えて、各パターンビット値の位置座標を座標計算によって得られた位置座標に変換して出力する回路を設けてもよい。具体的に説明すると、この回路は、各々のパターンビット値について、x方向の位置座標を横シフト量分だけ加算した位置座標を算出し、y方向の位置座標を縦シフト量分だけ加算した位置座標を算出した後、そのパターンビット値の位置座標を、算出した位置座標に変換して出力する。例えば、横シフト量が「1」であり、縦シフト量が「1」である場合、位置座標が(1,0)のパターンビット値「0」については、x方向の位置座標として1+1=「2」が算出され、y方向の位置座標として0+1=「1」が算出される。そして、このパターンビット値「0」の位置座標は、算出された位置座標(2,1)に変換されて出力される。すなわち、上述した実施形態におけるシフト回路Fと同様に、位置座標が(2,1)であるパターンビット値「0」が出力されることになる。よって、この構成であっても、上述した実施形態と同様の効果が得られる。
(3)上述した実施形態では、図3に示した花柄模様のハッチングを施すためのハッチングパターンデータがメモリHに記憶されており、図4に示した“L”という文字を表す入力画像データが入力された例を挙げて、ハッチング処理の詳細を説明したが、入力画像の内容や、ハッチングパターンは上記の例示に限定されない。
例えば、図10(a)に示す縦縞模様のハッチングを施すためのハッチングパターンデータがメモリHに記憶されており、図10(b)に示す直線を表す入力画像データが入力された場合を考える。図10(a)に示したハッチングパターンデータの始点A5の位置座標を基準位置座標とし、図10(b)において表される直線の左端の画素の位置座標を目標位置座標とした場合、ハッチング回路250からは、図10(c)に示すような出力画像を表す出力画像データが出力される。同図に示すように、この出力画像においては、図10(a)において表される図形画像の始点A5と、図10(b)において表される直線の始点とが合致するようなハッチングが施されているため、端点が明確に描画された破線が描画されている。また、このときに、さらに、ハッチングカラーレジスタR0に背景色と同じ色情報を格納し、ハッチングカラーレジスタR1に入力画像の直線と同じ色情報を格納しておくと、入力画像として入力された直線を、その直線と色が同じで、端点が明確に描画された破線にすることができる。また、ハッチングパターンを変えることによって、一点鎖線や二点鎖線など様々な破線を生成することができる。
仮に、ハッチングパターンデータに含まれる各パターンビット値を移動させずに、ハッチングパターンデータを直接セレクタSに供給させた場合を考えてみる。図10(d)は、この場合の出力画像を示す図である。同図に示すように、この出力画像においては、図10(b)に表される直線の描画領域には、図10(a)において表されるハッチングパターンに相当する縦縞模様のハッチングがそのままの位置で施されている。上述したように、ハッチングカラーレジスタR0に背景色と同じ色情報を格納した場合には、パターンビット値が「0」の色情報が背景色と同じ色情報に置き換えられるため、図のような端点が欠損して短くなったように見える破線が描画されることになる。
(4)上述した実施形態において、記憶装置23には、ハッチング回路250に入力される各々の入力画像データによって表される入力画像毎に目標位置座標が予め記憶されていたが、この目標位置座標は、利用者のキー22操作によって指定されてもよい。あるいは、CPU11が、入力画像データを解析して、その入力画像データによって表される文字画像の左上端の画素の位置座標を特定し、特定した位置座標を目標位置座標としてもよい。
また、上述した図形画像の始点は、目標位置座標に応じて、CPU11によって指定されてもよい。例えば、図4によって表される文字画像において、右上端の画素の位置座標(3,1)が目標位置座標として指定された場合、基準位置座標は、図形画像における右上端の画素の位置座標、例えば(2,0)になる。同様にして、文字画像において、左下端の画素の位置座標が目標位置座標として指定された場合には、基準位置座標は、図形画像における左下端の画素の位置座標になるし、右下端の画素の位置座標が目標位置座標として指定された場合には、基準位置座標は、図形画像における右下端の画素の位置座標になる。要するに、図形画像の始点は、ハッチングパターンデータに含まれる各々のパターンビット値の位置が、目標位置と図形画像の始点の位置との差分だけ離れた位置に移動された場合に、その始点を含む図形画像の全体が入力画像データによって表される入力画像の描画領域に含まれるような位置であればよい。このように、目標位置座標又は基準位置座標は、予め決められていなくてもよい。
また、上述した実施形態では、CPU11は、記憶装置23に図形画像毎に記憶された複数の始点位置のうち、目標位置座標までの距離が最も近い始点位置を基準位置座標として特定していた。これに限らず、記憶装置23には、例えば最も原点に近い図形画像の始点位置のみを記憶しておき、CPU11は、その始点位置と入力画像データの目標位置座標との差分を算出するようにしてもよい。
(5)上述した実施形態では、色情報の階調値として、その色情報が表す色が有るか無いかの2値しか想定していなかったので、ハッチングパターンの色情報C0,C1は、色そのものを意味すると同時に、その色が「有る」ということを意味していた。しかし、記憶性液晶表示体15が同一色を3以上の多階調で表示可能な場合には、この色情報には、色そのものを指定する情報とその階調値とが含まれることになる。
(6)上述した実施形態では、2値の入力画像データを反転する反転手段を、減算器SUによって実現していたが、これに限らず、例えば2値の入力画像データを選択信号とし、選択信号「1」が入力されると入力信号「0」を選択して出力し、選択信号「0」が入力されると入力信号「1」を選択して出力するような構成で実現してもよい。
また、入力画像データは、「1」と「0」という2値からなるデータである必要はなく、例えば、「0」と「15」というように、「0」という値と「0」以外の整数値からなる2値データであってもよい。この場合、乗算器MU0にて、「0」以外の値と、ハッチングパターンの色情報とを乗算する場合、そのまま乗算すると、ハッチングパターンの色情報が整数倍されてしまう。そこで、ハッチングパターンの色情報を予め「1/整数値」倍しておくか、または、乗算器MU0に整数値を入力する前に、その整数値を自身で除算して「1」にしておく必要がある。なお、入力画像データは図2に示したハッチング回路250に入力される時点で2値データであればよく、画像がもともと多値データで表されている場合には、その多値データを2値データに変換してからこのハッチング回路250に入力すればよい。
(7)ハッチング対象領域以外の領域は要するに背景領域であるが、この背景領域を表示するための画像データとしては、上述した実施形態のように背景カラーレジスタR2に格納されている背景色情報を用いてもよいし、ハッチング回路250に入力される入力画像データを用いてもよい。後者の場合、乗算器MU1には、背景カラーレジスタR2から読み出される背景色情報に代えて、入力画像データが供給されるような回路構成にすればよい。これにより、出力画像における背景領域の色を、入力画像における背景領域の色と同じにすることができる。
また、背景カラーレジスタR2に格納されている背景色情報、又は、ハッチング回路に入力される入力画像データのうちのいずれかを指定するようにしてもよい。
図11は、この場合のハッチング回路251を示す図である。このハッチング回路251には、背景カラー指定レジスタR5と、セレクタS0とがさらに設けられている。その他の構成については、図2に示したハッチング回路250の構成と同様である。
背景カラー指定レジスタR5は、入力画像データの各位置の画素値「α」、又は、背景カラーレジスタR2に格納されている背景色情報のいずれかを指定するための選択信号を格納している。つまり、この背景カラー指定レジスタR5は、2値の入力画像データに含まれる各位置の画素値、又は、背景色情報に含まれる各位置の画素値のいずれかを指定する指定手段として機能する。背景カラー指定レジスタR5に格納されている選択信号は、利用者のキー22操作に基づいてCPU11によって書き換えられてもよい。
セレクタS0には、入力信号として、入力画像データの画素値「α」と、背景カラーレジスタR2に格納されている背景色情報とが入力される。また、このセレクタS0には、背景カラー指定レジスタR5に格納されている選択信号が入力される。セレクタS0は、入力画像データの各位置の画素値「α」を指定する選択信号(ここでは「0」)が入力されると、入力画像データの画素値「α」を選択して出力する。一方、背景カラーレジスタR2に格納されている背景色情報を指定する選択信号(ここでは「1」)が入力されると、背景色情報を選択して出力する。つまり、このセレクタS0は、背景カラー指定レジスタR5によって指定された画素値を第2の乗算手段である乗算器MU1に供給する供給手段として機能する。
これにより、出力画像における背景領域の色として、入力画像における非描画領域の色又は背景色のいずれかを指定することができる。
(8)上述した実施形態において、VRAM14に記憶された画像データは、表示制御装置16によって、記憶性液晶表示体15に表示されていた。これに対し、ハッチング処理が施された画像データが、印刷に用いられてもよい。例えば、加算器ADから出力された出力画像データがRAM13に書き込まれ、その出力画像データが用紙1枚に印刷する画像に相当する画像データとして印刷部に供給されてもよい。印刷部は、供給された画像データに基づいて印刷を行い、画像データが表す画像を用紙に形成する。
(9)上述した実施形態では、背景カラーレジスタR2に格納されている背景色情報がそのまま乗算器MU1に供給されていたが、この背景カラーレジスタR2に加えて、VRAM14に背景色情報が記憶されている場合には、いずれかの背景色情報が選択されて、乗算器MU1に供給されてもよい。
図12は、この変形例に係るハッチング回路252の構成を示す図である。このハッチング回路252には、背景カラー指定レジスタR6と、セレクタS1とがさらに設けられている。その他の構成については、図2に示したハッチング回路250の構成と同様である。
背景カラー指定レジスタR6は、背景カラーレジスタR2に格納されている第1の背景色情報、又は、VRAM14に記憶されている第2の背景色情報のいずれかを指定するための選択信号を格納している。つまり、この背景カラー指定レジスタR6は、予め決められた第1の背景色情報を記憶する背景カラーレジスタR2、又は、記憶性液晶表示体15に出力される画像情報が展開されるVRAM14のいずれかを指定する指定手段として機能する。背景カラー指定レジスタR6に格納されている選択信号は、利用者のキー22操作に基づいてCPU11によって書き換えられてもよい。
セレクタS1には、入力信号として、背景カラーレジスタR2に格納されている第1の背景色情報と、VRAM14に記憶されている第2の背景色情報とが入力される。また、このセレクタS1には、背景カラー指定レジスタR6に格納されている選択信号が入力される。セレクタS1は、背景カラーレジスタR2を指定する選択信号(ここでは「0」)が入力されると、背景カラーレジスタR2から読み出された第1の背景色情報を選択して出力する。一方、VRAM14を指定する選択信号(ここでは「1」)が入力されると、VRAM14から読み出された第2の背景色情報を選択して出力する。つまり、このセレクタS1は、背景カラー指定レジスタR6によって指定された記憶手段、すなわち背景カラーレジスタR2又はVRAM14に記憶されている情報を、背景色情報に含まれる画素値として読み出し、第2の乗算手段である乗算器MU1に供給する供給手段として機能する。
また、表示手段又は印刷手段によって画像が出力(表示又は印刷)される場合、その出力画像の画像情報は、RAM13などの記憶手段に展開され、このRAM13にいったん記憶されてから表示手段又は印刷手段へと供給される。このRAM13に記憶された出力画像の画像情報を、上記実施形態における背景色情報として用いてもよい。この場合、背景カラー指定レジスタR6が、予め決められた第1の背景色情報を記憶する背景カラーレジスタR2、又は、出力画像の画像情報が記憶されるRAM13のいずれかを指定する指定手段として機能する。そして、セレクタS1が、背景カラー指定レジスタR4によって指定された記憶手段、すなわち背景カラーレジスタR2又はRAM13に記憶されている背景色情報又は画像情報を、上記実施形態における背景色情報の画素値として読み出し、第2の乗算手段である乗算器MU1に供給する供給手段として機能する。これにより、RAM13などの記憶手段を、背景色情報の供給元として選択することができる。
(10)上述した実施形態において、ハッチング回路250は、画像処理回路25に設けられていた。これに対し、ハッチング回路250が、表示制御装置16などの他のデバイスに設けられていてもよい。
(11)上述したハッチング回路250は、画像データに応じた画像を表示する表示装置を有するパーソナルコンピュータ装置、携帯電話機又は電子ブックなどに用いられてもよい。
画像表示装置1の構成を示す図である。 ハッチング回路250の構成を示す図である。 花柄模様のハッチングを行うためのハッチングパターンデータを示す図である。 ハッチング回路250に入力される入力画像データの一例を示す図である。 シフト回路F,セレクタS及び乗算器MU0の動作を説明する図である。 減算器SU及び乗算器MU1の動作を説明する図である。 加算器ADの動作を説明する図である。 記憶性液晶表示体15に表示される出力画像を示す図である。 各パターンビット値を移動させない場合の出力画像を示す図である。 変形例のハッチングパターンデータ、入力画像データ、出力画像を示す図である。 変形例に係るハッチング回路251の構成を示す図である。 変形例に係るハッチング回路252の構成を示す図である。
符号の説明
1…画像表示装置、11…CPU、12…ROM、13…RAM、14…VRAM、15…記憶性液晶表示体、16…表示制御装置、17…電源、18…電源制御装置、19…コネクタ、20…記憶制御装置、21…I/O、22…キー、23…記憶装置、24…外付記憶装置、25…画像処理回路、250,251,252…ハッチング回路、H…メモリ、R0,R1…ハッチングカラーレジスタ、S,S0,S1…セレクタ、MU0,MU1…乗算器、SU…減算器、AD…加算器、R2…背景カラーレジスタ、R3…横シフト量レジスタと、R4…縦シフト量レジスタ、F…シフト回路、R5,R6…背景カラー指定レジスタ、26…図形画像記憶手段。

Claims (10)

  1. 並べて配置される複数の図形画像を構成する各画素の位置と、その画素値とを記憶する図形画像記憶手段と、
    0を含む2値で各位置の画素値が表された2値画像データにおいて、前記図形画像との位置を合わせる目標として指定された目標位置と、前記図形画像において、前記2値画像データとの位置を合わせる始点として指定された始点位置との差分を算出する算出手段と、
    前記図形画像記憶手段に記憶されている各々の前記画素値の位置から前記算出手段によって算出された差分だけ離れた位置の画素値を出力する画素値出力手段と、
    前記画素値出力手段から出力された各位置の前記画素値と、前記2値画像データに含まれる各位置の画素値とを、それぞれ対応する前記位置毎に乗算する第1の乗算手段と、
    前記2値画像データに含まれる各位置の画素値を反転する反転手段と、
    前記2値画像データに含まれる各位置の画素値又は当該2値画像データに基づく画像の背景となる背景画像データに含まれる各位置の画素値と、前記反転手段によって反転された画素値とを、それぞれ対応する前記位置毎に乗算する第2の乗算手段と、
    前記第1の乗算手段の乗算結果と、前記第2の乗算手段の乗算結果とを、それぞれ対応する前記位置毎に加算し、出力画像データとして出力する加算手段と
    を備えることを特徴とする画像処理回路。
  2. 前記2値画像データにおける前記目標位置と、前記図形画像における前記始点位置とを記憶する位置記憶手段を備え、
    前記算出手段は、前記位置記憶手段に記憶されている前記目標位置と前記始点位置との差分を算出する
    ことを特徴とする請求項1記載の画像処理回路。
  3. 利用者による前記目標位置の指定を受け付ける目標受付手段と、
    前記目標受付手段によって受け付けられた前記目標位置に応じて、前記図形画像における前記始点位置を決定する始点決定手段とを備え、
    前記算出手段は、前記目標受付手段によって受け付けられた前記目標位置と、前記始点決定手段によって決定された前記始点位置との差分を算出する
    ことを特徴とする請求項1記載の画像処理回路。
  4. 各々の前記図形画像毎に前記始点として指定された始点位置を記憶する始点記憶手段と、
    前記始点記憶手段に記憶されている複数の前記始点位置のうち、前記目標位置に最も近い始点位置を、前記2値画像データとの位置を合わせる始点の始点位置として決定する始点決定手段とを備え、
    前記算出手段は、前記目標位置と、前記始点決定手段により決定された前記始点位置との差分を算出する
    ことを特徴とする請求項1記載の画像処理回路。
  5. 前記図形画像記憶手段は、
    前記複数の図形画像を構成する各画素の位置を記憶する第1の記憶手段と、
    前記図形画像の色を表す色情報を、前記複数の図形画像を構成する各画素の画素値として記憶する第2の記憶手段と、
    前記第2の記憶手段により記憶されている色情報を、前記第1の記憶手段により記憶されている各位置の画素の画素値として出力する色情報出力手段とを備える
    ことを特徴とする請求項1記載の画像処理回路。
  6. 前記第2の記憶手段は、複数種類の色情報を記憶しており、
    前記色情報出力手段は、前記複数の図形画像のうち同一種類の図形画像を構成する画素毎に、前記第2の記憶手段によって記憶されている複数種類の色情報のうちのいずれかを出力する
    ことを特徴とする請求項5記載の画像処理回路。
  7. 前記2値画像データに含まれる各位置の画素値、又は、当該2値画像データの画像の背景を表す背景画像データに含まれる各位置の画素値のいずれかを指定する指定手段と、
    前記指定手段によって指定された画素値を前記第2の乗算手段に供給する供給手段と
    を備えることを特徴とする請求項1記載の画像処理回路。
  8. 予め決められた背景色情報を記憶する第3の記憶手段、又は、表示手段又は印刷手段に出力される画像情報を記憶する第4の記憶手段のいずれかを指定する指定手段と、
    前記指定手段によって指定された記憶手段に記憶されている情報を、前記背景画像データに含まれる画素値として読み出し、前記第2の乗算手段に供給する供給手段と
    を備えることを特徴とする請求項1記載の画像処理回路。
  9. 請求項1乃至8のいずれか1項に記載の画像処理回路と、
    前記加算手段から出力される出力画像データに基づいて画像を表示する表示手段と
    を備えることを特徴とする表示装置。
  10. 請求項1乃至8のいずれか1項に記載の画像処理回路と、
    前記加算手段から出力される出力画像データに基づいて印刷を行う印刷手段と
    を備えることを特徴とする印刷装置。
JP2007211255A 2007-08-14 2007-08-14 画像処理回路、表示装置及び印刷装置 Expired - Fee Related JP4404116B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2007211255A JP4404116B2 (ja) 2007-08-14 2007-08-14 画像処理回路、表示装置及び印刷装置
US12/222,422 US8326083B2 (en) 2007-08-14 2008-08-08 Image processing circuit, display device, and printing device
CN2008101459531A CN101369344B (zh) 2007-08-14 2008-08-14 图像处理电路、显示装置以及印刷装置
EP08014506A EP2026323B1 (en) 2007-08-14 2008-08-14 Image processing circuit, display device, and printing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007211255A JP4404116B2 (ja) 2007-08-14 2007-08-14 画像処理回路、表示装置及び印刷装置

Publications (2)

Publication Number Publication Date
JP2009048248A true JP2009048248A (ja) 2009-03-05
JP4404116B2 JP4404116B2 (ja) 2010-01-27

Family

ID=39841363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007211255A Expired - Fee Related JP4404116B2 (ja) 2007-08-14 2007-08-14 画像処理回路、表示装置及び印刷装置

Country Status (4)

Country Link
US (1) US8326083B2 (ja)
EP (1) EP2026323B1 (ja)
JP (1) JP4404116B2 (ja)
CN (1) CN101369344B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8089493B2 (en) 2007-08-14 2012-01-03 Seiko Epson Corporation Image processing circuit, display device, and printing device

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100061660A1 (en) * 2008-09-08 2010-03-11 Hon Hai Precision Industry Co., Ltd. Display device and image resizing method thereof
TWI384427B (zh) * 2009-04-29 2013-02-01 Utechzone Co Ltd Background establishment method and device
CN102023839B (zh) * 2010-12-10 2012-08-29 福州瑞芯微电子有限公司 一种alpha运算器
JP5705173B2 (ja) * 2012-06-25 2015-04-22 京セラドキュメントソリューションズ株式会社 画像処理装置および画像形成装置
JP2014116737A (ja) * 2012-12-07 2014-06-26 Canon Inc 画像形成装置、画像形成装置の制御方法、及びプログラム
JP6821418B2 (ja) * 2016-12-16 2021-01-27 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2048624B (en) 1979-05-02 1982-12-15 Ibm Graphics display apparatus
EP0383367B1 (en) 1983-12-26 1999-03-17 Hitachi, Ltd. Graphic pattern processing apparatus and method
DE3729023C2 (de) * 1986-08-29 1995-03-16 Canon Kk Bildbearbeitungsgerät
US4992781A (en) 1987-07-17 1991-02-12 Sharp Kabushiki Kaisha Image synthesizer
JPH0328984A (ja) 1989-06-27 1991-02-07 Fujitsu Ltd ハッチパターンによる面塗り描画方式
JPH03177893A (ja) * 1989-12-06 1991-08-01 Toshiba Corp マルチウィンドウ表示装置
JPH05210381A (ja) 1992-01-30 1993-08-20 Casio Comput Co Ltd 表示制御装置
DE69432512T2 (de) 1993-10-29 2004-04-22 Sun Microsystems, Inc., Mountain View Für fensterumgebungsoperationen entworfenes rasterpuffersystem
WO1996020470A1 (en) 1994-12-23 1996-07-04 Philips Electronics N.V. Single frame buffer image processing system
US5668941A (en) 1995-06-22 1997-09-16 Cirrus Logic, Inc. Optimum implementation of X-Y clipping on pixel boundary
JP3519186B2 (ja) * 1995-10-20 2004-04-12 富士通株式会社 画像中間調処理装置
JPH09222824A (ja) * 1996-02-19 1997-08-26 Toshiba Corp 画像処理装置
JPH1031735A (ja) 1996-07-15 1998-02-03 Canon Inc 画像処理装置及び画像処理方法
JP3478192B2 (ja) * 1999-08-20 2003-12-15 日本電気株式会社 画面重畳表示型情報入出力装置
JP4596216B2 (ja) * 2001-06-20 2010-12-08 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
JP2004038728A (ja) * 2002-07-05 2004-02-05 Noritsu Koki Co Ltd 画像処理方法、画像処理プログラム、および、画像処理プログラムを記録した記録媒体
EP1583072A4 (en) * 2003-04-15 2010-03-10 Fujitsu Microelectronics Ltd DRAWING DEVICE AND DISPLAY CONTROL UNIT
US7702131B2 (en) * 2005-10-13 2010-04-20 Fujifilm Corporation Segmenting images and simulating motion blur using an image sequence
JP4488042B2 (ja) 2007-08-14 2010-06-23 セイコーエプソン株式会社 画像処理回路、表示装置及び印刷装置
JP4404117B2 (ja) 2007-08-14 2010-01-27 セイコーエプソン株式会社 画像処理回路、表示装置及び印刷装置
US8089493B2 (en) * 2007-08-14 2012-01-03 Seiko Epson Corporation Image processing circuit, display device, and printing device
JP4420083B2 (ja) 2007-08-14 2010-02-24 セイコーエプソン株式会社 画像処理回路、表示装置及び印刷装置
JP4424388B2 (ja) 2007-08-14 2010-03-03 セイコーエプソン株式会社 画像処理回路、表示装置及び印刷装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8089493B2 (en) 2007-08-14 2012-01-03 Seiko Epson Corporation Image processing circuit, display device, and printing device

Also Published As

Publication number Publication date
US8326083B2 (en) 2012-12-04
CN101369344A (zh) 2009-02-18
CN101369344B (zh) 2011-12-14
EP2026323A2 (en) 2009-02-18
JP4404116B2 (ja) 2010-01-27
EP2026323B1 (en) 2012-06-06
US20090046949A1 (en) 2009-02-19
EP2026323A3 (en) 2009-12-02

Similar Documents

Publication Publication Date Title
JP4404116B2 (ja) 画像処理回路、表示装置及び印刷装置
JP4488042B2 (ja) 画像処理回路、表示装置及び印刷装置
US20090091574A1 (en) Rendering device, image output device, and program
US8089493B2 (en) Image processing circuit, display device, and printing device
JP2007265035A (ja) 描画装置及び破線描画方法
JP4339675B2 (ja) グラデーション画像作成装置及びグラデーション画像作成方法
EP2397991A1 (en) Method for providing texture effect and display apparatus applying the same
JP2004187266A (ja) 画像配置方法、画像配置装置、および画像配置プログラム
JP4420083B2 (ja) 画像処理回路、表示装置及び印刷装置
JP2005326756A (ja) 文字画像生成装置,文字画像生成方法,表示制御装置,文字画像生成プログラムおよび表示制御プログラム
JP4404117B2 (ja) 画像処理回路、表示装置及び印刷装置
JP4424388B2 (ja) 画像処理回路、表示装置及び印刷装置
JP5332551B2 (ja) 情報処理装置、表示制御方法、及びプログラム
JP2011137899A (ja) 画像処理装置、及びプログラム
JP4661704B2 (ja) 画像処理装置、画像形成装置およびプログラム
JP5523226B2 (ja) 画像処理装置、画像処理プログラム、および画像処理方法
JP2008071317A (ja) 画像形成装置
JP2005216146A (ja) 情報表示装置、情報表示システムおよび情報表示方法
JP2012208748A (ja) 画像変換装置、画像変換プログラム及び画像変換方法
JP2005208303A (ja) 情報表示装置
CN110809770A (zh) 小矢量图像生成
JP2005149296A (ja) 図形描画方法、図形描画装置およびそのプログラム
JP2017028399A (ja) 画像処理装置及びプログラム
JP2010113113A (ja) 描画処理方法及び描画処理回路
JP2008207481A (ja) 昇華型プリンタ装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090727

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090804

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090902

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091013

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091026

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121113

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131113

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees