JP4419973B2 - 表示プログラム及び表示装置 - Google Patents
表示プログラム及び表示装置 Download PDFInfo
- Publication number
- JP4419973B2 JP4419973B2 JP2006073088A JP2006073088A JP4419973B2 JP 4419973 B2 JP4419973 B2 JP 4419973B2 JP 2006073088 A JP2006073088 A JP 2006073088A JP 2006073088 A JP2006073088 A JP 2006073088A JP 4419973 B2 JP4419973 B2 JP 4419973B2
- Authority
- JP
- Japan
- Prior art keywords
- coordinate value
- acquired
- mnemonic
- setting
- mode
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Generation (AREA)
Description
また、このような技術にあっては、一般に、命令及び当該命令に付随する引数の組み合わせからなるセグメントに出現率に応じた最適な圧縮符号を割り当てることで、描画命令データ(複数のセグメントを含むデータ)のデータ量を圧縮するようになっている。
http://partners.adobe.com/public/developer/en/font/T1_SPEC.PDF
本発明は、上記従来の技術の未解決の課題を解決することを目的とするものであって、描画命令データの圧縮率を向上可能な表示プログラム及び表示装置を提供することを課題とする。
また、本発明の表示装置は、文字を構成する各要素それぞれを描画するための命令を取得し、その命令に基づいて前記要素を描画して前記文字を表示する表示装置であって、描画モードを設定するモード設定用命令が取得されると、そのモード設定用命令に対応する描画モードに従って、後に取得される命令に付随する引数の取り扱い方法を設定する設定手段と、その設定手段による設定結果に従って前記引数を取り扱って前記文字を表示する表示手段と、を備えたことを特徴とする。
さらに、本発明の表示プログラムにあっては、前記設定機能は、前記後に取得される命令に付随する座標値を、前記整数部と小数部との組で表現したものとして扱うようにした場合には、前記整数部のみで表現したものとして扱うようにした場合より多くのビット幅が割り当てられているものとして扱うように前記取扱い方法を設定してもよい。
<第1実施形態>
図1は、本実施形態の表示装置の内部構成を示すブロック図である。この図1に示すように、表示装置1は、入力手段2、入力手段コントローラ3、メモリ4、メモリコントローラ5、外部記憶6、外部記憶コントローラ7、CPU8、表示コントローラ9、表示体10、バスコントローラ11、及び電源コントローラ12を含んで構成される。
入力手段コントローラ3は、入力手段2とCPU8との間のデータ転送を制御する。 メモリ4は、CPU8がプログラムを実行するときに各種プログラムを展開するワークエリアを形成するとともに、CPU8により実行される各種プログラムに係るデータや、表示対象である情報のデータを記憶する記憶領域を形成する。
外部記憶6は、CPU8により実行される基本制御プログラムやアプリケーションプログラム等の各種プログラム及びこれら各種プログラムに係るデータを格納する。
外部記憶コントローラ7は、外部記憶6とCPU8との間のデータ転送を制御する。
CPU8は、外部記憶6に格納されている各種プログラムを読み込み、それらをメモリ4内に形成されるワークエリアに展開して各部2〜12を制御する。
すなわち、描画命令データを構成するニーモニックは、モード設定用ニーモニックの後に、その描画モードに従って座標値を取り扱わせるニーモニックが配されている。
ChangeRelIntは、要素対応ニーモニックの座標値を、直前に描画された要素の終点の座標値との相対座標を整数形式(整数部のみを含む形式)で表現したものとして扱うことを指示する。
ChangeRelFixは、要素対応ニーモニックの座標値を、直前に描画された要素の終点の座標値との相対座標を小数形式(整数部と小数部との両方を含む形式)で表現したものとして扱うことを指示する。
ChangeAbsFixは、要素対応ニーモニックの座標値を、絶対座標を小数形式で表現したものとして扱うことを指示する。
なお、図2において、EndOfCodeは、描画命令データを構成する最後のニーモニックであることを示すコードである。
表示コントローラ9は、CPU8でビットマップが生成されると、そのビットマップを表示体10に描画する。
バスコントローラ11は、CPU8と各部2〜12との間のデータ転送を制御する。
電源コントローラ12は、CPU8からの指令に従って、表示装置1の各部2〜12への電源供給を制御する。
次に、CPU8で実行される文字描画処理を図7のフローチャートに基づいて説明する。
この文字描画処理は、文字の描画指示があると実行される処理であって、まず、そのステップS101で、前記描画指示された文字の文字コードを取得し、その文字コードをフォントデータのインデックスに変換する。
次にステップS103に移行して、前記ステップS102で取得された描画命令データに基づいて、前記描画指示があった文字のビットマップを生成するビットマップ生成処理(後述)を実行してから、この演算処理を終了する。
このビットマップ生成処理は、まず、そのステップS201で、処理対象である画素を示す座標値(現在座標値)vを(0、0)とする。
次にステップS202に移行して、描画モードを示すパラメータModeを(Rel、Int)(モード設定用ニーモニックChanegeRelIntが読み込まれた状態)とする。
次にステップS204に移行して、前記ステップS203で取得されたニーモニックがEndOfCodeであるか否かを判定する。そして、EndOfCodeである場合には(Yes)ステップS206に移行し、EndOfCodeでない場合には(No)ステップS205に移行する。
一方、前記ステップS206では、前記ステップS205で生成された輪郭データに基づいて、前記描画指示があった文字のビットマップを生成してから、この演算処理を終了する。
この輪郭データ生成処理は、まず、そのステップS301で、前記ステップS203で取得されたニーモニックがChangeRelInt、ChangeRelFix、ChangeAbsInt、ChangeAbsFix、及びEndOfCodeのいずれかであるか否かを判定する。そして、ChangeRelInt等のいずれかである場合には(Yes)ステップS302に移行し、ChangeRelInt等のいずれでもない場合には(No)ステップS303に移行する。
一方、前記ステップS303では、前記ステップS203で取得されたニーモニックから引数の数を取得し、座標値の数を示すパラメータargnumとする。
次にステップS304に移行して、前記ステップS303で設定されたパラメータargnumが「0」であるか否かを判定する。そして、「0」である場合には(Yes)ステップS313に移行し、「0」でない場合には(No)ステップS305に移行する。
次にステップS306に移行して、前記ステップS302で設定されたModeにIntが含まれるか否かを判定する。そして、Intが含まれる場合には(Yes)ステップS307に移行し、Intが含まれない場合には(No)ステップS308に移行する。
一方、前記ステップS308では、前記ステップS305で取得された座標値を小数値dに変換してから、前記ステップS309に移行する。
前記ステップS309では、前記ステップS302で設定されたModeにRelが含まれるか否かを判定する。そして、Relが含まれる場合には(Yes)ステップS310に移行し、Relが含まれていない場合には(No)ステップS311に移行する。
一方、前記ステップS311では、前記ステップS307又はS308で変換された座標値dを新しい現在座標値vとしてから、前記ステップS312に移行する。
一方、前記ステップS313では、前記ステップS310又はS311で順次設定された現在座標値vに基づいて、前記描画指示のあった文字の輪郭データを生成してから、この演算処理を終了する。
なお、前記ステップS203で取得されたニーモニックにMoveToが含まれる場合には、座標値の計算だけを行い、文字の輪郭データは生成しない。
次に、本実施形態の表示装置1の動作を具体的状況に基づいて説明する。
まず、利用者が文字の描画を指示する操作を行い、入力手段2によって、文字の描画指示がCPU8に出力されたとする。すると、CPU8によって、文字描画処理が実行され、図7に示すように、まず、そのステップS101で、前記描画指示された文字の文字コードが取得され、その文字コードがフォントデータのインデックスに変換され、ステップS102で、そのインデックスに基づいて描画命令データが取得され、ステップS103で、その描画命令データに基づいてビットマップ生成処理を実行される。
そして、前記ステップS203及びS204を経て、次のニーモニックが取得され、前記ステップS205で、そのニーモニックに基づいて輪郭データ生成処理が実行される。
上記フローが繰り返されるうちに、EndOfCodeが取得されたとする。すると、前記ステップS204の判定が「Yes」となり、ステップS206で、前記生成された輪郭データに基づいて、前記描画指示があった文字のビットマップが生成される。
そして、表示コントローラ9によって、その生成されたビットマップが表示体10に描画され、前記描画指示された文字が表示体10に表示される。
次に、本発明の表示装置で利用される描画命令データの生成方法について説明する。
図12は、ChangeRelIntで描画モードが設定された描画命令データを生成するRelInt描画命令生成処理を示すフローチャートである。
このRelInt描画命令生成処理は、描画命令生成用のコンピュータで実行される処理であって、まず、そのステップS401で、書き込みバッファに格納されているデータを全て破棄する(書き込みバッファをクリアする)。
次にステップS403に移行して、現在座標値vを(0、0)とする。
次にステップS404に移行して、描画命令データの構成に用いるニーモニックが残っているか否かを判定する。そして、残っている場合には(Yes)ステップS405に移行し、残っていない場合には(No)ステップS406に移行する。
一方、前記ステップS406では、描画命令データを構成する最後のニーモニックとしてEndOfCodeを格納する。
次に、前記RelInt描画命令生成処理のステップS405で実行されるRelInt命令格納処理を図13のフローチャートに基づいて説明する。
次にステップS502に移行して、変数nを「0」とする。
次にステップS503に移行して、前記ステップS501で種類が判定されたニーモニックの引数(例えば、X1、Y1等)を後述するステップS504〜507で全て処理したか否かを判定する。そして、引数を全て処理した場合には(Yes)ステップS508に移行し、全ては処理していない場合には(No)ステップS504に移行する。
次にステップS505に移行して、現在座標値vとの差分d[n]を算出する。
次にステップS506に移行して、前記ステップS504で取得された引数argを新しい現在座標値vとする。
一方、前記ステップS508では、引数bit長に対応する命令を取得する。
次にステップS509に移行して、前記ステップS501で判定された種類に応じた命令コードを書き込みバッファに格納させる。
次にステップS510に移行して、前記ステップS505で算出された差分d[n]それぞれを書き込みバッファに格納させる。
前記ステップS512では、前記ステップS509又はS510で書き込みバッファに格納されたデータを、描画命令データの構成要素として32ビット分出力してから、前記ステップS511に移行する。
図14は、ChangeAbsIntで描画モードが設定された描画命令データを生成するAbsInt描画命令生成処理を示すフローチャートである。
このAbsInt描画命令生成処理は、描画命令生成用のコンピュータで実行される処理であって、まず、そのステップS601で、描画命令データを構成する最初のニーモニックとしてChangeAbsIntを格納する。
前記ステップS603では、前記ステップS602で残っていると判定されたニーモニックに対応するデータを書き込みバッファに格納するAbsInt命令格納処理(後述)を実行してから、前記ステップS602に移行する。
次に、前記AbsInt描画命令生成処理のステップS603で実行されるAbsInt命令格納処理を図15のフローチャートに基づいて説明する。
このAbsInt命令格納処理は、まず、そのステップS701で、前記ステップS602で残っていると判定されたニーモニックの種類を判定する。
次にステップS703に移行して、前記ステップS701で種類が判定されたニーモニックの引数(例えば、X1、Y1等)を後述するステップS704、705で全て処理したか否かを判定する。そして、引数を全て処理した場合には(Yes)この演算処理を終了し、全ては処理していない場合には(No)ステップS704に移行する。
次にステップS705に移行して、前記ステップS704で取得された引数argそれぞれを書き込みバッファに格納させてから、前記ステップS703に移行する。
そして、このようなフロー構成とすることにより、RelInt描画命令生成処理或いはChangeAbsInt描画命令生成処理を実行することで、描画命令データとして、モード設定用ニーモニック(ChangeRelInt、ChangeAbsInt)の後に、その描画モードに従って座標値を取り扱わせるニーモニックが配されたものを生成することができる。
また、本発明の表示プログラム、データ構造及び表示装置は、上記実施の形態の内容に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
Claims (3)
- 文字を構成する各要素それぞれを描画するための命令を取得し、その命令に基づいて前記要素を描画して前記文字を表示する表示プログラムであって、
描画モードを設定するモード設定用命令が取得されると、そのモード設定用命令に対応する描画モードに従って、後に取得される命令に付随する引数の取り扱い方法を設定する設定機能と、その設定機能による設定結果に従って前記引数を取り扱って前記文字を表示する表示機能と、をコンピュータに実行させ、
前記引数は、座標値であり、
前記描画モードとして、新たに取得された座標値を整数部のみで表現されたものとして扱うモードと、新たに取得された座標値を整数部と小数部との組で表現されたものとして扱うモードとを有し、
前記設定機能は、前記後に取得される命令に付随する座標値を前記整数部のみ及び前記整数部と小数部との組のいずれかの形式で表現したものとして扱うように前記取り扱い方法を設定することを特徴とする表示プログラム。 - 前記設定機能は、前記後に取得される命令に付随する座標値を、前記整数部と小数部との組で表現したものとして扱うようにした場合には、前記整数部のみで表現したものとして扱うようにした場合より多くのビット幅が割り当てられているものとして扱うように前記取扱い方法を設定することを特徴とする請求項1に記載の表示プログラム。
- 文字を構成する各要素それぞれを描画するための命令を取得し、その命令に基づいて前記要素を描画して前記文字を表示する表示装置であって、
描画モードを設定するモード設定用命令が取得されると、そのモード設定用命令に対応する描画モードに従って、後に取得される命令に付随する引数の取り扱い方法を設定する設定手段と、その設定手段による設定結果に従って前記引数を取り扱って前記文字を表示する表示手段と、を備え、
前記引数は、座標値であり、
前記描画モードとして、新たに取得された座標値を整数部のみで表現されたものとして扱うモードと、新たに取得された座標値を整数部と小数部との組で表現されたものとして扱うモードとを有し、
前記設定手段は、前記後に取得される命令に付随する座標値を前記整数部のみ及び前記整数部と小数部との組のいずれかの形式で表現したものとして扱うように前記取り扱い方法を設定することを特徴とする表示装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006073088A JP4419973B2 (ja) | 2006-03-16 | 2006-03-16 | 表示プログラム及び表示装置 |
US11/705,894 US20070216688A1 (en) | 2006-03-16 | 2007-02-13 | Display program, data structure and display device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006073088A JP4419973B2 (ja) | 2006-03-16 | 2006-03-16 | 表示プログラム及び表示装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007248882A JP2007248882A (ja) | 2007-09-27 |
JP4419973B2 true JP4419973B2 (ja) | 2010-02-24 |
Family
ID=38517296
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006073088A Expired - Fee Related JP4419973B2 (ja) | 2006-03-16 | 2006-03-16 | 表示プログラム及び表示装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20070216688A1 (ja) |
JP (1) | JP4419973B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6240117B2 (ja) * | 2015-04-03 | 2017-11-29 | ファナック株式会社 | 文字の表示幅の自動変更機能を有する数値制御装置 |
US11749335B2 (en) * | 2020-11-03 | 2023-09-05 | Jianzhong Bi | Host and its memory module and memory controller |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005089397A2 (en) * | 2004-03-16 | 2005-09-29 | Advanced Tracking Technologies, Inc. | Geographic information data base engine |
-
2006
- 2006-03-16 JP JP2006073088A patent/JP4419973B2/ja not_active Expired - Fee Related
-
2007
- 2007-02-13 US US11/705,894 patent/US20070216688A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20070216688A1 (en) | 2007-09-20 |
JP2007248882A (ja) | 2007-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5294313B2 (ja) | ベジェ曲線描画装置、ベジェ曲線描画方法およびプログラム | |
KR100748802B1 (ko) | 이미지를 랜더링하기 위한 방법, 그래픽 객체들을 처리하기 위한 시스템 및 컴퓨터 프로그램 저장 매체 | |
US10796466B2 (en) | Graph drawing method, graph drawing system, server apparatus, graph drawing apparatus, and recording medium | |
JP2007094182A (ja) | アウトラインフォント圧縮方法 | |
JP2010257460A (ja) | コンピュータグラフィックスシステムにおける立方ベジェ制御点の生成 | |
JP4419973B2 (ja) | 表示プログラム及び表示装置 | |
KR101344457B1 (ko) | 글리프를 이용해 폰트를 생성하는 폰트 생성 장치 및 방법 | |
US20150325022A1 (en) | Technique for processing a character string for graphical representation on a man/machine interface | |
JP6472171B2 (ja) | 画像処理装置およびその方法 | |
CN113345048B (zh) | 地理信息图像编辑方法、装置及计算机设备 | |
JPWO2012137243A1 (ja) | テクスチャマッピング装置 | |
JP2010287110A (ja) | 情報処理装置、情報処理方法、プログラム及び記録媒体 | |
JP2007240848A (ja) | 表示プログラム、データ構造及び表示装置 | |
WO2016092588A1 (ja) | 描画装置、および描画方法 | |
WO2015146517A1 (ja) | 画像表示システム | |
JP2010501891A (ja) | 命令のフォント生成のサイズを減少させて、速度を向上するための方法 | |
JP5159949B2 (ja) | ベクトル図形描画装置 | |
JP2007249666A (ja) | 情報処理装置、情報処理プログラムおよび情報処理方法 | |
JP2012098951A (ja) | 図形描画処理装置、図形描画処理方法、及びコンピュータプログラム | |
JP7133094B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2016081187A (ja) | 情報処理装置、情報処理システム、情報処理装置の制御方法、及びコンピュータプログラム | |
JP2007248583A (ja) | 表示プログラム、データ構造及び表示装置 | |
JP7279986B1 (ja) | 情報処理方法、情報処理システム及び情報処理プログラム | |
JP6085197B2 (ja) | 携帯情報処理装置、表示処理方法、表示処理プログラム | |
KR101513009B1 (ko) | 폰트 자동 생성 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090721 |
|
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: 20091005 |
|
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: 20091110 |
|
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: 20091123 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121211 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: 20121211 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131211 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |