Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP6036072B2 - Image processing device - Google Patents
[go: Go Back, main page]

JP6036072B2 - Image processing device - Google Patents

Image processing device Download PDF

Info

Publication number
JP6036072B2
JP6036072B2 JP2012205332A JP2012205332A JP6036072B2 JP 6036072 B2 JP6036072 B2 JP 6036072B2 JP 2012205332 A JP2012205332 A JP 2012205332A JP 2012205332 A JP2012205332 A JP 2012205332A JP 6036072 B2 JP6036072 B2 JP 6036072B2
Authority
JP
Japan
Prior art keywords
character
display
character string
line
font
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.)
Active
Application number
JP2012205332A
Other languages
Japanese (ja)
Other versions
JP2014059496A5 (en
JP2014059496A (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.)
Yamaha Corp
Original Assignee
Yamaha 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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP2012205332A priority Critical patent/JP6036072B2/en
Publication of JP2014059496A publication Critical patent/JP2014059496A/en
Publication of JP2014059496A5 publication Critical patent/JP2014059496A5/ja
Application granted granted Critical
Publication of JP6036072B2 publication Critical patent/JP6036072B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

この発明は、水平スキャンライン1本分の記憶容量を有するラインバッファを利用して画像データの描画および液晶ディスプレイなどの表示器への表示を行う画像処理装置に関する。   The present invention relates to an image processing apparatus that draws image data and displays it on a display such as a liquid crystal display using a line buffer having a storage capacity for one horizontal scan line.

周知の通り、表示器への静止画や動画の表示制御は、描画アプリケーションに従って静止画や動画の画像データをバッファに書き込む描画処理とバッファ内の画像データを読み出して表示器に表示させる表示処理とを同時並行的に進めることで実現される。このような描画処理および表示処理を行う画像処理装置としては、1フレーム分の画像データを記憶するフレームバッファを備えたフレームバッファ方式の画像処理装置と、水平スキャンライン1本分の画像データを記憶するラインバッファを備えたラインバッファ方式の画像処理装置がある。ラインバッファ方式の画像処理装置は、フレームバッファ方式の画像処理装置に比較して画像データの書き込み先となるバッファの記憶容量が少なくてすむため、小型化に適し、車載用の画像表示システム(例えば、スピードメータなどのメータ類を画像表示により実現するシステム)など省スペース化が必要となるシステムの構築に好適である。なお、ラインバッファ方式の画像処理装置に関する文献として例えば特許文献1がある。   As is well known, display control of still images and moving images on a display device includes drawing processing for writing image data of still images and moving images into a buffer according to a drawing application, and display processing for reading out image data in the buffer and displaying it on the display device. This is realized by proceeding in parallel. As an image processing apparatus for performing such drawing processing and display processing, a frame buffer type image processing apparatus having a frame buffer for storing image data for one frame, and image data for one horizontal scan line are stored. There is a line buffer type image processing apparatus provided with a line buffer. Since the line buffer type image processing apparatus requires less storage capacity of the buffer to which the image data is written compared to the frame buffer type image processing apparatus, it is suitable for downsizing, and an on-vehicle image display system (for example It is suitable for construction of a system that requires space saving, such as a system that realizes meters such as a speedometer by image display). For example, Japanese Patent Application Laid-Open No. H10-228707 discloses a document related to a line buffer type image processing apparatus.

特開2005−215252号公報JP 2005-215252 A 特開平03−184182号公報Japanese Patent Laid-Open No. 03-184182

従来、表示器の設置態様としては、垂直走査方向が上下方向(鉛直方向)となり、水平走査方向が左右方向となるように設置する態様が一般的であった。しかし、近年では、垂直走査方向が左右方向となり、水平走査方向が上下方向となるように反時計回りに90度回転させて表示器を設置する態様も多々見受けられるようになってきている。例えば、前述した車載用の画像表示システムでは、ダッシュボードの運転席側に表示器を設置する必要があるが、設置スペースに限りがあるため縦置きによる表示器の設置が必要となることが多い。以下、垂直走査方向が上下方向(鉛直方向)となり、水平走査方向が左右方向となるように配置された表示器を「横置き表示器」と呼び、これを反時計回りに90度回転させて設置された表示器のことを「縦置き表示器」と呼ぶ。なお、「横置き表示器」を時計回りに90度回転させて設置された表示器のことを「縦置き表示器」としても良い。   Conventionally, the display device is generally installed in such a manner that the vertical scanning direction is the vertical direction (vertical direction) and the horizontal scanning direction is the horizontal direction. However, in recent years, it has become increasingly common to install the display device by rotating it 90 degrees counterclockwise so that the vertical scanning direction is the left-right direction and the horizontal scanning direction is the up-down direction. For example, in the above-described in-vehicle image display system, it is necessary to install a display device on the driver's seat side of the dashboard. However, since the installation space is limited, it is often necessary to install the display device vertically. . Hereinafter, a display arranged so that the vertical scanning direction is the vertical direction (vertical direction) and the horizontal scanning direction is the left-right direction is referred to as a “horizontal display”, which is rotated 90 degrees counterclockwise. The installed display is called “vertical display”. A display installed by rotating the “horizontal display” 90 degrees clockwise may be referred to as a “vertical display”.

表示器に表示される画像は、スプライトなどの図柄や文字列、線などの表示要素を多数組み合わせて構成されている。横置き表示器における文字列の表示は、図6(a)に示すように、文字列を構成する各文字のフォントを水平走査方向に並べて表示することで実現されていた。これに対して、縦置き表示器に文字列を表示する場合には、文字列の読み取りを容易にするために、図6(b)に示すように、文字列を構成する各文字のフォントとして、図6(a)に示すものを時計回りに90度回転させたフォント(すなわち、文字の高さ方向が水平走査方向に一致するフォント)を垂直走査方向に並べて表示することが必要となる。以下では、図6(a)に示すように、構成文字のフォントを水平走査方向に並べて構成される文字列を「横方向文字列」と呼び、図6(b)に示すように、構成文字のフォントを垂直走査方向に並べて構成される文字列を「縦方向文字列」と呼ぶ。また、以下では、横方向文字列を構成するためのフォントを「横方向文字列用フォント」と呼び、縦方向文字列を構成するフォントを「縦方向文字列用フォント」と呼ぶ。   The image displayed on the display unit is configured by combining a number of display elements such as symbols such as sprites, character strings, and lines. As shown in FIG. 6A, the display of the character string in the horizontal display is realized by displaying the fonts of the characters constituting the character string side by side in the horizontal scanning direction. On the other hand, when a character string is displayed on the vertical display, as shown in FIG. 6B, as a font for each character constituting the character string, in order to facilitate reading of the character string. It is necessary to display fonts obtained by rotating the one shown in FIG. 6A by 90 degrees clockwise (that is, fonts whose character height direction matches the horizontal scanning direction) side by side in the vertical scanning direction. Hereinafter, as shown in FIG. 6A, a character string formed by arranging fonts of constituent characters in the horizontal scanning direction is referred to as a “horizontal character string”. As shown in FIG. A character string formed by arranging the fonts in the vertical scanning direction is called a “vertical character string”. In the following, a font for configuring a horizontal character string is referred to as a “horizontal character string font”, and a font configuring a vertical character string is referred to as a “vertical character string font”.

横方向文字列の表示においては、例えば図6(c)に示すように、文字毎に表示開始位置XSおよび終了位置XE(フォント画像の左端を原点とする位置)の指定が可能なプロポーショナルフォントを用い、各文字のフォント画像を空白部分を互いに重ね合わせて表示することにより、文字間の空白が少なくなるように表示することができた。しかし、縦方向文字列を表示する機能を備えたラインバッファ方式の画像処理装置は従来提案されておらず、ラインバッファ方式の画像処理装置を用いてプロポーショナルフォントによる縦方向文字列の表示はできなかった。   In the display of the horizontal character string, for example, as shown in FIG. 6C, a proportional font that can specify the display start position XS and the end position XE (position with the left end of the font image as the origin) for each character is used. It was possible to display the font image of each character so that the space between the characters is reduced by displaying the blank portion in an overlapping manner. However, a line buffer type image processing apparatus having a function for displaying a vertical character string has not been proposed so far, and a vertical character string cannot be displayed using a proportional font by using the line buffer type image processing apparatus. It was.

本発明は上記課題に鑑みて為されたものであり、ラインバッファ方式の画像処理装置に、プロポーショナルフォントによる縦方向文字列の表示を行わせることを可能にする技術を提供することを目的とする。   The present invention has been made in view of the above-described problems, and an object of the present invention is to provide a technique that enables a line buffer image processing apparatus to display a vertical character string using a proportional font. .

上記課題を解決するために本発明は、表示器における1スキャンライン分の画像を表す画像データを記憶するラインバッファと、前記表示器に表示させる文字列の表示態様を示す属性データであって、当該文字列を構成する各文字の表示開始位置および表示終了位置を示す情報を含む属性データが格納される汎用テーブルと、各種の文字のフォントを表すフォントデータを格納したメモリから、読み出しを指示された文字のフォントデータを読み出すメモリインタフェースと、前記メモリから読み出されたフォントデータを利用して1スキャンライン分の画像データを生成し、前記ラインバッファに書き込む描画処理を実行する画像データ生成部と、各水平走査期間において水平スキャンラインの跨る文字を前記汎用テーブルに格納された属性データを参照して特定し、該当する文字についての描画処理の実行を前記画像データ生成部に指示するコントローラと、を具備し、前記文字列は、当該文字列を構成する各文字の高さ方向が水平走査方向に一致し、かつ、各文字を垂直走査方向に並べた縦方向文字列であり、前記コントローラは、水平スキャンラインが縦方向文字列を跨いでいる場合に水平スキャンラインの跨る文字および当該文字の何ライン目を跨いでいるかを示すパラメータを水平スキャンラインを更新する毎に更新する一方、当該パラメータの示す文字の前記表示開始位置から前記表示終了位置の間に水平スキャンラインが跨っている場合に当該文字を表示対象と判定し前記パラメータの示すラインについての描画処理の実行を前記画像データ生成部に指示することを特徴とする画像処理装置、を提供する。   In order to solve the above problems, the present invention is a line buffer for storing image data representing an image for one scan line in a display, and attribute data indicating a display mode of a character string to be displayed on the display, Reading is instructed from a general-purpose table storing attribute data including information indicating the display start position and display end position of each character constituting the character string, and from a memory storing font data representing fonts of various characters. A memory interface that reads font data of a character, an image data generation unit that generates image data for one scan line using the font data read from the memory, and executes a drawing process to be written to the line buffer; In each horizontal scan period, the characters straddling the horizontal scan line are assigned to the attribute stored in the general-purpose table. A controller that identifies the character by referring to the data and instructs the image data generation unit to execute a drawing process for the corresponding character, and the character string is in the height direction of each character constituting the character string. Is a vertical character string in which the characters are aligned in the horizontal scanning direction and the characters are arranged in the vertical scanning direction, and the controller has a character across the horizontal scan line when the horizontal scan line straddles the vertical character string. And a parameter indicating how many lines of the character are crossed each time the horizontal scan line is updated, while the horizontal scan line crosses between the display start position and the display end position of the character indicated by the parameter. The character is determined as a display target, and the image data generation unit is instructed to execute a drawing process for the line indicated by the parameter. The image processing apparatus according to claim to provide.

より詳細に説明すると、縦方向文字列の属性データが汎用テーブルに格納されると、コントローラはその縦方向文字列に対応づけてレジスタ等に第1および第2のパラメータを設定する。ここで、第1のパラメータとは、水平スキャンラインが当該第1のパラメータに対応する縦方向文字列を跨いでいる場合に、水平スキャンラインの跨る文字を示すパラメータであり、第2のパラメータとは、当該第1のパラメータの示す文字の何ライン目を水平スキャンラインが跨いでいるのかを示すパラメータである。なお、第1のパラメータの初期値は、縦方向文字列の先頭の文字を示す値であり、第2のパラメータの初期値は上記先頭の文字の先頭ラインを示す値である。本発明においては、水平スキャンラインが更新される毎に第1および第2のパラメータが更新され、第1のパラメータの示す文字の表示開始位置から表示終了位置の間に水平スキャンラインが跨っている場合に第2のパラメータの示すライン(すなわち、当該文字において水平スキャンラインが重なっているライン)についての描画処理が実行され、縦方向文字列を構成する各文字のフォントの表示開始位置から表示終了位置までの画像データが先頭文字のものから順に1ライン分ずつラインバッファに描画される。これにより、プロポーショナルフォントによる縦方向文字列の表示が実現される。上記第1および第2のパラメータの初期化については、汎用テーブルへの縦方向文字列の属性データの書き込みの際にホストCPUに行わせても良く、また、画像処理装置の初期化の際に行っても良い。なお、特許文献2には、文字列の縦書きレイアウトについての記載があるが、縦置き表示器における縦方向文字列の表示制御を開示するものではなく、本願発明とは全く異なる技術である。   More specifically, when the vertical character string attribute data is stored in the general-purpose table, the controller sets the first and second parameters in a register or the like in association with the vertical character string. Here, the first parameter is a parameter indicating a character straddling the horizontal scan line when the horizontal scan line straddles the vertical character string corresponding to the first parameter. Is a parameter indicating which line of the character indicated by the first parameter the horizontal scan line is straddling. The initial value of the first parameter is a value indicating the first character of the vertical character string, and the initial value of the second parameter is a value indicating the first line of the first character. In the present invention, the first and second parameters are updated each time the horizontal scan line is updated, and the horizontal scan line straddles between the display start position and the display end position of the character indicated by the first parameter. In this case, the drawing process is executed for the line indicated by the second parameter (that is, the line where the horizontal scan line overlaps the character), and the display ends from the font display start position of each character constituting the vertical character string. The image data up to the position is drawn in the line buffer one line at a time starting from the first character. Thereby, the display of the vertical direction character string by a proportional font is implement | achieved. The initialization of the first and second parameters may be performed by the host CPU when writing the vertical direction character string attribute data to the general-purpose table, or when the image processing apparatus is initialized. You can go. Patent Document 2 describes a vertical writing layout of character strings, but does not disclose display control of vertical character strings in a vertical display device, and is a technique completely different from the present invention.

より好ましい態様においては、前記メモリに記憶されているフォントデータには圧縮符号化が施されているとともに、前記メモリから読み出されたフォントデータをデコードして前記画像データ生成部に与えるデコード部を有し、前記コントローラは、表示対象と判定した文字についてのフォントデータのデコードを前記デコード部に指示するとともに、当該文字に後続する各文字について圧縮符号化データのデコードの要否を前記属性データに基づいて判定し、デコードを要すると判定された文字についての圧縮符号化データのデコードを前記デコード部に指示することを特徴する。具体的には、前記コントローラは、第1のパラメータの示す文字に後続する文字のうち、当該文字と第1のパラメータの示す文字との間にある文字の表示幅の和(すなわち、それら各文字についての表示終了位置から表示開始位置を減算して得られる値の和)に、第1のパラメータの示す文字の表示終了位置から当該文字の表示開始位置を減算して得られる値と、当該文字の表示終了位置から前記第2のパラメータを減算して得られる値と、を加算して得られる値がフォントサイズ−1以上となった文字以降の文字について、圧縮符号化データのデコードを不要と判定する。詳細については本発明の実施形態の説明(より正確には、動作例(B−2)の説明)において明らかにするが、このような態様によれば、メモリに記憶されているフォントデータに圧縮符号化が施されており、かつデコード対象の画素に先行する複数の画素のデコード結果が必要となる圧縮符号化方式が採用されている場合であっても、ラインバッファ方式の画像処理装置に、プロポーショナルフォントによる縦方向文字列の表示を行わせることが可能になる。   In a more preferred aspect, the font data stored in the memory is compressed and encoded, and a decoding unit that decodes the font data read from the memory and supplies the decoded data to the image data generation unit is provided. And the controller instructs the decoding unit to decode the font data for the character determined to be displayed, and sets the attribute data to determine whether or not to decode the compressed encoded data for each character following the character. The decoding unit is instructed to decode the compression-encoded data for the character determined to require decoding. Specifically, among the characters following the character indicated by the first parameter, the controller displays the sum of the display widths of the characters between the character and the character indicated by the first parameter (that is, each of those characters). The value obtained by subtracting the display start position of the character from the display end position of the character indicated by the first parameter to the sum of the values obtained by subtracting the display start position from the display end position for It is not necessary to decode the compression-encoded data for characters after the character whose value obtained by subtracting the second parameter from the display end position is equal to or larger than the font size −1. judge. The details will be clarified in the description of the embodiment of the present invention (more precisely, the description of the operation example (B-2)). According to such an aspect, the font data stored in the memory is compressed. Even when a compression encoding method that has been encoded and requires a decoding result of a plurality of pixels preceding the pixel to be decoded is adopted, the image processing apparatus of the line buffer method, It is possible to display a vertical character string using a proportional font.

また、別の好ましい態様においては、前記メモリには、文字の高さ方向を水平走査方向に一致させたフォントを表す縦方向文字列用フォントデータが格納されており、縦方向文字列の属性データでは、構成文字の描画に縦方向文字列用フォントデータを用いることが指定されていることを特徴とする。このような態様によれば、縦方向文字列を構成する各文字の表示を行う際に、横方向文字列用のフォントに時計回りに90度の回転編集を施して使用する態様に比較して、演算処理量が削減され、描画性能の低下や演算回路の規模増大を回避することが可能になる。   In another preferred embodiment, the memory stores font data for vertical character strings representing fonts in which the height direction of characters is matched with the horizontal scanning direction, and attribute data of the vertical character strings. In this case, it is specified that the font data for the vertical direction character string is used for drawing the constituent characters. According to such an aspect, when each character constituting the vertical character string is displayed, the font for the horizontal character string is rotated 90 degrees clockwise and used in comparison with the aspect used. Thus, the amount of calculation processing is reduced, and it is possible to avoid a decrease in drawing performance and an increase in the scale of the calculation circuit.

本発明の一実施形態の画像表示LSI100Aの構成例を示す図である。It is a figure which shows the structural example of image display LSI100A of one Embodiment of this invention. 縦方向文字列の属性データを説明するための図である。It is a figure for demonstrating the attribute data of a vertical direction character string. プロポーショナルフォントを用いない場合、およびプロポーショナルフォントを用いた場合の各々におけるに縦方向文字列の表示例を示す図である。It is a figure which shows the example of a display of a vertical direction character string in each when not using a proportional font and when using a proportional font. プロポーショナルフォントを用いずに縦方向文字列の表示を行う場合の画像表示LSI100Aの動作を説明するための図である。It is a figure for demonstrating operation | movement of image display LSI100A in the case of displaying a vertical direction character string, without using a proportional font. プロポーショナルフォントを用いて縦方向文字列の表示を行う場合の画像表示LSI100Aの動作を説明するための図である。It is a figure for demonstrating operation | movement of 100 A of image display LSIs when displaying a vertical direction character string using a proportional font. 表示器における文字列の表示態様を説明するための図である。It is a figure for demonstrating the display mode of the character string in a display.

(A:構成)
図1は、この発明による画像処理装置の一実施形態である画像表示LSI(Large Scale Integrated circuit;大規模集積回路)100Aを含む画像表示システムの構成を示すブロック図である。図1では、画像表示LSI100Aの機能の理解を容易にするため、同画像表示LSI100Aに接続されたホストCPU201と、LCD(Liquid Crystal Display;液晶表示器)202と、ROM203が同画像表示LSI100Aとともに図示されている。図1に示す画像表示システムは、例えば乗用車などの車両に搭載され、スピードメータ等の画像や交通情報などを表す文字情報を表示する車載システムであり、LCD202は車両のダッシュボードの運転席側に縦置きされる。
(A: Configuration)
FIG. 1 is a block diagram showing a configuration of an image display system including an image display LSI (Large Scale Integrated circuit) 100A which is an embodiment of an image processing apparatus according to the present invention. In FIG. 1, in order to facilitate understanding of the function of the image display LSI 100A, a host CPU 201, an LCD (Liquid Crystal Display) 202, and a ROM 203 connected to the image display LSI 100A are shown together with the image display LSI 100A. Has been. The image display system shown in FIG. 1 is an in-vehicle system that is mounted on a vehicle such as a passenger car and displays character information representing an image such as a speedometer or traffic information, and the LCD 202 is provided on the driver seat side of the dashboard of the vehicle. It is placed vertically.

ホストCPU201は、図1に示す画像表示システムを制御するプロセッサである。ホストCPU201による制御の下でLCD202に表示される1フレーム分の画像は、スプライトと呼ばれる図柄の部品や文字列、線などの各種画像構成要素を組み合わせて構成されている。ホストCPU201は、LCD202に各種画像構成要素を表示させるためのコマンドやデータを画像表示LSI100Aに供給する。ROM203には、文字列を構成する各種文字のフォントおよび各種のスプライトについての圧縮形式の画像データや、アルファブレンディングに用いる圧縮形式のアルファデータが記憶されている。詳細については後述するが、本実施形態では、スプライトおよびフォント等の圧縮符号化方式として、デコード対象の画素に先行する複数の画素(例えば、スプライトの場合は左隣、左上および直上の3画素)のデコード結果が必要となる圧縮符号化方式が採用されている。   The host CPU 201 is a processor that controls the image display system shown in FIG. An image for one frame displayed on the LCD 202 under the control of the host CPU 201 is configured by combining various image components such as symbol parts called sprites, character strings, and lines. The host CPU 201 supplies commands and data for displaying various image components on the LCD 202 to the image display LSI 100A. The ROM 203 stores compressed image data for various character fonts and various sprites constituting the character string, and compressed alpha data used for alpha blending. Although details will be described later, in the present embodiment, a plurality of pixels preceding the pixel to be decoded (for example, three pixels on the left, upper left, and immediately above in the case of a sprite) as compression encoding methods such as sprites and fonts. A compression encoding method that requires the decoding result is adopted.

画像表示LSI100Aは、ホストCPU201から与えられるコマンドやデータにしたがって、LCD202に画像を表示させるラインバッファ方式の画像処理装置である。図1に示すように、画像表示LSI100Aは、CPUインタフェース(図1では、「CPUI/F」と表記)101と、カラーパレット記憶部102と、汎用テーブル103と、レジスタ104と、コントローラ105Aと、ROMインタフェース(図1では、「ROMI/F」と表記)106と、デコード部107と、画像データ生成部108と、画像出力部109と、これら各部に動作クロックを供給するクロック生成部110と、を有している。   The image display LSI 100 </ b> A is a line buffer type image processing apparatus that displays an image on the LCD 202 in accordance with commands and data given from the host CPU 201. As shown in FIG. 1, the image display LSI 100A includes a CPU interface (indicated as “CPU I / F” in FIG. 1) 101, a color palette storage unit 102, a general-purpose table 103, a register 104, a controller 105A, ROM interface (denoted as “ROM I / F” in FIG. 1) 106, decoding unit 107, image data generation unit 108, image output unit 109, clock generation unit 110 that supplies an operation clock to these units, have.

CPUインタフェース101は、ホストCPU201から供給されるコマンドやデータを受け取って画像表示LSI100A内の関係する各部に供給するインタフェースである。カラーパレット記憶部102は、画像表示LSI100Aをカラーパレットモードで動作させる際のカラーパレットを表すカラーパレットデータを記憶する回路である。カラーパレットモードとは、例えば24bit(或いは16Bit)カラーのうちの予め指定された数分の色(例えば256色)によりカラー画像を表現する動作モードであり、カラーパレットデータとはそれらの色を指定するデータである。汎用テーブル103は、ホストCPU201からCPUインタフェース101を介して供給される属性データを記憶する属性データ記憶部の役割を担っている。レジスタ104は、スプライト表示等のための各種制御データを記憶する回路である。本実施形態では、カラーパレット記憶部102、汎用テーブル103、およびレジスタ104を各々別個に設けたが、1つの揮発性メモリ内の記憶領域の割り当てによりこれらの役割を実現しても良い。   The CPU interface 101 is an interface that receives commands and data supplied from the host CPU 201 and supplies them to the related units in the image display LSI 100A. The color palette storage unit 102 is a circuit that stores color palette data representing a color palette when the image display LSI 100A is operated in the color palette mode. The color palette mode is an operation mode in which a color image is expressed by a predetermined number of colors (for example, 256 colors) out of 24 bit (or 16 bit) colors, for example, and the color palette data specifies those colors. It is data to be. The general-purpose table 103 serves as an attribute data storage unit that stores attribute data supplied from the host CPU 201 via the CPU interface 101. The register 104 is a circuit that stores various control data for sprite display and the like. In the present embodiment, the color palette storage unit 102, the general-purpose table 103, and the register 104 are provided separately, but these roles may be realized by assigning storage areas in one volatile memory.

汎用テーブル103に格納される属性データは、各垂直走査期間においてLCD202に表示させる画像を構成するスプライトや文字列の表示態様(画面上のどの位置にどのような形で表示するのかなど)を示すデータである。属性データは、垂直走査期間毎にホストCPU201から供給され、CPUインタフェース101によってスプライトや文字列などの画像構成要素毎に汎用テーブル103に格納される。   The attribute data stored in the general-purpose table 103 indicates the display mode of the sprites and character strings that constitute the image displayed on the LCD 202 in each vertical scanning period (in what position on the screen and in what form). It is data. The attribute data is supplied from the host CPU 201 for each vertical scanning period, and is stored in the general-purpose table 103 for each image component such as a sprite or a character string by the CPU interface 101.

図2は、汎用テーブル103における文字列の属性データの格納例を示す図である。文字列の属性データには、文字列全体の表示態様(文字列の表示位置など)を表すデータと、当該文字列を構成する各文字を示すデータと、各文字の表示に用いるフォントタイプとが含まれる。図2において、アドレスがLYSAからLYEAの領域には、文字列全体の表示態様を示すデータ(図2におけるレイヤ#0、#1および#2の各々)がLCD202に表示させる画像に含まれる文字列の数分だけ格納される。   FIG. 2 is a diagram illustrating an example of storing character string attribute data in the general-purpose table 103. The attribute data of the character string includes data representing the display mode of the entire character string (such as the display position of the character string), data indicating each character constituting the character string, and the font type used for displaying each character. included. In FIG. 2, in the area where the addresses are LYSA to LYEA, the character string included in the image to be displayed on the LCD 202 is data indicating the display mode of the entire character string (each of layers # 0, # 1, and # 2 in FIG. 2). Are stored for several minutes.

例えば、図2に示すレイヤ#0は、同図2に示す文字列“ABCDE”の表示態様を示すデータである。このレイヤ#0には、当該文字列の表示位置(LCD202を横置きした場合の表示領域の左上隅を座標原点する当該文字列の左上隅の座標XおよびY)が含まれている。また、図2に示すレイヤ#0には、汎用テーブル103において上記文字列を構成する各文字(すなわち、文字番号0〜文字番号4の各文字)を示すデータ(例えば、文字コード)を記憶した領域を規定するアドレス(FCSAおよびFCEA)と、これら各文字の表示に使用するフォントの種類および文字の大きさ(水平走査方向の画素数SZXおよび垂直走査方向の画素数SZY)を示すフォントタイプ属性を記憶した領域のアドレス(FTYP)とが含まれている。そして、文字列を構成する各文字の表示にプロポーショナルフォントを用いる場合には、フォント画像内における文字の表示開始位置XS[n]および表示終了位置XE[n](nは、文字列の先頭の文字を0番目の文字とする文字番号)を示すデータがFCSAからFCEAアドレスで規定された領域に格納されている。   For example, layer # 0 shown in FIG. 2 is data indicating a display mode of the character string “ABCDE” shown in FIG. This layer # 0 includes the display position of the character string (the coordinates X and Y of the upper left corner of the character string whose origin is the upper left corner of the display area when the LCD 202 is placed horizontally). Further, in layer # 0 shown in FIG. 2, data (for example, character code) indicating each character (that is, each character of character number 0 to character number 4) constituting the character string in the general-purpose table 103 is stored. Font type attribute indicating the address (FCSA and FCEA) that defines the area, the type of font used to display each character, and the size of the character (number of pixels SZX in the horizontal scanning direction and number of pixels SZY in the vertical scanning direction) And the address (FTYP) of the area in which is stored. When a proportional font is used to display each character constituting the character string, the character display start position XS [n] and display end position XE [n] (n is the first character string in the font image). The data indicating the character number with the character as the 0th character) is stored in the area defined by the FCEA address from FCSA.

図2に示すように、ROM203には、ゴシック体や明朝体などのフォントタイプ毎に各種文字について圧縮形式のフォントの画像データが文字コード順に格納されている。本実施形態では、上記文字番号の順に上記フォントタイプ属性の示すフォントの圧縮形式の画像データを読み出してデコードすることで、文字列を構成する各文字についての描画処理が実現される。   As shown in FIG. 2, the ROM 203 stores compressed font image data in the order of character codes for various characters for each font type such as Gothic and Mincho. In the present embodiment, drawing processing for each character constituting the character string is realized by reading out and decoding the image data in the compression format of the font indicated by the font type attribute in the order of the character numbers.

本実施形態では、LCD202は縦置きされているため、LCD202に表示させる文字列は全て縦方向文字列とされている。そして、本実施形態では、縦方向文字列の表示を可能にするために、文字列に対応付けて、処理文字番号、処理ライン番号および表示/非表示判定フラグといった3種類のパラメータがレジスタ104に格納されている。具体的には、本実施形態では、文字列全体の表示態様を規定するデータ(例えば、図2におけるレイヤ#0)に上記3種類の新たなパラメータの格納先のアドレスが含まれている。なお、文字列全体の表示態様を規定するデータに上記3種類の新たなパラメータを含めておいても勿論良い。本実施形態では、文字列の属性データに対応付けてこれら3種類のパラメータがレジスタ104に格納されている否かによって表示対象の文字列が縦方向文字列であるか否かをコントローラ105Aに判別させることができる。これら新たな3種類のパラメータの役割については重複を避けるため動作例において明らかにする。また、本実施形態では、縦方向文字列の表示を容易にするために、縦方向文字列用フォント(すなわち、高さ方向が水平走査方向に一致するように配置された文字フォント)の圧縮形式の画像データがROM203に格納されており、縦方向文字列の属性データでは当該フォントタイプ属性として当該縦方向文字列用フォントを示す値がセットされている。   In the present embodiment, since the LCD 202 is placed vertically, all character strings displayed on the LCD 202 are vertical character strings. In this embodiment, three types of parameters such as a processing character number, a processing line number, and a display / non-display determination flag are associated with the character string in the register 104 in order to enable display of the vertical character string. Stored. Specifically, in the present embodiment, data (for example, layer # 0 in FIG. 2) that defines the display mode of the entire character string includes the addresses of the storage destinations of the three new parameters. Of course, the above three types of new parameters may be included in the data defining the display mode of the entire character string. In the present embodiment, the controller 105A determines whether or not the character string to be displayed is a vertical character string depending on whether or not these three types of parameters are stored in the register 104 in association with the character string attribute data. Can be made. The role of these three new parameters will be clarified in the operation example in order to avoid duplication. In this embodiment, in order to facilitate the display of the vertical character string, a compression format of the vertical character string font (that is, a character font arranged so that the height direction coincides with the horizontal scanning direction). Image data is stored in the ROM 203, and in the vertical character string attribute data, a value indicating the vertical character string font is set as the font type attribute.

コントローラ105Aは、各垂直走査期間において、表示対象の画像データのLCD202での表示に先行して、各種画像構成要素(すなわち、スプライト、文字列および線)の画像データの生成を画像データ生成部108に順次指令する回路である。具体的には、コントローラ105Aは、各垂直走査期間において、汎用テーブル103に記憶された各画像構成要素の属性データに基づき、それら画像構成要素の画像データを生成する処理の実行スケジュールを作成し、この実行スケジュールに従って、各種画像構成要素についての画像データ生成指示を画像データ生成部108に供給する。本実施形態では、前述した3種類の新たなパラメータの導入に加えて、コントローラ105Aに本実施形態の特徴を顕著に示す処理を実行させることで、縦方向文字列の表示が実現される。この点については、後に詳細に説明する。   The controller 105A generates image data of various image constituent elements (that is, sprites, character strings, and lines) prior to display on the LCD 202 of the image data to be displayed in each vertical scanning period. Is a circuit for sequentially instructing. Specifically, the controller 105A creates an execution schedule of processing for generating image data of each image component based on the attribute data of each image component stored in the general-purpose table 103 in each vertical scanning period, In accordance with this execution schedule, an image data generation instruction for various image components is supplied to the image data generation unit 108. In the present embodiment, in addition to the introduction of the above-described three types of new parameters, the vertical character string display is realized by causing the controller 105 </ b> A to execute processing that significantly shows the features of the present embodiment. This point will be described in detail later.

画像データ生成部108は、各種画像構成要素の画像データを先頭ラインから順に1ライン分ずつ生成して画像出力部109のラインバッファに書き込む処理をコントローラ105Aからの画像データ生成指示にしたがって実行する回路である。図1に示すように、画像データ生成部108は、デコード部107およびROMインタフェース106を介してROM203に接続されている。ROMインタフェース106は、デコード部107から与えられる指示に応じてROM203から圧縮形式の画像データ(スプライトの画像データであるスプライトデータ、或いはフォントの画像データであるフォントデータ)を読み出し、デコード部107に出力する。   The image data generation unit 108 is a circuit that executes processing for generating image data of various image components one line at a time in order from the first line and writing them to the line buffer of the image output unit 109 in accordance with an image data generation instruction from the controller 105A. It is. As shown in FIG. 1, the image data generation unit 108 is connected to the ROM 203 via the decoding unit 107 and the ROM interface 106. The ROM interface 106 reads compressed image data (sprite data that is sprite image data or font data that is font image data) from the ROM 203 in accordance with an instruction given from the decoding unit 107, and outputs it to the decoding unit 107. To do.

デコード部107は、コントローラ105Aによる制御の下、ROMインタフェース106を介してROM203から圧縮形式のスプライトデータ或いは圧縮形式のフォントデータを読み出し、コントローラ105Aにより指示された1ライン分の画像のデコードを画素単位で行ってそのデコード結果を画像データ生成部108に与える。図1に示すように、デコード部107は、圧縮形式のスプライトデータをデコードするためのパターンデコーダ107Aと、圧縮形式のフォントデータをデコードするためのフォントデコーダ107Bを含んでいる。図1では詳細な図示を省略したが、パターンデコーダ107Aおよびフォントデコーダ107Bの各々はROM203から読み出した圧縮データを格納するための第1のワークメモリと、後続画素のデコードに必要となる所定数分の画素データを保持しておくための第2のワークメモリとを有しており、第2のワークメモリの格納内容を順次更新しつつ第1のワークメモリに格納された圧縮データを1画素単位でデコードする。   The decoding unit 107 reads the compressed sprite data or the compressed font data from the ROM 203 via the ROM interface 106 under the control of the controller 105A, and decodes the image for one line instructed by the controller 105A in units of pixels. And the decoding result is given to the image data generation unit 108. As shown in FIG. 1, the decoding unit 107 includes a pattern decoder 107A for decoding compressed sprite data and a font decoder 107B for decoding compressed font data. Although not shown in detail in FIG. 1, each of the pattern decoder 107A and the font decoder 107B has a first work memory for storing compressed data read from the ROM 203, and a predetermined number necessary for decoding subsequent pixels. And a second work memory for holding the pixel data of the compressed data stored in the first work memory while sequentially updating the storage contents of the second work memory. Decode with.

画像データ生成部108は、デコード部107から各画像構成要素の1ライン分の画像データを受け取り、図示せぬ記憶部に画像構成要素毎に記憶させる。画像データ生成部108は、スプライトレンダリング部108A、フォントレンダリング部108Bおよびラインレンダリング部108Cを含んでいる。スプライトレンダリング部108Aは、画像データ生成指示により描画を指示されたスプライトの1ライン分の画像データを上記記憶部から読み出し、その画像データ生成指示により指示された編集(拡大・縮小・変形、カラー演算など)を施してラインバッファへの書き込みを行う回路である。フォントレンダリング部108Bは、画像データ生成指示により描画を指示されたフォントの1ライン分の画像データを上記記憶部から読み出し、その画像データ生成指示により指示された編集(拡大・縮小・変形、カラー演算など)を施してラインバッファへの書き込みを行う回路である。そして、ラインレンダリング部108Cは、画像データ生成指示にしたがって線を表す画像データをラインバッファへ書き込む回路である。   The image data generation unit 108 receives image data for one line of each image component from the decoding unit 107, and stores the image data for each image component in a storage unit (not shown). The image data generation unit 108 includes a sprite rendering unit 108A, a font rendering unit 108B, and a line rendering unit 108C. The sprite rendering unit 108A reads the image data for one line of the sprite instructed to draw by the image data generation instruction from the storage unit, and edits (enlargement / reduction / deformation, color calculation) instructed by the image data generation instruction. Etc.) to write to the line buffer. The font rendering unit 108B reads image data for one line of the font instructed to be drawn by the image data generation instruction from the storage unit, and edits (enlargement / reduction / deformation, color calculation) instructed by the image data generation instruction. Etc.) to write to the line buffer. The line rendering unit 108C is a circuit that writes image data representing a line to the line buffer in accordance with an image data generation instruction.

画像出力部109は、各々水平スキャンライン1本分の画像データを記憶可能な容量を持ったラインバッファ109Aおよび109Bを有している。これらのラインバッファ109Aおよび109Bは、一方が書き込み用ラインバッファ、他方が読み出し用ラインバッファとされ、LCD202の水平同期信号に同期して、その時点までに書き込み用ラインバッファであったものが読み出し用ラインバッファとされ、読み出し用ラインバッファであったものが書き込み用ラインバッファとされる。各水平走査期間では、読み出し用ラインバッファに記憶された1ライン分の画像データが読み出され、LCD202に供給されて表示される一方、1水平走査期間後に表示される1ライン分の画像データが画像データ生成部108によって書き込み用バッファに書き込まれる。
以上が画像表示LSI100Aの構成である。
The image output unit 109 includes line buffers 109A and 109B each having a capacity capable of storing image data for one horizontal scan line. Of these line buffers 109A and 109B, one is a write line buffer and the other is a read line buffer. The line buffer for reading is the one that has been the write line buffer up to that time in synchronization with the horizontal synchronizing signal of the LCD 202. A line buffer is used as a write line buffer. In each horizontal scanning period, one line of image data stored in the readout line buffer is read and supplied to the LCD 202 for display, while one line of image data displayed after one horizontal scanning period is displayed. The image data generation unit 108 writes the data in the writing buffer.
The above is the configuration of the image display LSI 100A.

(B:動作)
次いで、画像表示LSI100Aの動作を説明する。以下では、新たに導入した3種類のパラメータ(処理文字番号、処理ライン番号、および表示/非表示フラグ)の役割を明確化するため、まず、プロポーショナルフォントを用いずに縦方向文字列の表示を行う場合について説明する。プロポーショナルフォントを用いない場合、縦方向文字列の表示は、図3(a)に示すように各文字の縦方向文字列用のフォントの画像を空白部分が互いに重なり合わないように垂直走査方向にすきまなく1列に並べて表示することで実現される。
(B: Operation)
Next, the operation of the image display LSI 100A will be described. In the following, in order to clarify the role of the three newly introduced parameters (processing character number, processing line number, and display / non-display flag), first, display the vertical character string without using a proportional font. The case where it performs is demonstrated. When the proportional font is not used, the vertical character string is displayed in the vertical scanning direction so that the vertical character string font images of the characters do not overlap with each other as shown in FIG. This is realized by arranging and displaying in one row without any gaps.

(B−1:プロポーショナルフォントを用いずに縦方向文字列の表示を行う場合の動作)
前述したように、画像表示LSI100Aの汎用テーブル103には、各垂直走査期間においてLCD202に表示させる画像を構成するスプライトや文字列等についての属性データの書き込みが垂直走査期間毎にホストCPU201によって行われる。前述したように本実施形態では、文字列は全て縦方向文字列とされている。ただし、本動作例においては、汎用テーブル103に書き込まれる文字列の属性データには各文字の表示開始位置および表示終了位置を示す情報は含まれていない。本動作例では、プロポーショナルフォントを用いずに縦方向文字列の表示が行われるからである。
(B-1: Operation when displaying a vertical character string without using a proportional font)
As described above, in the general-purpose table 103 of the image display LSI 100A, the host CPU 201 writes attribute data for sprites, character strings, and the like constituting an image displayed on the LCD 202 in each vertical scanning period. . As described above, in this embodiment, all character strings are vertical character strings. However, in this operation example, the character string attribute data written in the general-purpose table 103 does not include information indicating the display start position and display end position of each character. This is because in this operation example, a vertical character string is displayed without using a proportional font.

コントローラ105Aは、水平走査期間毎に、次の水平走査期間における水平スキャンラインがそれら属性データに対応する各画像構成要素を跨いでいるか否か(すなわち、次の水平走査期間において表示対象となるか否か)を判定し、表示対象と判定された画像構成要素についての画像データ生成指示を画像構成要素毎に生成して画像データ生成部108に与える処理を実行する。   For each horizontal scanning period, the controller 105A determines whether or not the horizontal scanning line in the next horizontal scanning period straddles each image constituent element corresponding to the attribute data (that is, whether to be a display target in the next horizontal scanning period). The image data generation instruction for the image component determined to be a display target is generated for each image component and given to the image data generation unit 108.

ここで、次の水平走査期間において表示対象となるか否かの判定対象が横方向文字列(図6(a)参照)であれば、当該横方向文字列の属性データの示す垂直走査方向の表示位置Y、垂直走査方向の当該横方向文字列の大きさSZY、および次の水平走査期間において描画する水平スキャンラインの位置VDが以下の式(1)の関係を満たす場合に、コントローラ105Aは当該横方向文字列を表示対象と判定する(スプライトについて表示対象であるか否かの判定を行う場合も同様である)。
Y≦VD≦Y+SZY・・・(1)
Here, if the determination target of whether or not to be a display target in the next horizontal scanning period is a horizontal character string (see FIG. 6A), the vertical scanning direction indicated by the attribute data of the horizontal character string. When the display position Y, the size SZY of the horizontal character string in the vertical scanning direction, and the position VD of the horizontal scan line drawn in the next horizontal scanning period satisfy the relationship of the following expression (1), the controller 105A The horizontal character string is determined as a display target (the same applies when determining whether a sprite is a display target).
Y ≦ VD ≦ Y + SZY (1)

これに対して、縦方向文字列の場合は、1文字目については前掲式(1)を用いて表示対象であるか否かを判定することができるが、2文字目以降については、前掲式(1)を用いて表示対象であるか否かの判定を行うことはできない。これは、縦方向文字列の2文字目以降の文字について前掲式(1)により表示/非表示の判定を行うには、当該2文字目以降の文字の各々の表示位置を示すデータが属性データに含まれている必要がある一方、このようなデータは文字列の属性データに含まれていないからである。また、縦方向文字列全体についての垂直走査方向の表示位置に判定対象の文字に先行する全ての文字の垂直走査方向の大きさを加算することで当該判定対象の文字の垂直走査方向の表示位置を算出することも不可能ではないが、このような表示位置の算出を2文字目以降の各文字について行うことは、描画性能の低下や演算回路の規模増大などの問題を生じさせることになる。   On the other hand, in the case of a vertical character string, it is possible to determine whether or not the first character is a display target using the above formula (1). (1) cannot be used to determine whether or not the display target. This is because data indicating the display position of each of the second and subsequent characters is attribute data in order to determine whether the second and subsequent characters of the vertical character string are to be displayed / hidden by the above formula (1). This is because such data is not included in the attribute data of the character string. Also, the vertical scanning direction display position of the character to be determined is added to the vertical scanning direction display position of the entire vertical character string by adding the size of all characters preceding the determination target character in the vertical scanning direction. Although it is not impossible to calculate the display position, the calculation of the display position for each character after the second character causes problems such as a decrease in drawing performance and an increase in the scale of the arithmetic circuit. .

そこで、本実施形態では、前述したように、処理文字番号、処理ライン番号および表示/非表示判定フラグの3つの新たなパラメータを導入することで、描画性能の低下や演算回路の規模増大などの問題を生じさせることなく、ラインバッファ方式の画像処理装置に縦方向文字列を表示させることを実現している。ここで、表示/非表示判定フラグは、次の水平走査期間における水平スキャンラインが、この表示/非表示判定フラグに対応する縦方向文字列を跨いでいるか否か(すなわち、当該縦方向文字列が次の水平走査期間において表示対象となるか否か)を示すパラメータである。処理文字番号は、縦方向文字列を次の水平走査期間における水平スキャンラインが跨いでいる場合に、当該水平スキャンラインの跨る文字を示すパラメータである。そして、処理ライン番号は、処理文字番号の示す文字のフォントの画像の何ライン目が当該水平スキャンラインと重なっているかを示すパラメータである。以下、これら3種類のパラメータを使用した縦方向文字列の表示制御を説明する。   Therefore, in this embodiment, as described above, by introducing three new parameters of the processing character number, the processing line number, and the display / non-display determination flag, the drawing performance is reduced and the scale of the arithmetic circuit is increased. It is possible to display a vertical character string on a line buffer image processing apparatus without causing a problem. Here, the display / non-display determination flag indicates whether or not the horizontal scan line in the next horizontal scanning period straddles the vertical character string corresponding to the display / non-display determination flag (that is, the vertical character string). Is a parameter indicating whether or not to be a display target in the next horizontal scanning period). The processing character number is a parameter indicating a character straddling the horizontal scan line when the vertical character string straddles the horizontal scan line in the next horizontal scanning period. The processing line number is a parameter indicating how many lines of the font image of the character indicated by the processing character number overlap with the horizontal scan line. Hereinafter, display control of the vertical character string using these three types of parameters will be described.

本実施形態では、上記3種類のパラメータは、画像表示LSI100Aが初期化されるときに全て0にリセットされる。なお、文字列についての属性データの書き込みの際にホストCPU201或いはコントローラ105Aによって上記3種類のパラメータに初期値として0をセットしても良い。   In the present embodiment, the above three types of parameters are all reset to 0 when the image display LSI 100A is initialized. Note that when writing attribute data for a character string, the host CPU 201 or the controller 105A may set 0 as an initial value for the above three types of parameters.

コントローラ105Aは、まず、横方向文字列の場合と同様に前掲式(1)に示す演算を行って縦方向文字列の1文字目の表示/非表示を判定する。すなわち、コントローラ105Aは、次の水平走査期間において描画する水平スキャンラインの位置VDが縦方向文字列の属性データのレイヤ#0に含まれている表示位置Yに達するまで非表示と判定し、上記3種類のパラメータの更新を行わない。そして、次の水平走査期間において描画する水平スキャンラインの位置VDが縦方向文字列の属性データのレイヤ#0に含まれている表示位置Yに達すると(すなわち、VD=Yになると)、コントローラ105Aは、上記3種類のパラメータの更新を開始する。   First, the controller 105A performs the calculation shown in the above equation (1) as in the case of the horizontal character string, and determines whether to display / hide the first character of the vertical character string. That is, the controller 105A determines that no display is performed until the position VD of the horizontal scan line to be drawn in the next horizontal scan period reaches the display position Y included in the layer # 0 of the attribute data of the vertical character string. The three types of parameters are not updated. When the position VD of the horizontal scan line to be drawn in the next horizontal scanning period reaches the display position Y included in the layer # 0 of the attribute data of the vertical character string (that is, when VD = Y), the controller 105A starts updating the three types of parameters.

より詳細に説明すると、水平スキャンラインの位置VDが縦方向文字列の属性データのレイヤ#0に含まれている表示位置Yに達すると、コントローラ105Aは、表示/非表示判定フラグを1(すなわち、表示対象であることを示す値)にセットし、表示/非表示判定フラグが0にリセットされるまで、水平スキャンラインを更新する毎に(すなわち、水平スキャンラインの位置VDを1ずつインクリメントする毎に)、以下の第1および第2の処理を実行する。第1の処理は、その時点の処理文字番号および処理ライン番号を参照し、当該処理文字番号により示される文字の当該処理ライン番号により示されるラインの描画を画像データ生成部108に指示する処理である。そして、第2の処理は、処理ライン番号が文字の最終ラインを示す場合(具体的には、処理ライン番号=SZX−1の場合)には処理文字番号をインクリメントして後続の文字を示す値に更新するとともに処理ライン番号を当該後続する文字の先頭ラインを示す値(すなわち、0)に更新し、逆に、処理ライン番号が最終ラインを示していない場合には当該処理ライン番号をインクリメントして次のラインを示す値に更新する処理である。その後、コントローラ105Aは、処理文字番号が縦方向文字列の末尾の文字を示し、かつ処理ライン番号が当該文字のフォントの画像の最終ラインを示す値となったことを契機として表示/非表示フラグを0にリセットする。   More specifically, when the horizontal scan line position VD reaches the display position Y included in the layer # 0 of the vertical character string attribute data, the controller 105A sets the display / non-display determination flag to 1 (that is, Each time the horizontal scan line is updated (that is, the position VD of the horizontal scan line is incremented by 1) until the display / non-display determination flag is reset to 0. Every time, the following first and second processes are executed. The first process refers to the processing character number and processing line number at that time, and instructs the image data generation unit 108 to draw a line indicated by the processing line number of the character indicated by the processing character number. is there. In the second process, when the process line number indicates the last line of the character (specifically, when process line number = SZX-1), the process character number is incremented to indicate a subsequent character. And the processing line number is updated to a value indicating the first line of the subsequent character (that is, 0). Conversely, if the processing line number does not indicate the last line, the processing line number is incremented. And updating to a value indicating the next line. Thereafter, the controller 105A displays a non-display flag when the processing character number indicates the last character of the vertical character string and the processing line number becomes a value indicating the last line of the font image of the character. Is reset to 0.

例えば、図3(a)に示す縦方向文字列について、表示位置(X,Y)として(7,7)が設定されており、かつ文字サイズとしてSZX=SZY=32が設定されている場合、水平スキャンラインの位置VDが0,1、2・・・と更新される過程において、上記3種類のパラメータは図4に示すように更新される。図4に示すように、VD=7〜166の間、上記縦方向文字列についての表示/非表示判定フラグは1となって当該縦方向文字列についての描画処理が行われる。具体的には、VD=7〜38の期間には処理文字番号=0であるから、上記縦方向文字列の1文字目(すなわち、“A”)についての描画処理が行われ、VD=38のとき、処理ライン番号は文字の最終ラインを示す“31”であるので、水平スキャンラインを更新する際に処理文字番号をインクリメントして“1”とし、処理ライン番号を“0”とする。そして、同様に、VD=39〜70の期間には処理文字番号=1であるから、上記縦方向文字列の2文字目(すなわち、“B”)についての描画処理が行われ、・・・VD=135〜166の期間には処理文字番号=4であるから、上記縦方向文字列の5文字目(すなわち、“E”)についての描画処理が行われといった具合である。そして、これら描画処理に後続して前述した表示処理が行われる結果、LCD202に縦方向文字列“ABCDE”が表示される。   For example, for the vertical character string shown in FIG. 3A, when (7, 7) is set as the display position (X, Y) and SZX = SZY = 32 is set as the character size, In the process of updating the horizontal scan line position VD to 0, 1, 2,..., The three types of parameters are updated as shown in FIG. As shown in FIG. 4, during VD = 7 to 166, the display / non-display determination flag for the vertical character string is set to 1, and the drawing process for the vertical character string is performed. Specifically, since the processing character number = 0 during the period of VD = 7 to 38, drawing processing is performed for the first character (that is, “A”) of the vertical character string, and VD = 38. In this case, since the processing line number is “31” indicating the last line of the character, the processing character number is incremented to “1” and the processing line number is set to “0” when the horizontal scan line is updated. Similarly, since the processing character number = 1 in the period of VD = 39 to 70, the drawing process for the second character (ie, “B”) of the vertical character string is performed, and so on. Since the processing character number = 4 during the period of VD = 135 to 166, the drawing process is performed for the fifth character (that is, “E”) of the vertical character string. Then, as a result of performing the display process described above subsequent to the drawing process, the vertical character string “ABCDE” is displayed on the LCD 202.

このように、本実施形態によれば、判定対象の文字に先行する全ての文字の垂直方向の大きさを加算することなく現処理ラインにおける表示対象であるか否かの判定を行うことができるので、1ライン分の記憶容量を有するラインバッファを利用して画像データの描画および表示器への表示を行う画像処理装置に、プロポーショナルフォントを用いない縦方向文字列の表示を行わせることが可能になる。   As described above, according to the present embodiment, it is possible to determine whether or not the current processing line is a display target without adding the vertical sizes of all the characters preceding the determination target character. Therefore, it is possible to cause an image processing apparatus that draws image data and displays it on a display using a line buffer having a storage capacity for one line to display a vertical character string without using a proportional font. become.

(B−2:プロポーショナルフォントを用いて縦方向文字列を表示する場合の動作)
次いで、プロポーショナルフォントを用いて縦方向文字列の表示を行う場合の画像表示LSI100Aの動作を説明する。プロポーショナルフォントを用いる場合、縦方向文字列の表示は、属性データに含まれる各文字の表示開始位置XS[n]および表示終了位置XE[n]にしたがって、図3(b)に示すよう、各文字の縦方向文字列用のフォント画像を空白部分が互いに重なり合うように(文字番号=nの文字のフォントについて表示終了位置XE[n]により示される位置と次の文字(すなわち、文字番号=n+1の文字)について表示開始位置XS[n+1]により示される位置が一致するように)垂直走査方向に1列に並べて表示することで実現される。
(B-2: Operation when displaying a vertical character string using a proportional font)
Next, the operation of the image display LSI 100A when a vertical character string is displayed using a proportional font will be described. When the proportional font is used, the vertical character string is displayed according to the display start position XS [n] and the display end position XE [n] of each character included in the attribute data, as shown in FIG. In the font image for the vertical character string of the character, the position indicated by the display end position XE [n] and the next character (that is, the character number = n + 1 for the character font of the character number = n) so that the blank portions overlap each other. Are displayed side by side in the vertical scanning direction so that the positions indicated by the display start position XS [n + 1] match.

本動作例においても、コントローラ105Aは、次の水平走査期間において表示対象とする水平スキャンラインの位置VDを更新する毎に、前述した第1および第2の処理を実行する。ただし、プロポーショナルフォントを用いて縦方向文字列を行う場合の第1および第2の処理は、プロポーショナルフォントを用いない場合における各処理と下記の点で異なる。すなわち、第1の処理では、コントローラ105Aは、処理文字番号=mの場合、処理ライン番号が以下の式(2)を満たす場合にのみ、処理文字番号=mの文字のフォントの画像の当該処理ライン番号の示すラインについての描画処理の実行を画像データ生成部108に指示する。
XS[m]≦処理ライン番号≦XE[m]・・・(2)
Also in this operation example, the controller 105A executes the first and second processes described above every time the position VD of the horizontal scan line to be displayed is updated in the next horizontal scanning period. However, the first and second processes in the case of performing a vertical character string using a proportional font differ from the processes in the case of not using a proportional font in the following points. That is, in the first process, when the process character number = m, the controller 105A performs the process of the font image of the character with the process character number = m only when the process line number satisfies the following expression (2). The image data generation unit 108 is instructed to execute drawing processing for the line indicated by the line number.
XS [m] ≦ processing line number ≦ XE [m] (2)

また、第2処理では、コントローラ105Aは、処理文字番号=mである場合、処理ライン番号が当該文字の表示終了位置XE[m]である場合に処理文字番号をインクリメントして後続の文字を示す値(すなわち、m+1)に更新するとともに処理ライン番号を当該後続の文字の表示開始位置(すなわち、XS[m+1])にリセットする。   In the second process, when the process character number = m, the controller 105A increments the process character number to indicate a subsequent character when the process line number is the display end position XE [m] of the character. The value is updated to the value (ie, m + 1) and the processing line number is reset to the display start position of the subsequent character (ie, XS [m + 1]).

また、プロポーショナルフォントを用いない場合における第1の処理では、コントローラ105Aは、縦方向文字列を構成する各文字についての圧縮フォントデータのデコードをその表示順に1文字ずつ行ったが、プロポーショナルフォントを用いる場合には、各水平走査期間において複数種の圧縮フォントデータのデコードを行うことが必要となる場合がある。より詳細に説明すると、プロポーショナルフォントを用いる場合の第1の処理では、コントローラ105Aは処理文字番号の示す文字についての描画処理の実行を画像データ生成部108に指示することに加えて、当該文字に後続する各文字について圧縮フォントデータのデコードの要否を判定し、デコードを要すると判定した文字についての圧縮フォントデータのデコードをデコード部107に指示する。プロポーショナルフォントを用いて縦方向文字列の表示を行う場合に、水平走査期間内に複数種の圧縮フォントデータのデコードが必要となる場合がある理由は以下の通りである。   Further, in the first processing when the proportional font is not used, the controller 105A decodes the compressed font data for each character constituting the vertical character string one character at a time in the display order, but uses the proportional font. In some cases, it may be necessary to decode a plurality of types of compressed font data in each horizontal scanning period. More specifically, in the first process in the case of using a proportional font, the controller 105A instructs the image data generation unit 108 to execute the drawing process for the character indicated by the process character number. It is determined whether or not it is necessary to decode the compressed font data for each subsequent character, and the decoding unit 107 is instructed to decode the compressed font data for the character determined to be decoded. The reason why it may be necessary to decode a plurality of types of compressed font data within the horizontal scanning period when displaying a vertical character string using a proportional font is as follows.

例えば、図5(a)に示す縦方向文字列“ICFID”をLCD202に表示させる場合、縦方向文字列の1文字目の文字(すなわち、文字番号=0、図5(a)に示す例では1文字目の“I”)については、XS[0]≦処理ライン番号≦XE[0]である場合にのみLCD202への表示を行えば良い。したがって、処理ライン番号=XS[0]となったことを契機としてXS[0]に対応するラインを指定して当該文字についての圧縮フォントデータのデコードを開始すれば良く、処理ライン番号=XE[0]となり第2の処理において処理文字番号のインクリメントおよび処理ライン番号のリセットを行ったことを契機として、XS[1]に対応するラインを指定して文字番号=1の文字についての圧縮フォントデータのデコードを開始すれば良いかに見える。   For example, when the vertical character string “ICFID” shown in FIG. 5A is displayed on the LCD 202, the first character of the vertical character string (that is, character number = 0, in the example shown in FIG. 5A). The first character “I”) may be displayed on the LCD 202 only when XS [0] ≦ processing line number ≦ XE [0]. Therefore, it is sufficient to specify the line corresponding to XS [0] in response to the processing line number = XS [0] and to start decoding the compressed font data for the character, and the processing line number = XE [ 0] and the compressed font data for the character with character number = 1 by designating the line corresponding to XS [1] when the processing character number is incremented and the processing line number is reset in the second processing. Looks like it should start decoding.

しかし、本実施形態では、フォントデータの圧縮符号化方式として、デコードの際に、デコード対象の画素に先行する所定数分の画素のデコード結果が当該デコード対象の画素のデコードに必要となる圧縮符号化方式が採用されている。つまり、圧縮フォントデータのデコードは、その先頭ラインからしか行えない。このため、文字番号=1の文字についての圧縮フォントデータのデコードを当該データの途中から行うことはできない。つまり、処理文字番号のインクリメントおよび処理ライン番号のリセットを行ったことを契機として次の水平走査期間において文字番号=1の文字についてのXS[1]に対応するラインの描画処理を行うためには、当該文字に対応する圧縮フォントデータの当該ラインに先行する部分(すなわち、空白部分)のデコードを先立って行っておく必要がある。例えば、水平スキャンラインが図5(a)に示すFLIN1である場合には、文字番号=0および1の各文字についての圧縮フォントデータのデコードを行い、水平スキャンラインが図5(a)に示すFLIN2である場合には、文字番号=1および3の各文字についての圧縮フォントデータのデコードを行う、といった具合である。これが、プロポーショナルフォントを用いて縦方向文字列の表示を行う場合に、水平走査期間内に複数種の圧縮フォントデータのデコードを行うことが必要となる理由である。   However, in this embodiment, as a compression encoding method for font data, when decoding, a predetermined number of pixels preceding the pixel to be decoded are decoded, and the compression code required for decoding the pixel to be decoded Is adopted. That is, the compressed font data can be decoded only from the first line. For this reason, it is impossible to decode the compressed font data for the character of character number = 1 from the middle of the data. That is, in order to perform the line drawing process corresponding to XS [1] for the character with character number = 1 in the next horizontal scanning period triggered by the increment of the process character number and the reset of the process line number. Therefore, it is necessary to decode the portion preceding the line (that is, the blank portion) of the compressed font data corresponding to the character in advance. For example, when the horizontal scan line is FLIN1 shown in FIG. 5A, the compressed font data is decoded for each character of character numbers = 0 and 1, and the horizontal scan line is shown in FIG. In the case of FLIN2, the compressed font data is decoded for each character of character numbers = 1 and 3. This is the reason why it is necessary to decode a plurality of types of compressed font data within a horizontal scanning period when a vertical character string is displayed using a proportional font.

このように、本実施形態では水平走査期間内に複数種の圧縮フォントデータのデコードを行うことが必要となる場合があるため、コントローラ105Aは処理文字番号の示す文字に後続する各文字について圧縮フォントデータのデコードが必要であるか否か(換言すれば、フォントの空白部分に水平スキャンラインが跨っている文字があるか否か)を判定する。具体的には、処理文字番号=mである場合、コントローラ105Aは、文字番号=m+k(k=1,2・・・)の各文字について以下の式(3)〜(5)に示す演算を行って指標値Dist3「m+k」を算出し、この指標値Dist3「m+k」がSZX−1よりも小さい文字については圧縮フォントデータのデコードが必要であると判定し、そのデコードをデコード部107に指示する。
Dist1[m+k]=XE[m]−XS[m+k]・・・(3)
Dist2[m+k]=処理ライン番号−Dist1[m+k]・・・(4)
Dist3[m+k]=XE[m+k]−Dist2[m+k]+F[m+k]・・・(5)
ただし、F[m+k]は文字番号=mの文字と文字番号=m+kの文字の間にある文字の表示幅の和(すなわち、k=1のときはゼロ、k≧2のときはj=1からk−1までの(XE[m+j]−XS[m+j])の和)である。
As described above, in this embodiment, since it may be necessary to decode a plurality of types of compressed font data within the horizontal scanning period, the controller 105 </ b> A determines the compressed font for each character following the character indicated by the processing character number. It is determined whether or not data decoding is necessary (in other words, whether or not there is a character across the horizontal scan line in the blank portion of the font). Specifically, when the processing character number = m, the controller 105A performs the calculations shown in the following equations (3) to (5) for each character of the character number = m + k (k = 1, 2,...). The index value Dist3 “m + k” is calculated to determine that it is necessary to decode the compressed font data for characters whose index value Dist3 “m + k” is smaller than SZX-1, and the decoding unit 107 is instructed to perform the decoding. To do.
Dist1 [m + k] = XE [m] −XS [m + k] (3)
Dist2 [m + k] = processing line number−Dist1 [m + k] (4)
Dist3 [m + k] = XE [m + k] −Dist2 [m + k] + F [m + k] (5)
However, F [m + k] is the sum of the display widths of the characters between the character number = m and the character number = m + k (that is, zero when k = 1, j = 1 when k ≧ 2) (XE [m + j] −XS [m + j]) from k to k−1).

図5(b)に示すように、k=1の場合、式(3)にしたがって算出されるDist1[m+1]は、文字番号=mの文字(図5(b)に示す例では、文字“I”)のフォント画像の表示終了位置と、文字番号=m+1の文字(図5(b)に示す例では、文字“B”)のフォント画像の表示開始位置との距離を現しており、式(4)にしたがって算出されるDist2[m+1]は、文字番号=mの文字についての処理ライン番号の示すライン(換言すれば、水平スキャンライン)が文字番号=m+1の文字のフォント画像の何ライン目に重なっているかを示している。   As shown in FIG. 5B, when k = 1, Dist1 [m + 1] calculated according to the equation (3) is the character of character number = m (in the example shown in FIG. 5B, the character “ I ″) represents the distance between the display end position of the font image and the display start position of the font image of character number = m + 1 (in the example shown in FIG. 5B, character “B”). Dist2 [m + 1] calculated according to (4) is the number of lines in the font image of the character whose character number = m + 1 is the line indicated by the processing line number (in other words, the horizontal scan line) for the character whose character number = m. Shows whether it overlaps the eyes.

式(3)にしたがって算出されるDist1[m+1]を式(4)の右辺に代入し、さらに式(4)にしたがって算出されるDist2[m+1]を式(5)の右辺に代入すれば明らかなように、Dist3[m+1]は、図5(b)に示すように、水平スキャンラインの位置と文字番号=m+1の文字のフォントの表示終了位置との距離を現している。したがって、Dist3[m+1]の値がSZX−1以上であれば、次の水平走査期間における水平スキャンラインが文字番号=m+1の文字以降のフォント画像の空白部分を跨ぐことはなく、当該文字以降についての圧縮フォントデータのデコードを行う必要はない。k≧2の場合も同様に、Dist3[m+k]は文字番号=m+kの文字のフォントの表示終了位置と、水平スキャンラインとの距離を現し、Dist3[m+k]の値がSZX−1以上であれば、次の水平走査期間における水平スキャンラインが文字番号=m+kの文字以降のフォント画像の空白部分を跨ぐことはなく、当該文字以降についての圧縮フォントデータのデコードを行う必要はない。これが、指標値Dist3[m+k]とSZX−1との大小比較により、文字番号=m+k以降の文字についての圧縮フォントデータのデコードの要否を判定することができる理由である。   It is clear if Dist1 [m + 1] calculated according to equation (3) is substituted into the right side of equation (4), and Dist2 [m + 1] calculated according to equation (4) is substituted into the right side of equation (5). As shown in FIG. 5B, Dist3 [m + 1] represents the distance between the position of the horizontal scan line and the display end position of the font of the character of character number = m + 1. Therefore, if the value of Dist3 [m + 1] is SZX-1 or more, the horizontal scan line in the next horizontal scanning period does not straddle the blank portion of the font image after the character of character number = m + 1, and after the character. There is no need to decode the compressed font data. Similarly, when k ≧ 2, Dist3 [m + k] represents the distance between the display end position of the font of the character number = m + k and the horizontal scan line, and the value of Dist3 [m + k] is greater than or equal to SZX-1. For example, the horizontal scan line in the next horizontal scanning period does not straddle the blank portion of the font image after the character of character number = m + k, and it is not necessary to decode the compressed font data for the character and the subsequent characters. This is the reason why it is possible to determine whether or not it is necessary to decode the compressed font data for characters after the character number = m + k by comparing the index value Dist3 [m + k] with SZX-1.

また、本実施形態において、処理文字番号の示す文字の直後の文字についてのみ圧縮フォントデータのデコードの要否を判定するのではなく、指示値Dist3の値がSZX−1以上になるまで処理文字番号の示す文字に後続する文字について圧縮フォントデータのデコードの要否を判定する。表示対象の縦方向文字列の構成によっては、水平スキャンラインが図5(a)のFLIN2である場合のように、処理文字番号の示す文字(図5(a)に示す例では、“C”)の直後の文字(図5(a)に示す例では、“f”)については圧縮フォントデータのデコードが不要であっても、さらに次の文字(図5(a)に示す例では、2文字目の“I”)について圧縮フォントデータのデコードが必要になる場合があるからである。   Further, in this embodiment, it is not determined whether or not the compressed font data needs to be decoded only for the character immediately after the character indicated by the processing character number, but the processing character number is kept until the value of the instruction value Dist3 becomes SZX-1 or more. It is determined whether or not it is necessary to decode the compressed font data for the character subsequent to the character indicated by. Depending on the configuration of the vertical character string to be displayed, the character indicated by the processing character number (in the example shown in FIG. 5A, “C”), as in the case where the horizontal scan line is FLIN2 in FIG. ) Immediately after the character (“f” in the example shown in FIG. 5A), even if it is not necessary to decode the compressed font data, the next character (in the example shown in FIG. 5A, 2 This is because it may be necessary to decode the compressed font data for the character “I”).

以上説明したように、本実施形態によれば、上記第1および第2の処理をコントローラ105Aに実行させることで、プロポーショナルフォントによる縦方向文字列の表示が実現される。このように、本実施形態によれば、ラインバッファ方式の画像処理装置に、プロポーショナルフォントによる縦方向文字列の表示を行わせることが可能になる。   As described above, according to the present embodiment, by causing the controller 105A to execute the first and second processes, a vertical character string can be displayed using a proportional font. As described above, according to the present embodiment, it is possible to cause a line buffer image processing apparatus to display a vertical character string using a proportional font.

(C:変形)
以上本発明の実施形態について説明したが、この実施形態に以下の変形を加えても勿論良い。
(1)上記実施形態では、横方向文字列用のフォントの圧縮フォントデータの他に縦方向文字列用のフォントの圧縮フォントデータがROM203に予め格納されており、縦方向文字列の表示の際には後者を使用した。しかし、ROM203には横方向文字列用のフォントの圧縮フォントデータのみを格納しておき、縦方向文字列の表示の際には横方向文字列用の圧縮フォントデータ全体をデコードし、そのデコード結果の表すフォントの画像データに90度の時計回り回転を施して用いるようにしても良い。また、ROM203には縦方向文字列用の圧縮フォントデータのみを格納しておき、横方向文字列の表示の際には縦方向文字列用の圧縮フォントデータ全体をデコードし、そのデコード結果の表すフォントの画像データに90度の反時計回り回転を施して用いるようにしても良い。
(C: deformation)
Although the embodiment of the present invention has been described above, it goes without saying that the following modifications may be added to this embodiment.
(1) In the above embodiment, in addition to the compressed font data of the font for the horizontal character string, the compressed font data of the font for the vertical character string is stored in the ROM 203 in advance, and when the vertical character string is displayed. The latter was used for. However, the ROM 203 stores only the compressed font data of the font for the horizontal character string, and when displaying the vertical character string, the entire compressed font data for the horizontal character string is decoded, and the decoding result Alternatively, the image data of the font represented by may be rotated 90 degrees clockwise. The ROM 203 stores only compressed font data for the vertical direction character string, and when displaying the horizontal direction character string, the entire compressed font data for the vertical direction character string is decoded and the decoding result is represented. The font image data may be used after being rotated counterclockwise by 90 degrees.

(2)上記実施形態では、ROM203に格納されているスプライトデータおよびフォントデータの圧縮符号化方式として先行する数画素のデコード結果を参照する方式が採用されていたが、他の方式を採用しても勿論良い。また、ROM203において圧縮符号化を施していないスプライトデータおよびフォントデータと圧縮符号化を施したものとが混在していても勿論良い。また、ROM203に非圧縮形式のスプライトデータおよびフォントデータのみを記憶させておく場合には、デコード部107を省略しても良いことは言うまでもない。 (2) In the above embodiment, a method of referring to the decoding result of several preceding pixels is adopted as a compression encoding method of sprite data and font data stored in the ROM 203, but other methods are adopted. Is of course good. Of course, sprite data and font data not subjected to compression encoding in the ROM 203 may be mixed with those subjected to compression encoding. Needless to say, when the ROM 203 stores only uncompressed sprite data and font data, the decoding unit 107 may be omitted.

(3)上記実施形態では、文字列を常に縦方向文字列として表示する場合について説明したが、文字列の属性データに当該文字列が縦方向文字列であるのか、それとも横方向文字列であるのかを示すフラグを含ませておき、当該フラグにしたがって縦方向文字列の表示制御(或いは横方向文字列の表示制御)をコントローラ105Aに行わせるようにしても良い。 (3) In the above embodiment, the case where a character string is always displayed as a vertical character string has been described. However, whether the character string is a vertical character string or a horizontal character string in the attribute data of the character string. It is also possible to include a flag indicating whether or not the controller 105A performs display control of the vertical character string (or display control of the horizontal character string) according to the flag.

(4)上記実施形態では、プロポーショナルフォントによる縦方向文字列の表示を行わせる場合にのみ、属性データに各文字の表示開始位置および表示終了位置を示す情報が含まれていた。しかし、プロポーショナルフォントを用いるか否かを問わずに常に各文字の表示開始位置および表示終了位置を示す情報を属性データに含めておき、プロポーショナルフォントを用いない場合には、全ての文字について表示開始位置=0、表示終了位置=SZX−1をセットしておき、コントローラ105Aには常に(B−2)において説明した処理を実行させても良い。この場合、式(5)にしたがって算出されるDist3[m+k]は「(2+(k−1))×(SZX−1)−処理ライン番号」となる。ここで、全ての文字について処理ライン番号は、0≦処理ライン番号≦SZX−1となるのであるから、全ての文字についてDist3[m+k]は常にSZX−1以上となる。このため(B−2)における第1の処理において文字番号=m+kの文字について圧縮フォントデータのデコードが行われることはない。また、(B−2)における第2の処理では、処理文字番号=XE[m](=SZX−1)となったとき、処理文字番号および処理ライン番号のリセットが行われ、処理ライン番号はXS[m+1](=0)にリセットされる。つまり、上記のように表示開始位置および表示終了位置を設定しておけば、(B−2)における第1および第2の処理の処理内容は(B−1)における各処理の処理内容と完全に一致する。このように本変形例によれば、プロポーショナルフォントを用いるか否かを問わずに縦方向文字列の表示制御を統一的に行うことが可能になる。 (4) In the above embodiment, the attribute data includes information indicating the display start position and the display end position of each character only when the vertical character string is displayed using the proportional font. However, regardless of whether a proportional font is used or not, information indicating the display start position and display end position of each character is always included in the attribute data, and when no proportional font is used, display starts for all characters. Position = 0 and display end position = SZX-1 may be set, and the controller 105A may always execute the processing described in (B-2). In this case, Dist3 [m + k] calculated according to the equation (5) is “(2+ (k−1)) × (SZX−1) −processing line number”. Here, since the processing line numbers for all characters are 0 ≦ processing line number ≦ SZX−1, Dist3 [m + k] is always greater than or equal to SZX−1 for all characters. For this reason, in the first process in (B-2), the compressed font data is not decoded for the character of character number = m + k. In the second processing in (B-2), when the processing character number = XE [m] (= SZX-1), the processing character number and the processing line number are reset, and the processing line number is It is reset to XS [m + 1] (= 0). That is, if the display start position and the display end position are set as described above, the processing contents of the first and second processes in (B-2) are completely the same as the processing contents of each process in (B-1). Matches. As described above, according to the present modification, it is possible to perform the display control of the vertical direction character string uniformly regardless of whether or not the proportional font is used.

(5)上記実施形態では、車載用の画像表示システムへの本発明の適用例を説明したが、例えば表示器を有する冷蔵庫や洗濯器、炊飯器などの所謂情報家電に内蔵される画像表示システムに本発明を適用しても勿論良い。この種の情報家電においても、画像表示システムを内蔵するためのスペースや表示器の設置スペースを十分にとることができず、表示器の縦置きやラインバッファ方式の採用を余儀なくされることが多いことに加えて、文字情報の表示頻度は極めて高いと考えられるからである。同様の理由により、携帯電話機や携帯型ゲーム機、PDAなどの携帯型情報端末の画像表示システムに本発明を適用することも考えられる。 (5) Although the application example of the present invention to the vehicle-mounted image display system has been described in the above embodiment, for example, an image display system incorporated in a so-called information home appliance such as a refrigerator, a washing machine, and a rice cooker having a display. Of course, the present invention may be applied. Even in this type of information home appliances, the space for installing the image display system and the installation space for the display cannot be sufficiently taken, and it is often necessary to install the display vertically or use a line buffer system. In addition, the display frequency of the character information is considered to be extremely high. For the same reason, it is conceivable to apply the present invention to an image display system of a portable information terminal such as a mobile phone, a portable game machine, or a PDA.

(6)上記実施形態ではプロポーショナルフォントによる縦方向文字列の表示制御への適用例を説明したが、縦方向文字列のカーニング(文字間隔の調整)に利用することも可能である。また、上記各実施形態では、表示対象の文字列が全て縦方向文字列である場合について説明したが、縦方向文字列と横方向文字列とが混在していても勿論良い。 (6) In the above-described embodiment, an example of application to display control of a vertical character string using a proportional font has been described. However, it can also be used for kerning (adjustment of character spacing) of a vertical character string. In each of the above embodiments, the case where all the character strings to be displayed are vertical character strings has been described, but it is of course possible that both vertical character strings and horizontal character strings are mixed.

100A…画像表示LSI、101…CPUインタフェース、102…カラーパレット記憶部、103…汎用テーブル、104…レジスタ、105A…コントローラ、106…ROMインタフェース、107…デコード部、107A…パターンデコーダ、107B…フォントデコーダ、108…画像データ生成部、108A…スプライトレンダリング部、108B…フォントレンダリング部、108C…ラインレンダリング部、109A,109B…ラインバッファ、109…画像出力部、110…クロック生成部、201…ホストCPU、202…LCD、203…ROM。 DESCRIPTION OF SYMBOLS 100A ... Image display LSI, 101 ... CPU interface, 102 ... Color palette memory | storage part, 103 ... General purpose table, 104 ... Register, 105A ... Controller, 106 ... ROM interface, 107 ... Decoding part, 107A ... Pattern decoder, 107B ... Font decoder , 108: Image data generation unit, 108A ... Sprite rendering unit, 108B ... Font rendering unit, 108C ... Line rendering unit, 109A, 109B ... Line buffer, 109 ... Image output unit, 110 ... Clock generation unit, 201 ... Host CPU, 202 ... LCD, 203 ... ROM.

Claims (5)

水平スキャンラインと垂直な方向に連続して文字を配置した文字列を描画する画像処理装置において、
1水平スキャンライン分の画像を表す画像データを記憶するラインバッファと、
前記文字列の表示態様を示す属性データに基づいて取得したフォントデータを利用して1水平スキャンライン分の画像データを生成し、前記ラインバッファに書き込む描画処理を実行する画像データ生成部と、
各水平走査期間において水平スキャンラインの跨る文字を、前記文字列の表示態様を示す前記属性データを参照して特定し、該当する文字についての描画処理の実行を前記画像データ生成部に指示するコントローラと、
を具備し、
前記属性データは、前記文字列についてのパラメータとして、表示/非表示フラグと処理文字番号と処理ライン番号とを含むととともに、前記文字列を構成する各文字についてのパラメータとして、表示開始位置および表示終了位置を示す情報、を含み、
前記表示/非表示フラグは、前記文字列が表示対象であるか否かを示すパラメータであり、
前記処理文字番号は、水平スキャンラインが前記文字列を跨ぐ場合に当該水平スキャンラインの跨る文字を示すパラメータであり、
前記処理ライン番号は、前記処理文字番号の示す文字の何ライン目を水平スキャンラインが跨ぐかを示すパラメータであり、
前記コントローラは、
水平スキャンラインが前記文字列を跨いでいる場合に前記文字列を表示対象と判定して前記表示/非表示フラグに表示を示す値を設定し、
前記表示/非表示フラグが表示を示す値である場合に、前記処理文字番号の示す文字を描画対象として、前記水平スキャンラインを更新する毎に前記処理ライン番号を更新しつつ、前記処理ライン番号の示すラインが前記描画対象の文字の表示開始位置と表示終了位置の間のラインであるか否かを判定し、
表示開始位置と表示終了位置の間のラインであると判定した場合に、前記処理ライン番号の示すラインについての描画処理の実行を前記画像データ生成部に指示する
ことを特徴とする画像処理装置。
In an image processing apparatus for drawing a character string in which characters are continuously arranged in a direction perpendicular to a horizontal scan line,
A line buffer for storing image data representing an image for one horizontal scan line;
An image data generation unit that generates image data for one horizontal scan line using font data acquired based on attribute data indicating a display mode of the character string, and executes drawing processing to be written in the line buffer;
A controller that specifies a character across a horizontal scan line in each horizontal scanning period with reference to the attribute data indicating a display mode of the character string, and instructs the image data generation unit to execute a drawing process on the corresponding character When,
Comprising
The attribute data includes a display / non-display flag, a processed character number, and a processed line number as parameters for the character string, and includes a display start position and a display as parameters for each character constituting the character string. Including information indicating the end position,
The display / non-display flag is a parameter indicating whether or not the character string is a display target,
The processing character number is a parameter indicating a character across the horizontal scan line when a horizontal scan line straddles the character string,
The processing line number is a parameter indicating which line of the character indicated by the processing character number the horizontal scan line crosses,
The controller is
When a horizontal scan line straddles the character string, the character string is determined as a display target and a value indicating display is set in the display / non-display flag,
When the display / non-display flag is a value indicating display, the processing line number is updated while updating the processing line number every time the horizontal scan line is updated with the character indicated by the processing character number as a drawing target. It is determined whether the line indicated by is a line between the display start position and the display end position of the character to be drawn,
An image processing apparatus that instructs the image data generation unit to execute a drawing process for a line indicated by the processing line number when it is determined that the line is between a display start position and a display end position .
前記フォントデータには圧縮符号化が施されており、The font data is subjected to compression encoding,
前記属性データに基づいて取得したフォントデータをデコードして前記画像データ生成部に与えるデコード部を有し、  A decoding unit that decodes the font data acquired based on the attribute data and gives the image data generation unit;
前記コントローラは、  The controller is
表示対象と判定した文字についてのフォントデータのデコードを前記デコード部に指示するとともに、当該文字に後続する各文字についてのフォントデータのデコードの要否を前記属性データに基づいて判定し、デコードを要すると判定された文字についてフォントデータのデコードを前記デコード部に指示する  The decoding unit is instructed to decode the font data for the character that is determined to be displayed, and the necessity of decoding the font data for each character that follows the character is determined based on the attribute data. Then, the decoding unit is instructed to decode the font data for the determined character.
ことを特徴とする請求項1に記載の画像処理装置。  The image processing apparatus according to claim 1.
前記コントローラは、前記処理文字番号の示す文字に後続する文字のうち、当該文字と前記処理文字番号の示す文字との間にある文字の表示幅の和に、前記処理文字番号の示す文字の表示終了位置から当該文字の表示開始位置を減算して得られる値と、当該文字の表示終了位置から前記処理ライン番号が示すライン数を減算して得られる値と、を加算して得られる値がフォントサイズ−1以上となった文字以降の文字について、フォントデータのデコードを不要と判定する  The controller displays the character indicated by the processed character number in the sum of the display widths of the characters between the character indicated by the processed character number and the character indicated by the processed character number. A value obtained by adding a value obtained by subtracting the display start position of the character from the end position and a value obtained by subtracting the number of lines indicated by the processing line number from the display end position of the character. Determining that font data decoding is unnecessary for characters after the font size minus 1
ことを特徴とする請求項2に記載の画像処理装置。  The image processing apparatus according to claim 2.
前記画像データ生成部は、前記フォントデータとして、水平スキャンラインと垂直な方向に連続して文字を配置した文字列の描画に用いる縦方向文字列用フォントデータを利用することを特徴とする請求項1〜3の何れか1項に記載の画像処理装置。The said image data generation part uses the font data for the vertical direction character string used for the drawing of the character string which has arrange | positioned the character continuously in the direction perpendicular | vertical to a horizontal scan line as said font data. The image processing apparatus according to any one of 1 to 3. プロポーショナルフォントを用いずに前記文字列を表示する場合には、前記表示開始位置および前記表示終了位置を示す情報に、フォントデータの表す画像全体を表す値が設定されることを特徴とする請求項4に記載の画像処理装置。When displaying the character string without using a proportional font, a value representing the entire image represented by font data is set in the information indicating the display start position and the display end position. 5. The image processing apparatus according to 4.
JP2012205332A 2012-09-19 2012-09-19 Image processing device Active JP6036072B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012205332A JP6036072B2 (en) 2012-09-19 2012-09-19 Image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012205332A JP6036072B2 (en) 2012-09-19 2012-09-19 Image processing device

Publications (3)

Publication Number Publication Date
JP2014059496A JP2014059496A (en) 2014-04-03
JP2014059496A5 JP2014059496A5 (en) 2015-02-05
JP6036072B2 true JP6036072B2 (en) 2016-11-30

Family

ID=50616003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012205332A Active JP6036072B2 (en) 2012-09-19 2012-09-19 Image processing device

Country Status (1)

Country Link
JP (1) JP6036072B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5867458A (en) * 1981-10-19 1983-04-22 Canon Inc Output device
JP2000020046A (en) * 1998-06-30 2000-01-21 Nec Home Electron Ltd Picture display device
JP2002123247A (en) * 2000-10-17 2002-04-26 Sony Corp Information processing apparatus, information processing method, and recording medium recording information processing method
JP2008197525A (en) * 2007-02-15 2008-08-28 Yamaha Corp Image processing apparatus

Also Published As

Publication number Publication date
JP2014059496A (en) 2014-04-03

Similar Documents

Publication Publication Date Title
JPH0863608A (en) Computer graphic system and usage method of frame buffer
US20130009965A1 (en) Animation display device
JP2013045401A (en) Animation drawing device
WO2010089805A1 (en) Graphical user interface device and method for realizing graphical user interface
JP6036072B2 (en) Image processing device
US20050104893A1 (en) Three dimensional image rendering apparatus and three dimensional image rendering method
JP2014035453A (en) Image processor
JP4719603B2 (en) Drawing apparatus and broken line drawing method
JP5114249B2 (en) Display device and display method
JP4439893B2 (en) Image display system and image display processing apparatus
JP2006251000A (en) Display controller capable of superposition display
KR101367246B1 (en) System and method of multiple framebuffer emulation on virtual machine
WO2014087541A1 (en) Graphics rendering device
US20130321449A1 (en) Window combining device
JP6392584B2 (en) Vehicle display device
JP2009116157A (en) Screen display method of numerical control device
JP2006018382A (en) Image processing method and device
JP5885827B2 (en) Drawing control apparatus and drawing control program
JP2007240848A (en) Display program, data structure, and display device
JP4409918B2 (en) Graphic drawing apparatus and program thereof
JP4461965B2 (en) CHARACTER IMAGE GENERATION DEVICE, CHARACTER IMAGE GENERATION PROGRAM, AND CHARACTER IMAGE GENERATION METHOD
EP2637164B1 (en) Drawing device and drawing method
JP2015219351A (en) Image processor
JP4666480B2 (en) Line drawing device
JP6113127B2 (en) Vehicle display device

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141212

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150721

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160517

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160729

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: 20161004

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161017

R151 Written notification of patent or utility model registration

Ref document number: 6036072

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350