IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ コンチネンタル オートモーティヴ テクロノジーズ ゲー・エム・ベー・ハーの特許一覧

特開2024-91609組み込みシステムでTRUETYPEフォントファイルを処理するコンピュータ実装された方法
<>
  • 特開-組み込みシステムでTRUETYPEフォントファイルを処理するコンピュータ実装された方法 図1
  • 特開-組み込みシステムでTRUETYPEフォントファイルを処理するコンピュータ実装された方法 図2
  • 特開-組み込みシステムでTRUETYPEフォントファイルを処理するコンピュータ実装された方法 図3
  • 特開-組み込みシステムでTRUETYPEフォントファイルを処理するコンピュータ実装された方法 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024091609
(43)【公開日】2024-07-04
(54)【発明の名称】組み込みシステムでTRUETYPEフォントファイルを処理するコンピュータ実装された方法
(51)【国際特許分類】
   G09G 5/24 20060101AFI20240627BHJP
   G06F 40/109 20200101ALI20240627BHJP
   G06F 12/06 20060101ALI20240627BHJP
【FI】
G09G5/24 650M
G06F40/109
G09G5/24 620L
G06F12/06 522B
【審査請求】有
【請求項の数】9
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2023217329
(22)【出願日】2023-12-22
(31)【優先権主張番号】10 2022 214 284.5
(32)【優先日】2022-12-22
(33)【優先権主張国・地域又は機関】DE
(31)【優先権主張番号】10 2023 208 686.7
(32)【優先日】2023-09-08
(33)【優先権主張国・地域又は機関】DE
(71)【出願人】
【識別番号】522388073
【氏名又は名称】コンチネンタル オートモーティヴ テクロノジーズ ゲー・エム・ベー・ハー
【氏名又は名称原語表記】Continental Automotive Technologies GmbH
【住所又は居所原語表記】Vahrenwalder Str. 9, 30165 Hannover, Germany
(74)【代理人】
【識別番号】100114890
【弁理士】
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【弁理士】
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【弁理士】
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【弁理士】
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100162880
【弁理士】
【氏名又は名称】上島 類
(72)【発明者】
【氏名】ウルリッヒ カバテク
【テーマコード(参考)】
5B109
5B160
5C182
【Fターム(参考)】
5B109RA15
5B160MM03
5C182AB25
5C182AB31
5C182FA14
5C182FA16
5C182FA23
(57)【要約】      (修正有)
【課題】組み込みシステムでTRUETYPEフォントファイルを処理する方法を提供する。
【解決手段】組み込みシステム(138)においてTrueTypeフォントファイル(110)を処理するコンピュータ実装された方法であって、TrueTypeフォントファイル(110)が特定のフォントを表し、TrueTypeフォントファイル(110)が、フォントデータを含む複数の連結されたテーブルを含み、複数のテーブルが少なくとも、グリフの外観、すなわちフォントの文字の輪郭を画定する「glyf」テーブル(114)を含み、「glyf」テーブル(114)以外の複数のテーブルがその他のテーブルであり、組み込みシステム(138)が少なくとも第1のメモリ(140)及び第2のメモリ(142)を含んでいるのに対し、第1のメモリ(140)が第2のメモリ(142)よりも読み出し及び/又は書き込み性能が低速である。
【選択図】図3
【特許請求の範囲】
【請求項1】
組み込みシステム(138)においてTrueTypeフォントファイル(110)を処理するコンピュータ実装された方法(100)であって、TrueTypeフォントファイル(110)が特定のフォントを表し、前記TrueTypeフォントファイル(110)が、フォントデータを含む複数の連結されたテーブルを含み、前記複数のテーブルが少なくとも、グリフの外観、すなわちフォントの文字の輪郭を画定する「glyf」テーブル(114)を含み、前記「glyf」テーブル(114)以外の複数のテーブルがその他のテーブルであり、前記組み込みシステム(138)が少なくとも第1のメモリ(140)及び第2のメモリ(142)を含んでいるのに対し、前記第1のメモリ(140)が前記第2のメモリ(142)よりも読み出し及び/又は書き込み性能が低速であり、前記方法(100)が、
a)前記フォントデータを少なくとも第1のデータ組(134)及び第2のデータ組(136)に分割(102)して前記第1のデータ組(134)が前記「glyf」テーブル(114)を含み、前記第2のデータ組(136)が少なくともその他のテーブルを含むようにするステップと、
b)前記第1のデータ組(134)を前記第1のメモリ(140)にロードする(104)ステップと、
c)前記第2のデータ組(136)を前記第2のメモリ(142)にロードする(106)ステップと、
d)特定のグリフ(152)のレンダリング動作(108)の前に、前記特定のグリフ(152)に対応するデータが前記第2のメモリ(142)に既にロードされていなければ前記第1のデータ組(134)から前記第2のメモリ(142)にロードするステップを含む方法。
【請求項2】
前記「glyf」テーブル(114)のグリフが、メモリにコピーされる前に、頻度の高いグリフが先に出現するように使用頻度に応じてソートされている、請求項1に記載の方法。
【請求項3】
前記第2のデータ組(136)が前記「glyf」テーブル(114)からのデータを含んでいる、請求項1又は2に記載の方法。
【請求項4】
プログラムがコンピュータにより実行されたならば、請求項1~3のいずれか1項に記載の方法(100)のステップを前記コンピュータに実行させる命令を含むコンピュータプログラム製品。
【請求項5】
コンピュータにより実行されたならば、請求項1~3のいずれか1項に記載の方法(100)のステップを前記コンピュータに実行させる命令を含むコンピュータ可読記憶媒体。
【請求項6】
請求項4に記載のコンピュータプログラム製品を搬送するデータ搬送信号。
【請求項7】
組み込みシステム(138)であって、
a)少なくとも1個のマイクロコントローラ(144)と、
b)少なくとも第1のメモリ(140)及び第2のメモリ(142)であって、前記第1のメモリ(140)が前記第2のメモリ(142)よりも読み出し及び/又は書き込み性能が遅いに対し、前記第1のメモリ(140)と前記第2のメモリ(142)が前記少なくとも1個のマイクロコントローラ(144)に通信可能に結合されている、前記第1のメモリ(140)及び前記第2のメモリ(142)と、
c)前記少なくとも1個のマイクロコントローラ(144)に通信可能に結合された少なくとも1個のディスプレイ(146)を含み、
前記組み込みシステム(138)が、請求項1~3のいずれか1項に記載の方法(100)を実行して前記少なくとも1個のディスプレイ(146)上でグリフをレンダリングすべく形成されている、組み込みシステム(138)。
【請求項8】
前記第2のメモリ(142)に格納された前記第2のデータ組(136)に基づいて前記TrueTypeフォントファイル(110)をレンダリングすべくフォントエンジンが用いられる、請求項7に記載の組み込みシステム。
【請求項9】
請求項7又は8に記載の組み込みシステム(138)が実装されている乗物(156)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、組み込みシステムでフォント、特にTrueTypeフォントを処理する方法及びシステムに関する。
【背景技術】
【0002】
組込みシステムは、デジタル腕時計及び交通信号コントローラから乗物のインフォテインメントシステムに至る様々な技術及び製品の基本部分である。これらはプロセッサ、メモリ、入力、及び/又は出力機器の組み合わせとして、より大規模な機械的又は電子的システム内で専用機能を提供する。大抵の場合、組み込みシステムはグラフィカルユーザーインターフェースとしてディスプレイ機器を含むように設計されている。
【0003】
典型的に、組み込みシステムはコストが最適化されているため、大量の高速メモリを搭載していない。組み込みシステムの特徴は、多くの場合メモリマッピングされておらずブロック単位でしかアクセスできない低速メモリ(例えばNANDフラッシュメモリ)である。このメモリは通常、サイズが大きいほど安価で入手しやすい。
【0004】
逆に、高速メモリは通常、メモリマッピングされていてランダムアクセス可能である。しかし、この種のメモリは高価であってサイズも限られる(例:RAM又はNORフラッシュメモリ)。
【0005】
最新の組み込みディスプレイシステムは、なるべく汎用的であるように、多言語で魅力的なテキストレンダリング品質を提供する必要がある。この目的のため、通常はフォントエンジンが用いられる。大抵の場合、これは標準化されたTrueType(TTF)又はOpenType(OTF)のアウトラインフォント標準に基づいているのに対し、テキストをビットマップにレンダリングするフォントエンジンとしてオープンソースソフトウェア開発ライブラリFreeTypeが広く採用されている。このようなフォントエンジンは通常、フォントが高速メモリにあることを必要とする。FreeTypeの場合、メモリマッピング又はファイルマッピングされた状態でフォントを処理できる。しかし、多言語対応が必要な場合、対応するTTFフォントのメモリサイズは数十メガバイト(MB)になるため、高価な高速メモリを大量に必要とする。
【0006】
従って、組込みシステムでTTFファイルを処理するのに大容量且つ高速なメモリを必要としない方法及びシステムにアクセスできることが望ましい。
【発明の概要】
【発明が解決しようとする課題】
【0007】
従って、本開示の目的は、従来技術の上述の短所を克服する方法及びシステムを提供することである。
【課題を解決するための手段】
【0008】
本開示の第1の態様は、組み込みシステムでTrueTypeフォント(TTF)ファイルを処理するコンピュータ実装された方法である。TrueTypeフォントファイルは、特定のフォントを表し、フォントデータを含む複数の連結テーブルを含んでいる。これら複数のテーブルは少なくとも、グリフ(字体)の外観、すなわちフォントの文字の輪郭を画定する「glyf」テーブルを含んでいる。「glyf」テーブル以外の複数のテーブルはその他のテーブルである。組み込みシステムは少なくとも第1のメモリ及び第2のメモリを含み、第1のメモリは第2のメモリよりも読み出し及び/又は書き込み性能が遅い。本方法は、フォントデータを少なくとも第1のデータ組及び第2のデータ組に分割して第1のデータ組が「glyf」テーブルを含み、第2のデータ組が少なくともその他のテーブルを含むようにするステップと、第1のデータ組を第1のメモリにロードするステップと、第2のデータ組を第2のメモリにロードするステップと、特定のグリフをレンダリングする前に、特定のグリフに対応するデータが第2のメモリに既にロードされていなければ第1のデータ組から第2のメモリにロードするステップを含んでいる。
【0009】
どのTTFファイルも、1個のテーブルが単語の並びである一連の連結されたテーブルを含んでいる。第1のテーブルは、フォント内の他のテーブルへのアクセスを可能にするフォントディレクトリである。これら他のテーブルはフォントデータを含み、任意の順序で現れてもよい。全てのフォントに特定のテーブルが必要であるのに対し、他のテーブルは特定のフォントに期待される機能に応じて任意選択的である。
【0010】
他のテーブルは、例えば、フォントの名前を含む「name」と呼ばれるテーブルを含んでいる。また、文字のグリフへのマッピングを含む「cmap」と呼ばれるテーブルもある。グリフは文字の具体的な形、デザイン、又は表現を記述する。換言すれば、フォントのグリフは当該フォント文字の輪郭を記述し、輪郭点等の対応するデータは「glyf」と呼ばれるテーブルに格納されている。
【0011】
開示する発明は、ディスプレイ上でフォントをレンダリングすべくメモリ上で頻繁にアクセスする必要があるのはTTFファイルの内容の僅かな部分に過ぎないのに対し、他のテーブルには著しく異なる仕方でアクセスされるとの理解に基づいている。
【0012】
大多数のテーブルは、例えば二分検索を用いて特定のプロパティを検索するのにランダムアクセスメモリを必要とする。しかし、一つの顕著な例外は「glyf」テーブルであり、通常これにアクセスするのは特定のグリフをレンダリングする場合、又は初期的にFreeType等のフォントエンジンがフォントをロードする場合だけである。レンダリング中、一度に1個のグリフのデータしか必要とされず、当該1個グリフのサイズは僅か数百バイトに過ぎない。「glyf」テーブルはまた、TTFファイルの最大部分を占め、大抵の場合90%に達する。その他のテーブルは従ってTTFファイルの約10%のように僅かな部分を占めるに過ぎない。換言すれば、その他のテーブルは頻繁にアクセスする必要があるのに対し、「glyf」テーブルは稀にしかアクセスする必要がない。
【0013】
従って、本発明は、TTFファイルを少なくとも2個の別々の部分に分割して、メモリにロードする際に異なる仕方で処理することを提案する。小さく且つ頻繁にアクセスされる部分は高速メモリに1回ロードされる。大きいが稀/疎にしかアクセスされない部分は低速メモリにロードされる。第1のメモリの例としてNANDフラッシュメモリ及び組み込みマルチメディアカードメモリがある。第2のメモリの例としてランダムアクセスメモリ(RAM)、又はRAMとNORフラッシュメモリの組み合わせがある。
【0014】
しかし、読み書きが遅いのは、インターネット接続不良が制約の要因になり得るクラウドベースのメモリに起因する場合もある。
【0015】
最も基本的なアプローチにおいて、TTFファイルを3個の部分、すなわち「glyf」テーブルの前の部分、「glyf」テーブル自体、「glyf」テーブルの後の部分に分割する。この結果、フォントが3分割されてフォントデータは変更されないという利点が得られる。従って第1のデータ組としての「glyf」テーブルを第1のメモリにロードする一方、他の2個の部分を第2のメモリにロードすることができる。しかし、「glyf」テーブルの前後の2個の部分を結合して2分割とすることもできる。
【0016】
有利な一実施形態において、「glyf」テーブルのグリフは、メモリにコピーされる前に、頻度の高いグリフが先に出現するように使用頻度に応じてソートされる。
【0017】
メモリにロードする前に、異なる部分に更に修正を加えることも可能である。例えば、レイアウト及びレンダリングに必要な全てのテーブルを前面に配置し、及び/又はレンダリングに不要なテーブルは完全に割愛される。例えば、レンダリングにFreeTypeを使う場合、FreeTypeは安定した動作には「post」テーブルを必要としないため、「post」テーブルを削除してもよい。
【0018】
特別な処理を行う目的で、フォントデータに追加的なテーブルを導入することも可能である。メモリ内で複数のフォントを任意の順序で単一のTTFファイルに結合することができる。これにより、必要なデータだけを高速メモリにロードすることができ、メモリコストを大幅に削減できる。
【0019】
有利な一実施形態において、第2のデータ組は「glyf」テーブルからのデータを含んでいる。本実施形態において、より頻繁に用いられるグリフを高速メモリに格納することで再ロードを回避し、従ってアクセス時間を向上させることができる。頻繁に用いられるグリフをレンダリングする場合、第2のより高速なメモリから既に利用可能であるため、第1のより低速なメモリからロードする必要がない。
【0020】
本開示の第2の態様によれば、コンピュータプログラム製品は、プログラムがコンピュータにより実行されたならば、コンピュータに上述の方法のステップを実行させる命令を含んでいる。
【0021】
本開示の第3の態様によれば、コンピュータ可読記憶媒体は、コンピュータにより実行されたならば、コンピュータに上述の方法のステップを実行させる命令を含んでいる。
【0022】
本開示の第4の態様によれば、データ搬送信号は、第2の態様によるコンピュータプログラム製品を搬送する。
【0023】
本開示の第5の態様によれば、組み込みシステムは、少なくとも1個のマイクロコントローラを含んでいる。更に、組み込みシステムは、少なくとも第1のメモリ及び第2のメモリを含み、第1のメモリは第2のメモリよりも読み出し及び/又は書き込み性能が遅いのに対し、第1及び第2のメモリは少なくとも1個のマイクロコントローラに通信可能に結合されている。また、組み込みシステムは、少なくとも1個のマイクロコントローラに通信可能に結合された少なくとも1個のディスプレイを含んでいる。更に、組み込みシステムは、上述の方法を実行して少なくとも1個のディスプレイ上でグリフをレンダリングすべく形成されている。
【0024】
ディスプレイは、インフォテインメントシステム、計器クラスタ、ラジオ、又はヘッドアップディスプレイの一部であってよい。組み込みシステムは更に、プロセッサ及びグラフィカルプロセッシングユニット等の追加的な部分を含んでいてよい。組み込みシステムの異なる電子部品が、例えばCANバス等のバスを介して通信可能に結合されていてよい。
【0025】
組み込みシステムの当該異なる部分は、単一ユニットに一体化されていてよい。しかし、組み込みシステムの複数の部分を異なるユニットに分散させることも可能である。例えば、ディスプレイとマイクロコントローラは自動車、オートバイ、トラック、列車、ヘリコプター、飛行機等の乗物内のユニットの一部であるのに対し、メモリはサーバーに組み込むことができる。
【0026】
有利な一実施形態において、第2のメモリ内の第2のデータ組に基づいてフォントエンジンを用いてTrueTypeフォントをレンダリングする。換言すれば、フォントエンジンは高速メモリ内のデータをレンダリング用に用いる。
【0027】
本開示の第6の態様によれば、乗物は上述の組み込みシステムを実装している。
【0028】
以下、本発明について、添付図面を参照しながら、例示的な複数の実施形態により説明する。
【図面の簡単な説明】
【0029】
図1】組み込みシステムでTrueTypeフォントファイルを処理するためのコンピュータ実装された方法のフロー図である。
図2図1の組み込みシステムでTrueTypeフォントファイルを処理する方法のステップを詳細に示す模式図である。
図3図1のTrueTypeフォントファイルを処理する方法を実行する組み込みシステムの模式図である。
図4図3の組み込みシステムが実装された乗物の模式図である。
【発明を実施するための形態】
【0030】
図1に、組み込みシステム138でTrueTypeフォント(TTF)ファイル110を処理するコンピュータ実装された方法100のフロー図を示す。
【0031】
どのTrueTypeフォントファイル110も特定のフォントを表し、フォントデータを含む連結された複数のテーブルを含んでいる。いくつかのテーブルは、フォントのレイアウト及びレンダリングに関連するデータを含み、いくつかはレンダリング処理を高速化する情報を保持し、他のテーブルは特徴、設定、著作権表示、フォント名、スタイル名、及びフォントに関連する他の情報を格納している。いくつかのテーブルはどのTTFファイル110にも必須であり、他のテーブルは任意選択的である。必須テーブルの一つが「glyf」テーブル114であり、フォントを構成する全てのグリフに対する特定のグリフデータ154の累積としてグリフデータ152に符号化されたフォントのグリフの外観、すなわちフォントの文字の輪郭を画定する。
【0032】
コンピュータ実装された方法100の分割ステップ102において、TrueTypeフォントファイル110は、少なくとも第1のデータ組134及び第2のデータ組136に分割されるのに対し、第1のデータ組134は「glyf」テーブル114を含み、第2のデータ組136は、少なくともその他のテーブル、すなわち「glyf」テーブル114以外のTTFファイル110の複数のテーブルを含んでいる。
【0033】
組み込みシステム138は、少なくとも第1のメモリ140及び第2のメモリ142を含み、第1のメモリ140は第2のメモリ142よりも読み出し及び/又は書き込み性能が遅い。
【0034】
次いで、方法100の第1のロードステップ104において、第1のデータ組134が第1のメモリ140にロードされる。同時に、第2のロードステップ106において、第2のデータ組136が第2のメモリ142にロードされる。しかし、第1のロードステップ104と第2のロードステップ106を連続的に実行することも可能である。
【0035】
レンダリングステップ108において、特定のグリフデータ154をレンダリングする場合、特定のグリフデータ154が第1のデータ組134から第2のメモリ142にロードされる。しかし、例えばグリフが頻繁に用いられ、且つ第2のデータ組136が頻繁に用いられる「glyf」テーブル114からのデータを含んでいるために、特定のグリフデータ154が第2のメモリ142に既にロードされている場合、当該ステップは不要な作業負荷を避けるべく割愛される。レンダリングステップ108は、レンダリング対象である全てのグリフについて繰り返すことができ、これを図1に円形の矢印で視覚化している。
【0036】
図2に、図1の組み込みシステム138でTrueTypeフォントファイル110を処理する方法100のステップを詳細に示す模式図を示す。
【0037】
特に、図2は、図1の分割ステップ102に関する3個の異なるアプローチを詳細に示している。図2の例において、TTFファイル110は、第1の部分112、「glyf」テーブル114、及び第2の部分116を含んでいる。第1の部分112は「glyf」テーブル114より前に現れる全てのデータを保持しているのに対し、第2の部分116は「glyf」テーブル114より後に現れる全てのデータを保持している。図2は、TTFファイル110を第1のデータ組134及び第2のデータ組136に分割する方法に関する第1のアプローチ118、第2のアプローチ120、及び第3のアプローチ126を詳細に示している。
【0038】
第1のアプローチ118において、TTFファイル110は、第1のデータ組134に含まれていて第1のメモリ140にロードされる「glyf」テーブル114に分割されるのに対し、第1の部分112と第2の部分116は更なる修正無しに結合されて、第2のメモリ142にロードされる第2のデータ組136を形成する。
【0039】
第2のアプローチ120において、TTFファイル110は第1の修正された「glyf」テーブル122及び第1の修正されたその他のテーブル124に分割される。第1の修正「glyf」テーブル122は「glyf」テーブル114のソートされたバージョンであり、最も頻繁に用いられるグリフデータ152がテーブルの先頭に現れる。第1の修正されたその他のテーブル124は、TTFファイル110の第1の部分112と第2の部分116を含んでいるのに対し、頻繁に用いられるテーブル、例えばレイアウト及びレンダリングに関連する情報を保持するテーブルは、テーブルの先頭に現れるようにソートされる。第1の修正された「glyf」テーブル122は、第1のデータ組134に含まれていて第1のメモリ140にロードされる。第1の修正されたその他のテーブル124は第2のデータ組136に含まれていて第2のメモリ142にロードされる。
【0040】
第3のアプローチ126において、TTFファイル110は、第2の修正された「glyf」テーブル128と、使用頻度の高い「glyf」テーブル130と、第2の修正されたその他のテーブル132に分割される。第2の修正された「glyf」テーブル128は、最も頻繁に用いられるグリフデータ152が削除された「glyf」テーブル114のコピーである。第2の修正された「glyf」テーブル128は、第1のデータ組134として第1のメモリ140にロードされる。
【0041】
これらの最も頻繁に用いられるグリフデータ152は、頻繁に用いられる「glyf」テーブル130を形成する。第2の修正されたその他のテーブル132は、その他のテーブル、すなわちレンダリング処理に無関係なテーブルが削除された「glyf」テーブル114以外のTTFファイル110の複数のテーブルのコピーである。結合された使用頻度の高い「glyf」テーブル130と第2の修正されたその他のテーブル132は第2のデータ組136として高速アクセスできるように第2のメモリ142に格納される。
【0042】
図3に、図1のTrueTypeフォントファイル110を処理する方法100を実行する組み込みシステム138の模式図を示す。
【0043】
組み込みシステム138は、第1のメモリ140及び第2のメモリ142を含み、第1のメモリ140は、第2のメモリ142よりも読み出し及び/又は書き込み性能が低いが記憶容量は大きい。更に、組み込みシステム138は、マイクロコントローラ144及びディスプレイ146を含んでいる。第1のメモリ140と第2のメモリ142は、データバス148を介してマイクロコントローラ144に通信可能に結合されている。ディスプレイ146もまたマイクロコントローラ144に通信可能に結合されていて、ビデオ出力150により、マイクロコントローラ144はレンダリングされたグリフをディスプレイ146に表示することができる。
【0044】
第1のデータ組134は第1のメモリ140にロードされる。通常、これは生成処理の終了時に第1のデータ組134をフラッシュすることにより行われる。図1の例において、第1のデータ組134は未修正TTFファイル110である。従って、第1のデータ組134は、第1の部分112、「glyf」テーブル114、及び第2の部分116を含んでいる。「glyf」テーブル114は、フォント内のグリフの外観を画定するグリフデータ152を含み、図3で複数の矩形により視覚化されている。1個の矩形がフォントの全グリフの個々のグリフデータを示す。
【0045】
組み込みシステム138の起動中、第1の部分のコピー112’及び第2の部分のコピー116’が第2のメモリ142にロードされる。しかし、例えば、第2のメモリ142がランダムアクセスメモリ(RAM)とNORフラッシュメモリの組み合わせであるならば、第1のデータ組134と同様に、生成処理の終了時にコピー112’、116’を第2のメモリ142にフラッシュすることも可能である。この段階で、組み込みシステム138は、グリフデータ152を除いて、高速メモリ内で利用可能なグリフをどのようにレイアウト及びレンダリングするかに関する全ての情報を有している。このデータはTTFファイル110のサイズの大部分を占めるため、これを高速であるが小さい第2のメモリ142にロードすることは望ましくない。
【0046】
マイクロコントローラが、例えばインフォテインメントシステムによりテキストをディスプレイ146に表示するよう指示されたならば、レンダリング処理が開始される。レンダリング中、特定のグリフ154は一度に1個しか必要とされない。レンダリング処理の前に、特定のグリフデータ154が特定のグリフデータのコピー154’として第2のメモリ142にコピーされる。これは次いでより高速な第2のメモリ142から便利にロードすることができる。特定グリフデータのコピー154’のレンダリング処理が終了した後で、レンダリングステップ108は、レンダリング対象である次のグリフに対して繰り返される。
【0047】
図4に、図3の組み込みシステム138が実装された乗物156の模式図を示す。
【0048】
組み込みシステム138の各部分は図4に示すように単一の機器に組み込まれていてよい。しかし、組み込みシステム138の全部又は選択された部分もまた、インフォテインメントシステム等、別の装置の機能を提供することができる。
【符号の説明】
【0049】
100 方法
102 分割ステップ
104 第1のローディングステップ
106 第2のローディングステップ
108 レンダリングステップ
110 TrueTypeフォントファイル
112 第1の部分
114 「glyf」テーブル
116 第2の部分
118 第1のアプローチ
120 第2のアプローチ
122 第1の修正された「glyf」テーブル
124 第1の修正されたその他のテーブル
126 第3のアプローチ
128 第2の修正された「glyf」テーブル
130 頻繁に用いられる「glyf」テーブル
132 第2の修正されたその他のテーブル
134 第1のデータ組
136 第2のデータ組
138 組み込みシステム
140 第1のメモリ
142 第2のメモリ
144 マイクロコントローラ
146 ディスプレイ
148 データバス
150 ビデオ出力
152 グリフデータ
154 特定のグリフデータ
156 乗物
図1
図2
図3
図4
【手続補正書】
【提出日】2023-12-22
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
組み込みシステム(138)においてTrueTypeフォントファイル(110)を処理するコンピュータ実装された方法(100)であって、TrueTypeフォントファイル(110)が特定のフォントを表し、前記TrueTypeフォントファイル(110)が、フォントデータを含む複数の連結されたテーブルを含み、前記複数のテーブルが少なくとも、グリフの外観、すなわちフォントの文字の輪郭を画定する「glyf」テーブル(114)を含み、前記「glyf」テーブル(114)以外の複数のテーブルがその他のテーブルであり、前記組み込みシステム(138)が少なくとも第1のメモリ(140)及び第2のメモリ(142)を含んでいるのに対し、前記第1のメモリ(140)が前記第2のメモリ(142)よりも読み出し及び/又は書き込み性能が低速であり、前記方法(100)が、
a)前記フォントデータを少なくとも第1のデータ組(134)及び第2のデータ組(136)に分割(102)して前記第1のデータ組(134)が前記「glyf」テーブル(114)を含み、前記第2のデータ組(136)が少なくともその他のテーブルを含むようにするステップと、
b)前記第1のデータ組(134)を前記第1のメモリ(140)にロードする(104)ステップと、
c)前記第2のデータ組(136)を前記第2のメモリ(142)にロードする(106)ステップと、
d)特定のグリフ(152)のレンダリング動作(108)の前に、前記特定のグリフ(152)に対応するデータが前記第2のメモリ(142)に既にロードされていなければ前記第1のデータ組(134)から前記第2のメモリ(142)にロードするステップを含む方法。
【請求項2】
前記「glyf」テーブル(114)のグリフが、メモリにコピーされる前に、頻度の高いグリフが先に出現するように使用頻度に応じてソートされている、請求項1に記載の方法。
【請求項3】
前記第2のデータ組(136)が前記「glyf」テーブル(114)からのデータを含んでいる、請求項1に記載の方法。
【請求項4】
プログラムがコンピュータにより実行されたならば、請求項1~3のいずれか1項に記載の方法(100)のステップを前記コンピュータに実行させる命令を含むコンピュータプログラム製品。
【請求項5】
コンピュータにより実行されたならば、請求項1~3のいずれか1項に記載の方法(100)のステップを前記コンピュータに実行させる命令を含むコンピュータ可読記憶媒体。
【請求項6】
請求項4に記載のコンピュータプログラム製品を搬送するデータ搬送信号。
【請求項7】
組み込みシステム(138)であって、
a)少なくとも1個のマイクロコントローラ(144)と、
b)少なくとも第1のメモリ(140)及び第2のメモリ(142)であって、前記第1のメモリ(140)が前記第2のメモリ(142)よりも読み出し及び/又は書き込み性能が遅いに対し、前記第1のメモリ(140)と前記第2のメモリ(142)が前記少なくとも1個のマイクロコントローラ(144)に通信可能に結合されている、前記第1のメモリ(140)及び前記第2のメモリ(142)と、
c)前記少なくとも1個のマイクロコントローラ(144)に通信可能に結合された少なくとも1個のディスプレイ(146)を含み、
前記組み込みシステム(138)が、請求項1~3のいずれか1項に記載の方法(100)を実行して前記少なくとも1個のディスプレイ(146)上でグリフをレンダリングすべく形成されている、組み込みシステム(138)。
【請求項8】
前記第2のメモリ(142)に格納された前記第2のデータ組(136)に基づいて前記TrueTypeフォントファイル(110)をレンダリングすべくフォントエンジンが用いられる、請求項7に記載の組み込みシステム。
【請求項9】
請求項7に記載の組み込みシステム(138)が実装されている乗物(156)。
【外国語明細書】