(57)【要約】【課題】画像に関するセマンティック情報を保存しているメタデータを利用して、スタティックバージョンの画像が、個別に制御可能なピクセルサブコンポーネントからなるピクセルをもつ表示機器上にサブピクセル精度で表示されるようにして、低解像度表示での画像形態の明瞭化を図る。【解決手段】スタティックバージョンの画像は、サブピクセル精度の位置づけを保持したまま、相対的に低解像度の表示機器で表示できる。画像は、個別に制御可能なピクセルサブコンポーネントをもつ表示機器で表示される。サブピクセル精度の位置づけは、空間的に異なるサンプルの集合を、フルピクセルにではなく、個々のピクセルサブコンポーネントにマッピングするようにすることで行い、これにより文字のエッジのような画像形態が、常にフルピクセル間の境界にではなく、ピクセルサブコンポーネント境界に表示されるようにする。【選択図】　　　　図４
2004004839.tif 000002
【特許請求の範囲】
【請求項１】
複数のピクセルを有し、各ピクセルが複数の個別に制御可能なピクセルサブコンポーネントを持つディスプレイデバイスと関連する処理デバイスにおいて、画像をディスプレイデバイス上に表示する方法であって、該方法は、
画像を定義している画像データにアクセスする行為と、
前記画像データを、文字形態を定義しているフォント属性を含み、かつ前記画像のレイアウトを定義している第１解像度をもつ情報を含むデータフォーマットに変換する行為と、
前記変換された画像データを使用して、前記第１解像度よりも低い第２解像度をもつディスプレイデバイス上に画像を表示する行為と、を有し、前記ピクセルのピクセルサブコンポーネントは、画像の空間的に異なる部分を表しており、かつ前記文字形態の少なくとも一部分は、サブピクセル精度でディスプレイデバイス上に表示されることを特徴とする方法。
【請求項２】
請求項１に記載の方法において、画像を表示する行為は、文字のエッジが同一ピクセルでの個々のピクセルサブコンポーネント間の境界に表示されるように画像を表示することを含むことを特徴とする方法。
【請求項３】
請求項１に記載の方法において、前記データフォーマットは、前記ディスプレイデバイス上の表示に備えて、前記画像データをバイナリフォーマットでストアしておくことを可能にすることを特徴とする方法。
【請求項４】
請求項１に記載の方法において、前記データフォーマットは、画像データを直列化することを可能にすることを特徴とする方法。
【請求項５】
請求項１に記載の方法において、前記データフォーマットは、画像をデバイスに依存しない形で表示することを可能にすることを特徴とする方法。
【請求項６】
請求項１に記載の方法において、前記ディスプレイデバイス上に画像を表示する行為は、バイナリバージョンの画像を前記ディスプレイデバイス上に活字体で描くことを含むことを特徴とする方法。
【請求項７】
請求項１に記載の方法において、前記データフォーマットはメタファイルフォーマットを含むことを特徴とする方法。
【請求項８】
請求項１に記載の方法において、前記データフォーマットは拡張メタファイルフォーマットを含むことを特徴とする方法。
【請求項９】
請求項８に記載の方法において、前記拡張メタファイルフォーマットは、前記画像に関するグラフィックスデバイスインタフェースコマンドをストアすることを可能にすることを特徴とする方法。
【請求項１０】
請求項１に記載の方法において、前記画像データを変換する行為は、画像のレイアウトを定義している第１解像度をもつ前記情報を含んでいる、ピックルド（直列化）バージョンの画像データを作成する行為を含み、前記第１解像度をもつ前記情報は、前記画像の前記レイアウトをデバイスに依存しない形で定義している、記録されたアプリケーションプログラムインタフェースのコールを含んでいることを特徴とする方法。
【請求項１１】
複数のピクセルを有し、かつ各ピクセルが複数の個別に制御可能なピクセルサブコンポーネントをもっているディスプレイデバイスと関連付する処理デバイスにおいて、画像をディスプレイデバイス上に表示する方法であって、該方法は、
画像を定義している画像データを、
画像の形態を定義しているグラフィックス属性と、
第１解像度をもつ第１座標空間内での画像の形態の位置を定義している情報と、
を含むデータフォーマットに変換する行為と、
前記グラフィックス属性および前記画像の形態の位置を定義している前記情報を使用して、前記第１解像度よりも低い第２解像度をもつディスプレイデバイス上に前記画像をサブピクセル精度で表示する行為と、を含み、前記第１解像度をもつ前記座標空間内の画像形態の位置を定義している前記情報は、前記第２解像度をもつ前記ディスプレイデバイスの第２座標空間内での形態の位置を、サブピクセル精度で決定するために使用されることを特徴とする方法。
【請求項１２】
請求項１１に記載の方法において、画像を表示する行為は、前記変換画像データのサンプルを、前記ディスプレイデバイスのピクセルサブコンポーネントにマッピングする行為を含むことを特徴とする方法。
【請求項１３】
請求項１１に記載の方法において、前記ディスプレイデバイスは液晶ディスプレイデバイス（ＬＣＤ）を含み、前記画像を表示する行為は、前記変換画像データを、前記ＬＣＤデバイスのピクセルサブコンポーネントの同一カラーストライプのストライプに直交する方向にオーバスケーリングする行為を含むことを特徴とする方法。
【請求項１４】
請求項１１に記載の方法において、前記ディスプレイデバイスは液晶ディスプレイ（ＬＣＤ）を含み、画像を表示する行為は、前記ＬＣＤディスプレイデバイスのピクセルサブコンポーネントに適用される輝度値を決定するために、画像をサンプリングして複数のサンプルを得る行為を含むことを特徴とする方法。
【請求項１５】
請求項１４に記載の方法において、前記ピクセルサブコンポーネントは、前記ディスプレイデバイス上に複数の同一カラーストライプを形成しており、情報をサンプリングする行為は、前記ピクセルサブコンポーネントのストライピング方向よりも、前記ピクセルサブコンポーネントのストライピングに直交する方向により多くのサンプルを得る行為を含むことを特徴とする方法。
【請求項１６】
請求項１１に記載の方法において、前記変換画像を処理する行為は、オーバラッピングカラーフィルタを使用して画像データをフィルタリングする行為を含むことを特徴とする方法。
【請求項１７】
請求項１１に記載の方法において、前記グラフィックス属性はフォント属性を含むと共に、文字情報を含むことを特徴とする方法。
【請求項１８】
請求項１１に記載の方法において、前記グラフィックス属性はカラー情報を含むことを特徴とする方法。
【請求項１９】
請求項１１に記載の方法において、前記グラフィックス属性は画像サイズ情報を含むことを特徴とする方法。
【請求項２０】
請求項１１に記載の方法において、第１解像度をもつ第１座標空間内で前記画像の文字形態の位置を定義している前記情報は、デバイスに依存しない形で前記画像のレイアウトを定義している、記録済みのアプリケーションプログラムインタフェースのコールを含むことを特徴とする方法。
【請求項２１】
処理デバイスと画像を表示するディスプレイデバイスとを含んでいるコンピュータシステムであって、前記ディスプレイデバイスは複数のピクセルを有していて、各ピクセルは複数の個別に制御可能なピクセルサブコンポーネントをもつものにおいて、画像を前記ディスプレイデバイス上に表示する方法を前記コンピュータシステムにより実現するためのコンピュータプログラムであって、該コンピュータプログラムは、
コンピュータ可読媒体に格納された前記方法を実行するためのコンピュータ実行可能命令を含んでいて、該コンピュータ実行可能命令は、
画像を定義している画像データを、文字形態を定義しているフォント属性を含むと共に、前記画像のレイアウトを定義している、第１解像度をもつ情報を含んでいるメタファイルフォーマットに変換するステップと、
前記フォント属性と前記第１解像度を利用して、前記変換画像データを、前記第１解像度よりも低い第２解像度をもつディスプレイデバイス上に画像を表示するように処理するステップと、を含み、前記変換画像データを処理するステップは、
前記変換画像データのサンプルを、前記フォント属性を利用して個々のピクセルサブコンポーネントにマッピングするステップと、
前記文字形態の少なくとも一部が、サブピクセル精度で前記ディスプレイデバイス上に表示されるように前記画像をディスプレイデバイス上に表示するステップと、を含むことを特徴とするコンピュータプログラム。
【請求項２２】
請求項２１に記載のコンピュータプログラムにおいて、前記ディスプレイデバイスは液晶ディスプレイ　（ＬＣＤ）　デバイスを含み、前記変換画像データを処理するステップは、前記ＬＣＤディスプレイデバイスのストライプに直交する方向に前記変換画像データをオーバスケーリングして、該オーバスケールされた画像表現を作成するステップを含むことを特徴とするコンピュータプログラム。
【請求項２３】
請求項２１に記載のコンピュータプログラムにおいて、前記変換画像データを処理するステップは、前記ディスプレイデバイスのピクセルサブコンポーネントに適用される輝度値を指定している複数のサンプルが得られるように、前記画像を表現している情報をサンプリングするステップを含むことを特徴とするコンピュータプログラム。
【請求項２４】
請求項２３に記載のコンピュータプログラムにおいて、前記サンプルは、該サンプルがサブピクセル精度で前記個々のピクセルサブコンポーネントにマッピングされることができるように、前記第１解像度をもつ前記情報を使用して得られることを特徴とするコンピュータプログラム。
【請求項２５】
請求項２１に記載のコンピュータプログラムにおいて、前記コンピュータ可読命令は、オーバラッピングカラーフィルタを使用して前記画像データをフィルタリングするステップをさらに含むことを特徴とするコンピュータプログラム。
【請求項２６】
複数のピクセルを有していて、各ピクセルが複数の個別に制御可能なピクセルサブコンポーネントをもっているディスプレイデバイスと関連付する処理デバイスにおいて、画像を前記ディスプレイデバイス上に表示する方法であって、該方法は、
画像を定義している第１フォーマットでストアされている画像データにアクセスする行為と、
前記画像の文字形態を定義しているフォント属性を保存したまま、前記画像データを前記第１フォーマットから画像のピックルドバージョンを表している第２フォーマットに変換する行為であって、前記画像のピックルドバージョンは、デバイスに依存しない形で前記画像のレイアウトを定義している第１解像度をもつ情報を含んでいるものと、
前記画像を表している複数のサンプルを得るために、前記フォント属性と前記第１解像度をもつ前記情報とを処理する行為であって、前記サンプルは、前記ディスプレイデバイスの前記ピクセルによって定義された第２解像度よりも高い解像度をもっているものと、
前記ピクセルサブコンポーネントを制御する輝度値を定義するために、空間的に異なるサンプルの集合を前記ディスプレイデバイスの前記ピクセルの個々のピクセルサブコンポーネントにマッピングする行為と、
前記定義された輝度値を使用して前記画像を前記ディスプレイデバイス上に表示する行為であって、前記画像はサブピクセル精度で前記ディスプレイデバイス上に表示されるようにするものと、
を含むことを特徴とする方法。
【請求項２７】
請求項２６に記載の方法において、前記ディスプレイデバイスは液晶ディスプレイデバイスを含むことを特徴とする方法。
【請求項２８】
請求項２７に記載の方法において、前記ピクセルサブコンポーネントは、レッドサブコンポーネント、ブルーサブコンポーネント、およびグリーンサブコンポーネントを含むことを特徴とする方法。
【請求項２９】
請求項２８に記載の方法において、前記ピクセルサブコンポーネントは、前記ディスプレイデバイス上に同一カラーのピクセルサブコンポーネントのストライプに配列されていることを特徴とする方法。
【請求項３０】
請求項２６に記載の方法において、デバイスに依存しない形で前記画像のレイアウトを定義している第１解像度をもつ前記情報は、実行されたとき、ビューアに前記画像をレンダリングさせることができる、記録済みのアプリケーションプログラムインタフェースのコールを含むことを特徴とする方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、サブピクセル精度で画像をレンダリングすることに関する。さらに具体的には、本発明は、画像に関するセマンティック情報をストアしているメタファイルを使用して、スタティック（静的、静止）バージョンのドキュメントが、個別に制御可能なピクセルサブコンポーネントをもつピクセルを有するディスプレイデバイス（表示機器）でサブピクセル精度でレンダリングされるようにするシステムと方法に関する。
【０００２】
【従来の技術】
近年、画像形態位置が、ページの境界のような固定ロケーションに対して定義されているようなスタティックバージョンの画像を得るために種々の画像データフォーマットが開発されている。そのようなデータフォーマットの１つとして、ポータブルドキュメントフォーマット　（Ｐｏｒｔａｂｌｅ　Ｄｏｃｕｍｅｎｔ　Ｆｏｒｍａｔ　　ＰＤＦ）　があるが、このフォーマットによると、ドキュメントの画像形態　（ｉｍａｇｅ　ｆｅａｔｕｒｅｓ）　がドキュメントのページに対してスタティックに表示されたままにして、ドキュメントが表示されるのを可能にしている。一般的に、このようなスタティック（静的、静止）画像データフォーマットによると、ドキュメントの画像をデバイスに依存しない形で表示することを可能にしている。画像データがストアされるときの特定ドキュメントフォーマットの種類および／または画像が表示されるときの特定ディスプレイデバイスに左右されないレンダリングプロセスを提供するために、画像はビューア　（ｖｉｅｗｅｒ）　に送られる前に部分的にレンダリングされている。画像の部分的レンダリングでは、画像データを、その画像データがストアされている特定ドキュメントフォーマットからピックルド（ｐｉｃｋｌｅｄ−直列化、整列化）（またはポータブル）ドキュメントフォーマットに変換することが行われている。ピックルドドキュメントフォーマットは、画像形態の全体フォーマットをドキュメントのページに対して残したままにして、単純で、どのドキュメントにも特定しないビューア　（ｎｏｎ−ｄｏｃｕｍｅｎｔ　ｓｐｅｃｉｆｉｃ　ｖｉｅｗｅｒ）　を使用して、異種類のデバイスのどれからでも画像をレンダリングすることを可能にする。このような画像は、画像を符号化（エンコード）するために使用されるデータフォーマットに関係なく、以下では、「スタティック画像（ｓｔａｔｉｃ　ｉｍａｇｅ）」、「スタティックバージョンの画像（ｓｔａｔｉｃ　ｖｅｒｓｉｏｎ　ｏｆ　ａｎ　ｉｍａｇｅ）」または「ピックルドドキュメント（ｐｉｃｋｌｅｄ　ｄｏｃｕｍｅｎｔ）」と呼ばれる。
【０００３】
スタティック（静的、静止）画像が使用されるような状況には、ドキュメントを印刷することが含まれるが、これは、コンピュータのプリンタからであろうと、あるいはドキュメントのスタティック画像をディスプレイデバイス上に表示するのと類似の操作であろうと、含まれる。スタティック画像をディスプレイデバイス上に表示する１つの例として、ドキュメントのスタティック画像をハンドヘルドコンピュータまたは他のエレクトロニックスデバイス上でレンダリングするプロセスがある。このプロセスが実行されるのは、例えば、ユーザが画像を見る、画像に注釈を付ける、といったことのために、ユーザがドキュメントのプリントペーパバージョンではなく、むしろドキュメントのエレクトロニック画像（電子イメージ）を表示することを望んでいるときである。この結果を達成するために、テキストドキュメントなどのドキュメントは、ピックルドドキュメントに変換される。このピックルドドキュメントが「プレイ」されると、ドキュメントはハンドヘルドデバイス（手持ち式機器）のディスプレイスクリーン（表示画面）から表示されることになる。スタティック画像は、いくつかのアプリケーションから提供されるプリントプレビュー機能（ｐｒｉｎｔ　ｐｒｅｖｉｅｗ　ｆｕｎｃｔｉｏｎａｌｉｔｙ）（つまり、ＷＹＳＩＷＹＧ）のコンテキストの中で役に立っている。以上を要約すると、スタティック画像は、画像をデバイスに依存しない形で、かつその全体フォーマッティングとページネーション（ページ割付け）をそのままにして表示したいときや、画像（例えば、文字）の基調をなす特徴を編集する必要のないときに利用すると、便利である。
【０００４】
スタティックバージョンの作成に先立って、画像は高解像度でフォーマッティングされるのが代表的であるが、とりわけハンドヘルドデバイスによく見られるように、ディスプレイデバイスが相対的に低解像度であるときに、ディスプレイデバイス上に表示できるよりも高解像度で画像を定義している画像データを含んでいることがある。オリジナル画像データは、解像度が６００ドット／インチ（ｄｏｔｓ　ｐｅｒ　ｉｎｃｈ　　ＤＰＩ）　またはそれ以上のとき、効率よくストアすることができる。もっと高い解像度も可能であるが、この大きさの解像度をもつ画像は、通常の表示条件の下で代表的なディスプレイスクリーン上に代表的なビューアを介して表示されるとき、著しく高い解像度で表示される画像とはその違いが目立たないのが一般である。６００　ＤＰＩの解像度は、多くのインクジェットプリンタやレーザプリンタがサポートしている解像度と互換性をもっている。６００　ＤＰＩの解像度を有する画像は、ワードプロセッシングや他のグラフィックスシステムのユーザが期待しているプリント媒体の鮮明度を提供する。また、この解像度は、画像をピックルドドキュメントフォーマットに変換する準備を容易化する。６００　ＤＰＩの解像度を利用すると、グラフィックス画像に望ましい画像品質が得られるのと同時に、画像が効率よくストアされ、表示されるものと説明してきたが、同等の画像品質が得られる他の解像度を使用することも可能である。
【０００５】
大部分のハンドヘルドデバイスで使用されている液晶ディスプレイ　（ｌｉｑｕｉｄ　ｃｒｙｓｔａｌ　ｄｉｓｐｌａｙ　　ＬＣＤ）　の解像度は、ＬＣＤや他のディスプレイの製造についての技術上およびコスト上の制約がある上に、ハンドヘルドデバイスにはパワー（電力）とデータ処理に限界があるために、凡そ１００　　１３０　ＤＰＩを超えることがない（多くは９６　ＤＰＩである）のが代表的である。ＬＣＤデバイスの解像度は、インチ当りのピクセルサブコンポーネント　（ｐｉｘｅｌ　ｓｕｂｃｏｍｐｏｎｅｎｔ）　の数ではなく、インチ当りのフルピクセル　（ｆｕｌｌ　ｐｉｘｅｌ）　の数に基づいて判断されるのが代表的である。ドキュメントのスタティック画像が上述したようにハンドヘルドデバイスで表示されるとき、画像は、相対的に低解像度で表示されるのが代表的である。
【０００６】
図１は、ディスプレイデバイス上に表示される画像を高解像度フォーマットから、ピックルドドキュメント　（ｐｉｃｋｌｅｄ　ｄｏｃｕｍｅｎｔ）　を表示するために利用されるバイナリビットマップ　（ｂｉｎａｒｙ　ｂｉｔｍａｐ：２進ビットマップ）　に変換する従来の方法を示す図である。図１に示すように、画像データ１０は、第１画像１２、第２画像１４、第３画像１６、および第４画像１８を含んでいる。画像データ１０は、画像１２、１４、１６、１８を高解像度パラレルフォーマット（つまり、６００　ＤＰＩ）で定義している。シリアル化ルーチン（ｓｅｒｉａｌｉｚａｔｉｏｎ　ｒｏｕｔｉｎｅ）の一部としてこれら、画像は、各画像１２、１４、１６、１８をデバイスに依存しない形でロードし、表示できるようにするバイナリフォーマットに変換される。バイナリフォーマットは、ビットマップ２０と関連付けられている。ビットマップ２０の解像度は、低解像度ディスプレイデバイスと対応している。一般的に、低解像度ビットマップ２０は、その解像度が高解像度パラレルフォーマット画像データ１０のそれより低くなっているのは、低解像度ビットマップの方が必要とするメモリと処理能力が少なくて済むからであり、さらには、ハンドヘルドデバイスのＬＣＤディスプレイデバイス（表示装置）は画像を低解像度で表示するからである。
【０００７】
グリッド（マス目）２２は、画像がビットマップでどのように構成されているかを示すために、ビットマップ２０の一部をより詳細に示したものである。画像のビットマップは、画像の座標をディスプレイデバイスの低解像度座標空間　（ｌｏｗｅｒ　ｒｅｓｏｌｕｔｉｏｎ　ｃｏｏｒｄｉｎａｔｅ　ｓｐａｃｅ）　に丸めることによって作成される。例えば、画像データ１０の解像度が６００　ＤＰＩで、ディスプレイデバイスの解像度が１００　ＤＰＩであるとすると、６００　ＤＰＩ画像の座標は６で除算され、最寄りの整数値に丸められる。言い換えると、６００　ＤＰＩ画像を、１００　ＤＰＩディスプレイデバイス上に表示できるビットマップにスケーリング（スケール変更）するために、６：１のスケーリング因数　（ｓｃａｌｉｎｇ　ｆａｃｔｏｒ）　が使用される。その結果、画像形態は整数ピクセル　（ｗｈｏｌｅ　ｐｉｘｅｌｓ）　で表示され、画像形態のエッジはディスプレイデバイスのフルピクセル境界　（ｆｕｌｌ　ｐｉｘｅｌ　ｂｏｕｎｄａｒｙ）　に丸められることになる。画像が表示されるときの解像度が低いと起こる、画像形態の曲線と対角線に見られるジャギー　（ｊａｇｇｙ：ぎざぎざ）　をスムーズにするために、グレースケーリング　（ｇｒａｙ　ｓｃａｌｉｎｇ）　の別名でも知られる、慣用のアンチエイリアシング　（ａｎｔｉ−ａｌｉａｓｉｎｇ）　が画像に適用されるのが代表的である。グレースケーリングでは、画像のエッジを描写しているピクセルに中間輝度値　（ｉｎｔｅｒｍｅｄｉａｔｅ　ｌｕｍｉｎｏｕｓ　ｉｎｔｅｎｓｉｔｙ　ｖａｌｕｅ）を適用して、画像のエッジの階段状　（ｓｔａｉｒ−ｓｔｅｐｐｅｄ）　外観を最小限にしている。
【０００８】
スケーリングされたバージョンの画像１２、１４、１６、１８を収めているビットマップ２０のバイナリコードは、低解像度ディスプレイ３０の特定ピクセルをオン、オフするかどうかの制御をする。ビットマップ２０を利用すると、画像１２、１４、１６、１８を低解像度ディスプレイ３０上に表示させることが可能になる。しかし、ビットマップ２０の作成時には、フォント属性や他のグラフィックス属性などのセマンティック情報　（ｓｅｍａｎｔｉｃ　ｉｎｆｏｒｍａｔｉｏｎ）、および画像形態の位置を高解像度座標空間で定義している情報は保存されていない。オリジナルデータファイルから残されているのは、ディスプレイ３０のピクセルを制御するビットマップ２０のバイナリコードだけである。
【０００９】
図２は、その解像度に関係なく、ＬＣＤディスプレイデバイスで使用されている従来のディスプレイ技法の関連特性を示している。図２に示すように、画像データは、画像１４をサブピクセル精度　（ｓｕｂ−ｐｉｘｅｌ　ｐｒｅｃｉｓｉｏｎ）で定義している。このことは、文字または他の画像の一部の形態が、ディスプレイデバイスの対応するフルピクセル境界の間に置かれた位置をもつことを意味している。この例では、グリッド３２は、画像データの上に重ね合わされ、列Ｃ１−Ｃ６と行Ｒ１−Ｒ６がディスプレイデバイスにおけるフルピクセルの位置に対応付けられている。画像１４の位置は、例えば、画像１４の左境界が列Ｃ２とＣ３の間のフルピクセル境界と重なり合っていないというように、サブピクセル座標によって定義されている。
【００１０】
しかし、画像１４をレンダリングするときには、画像１４の境界はフルピクセル境界に丸められる。種々のルーチンは、画像の形態をフルピクセル境界に丸める効力を有しているが、以下では、説明の便宜上、代表的なサンプリングルーチンで説明している。このサンプリングルーチンでは、画像データのうち、フルピクセルに対応する各部分の中心でサンプルがとられている。図２に示すように、画像データは、ピクセル３４、３６、および３８に対応する位置でサンプリングされている。典型的に、ピクセルに対応する領域の中心はサンプリングされるポイントであり、対応するピクセル全体の光度を制御するために使用される。従って、ピクセル３４に対応する領域の中心でのサンプルは、文字本体上に位置していないので、レッド（赤）ピクセルサブコンポーネント３４Ｒ、グリーン（緑）ピクセルサブコンポーネント３４Ｇ、およびブルー（青）ピクセルサブコンポーネント３４Ｂは、それぞれに応じて（この例では、光度が最大であるとして）制御される。逆に、３６と３８のＲＧＢピクセルサブコンポーネントは、対応するサンプルが文字本体内に位置しているため、（この例では、光度がないものとして）一緒に制御される。図示の具体例では、説明の便宜上、バックグラウンド（背景）ピクセルに最大光度を使用し、フォアグランド（前景）ピクセルに最低光度を使用する例が示されている。本発明の範囲と精神から逸脱しない限り、フォアグランドピクセルおよび／またはバックグラウンドピクセルを描写するために、最大光度、最低光度および／または中間光度を任意に組み合わせて使用することができる。ピクセルごとのシングルサンプルは、３ピクセルサブコンポーネントに適用される光度を制御し、画像データの部分は３ピクセルサブコンポーネントが一緒に働くことによって表示される。その結果、文字エッジはフルピクセル境界上に位置している。
【００１１】
【特許文献１】
米国特許第６，２１９，０２５号明細書
【００１２】
【発明が解決しようとする課題】
シリアル化バイナリフォーマットでストアされている画像をレンダリングするとき、従来のビューアは、画像を低解像度ビットマップに変換して、画像がディスプレイデバイス上に表示されるようにしている。画像がフルピクセル境界に位置付けされるビットマップへ変換するとき、サブピクセル精度で画像を位置づけるために使用された高解像度は失われることになる。文字を最寄りの整数ピクセルに丸めるときに起こる１つの課題は、丸め誤差が不可避的に混合され、文字間のスペーシング（間隔）にばらつきが生じることである。もう１つの課題は、文字自体が、明確さが低下した様態（ｌｅｓｓ　ｐｒｅｃｉｓｅ　ｍａｎｎｅｒ）で低解像度ディスプレイデバイス上に表示されることである。以上を要約すると、シリアル化またはピックルド（直列化）画像を、従来のビューアを利用してハンドヘルドデバイスのような、低解像度ディスプレイデバイス上に表示すると、画像品質が低下し、文字間にむらのあるスペーシングが生じることになる。
【００１３】
【課題を解決するための手段】
本発明は、サブピクセル精度で画像をレンダリングすることに関する。さらに具体的には、本発明は、画像に関するセマンティック情報をストアするメタファイルを利用して、スタティックバージョンの画像を、個別に制御可能なピクセルサブコンポーネントを含むピクセルを持つディスプレイデバイス上でサブピクセル精度で表示可能にしたシステムおよび方法を提供する。本発明によれば、スタティックバージョンの画像は、ハンドヘルドデバイスについての解像度のように、相対的に低解像度を有するディスプレイデバイス上で表示できると共に、サブピクセル精度の位置付け情報を利用して画像を表示することができる。
【００１４】
解像度の向上は、ＬＣＤピクセルの個別に制御可能なピクセルサブコンポーネント（例えば、レッド、グリーンおよびブルーのサブコンポーネント）を個別の光度発生源として使用して、画像の空間的に異なる部分を表現することによって達成される。個別に制御可能なピクセルサブコンポーネントは、本発明の説明を分かりやすくするために、レッド、グリーン、およびブルーのサブコンポーネントというコンテキスト（文脈）で説明されている。しかし、当然に理解されるように、本発明のコンテキストにおいて、ピクセルサブコンポーネントによって形成されるパターンに関係なく、ピクセルサブコンポーネントはどのような構成のものでも使用することが可能である。空間的変位サンプル　（ｓｐａｔｉａｌｌｙ　ｄｉｓｐｌａｃｅｄ　ｓａｍｐｌｅｓ）　またはサンプルの集合は、個々のピクセルサブコンポーネントにマッピングされている。これは、単一サンプルを３パートピクセル全体にマッピングし、画像の単一部分を表現するように３パートピクセル全体を制御する従来の技法とは対照的である。従って、スタティックバージョンの画像は、従来のシステムで達成されていた解像度に比べると、向上した解像度で、ディスプレイデバイス上でピクセルサブコンポーネントのストライプ（ｓｔｒｉｐｅ）に直交する方向にレンダリングされる。本発明は、主にスタティックバージョンの画像と関連付けて説明されているが、本発明のコンテキストの中で利用されている技法は、本発明の範囲と精神から逸脱しない限り、汎用グラフィックス画像に適用することが可能であり、その中には、テキストを含む画像とテキストを含まない画像が含まれている。
【００１５】
解像度の向上を達成するために、セマンティック情報（例えば、フォント属性や他のグラフィックス属性）は、メタファイル　（ｍｅｔａｆｉｌｅ）　に保存され、符号化されている。フォント属性には、フォントファミリ、画像サイズ、カラーなどを含ませることができるが、これらに限定されない。フォント属性は、グラフィックス属性の一例を表している。文字以外の、一般的なグラフィックスがレンダリングされるような場合においても、メタファイルに保存され、符号化されるグラフィックス属性は、ここで説明しているフォント属性と同じような属性が含まれる。さらに、メタファイルは、解像度がディスプレイデバイスのそれよりも大幅に高いのが典型的である画像の高解像度レイアウトを定義している情報も含む。文字や他の画像形態などのオブジェクトが、高解像度座標空間に置かれている位置はメタファイルによって定義されるので、文字のサブピクセル精度位置を保存しておき、レンダリング処理期間に使用することができる。
【００１６】
一実施形態では、画像データは、ディスプレイデバイスの解像度よりも大幅に高い相対的に高解像度（例えば、６００　ＤＰＩ）で、ピックルドフォーマット（ｐｉｃｋｌｅｄ　ｆｏｒｍａｔ）でメタファイルにストアされている。セマンティック情報とメタファイルの高解像度とにより、本発明のビューアは、サブピクセル精度で画像を表示することができる。本発明の一実施形態では、メタファイルは、画像の高解像度バージョンおよびその画像に関連するセマンティック情報をストアするための拡張メタファイル　（ｅｎｈａｎｃｅｄ　ｍｅｔａｆｉｌｅ　　ＥＭＦ）　を含んでいる。画像に関連するセマンティック情報をストアしておくと、画像データは、個々のピクセルサブコンポーネントを個々の光度発生源として使用するレンダリングプロセスと互換性をもつことになる。これにより、スタティックバージョンの画像は、向上した解像度と向上した文字スペーシングで既存ハンドヘルドデバイスに表示されることが可能になる。その結果、高品質のスタティック画像、つまり、ピックルド画像をこのようなハンドヘルドデバイスで表示できるので、その画像を見たり、画像に注釈を付けたり、他のアプリケーションで画像を使用したりすることが都合よく可能になる。
【００１７】
本発明のその他の特徴と利点は、以下の説明に記載されているが、その一部は説明から明らかであるもの、あるいは本発明の実施によって習得されるものがある。本発明の特徴と利点は、請求項に具体的に明確化されている手段とその組み合わせによって実現し、取得することができる。本発明の上記および他の特徴は、以下の説明および請求項から十分に明らかにされるが、本発明を以下に説明しているように実施することによって習得することも可能である。
【００１８】
本発明の上記および他の利点と特徴はどのようにすると取得できるかを説明するために、以下では、要約して上述した本発明を、添付図面に図示されている本発明の具体的実施形態を参照して、もっと具体的に説明することにする。添付図面は本発明の代表的な実施形態を示したものにすぎず、従って、本発明の範囲を限定するものではないとの了解の下で、以下では、添付図面を使用して、本発明をもっと具体的にかつ詳細に説明することにする。
【００１９】
【発明の実施の形態】
本発明によれば、ビットマップだけに頼っている従来の技法よりも高い解像度が得られるような形で、スタティックバージョンの画像を相対的に低解像度のディスプレイデバイス上に表示することを可能にしている。具体的には、本発明のビューア　（ｖｉｅｗｅｒ）　は、相対的に高解像度で画像を定義しているメタファイルにストアされた情報および関連のセマンティック情報（例えば、フォント属性や他のグラフィックス属性）を利用して、スタティックバージョンの画像または他のグラフィックスバージョンの画像をピクセルサブコンポーネント精度　（ｐｉｘｅｌ　ｓｕｂ−ｃｏｍｐｏｎｅｎｔ　ｐｒｅｃｉｓｉｏｎ）　で表示する。このことは、個々のピクセルサブコンポーネントを使用して、特に、ＬＣＤディスプレイデバイスで普通に使用されている解像度のような、相対的に低解像度のディスプレイデバイスから、以前から可能であったよりも高解像度でスタティックバージョンの画像を表示することを可能にしている。
【００２０】
スタティックバージョンの画像の表示は、ハンドヘルドデバイスを含む、種々のコンピュータ関連テクノロジで利用されている。従来、スタティックバージョンの画像は、画像データを、ビューアを利用してディスプレイデバイス上に表示できるピックルド（またはポータブル）ドキュメントに変換することによって作成されている。スタティック画像、つまり、ピックルドドキュメントによると、オブジェクトの相互の相対位置を保存したまま、画像をデバイスに依存しないフォーマット　（ｄｅｖｉｃｅ−ｉｎｄｅｐｅｎｄｅｎｔ　ｆｏｒｍａｔ）　でセーブ（保存）し、ロードすることができる。ピックルドフォーマットを使用して表示される画像がスタティックと呼ばれるのは、その基礎となる画像形態（例えば、文字）がユーザによって編集されることを意図していないからである。例えば、ハンドヘルドデバイスでは、スタティック画像はディスプレイデバイス上に表示される。そのとき、ユーザは、表示されている基礎のスタティックバージョンを変更することなく、スタティックバージョンの画像の上に注釈を付けることができる。スタティックバージョンの画像を使用する他の例として、プリントプレビュー機能　（ｐｒｉｎｔ　ｐｒｅｖｉｅｗ　ｆｕｎｃｔｉｏｎａｌｉｔｙ）　や観察者がドキュメントに対する変更を見ることができるようにしているレッドライン（赤線引き）／ストライクアウト（削除）機能　（ｒｅｄｌｉｎｅ／ｓｔｒｉｋｅｏｕｔ　ｆｕｎｃｔｉｏｎａｌｉｔｙ）　などがある。本発明はスタティックバージョンの画像と関連付けて説明されているが、画像が文字や他のベクトルグラフィックス形態　（ｖｅｃｔｏｒ　ｇｒａｐｈｉｃｓ　ｆｅａｔｕｒｅｓ）　を含んでいるか否かに関係なく、汎用グラフィックス画像に関連して利用することも可能である。
【００２１】
スタティック画像がストアされるメタファイルは、文字などのオブジェクト、フォント属性などのグラフィックス属性、および文字や他の画像形態の位置を相対的に高解像度で定義している情報を収めている。メタファイルはデータ構造であり、そこには、画像のレイアウトを定義し、その実行時に、テキストや他の画像形態を特定のロケーションで出力する関数呼び出し（ｆｕｎｃｔｉｏｎ　ｃａｌｌｓ）を記録したものが収められている。本発明によれば、画像形態をピクセルサブコンポーネントで位置付けることは、画像が関連グラフィックス属性と共にメタファイルの中にレイアウトされているときの高解像度を使用して達成されている。これにより、メタファイルの高解像度空間に定義されている文字位置を、画像がそこから表示されるディスプレイデバイスの相対的に低解像度空間のサブピクセル座標位置にマッピングすることを可能にしている。ディスプレイデバイスのレンダリングエンジン　（ｒｅｎｄｅｒｉｎｇ　ｅｎｇｉｎｅ）　は、メタファイルを「プレイ」し、以下で詳しく説明するオーバスケーリングおよびサンプリングプロセスを利用して、画像をサブピクセル精度で表示する。ここでは、画像をディスプレイデバイス上に表示するというコンテキストで「サブピクセル精度（ｓｕｂ−ｐｉｘｅｌ　ｐｒｅｃｉｓｉｏｎ）」という用語が用いられているが、これは、完成ピクセル（ｅｎｔｉｒｅ　ｐｉｘｅｌｓ）ではなく、個々のピクセルサブコンポーネントが画像の空間的に異なる部分を表し、画像のこれらの部分の位置を定義する情報がフルピクセル　（ｆｕｌｌ　ｐｉｘｅｌｓ）　の解像度よりも高い解像度で定義されていることを意味している。
【００２２】
セマンティック情報を保存しておき、その間に、ディスプレイデバイス上に表示されるようにスタティック画像を処理する方法を説明する前に、図３と図４を参照して、変位サンプリング　（ｄｉｓｐｌａｃｅｄ　ｓａｍｐｌｉｎｇ）　に関連する一般原理について説明することにする。このような変位サンプリングは保存されたセマンティック情報と併用されて、スタティックバージョンの画像を、個別に制御可能なピクセルサブコンポーネントの形態（ｐａｔｔｅｒｎ）をもつ液晶ディスプレイデバイスや他のディスプレイデバイスからサブピクセル精度で表示させる。図３に示す画像データ５０の文字部分１４は、例えば、文字のエッジの位置を指定するベクトルデータと、フォアグラウンドとバックグラウンドのカラーを定義する情報とによって定義される。図３は、ディスプレイデバイス上のフルピクセルの位置に対応する行Ｒ１−Ｒ６と列Ｃ１−Ｃ６をもつグリッド（マス目）も示している。
【００２３】
画像データ５０の単一のサンプルをフルピクセルにマッピングするのではなくて、変位サンプリングは、１つまたは２つ以上のサンプルの空間的に異なる集合（セット）を個々のピクセルサブコンポーネントにマッピングすることを含む。このアプローチによると、ＬＣＤディスプレイデバイスのピクセルサブコンポーネントが、代表的な陰極線管　（ｃａｔｈｏｄｅ　ｒａｙ　ｔｕｂｅ　−　ＣＲＴ）　とは異なり、別々にアドレス可能であって、同一ピクセル内の他のピクセルサブコンポーネントから独立して制御できるという利点がある。さらに、ＬＣＤディスプレイデバイスのピクセルサブコンポーネントは、物理的に３の集合（セット）に構成されているのが一般であり、このピクセルサブコンポーネントは同一カラーエレメントの垂直ストライプで位置合わせされていることが多く、頻度は低いものの水平ストライプで位置合わせされていることもある。
【００２４】
変位サンプリングを利用すると、画像は、フルピクセル境界にではなく、ピクセルサブコンポーネント境界でディスプレイデバイスに表示することができる。図示の例に示すように、文字１４の左エッジ５１は、列Ｃ２とＣ３の間のフルピクセル境界の間の位置に置かれていることが認められる。図２に示す従来技術の例では、シングルサンプルをフルピクセルにマッピングするので、文字の左エッジはフルピクセル境界に表示されることになる。これに対して、変位サンプル５３をピクセル５２、５４および５６の個々のピクセルサブコンポーネントにマッピングすると、文字１４の左エッジ５１は、ピクセルサブコンポーネント間の境界に効果的にレンダリングされることになる。具体的に説明すると、図示の例では、文字１４の左エッジはピクセル５４のレッドとグリーンのピクセルサブコンポーネントの間に位置している。変位サンプリングを利用すると、グリーンピクセルサブコンポーネント５４Ｇは、文字１４の本体に対応付けられ、他方、レッドピクセルサブコンポーネント５４Ｒは文字の輪郭の外側の画像部分を表すことになる。従って、文字１４の左エッジ５１の位置は、ディスプレイデバイス上でもっと正確に表示される。これにより、文字形態の幅の精度だけでなく、隣接文字間の間隔の精度も向上することになる。図３には、ピクセル５２、５４および５６のサブコンポーネントにマッピングされたサンプル５３だけが示されているが、当然に理解されるように、この処理は画像をレンダリングするために使用される他のピクセルについても繰り返される。
【００２５】
図４は、個々のピクセルサブコンポーネントが画像の空間的に異なる部分を表すことを可能にする、図３でその概要を説明した変位サンプリングを達成するために使用することのできるデータ処理オペレーションのシーケンスを示す。説明を簡潔にするために、画像、画像データ、サンプル、およびディスプレイデバイスの一部分だけが示されている。以下では、サブピクセルレンダリングプロセスが説明されているが、本発明のコンテキストで利用できる画像データ処理オペレーションは、公知文献に詳しく説明されている（特許文献１参照）。なお、この文献の内容は引用により本明細書の一部になっている。
【００２６】
データ処理オペレーションのシーケンスでは、最初に、画像データ６０が、ディスプレイデバイス内のピクセルサブコンポーネントのストライピングに直交する方向にオーバスケーリング因数によってオーバスケーリング（拡大）されて、サブコンポーネントの高さと幅の差分が補償される。言い換えれば、画像データ６０は、ストライピングに平行する方向のスケーリングよりも大である因数によって、ストライピングに直交する方向にスケーリングされる。この例では、オーバスケーリング因数として、６がストライピングに直交する方向に適用されて、オーバスケールされたデータ６２が生成される。利用できるオーバスケーリング因数は、ディスプレイデバイスのストライピングに直交する方向に適用される６：１の因数に限定されるものではなく、どの方向にも適用が可能であると共に、ディスプレイデバイスのピクセルごとに得られるサンプルの数に対応するように選択することが可能である。例えば、サンプリングは、６：５オーバスケール因数を用いて、ディスプレイデバイスのストライピングに平行する方向に適用することができる。
【００２７】
画像がオーバスケーリングされると、次に、画像データのサンプリングが行われる。サンプリングでは、個々のピクセルサブコンポーネントに適用される光度情報の識別を伴う。適用される輝度値が識別されると、ディスプレイデバイス上の特定ピクセルサブコンポーネントが、文字輪郭の内側に置かれた位置に対応しているか、外側に置かれた位置に対応しているかが判断される。図４に示す例では、６サンプルがピクセルごとに得られるか、２サンプルがピクセルサブコンポーネントごとに得られる。ピクセルごとにまたはピクセルサブコンポーネントごとに得られるサンプルの数は、ピクセルサブコンポーネントごとに少なくとも１サンプルであるのが一般であるが、変えることもできる。説明の便宜上、図４には、画像データの選択された領域だけに生成されたサンプル６４が示されると共に、サンプルのすべてを示すのではなく、対応するピクセルとピクセルサブコンポーネントだけが示されている。
【００２８】
サンプルが得られると、次に、サンプルは個々のピクセルサブコンポーネントにマッピングされ、画像データの空間的に異なる部分が個々のピクセルサブコンポーネントにマッピングされることになる。図３と図４に示す画像データ処理オペレーションによると、文字のエッジは、常にフルピクセル境界上に置かられるのではなく、任意のピクセルサブコンポーネント間の境界上に置かれることになる。グリッド７０は、サブピクセル精度でレンダリングされた画像７２の一部を示している。画像７２の左エッジは、フルピクセル境界上ではなく、ピクセルサブコンポーネント境界上に置かれている。このグリッドから分かるように、画像７２の左エッジはグリーンピクセルサブコンポーネント７４Ｇとブルーピクセルサブコンポーネント７４Ｂの間の境界上に置かれているのに対し、フルピクセルエッジは、ブルーピクセルサブコンポーネント７４Ｂとレッドピクセルサブコンポーネント７６Ｒの間に置かれることになる。
【００２９】
本発明によれば、オーバスケーリングはスーパサンプリング　（ｓｕｐｅｒｓａｍｐｌｉｎｇ）で置き換えることができる。具体的に説明すると、スーパサンプリングを行うと、得られるサンプルは、ピクセルサブコンポーネントのストライピングに平行する方向よりも、ストライピングに直交する方向の方がより多くなる。オーバスケーリング、スーパサンプリング、およびダイレクトレンダリングのいずれも、得られる結果は同じであり、ピクセルサブコンポーネント当りのサンプルは少なくとも１つである。さらに、ピクセルサブコンポーネントを制御するために使用される輝度値を生成する前に、カラーフィルタリングオペレーションをサンプルに対して適用することができる。この方法によると、適用しない場合に現れることがある色縁効果　（ｃｏｌｏｒ　ｆｒｉｎｇｅ　ｅｆｆｅｃｔ）　が減少するが、若干の解像度が犠牲になる。上記のように本発明で使用できるカラーフィルタリングオペレーションとしては、米国特許出願第０９／３６４，６４７号明細書に説明されているものがある。なお、この文献の内容は引用により本明細書の一部になっている。一般的に、特許文献２に説明されているように、カラーフィルタリングでは、重み付けされ、平均化されたサンプルの集合（セット）を選択することより、個々のピクセルサブコンポーネントに適用される輝度値を識別している。カラーフィルタはオーバラップしていることがよくある。つまり、隣接カラーフィルタ（例えば、隣接するレッド、グリーンおよびブルーのピクセルサブコンポーネントに適用されるフィルタ）によって処理されるサンプルは、相互排他的になっていない。例えば、グリーンのカラーフィルタは、グリーンピクセルサブコンポーネントの位置に対応する位置をもつ画像データのサンプル回りの中心に置くことができるが、隣接するレッドとブルーのピクセルサブコンポーネントに対応する位置をもつ隣接サンプルまで延長させることもできる。
【００３０】
以下では、特に相対的低解像度のディスプレイ環境において、変位サンプリングをスタティック画像に対して行うために使用される情報の保存について説明することにする。図５は、画像データと、本発明のコンテキストでメタファイルに入れて利用される、画像データの基礎となるセマンティック情報とを示す。スタティックバージョンの画像を表示する従来の技法で利用されているビットマップのバイナリフォーマットのサブピクセル位置づけ情報が失われると、その画像はフルピクセル境界に表示されるのが一般である。それ故に、本発明の一実施形態では、メタファイルが、画像データ８０に関連するセマンティック情報８２を保存しておくために利用されている。メタファイルを使用すると、文字情報、フォント属性、カラー情報、サイズ情報を含むセマンティック情報８２を保存しておくことができるが、これらに限定されない。さらに、メタファイルは、画像のレイアウトを比較的に高解像度で定義している、アプリケーションプログラムインタフェース　（ａｐｐｌｉｃａｔｉｏｎ　ｐｒｏｇｒａｍ　ｉｎｔｅｒｆａｃｅ　　ＡＰＩ）　コール群を含んでいる。高解像度座標空間内での文字や他の画像形態の位置により、ここで説明している変位サンプリング技術を使用して文字と他の画像形態を表示させることができる。
【００３１】
図示の実施形態では、画像データと関連セマンティック情報はメタファイルに保存されているが、セマンティック情報およびここで説明している変位サンプリングとサブピクセルレンダリングルーチンのために要求される比較的に高解像度で文字や他の画像形態を定義している情報は、どのフォーマットを使用しても保存することができる。さらに、どのタイプのメタファイルでも利用することが可能である。そのようなものとして、Ｍｉｃｒｏｓｏｆｔ　Ｗｉｎｄｏｗｓ（登録商標）　Ｍｅｔａｆｉｌｅ　（ＷＭＦ）、配置可能メタファイル　（ｐｌａｃｅａｂｌｅ　ｍｅｔａｆｉｌｅ）、クリップボードメタファイル　（ｃｌｉｐｂｏａｒｄ　ｍｅｔａｆｉｌｅ）、拡張メタファイル　（ｅｎｈａｎｃｅｄ　ｍｅｔａｆｉｌｅ　　ＥＭＦ）　などがある。好適実施形態において、拡張メタファイルが使用されているのは、このフォーマットによると機能と容量の向上が得られるからである。例えば、拡張メタファイルフォーマットの方が、Ｍｉｃｒｏｓｏｆｔ　Ｗｉｎｄｏｗｓ（登録商標）　Ｍｅｔａｆｉｌｅ　（ＷＭＦ）よりも、画像データに関係するグラフィックスデバイスインタフェースコマンドをより多くサポートする。
【００３２】
図６は、スタティックバージョンの画像をピクセルサブコンポーネント精度で表示するために、セマンティック情報と、メタファイルの比較的に高解像度座標空間内で画像形態の位置を定義している位置づけ情報とが利用されるときの方法を示している。図６の方法では、画像データはステップ１００でアクセスされる。画像は、６００　ＤＰＩ（ｄｏｔ　ｐｅｒ　ｉｎｃｈ）とそれ以上の範囲にある解像度で文字の位置を指定している情報を含むあるフォーマットの画像データによって定義されているのが代表的である。画像データは、フォント属性を含むセマンティック情報でも定義される。フォント属性には、文字情報、カラー情報、画像サイズ情報、画像の形態の座標を決定するための情報、などを含ませることができるが、これらに限定されるものではない。
【００３３】
ステップ１１０では、画像データはオリジナルデータフォーマットからメタデータを含む別のフォーマットに変換される。この別のフォーマットには、例えば、画像に関連するセマンティック情報を保存しておくのに適した、拡張メタファイルフォーマットや他のフォーマットについてのメタデータが含まれる。拡張メタファイルフォーマットによると、図５を参照して説明したように、画像をその関連セマンティック情報と一緒に相対的に高解像度で保存しておくことができる。画像を、グラフィックス属性などのセマンティック情報と一緒に高解像度で保存しておくと、図３と図４を参照して本明細書で説明した画像データ処理技法を利用して、画像をサブピクセル精度でレンダリングすることが可能になる。
【００３４】
次に、画像データはステップ１２０でオーバスケーリングされる。メタファイルに格納されているセマンティック情報は、画像データに関連するグラフィックス属性を定義している。メタファイルの関数呼び出しで、メタファイルがレンダリングエンジンによって「プレイ」されるとき、テキストを高ＤＰＩ（ｄｏｔ　ｐｅｒ　ｉｎｃｈ）空間にセットする。レンダリングエンジンはスーパサンプリングまたはオーバスケーリングルーチンを利用して、画像をサブピクセル精度でレンダリングする。例えば、レンダリングエンジンは、文字が高ＤＰＩ空間内に特定ポイントサイズの特定フォントを使用してレンダリングされることをフォント属性により通知される。オーバスケーリングルーチンについては、図４を参照してすでに詳しく説明している。
【００３５】
画像データがオーバスケーリングされると、次に、オーバスケールされた描写がサンプリングされる。このサンプリングは、ステップ１３０でディスプレイデバイス（表示装置）のピクセルサブコンポーネントに与える輝度値を決定するために、画像データに適用される。サンプリングルーチンは、図４を参照してすでに詳しく説明されている。最後に、変換された画像データのサンプルは、ステップ１４０で、個々のピクセルサブコンポーネントにマッピングされるので、画像は、図４を参照して詳しく説明したように、ステップ１４０でディスプレイデバイス上に表示されることになる。本発明の図示実施形態では、オーバスケーリング、サンプリングおよびマッピングルーチンはセマンティック情報を利用して、本発明の変位サンプリングとサブピクセル精度レンダリングプロセスを実行している。セマンティック情報は、画像データが最初に格納されたときの画像データフォーマットではなく、メタファイルからアクセスされる。
【００３６】
画像データのサンプルが個々のピクセルサブコンポーネントにマッピングされると、次に、ステップ１５０でスタティックバージョンの画像がディスプレイデバイス上に表示される。この例では、文字１５２と１５４は、ディスプレイデバイス上に表示される画像の形態に混じっている。グリッド１６０は、ディスプレイデバイスの一部分と、そのディスプレイデバイスの一部分に関連するピクセルサブコンポーネントを表している。グリッド１６０上の文字１５２と１５４の部分を観察すると明らかであるように、文字１５２と１５４の形態は、フルピクセル境界に丸められるのではなく、サブピクセル精度で表示されている。
【００３７】
本発明の種々の実施形態によれば、以下で詳しく説明するように、種々のコンピュータハードウェアを含む、専用または汎用コンピュータが含まれているとすることができる。本発明の範囲に属する実施形態によれば、コンピュータ実行可能命令またはデータ構造を搬送するための、またはそこに格納しておくためのコンピュータ可読媒体も含まれる。このようなコンピュータ可読媒体は、汎用または専用コンピュータによってアクセス可能で、利用可能な媒体ならば、どのような媒体であってもかまわない。このようなコンピュータ可読媒体の例を挙げると、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスク記憶装置、磁気ディスク記憶装置や他の磁気記憶装置、あるいは必要とするプログラムコード手段をコンピュータ実行可能命令またはデータ構造の形で搬送または格納するために使用でき、汎用または専用コンピュータによってアクセス可能である他の媒体などがあるが、これらに限定されない。情報がネットワークまたは別のコミュニケーションコネクション（ハードワイヤド、ワイヤレス、またはハードワイヤドとワイヤレスを組み合わせたもの）を通じてコンピュータに転送または供給されるとき、コンピュータ側から見たとき、そのコネクションはコンピュータ可読媒体そのものに見える。従って、この種のコネクションがコンピュータ可読媒体と呼ばれているのも当然である。上記のものを組み合わせたものも、当然にコンピュータ可読媒体の範囲に含まれるものである。コンピュータ実行可能命令には、例えば、汎用コンピュータ、専用コンピュータ、または特殊目的処理デバイスに対してある種の関数や関数群を実行させる命令とデータが含まれる。
【００３８】
図７と以下の説明は、本発明を実現することができる、適切なコンピュータ環境の簡潔な概説を提供することを意図したものである。必ずしもその必要はないが、本発明は、プログラムモジュールのように、ネットワーク環境でコンピュータによって実行されるコンピュータ実行可能命令という一般的なコンテキスで説明されている。一般的に、プログラムモジュールには、特定のタスクを実行する、あるいは特定の抽象データ型を実装しているルーチン、プログラム、オブジェクト、コンポーネント、データ構造、などが含まれている。コンピュータ実行可能命令、関連データ構造、およびプログラムモジュールは、本明細書に開示されている方法のステップを実行するためのプログラムコード手段の例示である。このような実行可能命令または関連データ構造の特定シーケンスは、前記ステップに説明されている機能を実現するための、対応する行為　（ａｃｔ）　の例を示している。
【００３９】
この分野の精通者（当業者）ならば理解されるように、本発明は、多種類のコンピュータシステム構成からなるネットワークコンピュータ環境で実施することが可能であり、そのようなコンピュータシステム構成としては、パーソナルコンピュータ、ハンドヘルドデバイス（手持ちサイズ電子機器）、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラマブル家庭電化製品、ネットワークＰＣ（パソコン）、ミニコンピュータ、メインフレームコンピュータ（大型計算機）、などがある。上述したように、本発明は、相対的に低解像度のディスプレイデバイスを備えたハンドヘルドデバイスや他のコンピューティングデバイスに特に適用可能である。また、本発明は、通信ネットワークを通じてリンクされた（ハードワイヤドリンク、ワイヤレスリンク、またはハードワイヤドリンクとワイヤレスリンクを組み合わせたもののいずれかによって）ローカル（局所）とリモート（遠隔）の処理デバイスによってタスクが実行されるような、分散型コンピュータ環境で実施することも可能である。分散型コンピュータ環境では、プログラムモジュールは、ローカルとリモートの両方のメモリストレージデバイスに置いておくことができる。
【００４０】
図７を参照して説明すると、本発明を実現するための例示のシステムは、従来型のコンピュータ２２０の形体をした汎用コンピューティングデバイスを含んでおり、このコンピューティングデバイスは、処理ユニット２２１、システムメモリ２２２、およびシステムメモリ２２２を含む種々のシステムコンポーネントを処理ユニット２２１に結合しているシステムバス２２３を装備している。システムバス２２３は、数種のバス構造のいずかにすることが可能であり、その中には、種々のバスアーキテクチャのいずれかを用いているメモリバスやメモリコントローラ、ペリフェラル（周辺）バス、ローカルバスなどが含まれている。システムメモリとしては、リードオンリメモリ　（ｒｅａｄ　ｏｎｌｙ　ｍｅｍｏｒｙ　　ＲＯＭ）２２４とランダムアクセスメモリ　（ｒａｎｄｏｍ　ａｃｃｅｓｓ　ｍｅｍｏｒｙ　　ＲＡＭ）２２５がある。立て上げ時のような期間に、コンピュータ２２０内のエレメント間で情報を転送するのを支援する基本ルーチンからなる基本入出力システム　（ｂａｓｉｃ　ｉｎｐｕｔ／ｏｕｔｐｕｔ　ｓｙｓｔｅｍ　　ＢＩＯＳ）２２６を、ＲＯＭ２２４に格納することができる。
【００４１】
コンピュータ２２０は、磁気ハードディスク２３９に対して読み書きを行う磁気ハードディスクドライブ２２７、取り外し可能磁気ディスク２２９に対して読み書きを行う磁気ディスクドライブ２２８、およびＣＤ−ＲＯＭや他の光媒体などの、取り外し可能光ディスク２３１に対して読み書きを行う光ディスクドライブ２３０を装備することも可能になっている。磁気ハードディスクドライブ２２７、磁気ディスクドライブ２２８、および光ディスクドライブ２３０は、それぞれハードディスクドライブインタフェース２３２、磁気ディスクドライブインタフェース２３３、および光ディスクドライブインタフェース２３４を介してシステムバス２２３に接続されている。これらのドライブ（駆動装置）とそれぞれに関連するコンピュータ可読媒体は、パーソナルコンピュータ２２０のためのコンピュータ実行可能命令、データ構造、プログラムモジュールおよびその他のデータを格納する不揮発性記憶装置を備える。ここで説明している例示の環境では、磁気ハードディスク２３９、取り外し可能磁気ディスク２２９および取り外し可能光ディスク２３１が採用されているが、データを格納しておくための他のタイプのコンピュータ可読媒体を使用することも可能である。そのような他のタイプのコンピュータ可読媒体としては、磁気カセット、フラッシュメモリカード、デジタルバーサタイルディスク　（ｄｉｇｉｔａｌ　ｖｅｒｓａｔｉｌｅ　ｄｉｓｋ）、ベルヌーイ　（Ｂｅｒｎｏｕｌｌｉ）　カートリッジ、ＲＡＭ、ＲＯＭ、などがある。
【００４２】
１つまたは２つ以上のプログラムモジュールを含むプログラムコード手段は、ハードディスク２３９、磁気ディスク２２９、光ディスク２３１、ＲＯＭ２２４またはＲＡＭ２２５に格納しておくことができ、そのようなプログラムコード手段としては、オペレーティングシステム２３５、１つまたは２つ以上のアプリケーションプログラム２３６、他のプログラムモジュール２３７、およびプログラムデータ２３８がある。ユーザは、キーボード２４０、ポインティングデバイス２４２、またはマイクロホン、ジョイスティック、ゲームパッド、サテライトディッシュ（衛星放送受信アンテナ）、スキャナなどの、他の入力デバイス（図示せず）を通してコマンドと情報をコンピュータ２２０に入力することができる。上記および他の入力デバイスは、システムバス２２３に結合されたシリアルポートインタフェース２４６を通して処理ユニット２２１に接続されていることが多いが、別の方法として、入力デバイスは、パラレルポート、ゲームポートまたはユニバーサルシリアルバス　（ｕｎｉｖｅｒｓａｌ　ｓｅｒｉａｌ　ｂｕｓ　　ＵＳＢ）　などの、他のインタフェースで接続することも可能である。モニタ２４７や他のタイプのディスプレイデバイスも、ビデオアダプタ２４８などの、インタフェースを介してシステムバス２２３に接続されている。本明細書で説明したように、モニタ２４７は、個別に制御可能なピクセルサブコンポーネントを備えた液晶ディスプレイデバイスまたは他のディスプレイデバイスである。
【００４３】
コンピュータ２２０は、リモートコンピュータ２４９ａおよび２４９ｂのような、１つまたは２つ以上のリモートコンピュータとの論理コネクションを使用するネットワーク環境で動作させることができる。リモートコンピュータ２４９ａと２４９ｂの各々は、別のパーソナルコンピュータ（ＰＣ）、サーバ、ルータ、ネットワークＰＣ、ピアデバイス（ｐｅｅｒ　ｄｅｖｉｃｅ）または他の共通ネットワークノードにすることが可能であり、図７にはメモリストレージデバイス２５０ａと２５０ｂおよびそれぞれに関連するアプリケーションプログラム２３６ａと２３６ｂだけが図示されているだけであるが、コンピュータ２２０に関して上述したエレメントの多くまたは全部を装備しているのが当たり前となっている。図７に描写した論理コネクションは、ローカルエリアネットワーク　（ｌｏｃａｌ　ａｒｅａ　ｎｅｔｗｏｒｋ　　ＬＡＮ）２５１と広域ネットワーク　（ｗｉｄｅ　ａｒｅａ　ｎｅｔｗｏｒｋ　　ＷＡＮ）２５２が含まれているが、これらは単なる例示であり、これらに限定されない。このようなネットワーク環境は、オフィス内（ｏｆｆｉｃｅ−ｗｉｄｅ）または企業内（ｅｎｔｅｒｐｒｉｓｅ−ｗｉｄｅ）コンピュータネットワーク、イントラネットおよびインターネット　（ｔｈｅ　Ｉｎｔｅｒｎｅｔ）　でありふれたものなっている。
【００４４】
ＬＡＮネットワーク環境で使用する場合は、コンピュータ２２０は、ネットワークインタフェースまたはアダプタ２５３を通してローカルネットワーク２５１に接続されている。ＷＡＮネットワーク環境で使用するのであれば、パーソナルコンピュータ２２０は、インターネットなどの、広域ネットワーク２５２上の通信を確立するためのモデム２５４、ワイヤレスリンク、または他の手段を含ませて良い。モデム２５４は内蔵型と外付け型のどちらでもよく、どちらも、シリアルポートインタフェース２４６を介してシステムバス２２３に接続されている。ネットワーク環境では、コンピュータ２２０に関連して図示したプログラムモジュールまたはその一部は、遠隔のメモリストレージデバイスに格納しておくことが可能である。以上から理解されるように、図示のネットワーク接続は例示であり、広域ネットワーク２５２上の通信を確立する他の手段を使用することも可能である。
【００４５】
本発明は、本発明の精神または基本的特徴から逸脱しない限り、他の具体的形態で実現することが可能である。上述した実施形態は、すべての点において例示的なもので、限定的なものではない。従って、本発明の範囲は、上述してきた説明によってではなく、請求項の記載によって判断されるものである。請求項の意味と等価範囲に属するすべての変更は、本発明の範囲内に包含されるものである。
【図面の簡単な説明】
【図１】スタティックバージョンの画像を作成し、その画像データを高解像度フォーマットからバイナリビットマップに変換して、ディスプレイデバイスで表する従来の方法を示す図である。
【図２】ＬＣＤディスプレイデバイスを使用して画像データに適用されるレンダリングプロセスにおいて、画像の単一部分を表現するために３パートピクセル全体が使用されている従来技術を示す図である。
【図３】個々のピクセルサブコンポーネントを別々の光度発生源として使用して、画像の異なる部分を表現する本発明に係る変位サンプリングレンダリングプロセスを示す図である。
【図４】個別に制御可能なピクセルサブコンポーネントからなるピクセルを有するディスプレイデバイス上で解像度の向上を達成するための本発明で使用することのできるレンダリングプロセスを示す概要図である。
【図５】本発明のコンテキストで用いた画像データおよび基調をなすセマンティックデータを示す図である。
【図６】ピックルド画像をサブピクセル精度で表示するためにセマンティック情報を利用した本発明によるレンダリングプロセスを示す流れ図である。
【図７】本発明を実現するのに利用することができる操作環境の一例を示すブロック図である。
【符号の説明】
５０　画像データ
５１　文字１４の左エッジ
５２、５４、５６　　ピクセル
５３　変位サンプル
６０　画像データ
６２　オーバスケールされたデータ
６４　サンプル
７０　グリッド
７２　画像
７４Ｂ　ブルーピクセルサブコンポーネント
７４Ｇ　グリーンピクセルサブコンポーネント
７６Ｒ　レッドピクセルサブコンポーネント
８０　画像データ
８２　セマンティック情報
１５２、１５４　文字
１６０　グリッド
【図１】
2004004839.tif 000003
【図２】
2004004839.tif 000004
【図３】
2004004839.tif 000005
【図４】
2004004839.tif 000006
【図５】
2004004839.tif 000007
【図６】
2004004839.tif 000008
【図７】
2004004839.tif 000009