組み込みシステムにおけるフォントエミュレーション
【課題】印刷装置で印刷するのに適した少なくとも1つの代用フォントでエミュレートされた1又はそれ以上のターゲットフォントを含む文書を印刷するためのシステム。
【解決手段】代用フォントは、視覚的にターゲットフォントと同じように見え、提供される文書の本来のページ付け及び強制改行を実質的に維持し、印刷装置によって印刷することができる。印刷装置が複数の所定のターゲットフォントの各々を代用フォントでエミュレートできるようにするための戦略/論理をリストしたテーブルを提供する。これらのエミュレーション戦略は、以下に限定されるわけではないが、提供される文書内の非常駐ターゲットフォントの代用にするための、印刷装置の常駐フォント、伸縮自在フォント、ローカルフォント、又はダウンロード可能フォントのうちの少なくとも1つを識別することを含むことができる。
【解決手段】代用フォントは、視覚的にターゲットフォントと同じように見え、提供される文書の本来のページ付け及び強制改行を実質的に維持し、印刷装置によって印刷することができる。印刷装置が複数の所定のターゲットフォントの各々を代用フォントでエミュレートできるようにするための戦略/論理をリストしたテーブルを提供する。これらのエミュレーション戦略は、以下に限定されるわけではないが、提供される文書内の非常駐ターゲットフォントの代用にするための、印刷装置の常駐フォント、伸縮自在フォント、ローカルフォント、又はダウンロード可能フォントのうちの少なくとも1つを識別することを含むことができる。
【発明の詳細な説明】
【技術分野】
【0001】
〔関連出願との相互参照〕
本出願は、2011年2月14日に出願された既に出願済みの米国仮特許出願第61/442,794号に基づく特許出願であり、本明細書によって上記特許出願の利益を主張するとともに、上記特許出願は引用により本明細書に組み入れられる。
【0002】
本発明は、全般的にはプリンタの画像データ処理に関し、より詳細には、排他的な意味ではないが、有形媒体に印刷するための、プリンタに与えられる文書内のフォントのエミュレーションを可能にすることに関する。
【背景技術】
【0003】
ユビキタスコンピューティング、グラフィカルユーザインターフェイス、並びにビジネス、アート及びパーソナル使用におけるマルチメディアデータ交換の出現とともに、効率的かつ高品質な文書の処理及び印刷が益々重要になってきた。ネットワーク接続プリンタなどのプリンタ、及び多機能印刷装置(MFP)、及び/又はスライド映写機は、印刷又は表示する文書を、ジョブキュー、セキュリティキュー、文書管理システム、内蔵ディスク記憶装置、デジタルカメラ、取り外し可能な大容量記憶装置、携帯電話、携帯情報端末、ページャー、タブレットコンピュータ、ノートブックコンピュータ、パーソナルコンピュータ、及びその他の事実上あらゆるネットワークコンピュータ装置及び/又はモバイルコンピュータ装置などの様々なソースから受け取ることができる。また一般に、提供された文書は、1又はそれ以上のフォントで表示することができるが、これらのフォントを印刷するために必要な追加情報がプリンタ上に存在せず、又は文書を提供するコンピュータ装置上でこれらの情報を容易に利用できない場合がある。これまで、プリンタは、非常駐フォントの代わりに常駐フォントを使用し、この代用フォントを伸張/圧縮して、非常駐フォントのポイントサイズをある程度エミュレートすることができていた。しかしながら、代用フォントを大きく伸張又は圧縮した場合、視覚アーチファクト(artifact)が生じることがある。また、代用フォントの輪郭は、代替元の非常駐フォントと厳密に一致しないことがあるので、提供された文書を代用フォントで印刷した場合、本来のページ付け及び/又は強制改行が大きく異なることがある。
【発明の概要】
【課題を解決するための手段】
【0004】
本発明をより良く理解できるように、以下の詳細な説明を添付図面と関連付けて参照されたい。
【図面の簡単な説明】
【0005】
【図1】本発明の実施形態を実施できる例示的な環境を示すシステム図である。
【図2】図1に示すシステムに含めることができる印刷装置の一実施形態を示す図である。
【図3】図1に示すシステムに含めることができるモバイル装置の一実施形態を示す図である。
【図4】図1に示すシステムに含めることができるネットワーク装置の一実施形態を示す図である。
【図5】印刷する文書内のフォントに関するエミュレーション情報を処理するプロセスの一実施形態を大まかに示す論理フロー図である。
【図6】プリンタで印刷するフォントのエミュレーション情報を事前処理する一実施形態を大まかに示す論理フロー図である。
【図7】プリンタで印刷するフォントのエミュレーション情報をランタイム処理する一実施形態を大まかに示す論理フロー図である。
【図8】プリンタで印刷するための代用フォントをユーザが選択できるようにするプロセスの一実施形態を大まかに示す論理フロー図である。
【図9A】一実施形態の一部として実現できる例示的なテーブルを示す図である。
【図9B】一実施形態の一部として実現できる例示的なテーブルを示す図である。
【図9C】一実施形態の一部として実現できる例示的なテーブルを示す図である。
【発明を実施するための形態】
【0006】
以下、本発明の一部を成すとともに本発明を実施できる特定の実施形態を例示として示す添付図面を参照しながら、本発明をより完全に説明する。しかしながら、本発明は多くの異なる形で具体化することができ、本明細書に示す実施形態に限定されると解釈すべきではない。むしろ、これらの実施形態は、本開示を徹底的かつ完全なものとし、本発明の範囲を当業者に十分伝えるように提供するものである。とりわけ、本発明は、方法、装置、システム、及びプロセッサ可読記憶媒体として具体化することができる。したがって、本発明は、完全にハードウェアによる実施形態、完全にソフトウェアによる実施形態、又はソフトウェアの側面とハードウェアの側面を組み合わせた実施形態の形を取ることができる。よって、以下の詳細な説明を限定的な意味で捉えるべきではない。
【0007】
本明細書及び特許請求の範囲を通じ、文脈において特に指定しない限り、以下の用語は、本明細書で明示的に関連付ける意味を取る。本明細書で使用する「1つの実施形態では」という表現は、同じ実施形態を示す場合もあるが、必ずしもそうとは限らない。さらに、本明細書で使用する「別の実施形態では」という表現は、異なる実施形態を示す場合もあるが、必ずしもそうとは限らない。従って、後述するように、本発明の範囲又は思想から逸脱することなく本発明の様々な実施形態を容易に組み合わせることができる。
【0008】
また、本明細書で使用する場合、「又は」という用語は、文脈において特に指定しない限り包括的なもの、「又は」演算子であり、「及び/又は」という用語に相当する。「〜に基づいて」という用語は、文脈において特に指定しない限り排他的なものではなく、記載していない追加の要素に基づくことを可能にするものである。また、明細書全体を通じて、「1つの(英文不定冠詞)」及び「その(英文定冠詞)」の意味は複数形の意味を含む。「〜内(in)」の意味は、「〜内(in)」及び「〜上(on)」という意味を含む。
【0009】
本明細書で使用する「文書」という用語は、通信能力を組み合わせた情報の主体のデジタル表現を意味することができる。文書は、以下に限定されるわけではないが、テキスト、フォント、フォント参照、色、グラフィクス、画像、メタデータなどの記号的、図式的、及び/又は感覚的表現情報を含むことができる。いくつかの実施形態では、文書をデジタルアーチファクトと考えることができ、ユーザがプリンタで印刷するように要求した印刷ジョブに関連付けることができる。文書は、印刷装置によって印刷できる事実上あらゆる種類の文書を含むことができる。例えば、文書は、(Microsoft Word(登録商標)、Corel WordPerfect、TeX、OpenOffice、Adobe Acrobat(登録商標)などの)テキストエディタによって作成されたテキスト文書、(Microsoft(登録商標) Paint、MacPaint(登録商標)、又はその他のビットマップ及び/又はベクトルベースのグラフィクスデザインソフトなどの)グラフィクスペイントプログラムによって作成されたグラフィクス文書、撮影システム、光学スキャナなどによって作成された画像文書、或いはテキスト、グラフィクス、画像、及び/又はその他の視覚的情報表現のいずれかの組み合わせなどの文書を含むことができる。少なくともいくつかの実施形態では、文書を、HP PCL、Postscript、PDF、XPS、又はXLなどのPDLの形の入力データストリームとして受け取ることができる。また、少なくともいくつかの実施形態では、文書が、印刷装置に結び付けられた、すなわち印刷装置の能力及びサポートされているフォーマットなどに関連して記述された1又はそれ以上のオブジェクト(グラフィックオブジェクト、フォント、フォント参照、及び色など)を含むことができる。印刷装置に送信される文書に含まれるフォント参照及び/又はフォントは、「ターゲット」フォントと呼ばれる。
【0010】
以下、本発明のいくつかの態様の基本的な理解をもたらすために、本発明の実施形態について簡単に説明する。この簡単な説明は、広範な概要として意図するものではない。主要な又は重要な要素を特定すること、或いは範囲を示したり又は別様に狭めることを意図するものでもない。後述する詳細な説明の前置きとしていくつかの概念を簡略化した形で示すことのみを目的とする。
【0011】
簡潔に言えば、本発明は、受け取った文書が、印刷用の代用フォントでエミュレートされた1又はそれ以上のターゲットフォントを含む場合の、文書の印刷をサポートする。本発明の実施形態は、視覚的に同じように見え、提供される文書の本来のページ付け及び強制改行を実質的に維持する別の代用フォントでターゲットフォントをエミュレーションできるようにし、この代用フォントを印刷装置によって印刷することができる。少なくとも1つの実施形態では、印刷装置が複数の所定のターゲットフォントの各々を代用フォントでエミュレートできるようにするための戦略/論理を一覧にした1又はそれ以上のテーブルなどの少なくとも1つの論理構成を提供することができる。これらのエミュレーション戦略は、以下に限定されるわけではないが、文書を印刷するために代用する、印刷装置の常駐フォント、伸縮自在フォント、ローカルフォント、又はダウンロード可能フォントのうちの少なくとも1つを識別することを含むことができる。
【0012】
また、少なくとも1つの実施形態では、3つの異なるサブテーブルを事前に処理し、ターゲットフォントをエミュレートするための戦略テーブルのエントリ内で識別される個々の代用フォントに提供する。まず、代用フォントの個々の文字のグリフインデックスに対応するユニコードマッピングテーブルを提供する。詳細なフォーマットは、実施構成に特化したものとすることができるが、一般には、隣接するグリフインデックス範囲に対応付けられるユニコードの隣接範囲をリストする。また、グリフインデックスによりインデックスされて代用フォントの各文字の幅を識別する幅テーブルを提供する。さらに、グリフインデックスによりインデックスされて代用フォントの各文字のグリフ名を与える符号化テーブルも提供する。グリフ名は、代用フォント自体のファイル又はデフォルトテーブルから得ることができる。
【0013】
また、少なくとも1つの実施形態では、各ターゲットフォントの視覚的側面を記述するエントリを含む追加のターゲットフォント仕様テーブルを提供することができる。このターゲットフォント仕様テーブルを使用して、伸縮自在フォントを選択するとともに、ターゲットフォントを正確にエミュレートするようにこれらのフォントを構成することができる。また、少なくとも1つの実施形態では、特定のターゲットフォントに使用する常駐フォントを示すプリンタフォント仕様テーブルを提供することもできる。
【0014】
さらに、データをもういくつかのテーブルにさらに分割するなどの同等の論理編成を使用して、もう1つ又はもう2、3のテーブルを利用できる様々な実施形態を実現することもできる。また、IF、THEN、ELSE文、及びCASE文などの1又はそれ以上の実質的に同等の論理構成によって様々な実施形態を実現することもできる。
【0015】
また、少なくとも1つの実施形態では、印刷装置が文書を印刷するのに適した1又はそれ以上の代用フォントをユーザに表示して選択させることができる。少なくともいくつかの実施形態では、選択された代用フォントがネットワークからダウンロードされ、又は別の非常駐ターゲットフォントをエミュレートするためのフォント戦略テーブルに既にリストされている。
【0016】
その後、本発明の実施形態は、ユーザが指定する編集に基づいて(単複の)文書の修正を生成し、この修正した文書の印刷プレビューをユーザに提供することができる。いくつかの実施形態では、印刷装置の一部であるディスプレイ(LCDディスプレイなど)上に表示されるUIを通じて、印刷プレビューをユーザに提供することができる。しかしながら、本発明はこのように限定されるものではなく、いくつかの実施形態では、クライアント装置上(ユーザのモバイル装置及びデスクトップコンピュータなど)に表示されたUIを通じて、印刷プレビューをユーザに提供することができる。ユーザが印刷プレビューUIを通じて(単複の)文書に対して指定した編集を1又はそれ以上の修正として(単複の)文書に組み入れ、その後、この修正した(単複の)文書をユーザに表示して、このユーザが、修正した文書を印刷すること、及び/又はさらなる編集を行うことを選択することができる。
【0017】
本明細書でさらに説明するように、本発明の実施形態では、ネットワーク接続プリンタ、多機能印刷装置、及び/又はその他の印刷装置が、1又はそれ以上のソース(ジョブキュー、セキュリティキュー、文書管理システム、内蔵ディスク、外部ディスク、デジタルカメラ、モバイル装置、ネットワーク装置、及び取り外し可能大容量記憶装置など)からターゲットフォント参照を含む文書を受け取り、印刷装置で印刷するのに適した代用フォントでこの文書を印刷することができる。
【0018】
本発明の実施形態では、ユーザが印刷装置に歩み寄れるようにすることなどの、ユーザにとって有利となり得る機能も可能にし、またフラッシュメモリドライブなどのポータブル記憶装置、及び/又は携帯電話、デジタルカメラ、ノートブックコンピュータ、タブレットコンピュータ及び携帯情報端末などのモバイル装置に記憶された1又はそれ以上の文書を印刷することもできる。印刷する文書を、ローカルディスクから、ウェブサイト又はその他のネットワーク装置/位置から、及び/又は(Microsoft SharePoint(登録商標)、Adobe LifeCycle(登録商標)などの)文書管理システムのようなリモートリポジトリなどから取り出すこともできる。本発明のいくつかの実施形態は、文書管理システムと、本明細書でさらに説明する印刷処理アプリケーションなどの、本発明の機能を実行するソフトウェアアプリケーションとの間の様々な程度の統合をサポートすることができる。
【0019】
例示的動作環境
図1に、1又はそれ以上の実施形態を実施及び/又は実践できる例示的なシステムを示す。本発明を実施するためにこれらの構成要素が全て必要なわけではなく、本発明の思想又は範囲から逸脱することなく、構成要素の配置及び種類を変更することができる。図示のように、図1のシステム100は、ネットワーク110、無線ネットワーク120、クライアント装置101、モバイルクライアント装置103、サーバ装置105、及びプリンタ107〜109を含む。
【0020】
クライアント装置101の実施形態については、以下で図4に示すネットワーク装置に関連してより詳細に説明する。しかしながら、手短に言えば、クライアント装置101は、パーソナルコンピュータ、ワークステーション、ネットワーク端末、マルチプロセッサシステム、マルチプロセッサベースの又はプログラム可能な家電製品、娯楽機器、及びゲーム機などの、通常は固定されたコンピュータ装置を含むことができる。いくつかの実施形態では、クライアント装置101が、有線ネットワークを介してネットワーク110に接続することができる。いくつかの実施形態では、これに加えて又はこれの代わりに、クライアント装置101が、無線ネットワーク120などの無線ネットワークを介してネットワーク110に接続することができる。
【0021】
サーバ装置105の実施形態については、図4に示すネットワーク装置に関連してより詳細に説明する。しかしながら、手短に言えば、サーバ装置105は、パーソナルコンピュータ、ワークステーション、ネットワーク端末、及びマルチプロセッサシステムなどの、通常は固定されたコンピュータ装置を含むことができる。いくつかの実施形態では、サーバ装置105が、有線ネットワークを介してネットワーク110に接続することができる。いくつかの実施形態では、これに加えて又はこれの代わりに、サーバ装置105が、無線ネットワーク120などの無線ネットワークを介してネットワーク110に接続することができる。いくつかの実施形態では、サーバ装置105を、プリンタ107〜109、クライアント装置101、及び/又はモバイルクライアント装置103のアプリケーション、ソフトウェアモジュールなど(ファームウェアなど)の更新を行うように構成することができる。
【0022】
モバイルクライアント装置103の実施形態については、以下で図3に関連してより詳細に説明する。しかしながら、手短に言えば、モバイルクライアント装置103は、ネットワークを介してメッセージを送受信できる事実上あらゆるコンピュータ装置を含むことができる。このような装置は、携帯電話、スマートフォン、ディスプレイページャ、無線周波数(RF)装置、赤外線(IR)装置、携帯情報端末(PDA)、ハンドヘルドコンピュータ、ラップトップコンピュータ、ウェアラブルコンピュータ、タブレットコンピュータ、これらの装置の1又はそれ以上を組み合わせた統合装置又はプリンタなどのポータブル装置を含むことができる。いくつかの実施形態では、モバイルクライアント装置103を、無線ネットワーク120などの無線ネットワークを介してネットワーク110に接続するように構成することができる。いくつかの実施形態では、これに加えて又はこれの代わりに、モバイルクライアント装置103が、有線ネットワークを介してネットワーク110に接続することができる。
【0023】
通常、クライアント装置101及び103は、能力及び機能の面で広範囲にわたる。例えば、携帯電話は、数字キーパッド、及び文字しか表示できない数行の白黒LCDディスプレイを有することができる。別の例では、ウェブ対応クライアント装置は、タッチセンサ式スクリーン、スタイラス、及び文字とグラフィクスをいずれも表示できる数行のカラーLCDディスプレイを有することができる。少なくともいくつかの実施形態では、クライアント装置101及び103を、印刷装置107〜109の少なくとも1つに、印刷用の文書などのデータを提供するように構成することができる。
【0024】
1つの実施形態では、クライアント装置101及び103が、様々な機構のいずれかを使用して印刷用の文書を提供することができる。例えば、クライアント装置101及び103は、HP PCL、Postscript、PDF、又はXPSなどのページ記述言語(PDL)又はプリンタコマンド言語(PCL)を介して通信することができる。しかしながら、クライアント装置101及び103は、これらの通信機構に限定されるものではなく、他の通信機構を使用することもできる。例えば、いくつかの実施形態では、クライアント装置101及び103が、グラフィカルデバイスインターフェイス(GDI)フォーマット又はOpenGLフォーマットなどのグラフィクスAPIを使用して通信することもできる。
【0025】
図示のように、クライアント装置101及び103は、ネットワーク110及び/又は無線ネットワーク120を介して印刷装置107〜109と通信することができる。しかしながら、本発明はこのように限定されるものではない。例えば、いくつかの実施形態では、図示のように、クライアント装置103などのクライアント装置が、図1に破線130で示すIR信号などの直接通信方法を介して印刷装置109などの印刷装置と直接通信することができる。いくつかの実施形態では、クライアント装置とプリンタの間の通信がホストサーバを介して行われるように、印刷装置107〜109の1又はそれ以上が、サーバ105などのサーバにホストされ、又はこれに別様に接続することができる。このような場合、ホスト側サーバは、1又はそれ以上の印刷装置のためのプリンタハブ又は印刷サーバとして機能することができる。
【0026】
いくつかの実施形態では、ネットワーク110を、クライアント装置101及び103を無線ネットワーク120を介して互いに結合するように構成することができる。さらに、ネットワーク110は、クライアント装置101及び103をサーバ105及び/又は印刷装置107〜109に結合することができる。ネットワーク110は、1つの電子装置からもう1つの電子装置に情報を通信するためのあらゆる形のコンピュータ可読媒体を使用することができる。ネットワーク110は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、ユニバーサルシリアルバス(USB)ポートなどを介した直接接続、他の形のコンピュータ可読媒体、又はこれらのいずれかの組み合わせに加えてインターネットを含むことができる。異なるアーキテクチャ及びプロトコルに基づくものを含む相互接続されたLANの組では、ルータ、スイッチ又はその他のネットワーク装置がLAN間のリンクの役目を果たして、一方から他方へメッセージを送信できるようにする。また通常、LAN内の通信リンクはツイストペア線又は同軸ケーブルを含むのに対し、ネットワーク間の通信リンクは、アナログ電話回線、T1、T2、T3、及びT4を含む完全な又は部分的な専用デジタル回線、統合サービスデジタル通信網(ISDN)、デジタル加入者回線(DSL)、限定するわけではないが衛星リンクを含む無線リンク、又は当業者に公知のその他の通信リンクを利用することができる。さらに、リモートコンピュータ及びその他の関連電子装置を、モデム及び一時的電話リンクを介してLAN又はWANのいずれかに遠隔的に接続することができる。
【0027】
無線ネットワーク120は、モバイル装置103などのモバイルクライアント装置及びその構成要素をネットワーク110に接続するように構成することができる。無線ネットワーク120は、モバイルクライアント装置103にインフラ指向の接続を提供するために、独立型アドホックネットワークにさらにオーバレイできる様々な無線サブネットワークのいずれかなどを含むことができる。このようなサブネットワークは、メッシュネットワーク、無線LAN(WLAN)ネットワーク、及びセルラーネットワークなどを含むことができる。無線ネットワーク120は、無線リンクなどによって接続された、端末、ゲートウェイ、及びルータなどの自律システムをさらに含むことができる。これらの接続装置を、自由かつランダムに動いてこれらの装置自体を任意に体系化するように構成することにより、無線ネットワーク120のトポロジーを即座に変更できるようにすることができる。
【0028】
無線ネットワーク120は、セルラーシステムのための第2(2G)、第3(3G)、第4(4G)、第5(5G)世代無線アクセスなどを含む1又はそれ以上のアクセス技術を利用することができる。2G、2.5G、3G、4G、5G、及び将来的なアクセスネットワークなどのアクセス技術は、クライアント装置101及び103などのクライアント装置、サーバ装置105、及び/又は印刷装置107〜109のための広域カバレッジを様々な可動度で実現することができる。例えば、無線ネットワーク120は、グローバルシステムフォーモバイルコミュニケーション(GSM(登録商標))、汎用パケット無線サービス(GPRS)、拡張データGSM環境(EDGE)、符号分割多元接続(CDMA)、広帯域符号分割多元接続(WCDMA)、時分割多元接続(TDMA)、進化型高速パケットアクセス(HSPA)、ロングタームエボリューション(LTE)、WLAN、WiFi、WiMax、無線ルータ(WR)メッシュ、又はBluetooth(登録商標)などの、無線ネットワークアクセスを介した無線接続を可能にすることができる。基本的に、無線ネットワーク120は、クライアント装置101及び103、サーバ装置105、及び/又は印刷装置107〜109と、他のコンピュータ装置及び/又はネットワークなどの間で情報が伝わるようにする事実上あらゆる無線通信機構を含むことができる。
【0029】
また通常、通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他の種類のコンテンツの、事実上制限のない送信を可能にすることができる。一例として、通信媒体は、ツイストペア、同軸ケーブル、光ファイバ、導波路、及びその他の有線媒体などの有線媒体、及び音響、RF、赤外線、及びその他の無線媒体などの無線媒体を含む。
【0030】
プリンタ107〜109の実施形態については、以下で図2に関連してより詳細に説明する。手短に言えば、印刷装置107〜109は、紙、プラスティック、布、金属及び合成材料などのハードコピーフォーマット上にデータを印刷するように構成された事実上あらゆる装置を表すことができる。1つの実施形態では、印刷装置107〜109が、ハードコピーフォーマット上に印刷データを転写するためのレーザビーム又は同様の技術を利用するように構成されたレーザ印刷装置を表す。なお、1つの実施形態としてレーザ印刷について説明するが、本発明はこのように限定されるものではなく、本発明の範囲から逸脱することなく他の印刷機構を利用することもできる。
【0031】
いくつかの実施形態では、印刷装置107〜109が、データを異なる解像度で印刷するように設定及び構成される。さらに、印刷装置107〜109は、白黒及び/又はカラーで出力を行うように構成することができる。印刷装置107〜109は、画像、グラフィクス及び/又はテキストを印刷するようにさらに構成することができる。1つの実施形態では、印刷装置107〜109が、レーザ印刷機構を利用するように構成される。
【0032】
例示的プリンタ装置
図2に、本発明を実施するシステムに含めることができるプリンタ200の1つの実施形態を示す。プリンタ200は、図2に示すものよりも多くの又は少ない構成要素を含むことができる。しかしながら、本発明を実施するための例示的な実施形態を開示するには図示の構成要素で十分である。プリンタ200は、例えば、図1のプリンタ107〜109の1つ又はそれ以上を表すことができる。いくつかの実施形態では、プリンタ200を、レーザ印刷技術を利用するように構成することができる。しかしながら、本発明はこのように限定されるものではなく、以下に限定されるわけではないが、LEDプリンタ(又は他のトナーによる印刷技術)、液体インクジェットプリンタ、固体インクプリンタ、昇華型プリンタ、感熱式プリンタ及びUVプリンタなどのインクレスプリンタ、ドットマトリクスプリンタ、ラインプリンタ、及びペンによるプロッタなどを含む他の印刷技術を本発明の範囲から逸脱することなく利用することもできる。
【0033】
図示のように、プリンタ200は、中央処理装置212、1又はそれ以上のネットワークインターフェイス210、プロセッサ可読記憶媒体240、入力/出力インターフェイス242、ディスプレイ244、赤外線(IR)インターフェイス246、トナーアセンブリ260、印刷アセンブリ262、キーボード及び/又はキーパッド264、ポインティングデバイス266、及び大容量メモリを含むことができ、これらは全てバス214を介して互いに通信する。一般に、大容量メモリは、RAM216及びROM250を含むことができ、プロセッサ可読記憶媒体240を含むこともできる。図2に示すように、プリンタ200は、(単複の)ネットワークインターフェイス210を介して、以下に限定されるわけではないが、TCP/IP、Wi−Fi、グローバルシステムフォーモバイルコミュニケーション(GSM)、WAP、超広帯域(UWB)、IEEE802.16ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMax)、汎用パケット無線サービス(GPRS)、拡張データGSM環境(EDGE)、符号分割多元接続(CDMA)、広帯域符号分割多元接続(WCDMA)、時分割多元接続(TDMA)、進化型高速パケットアクセス(HSPA)、ロングタームエボリューション(LTE)、WLAN、無線ルータ(WR)メッシュ、Bluetooth(登録商標)、又はZigbee(登録商標)などを含む様々な有線及び/又は無線通信プロトコルを利用して、インターネット又は他の何らかの通信ネットワークと通信することができる。ユニバーサルシリアルポート(USB)、パラレルポート、RS−232(Recommended Standard 232)又はANSI/TIA/EIA−422などのシリアルバス、或いは(ファイヤワイヤなどの)IEEE1394などを介して通信を行うこともできる。(単複の)ネットワークインターフェイスユニット210は、トランシーバ、送受信装置、又はネットワークインターフェイスカード(NIC)として知られていることもある。
【0034】
IRインターフェイス246は、プリンタ200と、図1に示すモバイルクライアント装置103などのクライアント装置との間の通信を可能にすることができる。IRインターフェイス246は、赤外線データ通信協会(IrDA)プロトコルなどのIR通信プロトコルなどを介した通信をサポートすることができる。いくつかの実施形態では、IRインターフェイス246が、プリンタ200と短距離にある、及び/又はプリンタ200と見通し線内にあるクライアント装置との通信をサポートすることができる。図1に示す接続130は、モバイルクライアント装置103と、プリンタ107〜109の1つ又はそれ以上との間のこのような直接通信の例を示すものである。
【0035】
キーボード/キーパッド264は、ユーザから入力を受け取るように構成されたいずれかの入力装置を含むことができる。例えば、キーボード/キーパッド264は、プッシュボタン数字ダイヤル、キーボード、又はタッチスクリーンなどを含むことができる。キーボード/キーパッド264は、アルファベット入力部、数字入力部、及び/又はその他の文字入力部を含むことができ、文書の選択、考察、編集、及び/又は印刷を行うための機能に関連する機能及び/又はコマンドボタンをさらに含むことができる。キーボード/キーパッド264を介して行ったユーザ入力は、ディスプレイ244内に表示することができる。
【0036】
ポインティングデバイス266は、ユーザが空間及び/又は位置データをプリンタ200に入力できるようにする事実上あらゆる装置を含むことができる。ポインティングデバイス266は、タッチパッド、タッチスクリーン、グラフィクスタブレット、ジョイスティック又はポインティングスティックなどの、ユーザが身体の一部(指又は手など)、又はワンド、スタイラス、ペン及びライトペンなどの物体で表面に触れることに基づく装置を含むことができる。ポインティングデバイス266は、マウス、トラックボール、及びジョイスティックなどの、ユーザが物体を動かすことに基づく装置をさらに含むことができる。ポインティングデバイス266を介して行ったユーザ入力は、ディスプレイ244内に表示することができる。
【0037】
ディスプレイ244は、テキスト、グラフィクス、画像、及び/又は他のいずれかの種類のデータをユーザに表示する事実上あらゆる種類のディスプレイ、モニタ、端末、及び画面などを含むことができる。ディスプレイの種類としては、以下に限定されるわけではないが、液晶ディスプレイ(LCD)、ガスプラズマ、発光ダイオード(LED)、又はブラウン管(CRT)などを挙げることができる。ユーザ入力を受け取って表示するために、ディスプレイ244をキーボード/キーパッド264及び/又はポインティングデバイス266にインターフェイス接続することもできる。さらに、ディスプレイ244は、ディスプレイ上の1又はそれ以上の位置に触れるユーザの指の場所に基づくシングルタッチ及びマルチタッチコマンドをサポートするタッチスクリーンインターフェイスを含むことができる。これに加えて又はこれとは別に、プリンタ200は、プリンタ外部の1又はそれ以上のディスプレイ装置と通信して、ユーザが考察及び修正するプリントジョブ及び/又は文書に関する情報を表示することができる。
【0038】
入力/出力インターフェイス242は、外部ディスプレイ、ユーザ入力装置、コンピュータ装置及びネットワーク装置などの外部装置と通信するための様々な手段を含むことができる。入力/出力インターフェイス242は、以下に限定されるわけではないが、USB、Bluetooth(登録商標)、ファイヤワイヤ、(RS−232規格などの)シリアルポート及び(IEEE1284規格などの)パラレルポートなどを含む1又はそれ以上の通信技術を利用することができる。
【0039】
上述した大容量メモリは、例示的な種類のコンピュータ可読媒体、すなわちコンピュータ可読又はプロセッサ可読記憶媒体を示すものである。プリンタ200に含まれるこのような大容量メモリは、RAM216及びROM250、及び/又はプロセッサ可読記憶媒体240を含むことができる。コンピュータ可読記憶媒体又はプロセッサ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他のデータなどの情報を記憶するためのあらゆる方法又は技術で実現される、揮発性、不揮発性、取り外し可能及び取り外し不能媒体を含むことができる。コンピュータ可読記憶媒体の例として、RAM、ROM、EEPROM、フラッシュメモリ又はその他のメモリ技術、CD−ROM、デジタル多機能ディスク(DVD)又はその他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶装置、或いは所望の情報を記憶するために使用できるとともにコンピュータ装置によってアクセスできる他のいずれかの媒体が挙げられる。
【0040】
RAM216などの大容量メモリは、印刷装置200の動作を制御するためのオペレーティングシステム200を記憶することができる。プリンタ200の機能をサポートする(Windows(登録商標)、UNIX(登録商標)及びLINUX(登録商標)などの)あらゆる汎用オペレーティングシステムを利用することができる。いくつかの実施形態では、オペレーティングシステム220を、特別に構成されたバージョンの汎用オペレーティングシステム、或いはプリンタ200の機能をサポートするように設計及び作成された専用オペレーティングシステムとすることができる。オペレーティングシステム200は、仮想機械モジュールの下で実行されるアプリケーションを介してハードウェア構成要素及び/又はオペレーティングシステム機能を制御できる、Java(登録商標)仮想機械又はMicrosoft.NETランタイムなどの仮想機械モジュールを含み、又はこれにインターフェイス接続することができる。プリンタ200の起動及び診断などの低水準動作を制御するための基本入力/出力システム(「BIOS」)252を提供することもできる。図2に示すように、BIOSをROM250などの大容量メモリに記憶し、及び/又はここから実行することができる。
【0041】
大容量メモリは、プログラムコード、命令、及び/又はデータを記憶することもできる。例えば、データ記憶装置226を、プリンタコマンド、診断、ユーザの好み、プリンタ制御ソフトウェア、サポートされるカラーパレット、フォント、ページ付け及びページサイズなどのプリンタの能力に関する情報を記憶するように構成することができる。データ記憶装置226は、印刷する文書、中間文書、ユーザの編集及び/又は修正に関する情報、印刷する文書のラスタ画像など、並びに文書の選択、考察、編集、修正、表示及び/又は印刷に必要な他のいずれかの情報をさらに記憶することができる。
【0042】
いくつかの実施形態では、大容量メモリが、本発明の実施形態を動作させるための、1又はそれ以上のアプリケーション、プログラム、及びソフトウェアモジュールなどを記憶することができる。このようなアプリケーションは、印刷処理アプリケーション222、印刷プレビューユーザインターフェイス224、フォント戦略テーブル230を含むことができる。本明細書では、これらのアプリケーションの一般的な動作を図5〜図9Cに関連してさらに説明する。いくつかの実施形態では、印刷処理アプリケーション222及び印刷プレビューUI224の一方又は両方が、データ記憶装置226及び/又はプロセッサ可読記憶媒体240にデータを記憶し、キャッシュし、及び/又はこれらのデータにアクセスして、ディスプレイ244に情報を表示することができる。RAM216などの大容量メモリは、データ記憶装置226及び/又はプロセッサ可読記憶媒体240にデータを記憶し、キャッシュし、及び/又はこれらのデータにアクセスするように構成できるとともにディスプレイ244に情報を表示することができる他のアプリケーション280を含むこともできる。アプリケーション222、224及び228を大容量メモリにロードして、オペレーティングシステム220上で実行することができる。このようなアプリケーションをRAM216に含まれる形で示しているが、本発明はこのように限定されるものではない。例えば、本発明の範囲から逸脱することなく、アプリケーション222、224及び/又は228の1又はそれ以上をROM250及び/又はプロセッサ可読記憶媒体240にロードし、及び/又はここで実行することもできる。
【0043】
本明細書で述べるように、プリンタ200は、本発明の範囲から逸脱することなく様々な種類の印刷技術を含むことができる。いくつかの実施形態では、プリンタ200を、レーザ印刷技術を利用するように構成することができる。以下は、本発明の実施形態を実現するために利用できるレーザ印刷技術の例示的で非限定的な説明である。このような実施形態では、印刷アセンブリ262が、レーザ印刷に必要な、ドラムアセンブリ、コロナワイヤ、定着器、放電ランプ、レーザ走査ユニット、及び/又は受光器などの要素を含むことができる。いくつかの実施形態では、ドラムアセンブリを回転するように構成し、様々な感光材料のいずれかで作成することができる。ドラムアセンブリには、コロナワイヤによって(又はいくつかの実施形態では、荷電ローラによって)電荷を与えることができる。ドラムアセンブリが回転すると、レーザ走査ユニットが、印刷するデータに基づいてドラムアセンブリの表面全体にレーザビームを導くことができる。トナーアセンブリ260は、粉末などの形のトナーをドラムアセンブリ上に供給することができる。コロナワイヤは、紙又はその他の印刷材料に電荷を与えて、これをドラムアセンブリにわたって移動させることができる。その後、紙又はその他の印刷材料が定着器を通過して、付着したトナーが加熱され、或いは紙又はその他の印刷材料に別様に付着するようになる。トナーが紙又はその他の印刷材料に付着すると、ドラムアセンブリのドラムの表面が放電ランプを通過し、ここで光などによってドラムを露光して電気映像を消去又は除去することができる。1つの実施形態では、次にこのドラムアセンブリのドラム表面がコロナワイヤを通過し、ここで再度電荷を与えることができる。なお、本発明の実施形態は、印刷材料上にデータを転写するこの方法に限定されるものではなく、他の機構を使用することもできる。従って、本発明をこの実施形態によって限定又は別様に制限すべきではない。
【0044】
例示的モバイル装置
図3に、本発明の1つの実施形態による例示的なモバイル装置300を示す。一般に、モバイル装置300は、図示のものよりも多くの又は少ない構成要素を含むことができる。しかしながら、本発明を実施するための例示的な実施形態を開示するには図示の構成要素で十分である。モバイル装置300は、例えば図1のモバイルクライアント装置103を表すことができる。
【0045】
モバイル装置300は、中央処理装置322、電源326、プロセッサ可読記憶媒体327、GPSインターフェイス364、1又はそれ以上のネットワークインターフェイス350、音声インターフェイス352、ディスプレイ354、キーパッド356、照明器358、入力/出力インターフェイス360、触覚インターフェイス362、及び大容量メモリを含み、これらは全てバス324を介して互いに通信する。一般に、大容量メモリは、RAM332、ROM334、及びプロセッサ可読記憶媒体327などの1又はそれ以上の取り外し可能又は永久大容量記憶装置を含む。大容量メモリには、クライアント装置300の動作を制御するためのオペレーティングシステム341を記憶することができる。このオペレーティングシステム341をRAM332に記憶することもできる。あるバージョンのUNIX又はLINUXなどの汎用オペレーティングシステムを利用することができる。いくつかの実施形態では、オペレーティングシステム341を、Windows Mobile、Sybian、Google Android又はApple iPhoneオペレーティングシステムなどの専用クライアント通信オペレーティングシステムとすることができる。オペレーティングシステムは、仮想機械の下で実行されるアプリケーションを介してハードウェア構成要素及び/又はオペレーティングシステム機能を制御できる、Java仮想機械又はMicrosoft.NETランタイムなどの仮想機械モジュールを含み、又はこれにインターフェイス接続することができる。モバイル装置300の低水準動作を制御するための基本入力/出力システム(BIOS)340を提供して、これを大容量メモリに、及びいくつかの実施形態ではROM334に記憶することができる。
【0046】
モバイル装置300は、1又はそれ以上のネットワークインターフェイス350を介して基地局(図示せず)と、又は直接別のコンピュータ装置と通信することができる。ネットワークインターフェイス350は、モバイル装置300を1又はそれ以上のネットワークに結合するための回路を含むことができ、また以下に限定されるわけではないが、グローバルシステムフォーモバイルコミュニケーション(GSM)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、ユーザデータグラムプロトコル(UDP)、送信制御プロトコル/インターネットプロトコル(TCP/IP)、SMS、汎用パケット無線サービス(GPRS)、WAP、超広帯域(UWB)、IEEE802.16ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMax)、拡張データGSM環境(EDGE)、符号分割多元接続(CDMA)、広帯域符号分割多元接続(WCDMA)、時分割多元接続(TDMA)、進化型高速パケットアクセス(HSPA)、ロングタームエボリューション(LTE)、WLAN、WiFi、無線ルータ(WR)メッシュ、SIPIRTP、Bluetooth(登録商標)、赤外線、Wi−Fi、及びZigbeeを含む1又はそれ以上の有線及び/又は無線通信プロトコル及び技術とともに使用されるように構成することができる。(単複の)ネットワークインターフェイスユニット350は、トランシーバ、送受信装置、又はネットワークインターフェイスカード(NIC)として知られていることもある。クライアント装置300は、ファイヤワイヤ、シリアルポート、パラレルポート又はUSBなどを利用できる入力/出力インターフェイス360を介して印刷装置又はその他の装置と通信することもできる。
【0047】
上述した大容量メモリは、一種のコンピュータ可読記憶媒体、すなわち図3に示すプロセッサ可読記憶媒体327などのコンピュータ可読又はプロセッサ可読記憶媒体を示す。コンピュータ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他のデータなどの情報を記憶するためのあらゆる方法又は技術で実現される、揮発性、不揮発性、取り外し可能及び取り外し不能媒体を含むことができる。コンピュータ可読記憶媒体の例として、RAM、ROM、EEPROM、フラッシュメモリ又はその他のメモリ技術、CD−ROM、デジタル多機能ディスク(DVD)又はその他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶装置、或いは所望の情報を記憶するために使用できるとともにコンピュータ装置によってアクセスできる他のいずれかの媒体が挙げられる。
【0048】
RAM332、ROM334などの大容量メモリ、及び/又はプロセッサ可読記憶媒体327は、プログラムコード及びデータを記憶することもできる。例えば、RAM332は、ブラウザ343などのブラウザアプリケーションを含むことができる。アプリケーションプログラムの他の例には、トランスコーダ、スケジューラ、カレンダー、データベースプログラム、文書処理プログラム、HTTPプログラム、カスタマイズ可能なユーザインターフェイスプログラム、IPSecアプリケーション、暗号化プログラム、セキュリティプログラム、VPNプログラム、SMSメッセージクライアント、IMメッセージクライアント、電子メールクライアント、アカウント管理などがある。RAM332などの大容量メモリ内のアプリケーションは、印刷プレビューユーザインターフェイス(UI)344、フォント戦略テーブル348、及び/又は印刷処理アプリケーション345を含むこともでき、本明細書では、これらの動作を図5〜図9Cに関連してより詳細に説明する。RAM332は、その他のアプリケーション346を記憶することもできる。一般に、本明細書で説明するアプリケーションは、いずれも大容量メモリにロードしてオペレーティングシステム341上で実行することができ、データを記憶し、キャッシュし、データにアクセスするためのデータ記憶装置342及び/又はプロセッサ可読記憶媒体327を利用することができ、情報を表示するためのディスプレイ354を利用することができ、音声情報を伝えるための音声インターフェイス352を利用することができ、(触知性などの)触覚情報をモバイル装置300のユーザに伝えるための触覚インターフェイス362を利用することができる。
【0049】
電源326は、モバイル装置300に電力を供給することができる。再充電可能又は再充電不能バッテリを使用して電力を供給することができる。バッテリを補充及び/又は再充電するACアダプタ又は給電用格納台などの外部電源によって電力を供給することもできる。
【0050】
音声インターフェイス352は、人間の声音及び音楽などの音声信号を生成し、これらを受け取るように構成することができる。例えば、音声インターフェイス352をスピーカ及びマイク(図示せず)に結合して、他者との通信を可能にし、及び/又は何らかの動作のための音声肯定応答を生成することができる。ディスプレイ354は、液晶ディスプレイ(LCD)、ガスプラズマ、発光ダイオード(LED)、又はコンピュータ装置とともに使用する他のいずれの種類のディスプレイであってもよい。ディスプレイ354は、スタイラスなどの物体又は人間の指からの入力を受け取るように構成されたタッチセンサ式スクリーンを含むこともできる。
【0051】
キーパッド356は、ユーザからの入力を受け取るように構成されたあらゆる入力装置を含むことができる。例えば、キーパッド356は、プッシュボタン数字ダイヤル又はキーボードを含むことができる。キーパッド356は、大容量メモリに記憶されてオペレーティングシステム341上で実行される1又はそれ以上のアプリケーションの様々な機能に関連するコマンドボタンを含むこともできる。照明器358は、状態指示を行うこと、及び/又は光を与えることができる。照明器358は、特定の期間にわたって、又はイベントに対応して動作し続けることができる。例えば、照明器358は、動作中にキーパッド356上のボタンをバックライト照明し、クライアント装置が給電を受けている間オン状態にしておくことができる。また、照明器358は、別のクライアント装置に電話するなどの特定の動作が行われている場合、様々なパターンでこれらのボタンをバックライト照明することもできる。照明器358は、クライアント装置の透明又は半透明のケース内に位置する光源を、動作に応じて点灯させることもできる。
【0052】
モバイル装置300は、ヘッドホンなどの外部装置、図3に示していない他の入力又は出力装置、又は他のコンピュータ装置と通信するための入力/出力インターフェイス360を含むこともできる。入力/出力インターフェイス360は、USB、赤外線、Bluetooth(登録商標)、Wi−Fi、又はZigbeeなどの1又はそれ以上の通信技術を利用することができる。触覚インターフェイス362は、クライアント装置のユーザに触知性フィードバックを提供することができる。例えば、触覚インターフェイスを使用して、別のコンピュータ装置のユーザが電話を掛けてきたときにモバイル装置300を特定の方法で振動させることができる。
【0053】
GPSトランシーバ364は、位置を緯度及び経度値として出力することにより、地表上のモバイル装置300の物理座標を特定するように構成することができる。GPSトランシーバ364は、以下に限定されるわけではないが、三角測量、アシスト型GPS(AGPS)、E−OTD、CI、SA1、ETA又はBSSなどを含む他のジオポジショニング機構を利用して、地表上のモバイル装置300の物理的位置を特定することもできる。GPSトランシーバ364は、異なる条件下において、モバイル装置300の物理的位置をミリメートルの範囲内で特定できる場合もあれば、特定される物理的場所が、メートル又はかなり大きな距離範囲内のようにそれほど正確でない場合もある。本明細書で説明したように、このGPSトランシーバ364により出力された位置情報を大容量メモリ(データ記憶装置342及び/又はプロセッサ可読記憶媒体327など)に記憶し、この情報を、大容量メモリに記憶されてオペレーティングシステム341内で実行される様々なアプリケーションが利用することができる。
【0054】
図3には示していないが、モバイル装置300は、ビデオ及び/又は静止画像を取り込むように構成されたビデオ/画像取り込みインターフェイスをさらに含むことができる。例えば、ビデオ/画像取り込みインターフェイスはカメラを内蔵し、レンズ、画像センサ、及びその他の電子機器を含むことができる。画像センサは、補完的金属酸化膜半導体(CMOS)集積回路、電荷結合素子(CCD)、又は光を感知するための他のいずれかの集積回路を含むことができる。このようなインターフェイスによって取り込んだ画像及び/又はビデオを、RAM332、ROM334などの大容量メモリ、及び/又はプロセッサ可読記憶媒体327に記憶し、またネットワークインターフェイス350を介して他のコンピュータ装置(プリンタ107〜109など)に通信することもできる。
【0055】
例示的ネットワーク装置
図4に、本発明の少なくとも1つの実施形態による例示的なネットワーク装置400を示す。一般に、ネットワーク装置400は、図示のものよりも多くの又は少ない構成要素を含むことができる。しかしながら、本発明を実施するための例示的な実施形態を開示するには図示の構成要素で十分である。ネットワーク装置400は、例えば、図1のクライアント装置101及び/又はサーバ装置105を表すことができる。
【0056】
ネットワーク装置400は、中央処理装置412、1又はそれ以上のネットワークインターフェイス410、入力/出力インターフェイス442、ハードディスクドライブ444、ビデオディスプレイアダプタ446、及び大容量メモリを含むことができ、これらは全てバス414を介して互いに通信する。一般に、大容量メモリは、RAM416、ROM450、ハードディスクドライブ444、及びプロセッサ可読記憶媒体440などの、1又はそれ以上の取り外し可能又は永久大容量記憶装置を含む。大容量メモリは、テープドライブ、フロッピー(登録商標)ディスクドライブ及び光学ドライブなどの記憶装置をさらに含むことができる。大容量メモリには、ネットワーク装置400の動作を制御するためのオペレーティングシステム420を記憶することができる。いくつかの実施形態では、オペレーティングシステム420をRAM416に記憶することができる。あるバージョンのUNIX又はLINUXなどの汎用オペレーティングシステムを利用することができる。いくつかの実施形態では、オペレーティングシステム420を、Windows Mobile(登録商標)、Sybian、Google Android(登録商標)又はApple iPhone(登録商標)オペレーティングシステムなどの専用クライアント通信オペレーティングシステムとすることができる。オペレーティングシステムは、仮想機械の下で実行されるアプリケーションを介してハードウェア構成要素及び/又はオペレーティングシステム機能を制御できる、Java仮想機械又はMicrosoft.NETランタイムなどの仮想機械モジュールを含み、又はこれにインターフェイス接続することができる。ネットワーク装置400の低水準動作を制御するための基本入力/出力システム(BIOS)450を提供して、これを大容量メモリに、及びいくつかの実施形態ではROM450に記憶することもできる。
【0057】
ネットワーク装置400は、1又はそれ以上のネットワークインターフェイス410を介してインターネットなどのネットワークと、又は直接別のコンピュータ装置と通信することができる。ネットワークインターフェイス410は、ネットワーク装置400を1又はそれ以上のネットワークに結合するための回路を含むことができ、また以下に限定されるわけではないが、グローバルシステムフォーモバイルコミュニケーション(GSM)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、ユーザデータグラムプロトコル(UDP)、送信制御プロトコル/インターネットプロトコル(TCP/IP)、SMS、汎用パケット無線サービス(GPRS)、拡張データGSM環境(EDGE)、符号分割多元接続(CDMA)、広帯域符号分割多元接続(WCDMA)、時分割多元接続(TDMA)、進化型高速パケットアクセス(HSPA)、ロングタームエボリューション(LTE)、WLAN、無線ルータ(WR)メッシュ、WAP、超広帯域(UWB)、IEEE802.16ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMax)、SIPIRTP、Bluetooth(登録商標)、赤外線、Wi−Fi及びZigbeeなどを含む1又はそれ以上の通信プロトコル及び技術とともに使用されるように構成することができる。(単複の)ネットワークインターフェイス410は、トランシーバ、送受信装置、又はネットワークインターフェイスカード(NIC)として知られていることもある。ネットワーク装置400は、ファイヤワイヤ、シリアルポート、パラレルポート又はUSBなどを利用できる入力/出力インターフェイス442を介して印刷装置又はその他の装置と通信することもできる。
【0058】
上述した大容量メモリは、一種のコンピュータ可読記憶媒体、すなわち図4に示すプロセッサ可読記憶媒体440などのコンピュータ可読又はプロセッサ可読記憶媒体を示す。コンピュータ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他のデータなどの情報を記憶するためのあらゆる方法又は技術で実現される、揮発性、不揮発性、取り外し可能及び取り外し不能媒体を含むことができる。コンピュータ記憶媒体の例として、RAM、ROM、EEPROM、フラッシュメモリ又はその他のメモリ技術、CD−ROM、デジタル多機能ディスク(DVD)又はその他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶装置、或いは所望の情報を記憶するために使用できるとともにコンピュータ装置によってアクセスできる他のいずれかの媒体が挙げられる。
【0059】
RAM416、ROM450などの大容量メモリ、ハードディスクドライブ444、及び/又はプロセッサ可読記憶媒体440は、プログラムコード及びデータを記憶することもできる。例えば、RAM416は、ブラウザ422などのブラウザアプリケーションを含むことができる。アプリケーションプログラムの他の例には、トランスコーダ、スケジューラ、カレンダー、データベースプログラム、文書処理プログラム、HTTPプログラム、カスタマイズ可能なユーザインターフェイスプログラム、IPSecアプリケーション、暗号化プログラム、セキュリティプログラム、VPNプログラム、SMSメッセージクライアント、IMメッセージクライアント、電子メールクライアント、アカウント管理などがある。RAM416などの大容量メモリ内のアプリケーションは、印刷プレビューユーザインターフェイス(UI)428、印刷処理アプリケーション426、フォント戦略テーブル432を含むこともでき、本明細書では、これらの動作を図5〜図9Cに関連してより詳細に説明する。いくつかの実施形態では、ネットワーク装置400が図1のクライアント装置101などのクライアント装置として機能している場合、印刷プレビューUI428、フォント戦略テーブル432、及び/又は印刷処理アプリケーション426をこのような装置に含めることができる。RAM416は、その他のアプリケーション430を記憶することもできる。一般に、本明細書で説明するアプリケーションは、いずれも大容量メモリにロードしてオペレーティングシステム420上で実行することができ、アプリケーションに関連するデータを記憶し、キャッシュし、及び/又はデータにアクセスするためのデータ記憶装置424、プロセッサ可読記憶媒体440、及び/又はハードディスクドライブ444を利用することができる。
【0060】
ネットワーク装置400の大容量メモリ内で実行される少なくともいくつかのアプリケーションは、ビデオディスプレイアダプタ446を利用して、ユーザに表示するための情報を出力することができる。いくつかの実施形態では、ビデオディスプレイアダプタ446を、ビデオカード、グラフィクスカード、ビデオアダプタ、ディスプレイアダプタ、又はグラフィクスアクセラレータカードなどとすることができる。ビデオディスプレイアダプタ446は、VGA、SVGA及びXGAなどの1又はそれ以上の出力用ビデオ及び/又はグラフィクスフォーマットをサポートすることができる。ビデオディスプレイアダプタ446は、グラフィクス処理ユニット(GPU)、ビデオ及び/又はグラフィクスBIOS、並びにビデオ及び/又はグラフィクスファームウェアなどの、ビデオ及び/又はグラフィクスを処理するためのソフトウェア及び/又はハードウェア構成要素を含むことができる。ビデオディスプレイアダプタ446は、ビデオ及び/又はグラフィクスを処理するための専用メモリをさらに含むことができる。ビデオディスプレイアダプタ446は、ビデオグラフィクスアレイ(VGA)ポート、デジタルビジュアルインターフェイス(DVI)ポート、ビデオインビデオアウト(VIVO)ポート、高解像度マルチメディアインターフェイス(HDMI)ポート、ディスプレイポート、及び合成ビデオポートなどの、1又はそれ以上の出力ポートを含むことができる。ビデオディスプレイアダプタ446は、(モニタなどの)1又はそれ以上の外部ディスプレイ、又はネットワーク装置400に統合されたディスプレイにインターフェイス接続してユーザに情報を表示することができる。
【0061】
一般的動作
以下で説明する例示的なフロー図の各ブロック、及びフロー図内のブロックの組み合わせは、コンピュータプログラム命令によって実施できると理解されたい。これらのプログラム命令をプロセッサに提供して機械を生産することにより、プロセッサ上で実行される命令が、フロー図の1又は複数のブロック内に示される動作を実施する手段を生み出すようにすることができる。コンピュータプログラム命令をプロセッサにより実行して、プロセッサにより実行される一連の動作ステップがコンピュータ実行プロセスを生み出すようにすることにより、プロセッサ上で実行される命令が、フロー図の1又は複数のブロック内に示される動作を実行するステップを提供するようにすることができる。コンピュータプログラム命令は、フロー図のブロック内に示す動作ステップの少なくともいくつかを同時に実行させることもできる。さらに、ステップのいくつかを、マルチプロセッサコンピュータシステムで行われるような形で複数のプロセッサにわたって実行することもできる。さらに、フロー図の1又はそれ以上のブロック又はブロックの組み合わせを、他のブロック又はブロックの組み合わせと同時に、或いは本発明の範囲又は思想から逸脱することなく図示の順序とは異なる順序で実行することもできる。
【0062】
従って、フロー図のブロックは、指定の動作を行うための手段の組み合わせ、指定の動作を行うためのステップの組み合わせ、及び指定の動作を行うためのプログラム命令手段をサポートする。また、指定の動作又はステップを実行する専用ハードウェアベースシステム、又は専用ハードウェアとコンピュータ命令の組み合わせによって、フロー図の個々のブロック、及びフロー図のブロックの組み合わせを実行することもできる。
【0063】
図5に、本発明の実施形態により実行できる例示的なプロセスの概要500を示す。いくつかの実施形態では、図2の印刷装置200、図3のモバイル装置300、及び/又は図4のネットワーク装置400上で実行される1又はそれ以上のアプリケーションによってプロセス500(及び/又は図6〜図9Cに示すプロセスの1又はそれ以上)を実施することができる。
【0064】
このプロセスは、開始ブロックからブロック502へ進み、特定の印刷装置のために、フォント戦略テーブル内にリストされた各ターゲットフォント参照のエミュレーション情報の事前処理を行う。ターゲットフォント名を使用して、個々のリストされたターゲットフォント名の、TrueTypeフォントファイルなどの対応するフォントファイルを生成し、各リストされたフォントの、ユニコードマッピングテーブル、グリフ符号化テーブル、及び文字幅テーブルなどの少なくとも3つのサブセットテーブルを生成する。フォント戦略テーブルへの最初のターゲットフォント名の投入は、自動及び/又は手動で行うことができる。また、フォント戦略テーブル内の各ターゲットフォント名に、印刷のために受け取ったターゲットフォントの後続処理に関する戦略又は論理を与える。また、新たなターゲットフォント名、論理、及び対応するフォントファイルが、事前処理中に最初にフォント戦略テーブルに含まれていない場合、時間とともにこれらを追加することもできる。また、サブセットテーブルに関するさらなる詳細は、少なくとも以下の図6〜図9Cに関する説明で見出すこともできる。
【0065】
次に、プロセスはブロック504へ進み、ここで印刷装置が、ターゲットフォント参照を含む印刷用の文書を受け取る。ブロック506において、受け取った文書に含まれる新たな又は既知の(単複の)ターゲットフォント参照、及び対応するフォント戦略テーブル内のエントリに少なくとも部分的に基づいて、ターゲットフォント参照のための代用フォントエミュレーション情報にアクセスする。プロセスはブロック508へ進み、アクセスした代用フォントのエミュレーション情報を利用して、印刷装置で文書を印刷する。プロセスはブロック510へ進み、その後に識別するための新たなターゲットフォント参照に関するアクセス情報、論理及び代用フォントエミュレーション情報を、フォント戦略テーブルに既知のフォント参照として記憶する。その後、プロセスは他の動作の処理に戻る。
【0066】
図6に、本発明の実施形態により実行できる例示的な事前処理プロセス600を示す。いくつかの実施形態では、図2の印刷装置200、図3のモバイル装置300、及び/又は図4のネットワーク装置400上で実行される1又はそれ以上のアプリケーションによってプロセス500(及び/又は図5、図7〜図9Cに示すプロセスの1又はそれ以上)を実施することができる。
【0067】
このプロセスは、開始ブロックからブロック602へ進み、特定の印刷装置による印刷のためにエミュレートされる各ターゲットフォント参照のフォント戦略テーブルを生成する。フォント戦略テーブル内の各エントリにターゲットフォント名を与える。また、フォント戦略テーブル内の各エントリの後続する印刷処理のための戦略又は論理も与える。フォント戦略テーブルへの最初のターゲットフォント名及び論理の投入は、自動及び/又は手動で行うことができる。ブロック604において、フォント戦略テーブル内にリストされた各ターゲットフォント名に、TrueTypeフォントファイルなどのフォントファイルを与える。ブロック606へ進み、各ターゲットフォント名の文字に対して、通常は少なくとも2つのサブセットテーブルを生成する。
【0068】
ブロック608へ進み、受け取った文書内のエミュレートされたターゲットフォント参照の印刷でその後に使用するために、フォント戦略テーブル内のターゲットフォント名エントリ、及び対応する論理、フォントファイル及びサブテーブルを記憶する。次に、プロセスは他の動作の処理に戻る。また、新たなターゲットフォント名、論理、及び対応するフォントファイルが、事前処理中に最初にフォント戦略テーブルに含まれていない場合、時間とともにこれらをフォント戦略テーブルに追加し、又は更新することもできる。また、フォント戦略テーブル内のターゲットフォントのためのエントリは、視覚的に同じように見え、提供された文書の本来のページ付け及び強制改行を実質的に維持する別の代用フォントでターゲットフォント参照をエミュレーションできるように選択され、この代用フォントを印刷装置によって印刷することができる。
【0069】
或いは、少なくとも1つの実施形態では、事前処理プロセス中にフォント戦略テーブルを提供せず、又はエントリを含まないフォント戦略テーブルを提供することもできる。このようにして、空のフォント戦略テーブルにエントリをランタイムで提供し、又はフォント戦略テーブル及びそのエントリをランタイム中に最初に作成して、事前処理プロセス中に作成しないようにする。
【0070】
図7に、本発明の実施形態により実行できる例示的なランタイム処理プロセス700を示す。いくつかの実施形態では、図2の印刷装置200、図3のモバイル装置300、及び/又は図4のネットワーク装置400上で実行される1又はそれ以上のアプリケーションによってプロセス700(及び/又は図5、図6、図8、及び図9A〜図9Cに示すプロセスの1又はそれ以上)を実行することができる。
【0071】
このプロセスは、開始ブロックからブロック702へ進み、ターゲットフォント参照を含む文書を受け取る。判定ブロック704において、受け取った文書内の(単複の)ターゲットフォント参照がフォント戦略テーブル内に存在するかどうかを判定する。これが真である場合、プロセスはブロック708へ進み、フォント戦略テーブルにアクセスしてターゲットフォントエミュレーション情報を識別する。
【0072】
プロセスは、ブロック710へ進み、フォント戦略テーブル内のターゲットフォント参照のためのエントリに対応する論理が、印刷装置上にエミュレーション情報が存在することを示すかどうかを判定する。示す場合、存在する代用フォントのためのターゲットフォントエミュレーション情報を、印刷装置で印刷する各文字の幅とともに指定する。プロセスがこれらの動作を以前に実行したと判断した場合、これらの動作の少なくとも一部を省略して、印刷のためにエミュレーション情報を印刷装置へ送信することができる。
【0073】
プロセスはブロック712へ進み、フォント戦略テーブル内のターゲットフォント参照のためのエントリに対応する論理が、代用フォントに関するエミュレーション情報が伸縮自在フォントであることを示すかどうかを判定する。示す場合、プロセスは、この伸縮自在フォント情報をダウンロードして、印刷装置で印刷する各文字の幅を指定する。伸縮自在フォント情報の特性は、セリフ及び高さなどを含むことができる。また、伸縮代用フォント情報は、ストローク幅及びセリフ高などの、各文字の少なくとも1つの調整可能パラメータを含むことができる。また、少なくとも1つの実施形態では、決定される伸縮自在フォントをマルチマスタフォントなどとすることができる。プロセスがこれらの動作を以前に実行したと判断した場合、これらの動作の少なくとも一部を省略して、印刷のためにエミュレーション情報を印刷装置へ送信することができる。
【0074】
ブロック714へ進み、フォント戦略テーブル内のターゲットフォント参照のためのエントリに対応する論理が、代用フォントのエミュレーション情報がダウンロード可能であることを示すかどうかを判定する。これが真である場合、プロセスは、印刷装置に提供する各文字のフォント情報及び幅をダウンロードする。次に、プロセスは他の動作の実行に戻る。しかしながら、ブロック714において、プロセスがこれらの動作を以前に実行したと判断した場合、これらの動作の少なくとも一部を省略して、印刷のためにエミュレーション情報を印刷装置へ送信することができる。
【0075】
或いは、決定ブロック704での判定が偽である場合、プロセスはブロック716へ進む。ブロック716において、プロセスは、ターゲットフォントデータをランタイム環境で利用できるかどうかを判定する。利用できる場合、プロセスは、このデータをロードして、ターゲットフォントデータ情報を印刷装置にダウンロードする。また、プロセスがこれらの動作を以前に実行したと判断した場合、これらの動作の少なくとも一部を省略して、印刷のためにエミュレーション情報を印刷装置へ送信することもできる。
【0076】
しかしながら、ブロック716における判定が偽である場合、プロセスは、利用可能なデフォルトターゲットフォント参照を選択する。プロセスはブロック708へ戻り、上述したものと実質的に同じプロセスを実行する。一方、ブロック716での判定が真である場合、プロセスは他の動作の実行に戻る。
【0077】
また、少なくとも1つの実施形態のランタイムプロセス中に、フォント戦略テーブルを、ターゲットフォント名、論理、代用フォント及び文字データを示す新たなエントリで更新することができる。
【0078】
図8に、本発明の実施形態により実行できる例示的な任意のプロセス800を示す。いくつかの実施形態では、図2の印刷装置200、図3のモバイル装置300、及び/又は図4のネットワーク装置400上で実行される1又はそれ以上のアプリケーションによってプロセス800(及び/又は図5〜図7、及び図9A〜図9Cに示すプロセスの1又はそれ以上)を実行することができる。
【0079】
このプロセスは、開始ブロックから判定ブロック802へ進み、受け取った文書に含まれる、印刷装置が認識していないターゲットフォントのためのエントリがフォント戦略テーブル内に存在しないかどうかを判定する。ブロック804において、少なくとも1つの実施形態では、ユーザが選択するための複数の代用フォントを表示する。また、少なくとも1つの実施形態では、ユーザが代用フォントを有料で購入することができる。選択した代用フォントを購入するための金銭取引はネットワークを介して行い、ユーザに関連する口座又はクレジットカードに請求することができる。また、少なくとも1つの実施形態では、複数の代用フォントからのユーザの選択を無料で提供することもできる。
【0080】
ブロック806へ進み、ユーザが選択するための別のフォント戦略テーブルを表示する。少なくとも1つの実施形態では、ユーザが、特定の印刷装置とともに使用するように識別された複数のフォント戦略テーブルから1つのフォント戦略テーブルを選択することができる。ブロック808において、選択した代用フォントの拡大縮小規則の表示をユーザに対して行う。少なくとも1つの実施形態では、少なくとも1つの拡大縮小規則をユーザが選択することにより、印刷装置で使用するために文字幅及びフォントサイズ(ポイントサイズ)の少なくとも一方を変更することができる。
【0081】
ブロック810へ進み、少なくともユーザによる代用フォント情報及び文字幅の選択をポインティングデバイスに提供する。次に、プロセスは他の動作の実行に戻る。
【0082】
図9Aに、ターゲットフォント名、戦略(論理)、代用フォント、及び文字データのためのエントリ又はフィールドを含む例示的なフォント戦略テーブル900を示す。通常は、システムごとに1つのフォント戦略テーブルが提供される。図9Bに、フォント戦略テーブルのエントリ内で識別される特定のフォント名の文字データに対応する例示的な文字テーブル910を示す。この例示的なサブテーブル910は、フォントごとのユニコードの範囲及びグリフインデックスのためのエントリを含む。図9Cに、文字テーブル910のグリフインデックスに対応する例示的な文字テーブル920を示す。この例示的な文字テーブル920は、少なくともフォントごとの幅及びグリフ名のためのエントリを含む。
【技術分野】
【0001】
〔関連出願との相互参照〕
本出願は、2011年2月14日に出願された既に出願済みの米国仮特許出願第61/442,794号に基づく特許出願であり、本明細書によって上記特許出願の利益を主張するとともに、上記特許出願は引用により本明細書に組み入れられる。
【0002】
本発明は、全般的にはプリンタの画像データ処理に関し、より詳細には、排他的な意味ではないが、有形媒体に印刷するための、プリンタに与えられる文書内のフォントのエミュレーションを可能にすることに関する。
【背景技術】
【0003】
ユビキタスコンピューティング、グラフィカルユーザインターフェイス、並びにビジネス、アート及びパーソナル使用におけるマルチメディアデータ交換の出現とともに、効率的かつ高品質な文書の処理及び印刷が益々重要になってきた。ネットワーク接続プリンタなどのプリンタ、及び多機能印刷装置(MFP)、及び/又はスライド映写機は、印刷又は表示する文書を、ジョブキュー、セキュリティキュー、文書管理システム、内蔵ディスク記憶装置、デジタルカメラ、取り外し可能な大容量記憶装置、携帯電話、携帯情報端末、ページャー、タブレットコンピュータ、ノートブックコンピュータ、パーソナルコンピュータ、及びその他の事実上あらゆるネットワークコンピュータ装置及び/又はモバイルコンピュータ装置などの様々なソースから受け取ることができる。また一般に、提供された文書は、1又はそれ以上のフォントで表示することができるが、これらのフォントを印刷するために必要な追加情報がプリンタ上に存在せず、又は文書を提供するコンピュータ装置上でこれらの情報を容易に利用できない場合がある。これまで、プリンタは、非常駐フォントの代わりに常駐フォントを使用し、この代用フォントを伸張/圧縮して、非常駐フォントのポイントサイズをある程度エミュレートすることができていた。しかしながら、代用フォントを大きく伸張又は圧縮した場合、視覚アーチファクト(artifact)が生じることがある。また、代用フォントの輪郭は、代替元の非常駐フォントと厳密に一致しないことがあるので、提供された文書を代用フォントで印刷した場合、本来のページ付け及び/又は強制改行が大きく異なることがある。
【発明の概要】
【課題を解決するための手段】
【0004】
本発明をより良く理解できるように、以下の詳細な説明を添付図面と関連付けて参照されたい。
【図面の簡単な説明】
【0005】
【図1】本発明の実施形態を実施できる例示的な環境を示すシステム図である。
【図2】図1に示すシステムに含めることができる印刷装置の一実施形態を示す図である。
【図3】図1に示すシステムに含めることができるモバイル装置の一実施形態を示す図である。
【図4】図1に示すシステムに含めることができるネットワーク装置の一実施形態を示す図である。
【図5】印刷する文書内のフォントに関するエミュレーション情報を処理するプロセスの一実施形態を大まかに示す論理フロー図である。
【図6】プリンタで印刷するフォントのエミュレーション情報を事前処理する一実施形態を大まかに示す論理フロー図である。
【図7】プリンタで印刷するフォントのエミュレーション情報をランタイム処理する一実施形態を大まかに示す論理フロー図である。
【図8】プリンタで印刷するための代用フォントをユーザが選択できるようにするプロセスの一実施形態を大まかに示す論理フロー図である。
【図9A】一実施形態の一部として実現できる例示的なテーブルを示す図である。
【図9B】一実施形態の一部として実現できる例示的なテーブルを示す図である。
【図9C】一実施形態の一部として実現できる例示的なテーブルを示す図である。
【発明を実施するための形態】
【0006】
以下、本発明の一部を成すとともに本発明を実施できる特定の実施形態を例示として示す添付図面を参照しながら、本発明をより完全に説明する。しかしながら、本発明は多くの異なる形で具体化することができ、本明細書に示す実施形態に限定されると解釈すべきではない。むしろ、これらの実施形態は、本開示を徹底的かつ完全なものとし、本発明の範囲を当業者に十分伝えるように提供するものである。とりわけ、本発明は、方法、装置、システム、及びプロセッサ可読記憶媒体として具体化することができる。したがって、本発明は、完全にハードウェアによる実施形態、完全にソフトウェアによる実施形態、又はソフトウェアの側面とハードウェアの側面を組み合わせた実施形態の形を取ることができる。よって、以下の詳細な説明を限定的な意味で捉えるべきではない。
【0007】
本明細書及び特許請求の範囲を通じ、文脈において特に指定しない限り、以下の用語は、本明細書で明示的に関連付ける意味を取る。本明細書で使用する「1つの実施形態では」という表現は、同じ実施形態を示す場合もあるが、必ずしもそうとは限らない。さらに、本明細書で使用する「別の実施形態では」という表現は、異なる実施形態を示す場合もあるが、必ずしもそうとは限らない。従って、後述するように、本発明の範囲又は思想から逸脱することなく本発明の様々な実施形態を容易に組み合わせることができる。
【0008】
また、本明細書で使用する場合、「又は」という用語は、文脈において特に指定しない限り包括的なもの、「又は」演算子であり、「及び/又は」という用語に相当する。「〜に基づいて」という用語は、文脈において特に指定しない限り排他的なものではなく、記載していない追加の要素に基づくことを可能にするものである。また、明細書全体を通じて、「1つの(英文不定冠詞)」及び「その(英文定冠詞)」の意味は複数形の意味を含む。「〜内(in)」の意味は、「〜内(in)」及び「〜上(on)」という意味を含む。
【0009】
本明細書で使用する「文書」という用語は、通信能力を組み合わせた情報の主体のデジタル表現を意味することができる。文書は、以下に限定されるわけではないが、テキスト、フォント、フォント参照、色、グラフィクス、画像、メタデータなどの記号的、図式的、及び/又は感覚的表現情報を含むことができる。いくつかの実施形態では、文書をデジタルアーチファクトと考えることができ、ユーザがプリンタで印刷するように要求した印刷ジョブに関連付けることができる。文書は、印刷装置によって印刷できる事実上あらゆる種類の文書を含むことができる。例えば、文書は、(Microsoft Word(登録商標)、Corel WordPerfect、TeX、OpenOffice、Adobe Acrobat(登録商標)などの)テキストエディタによって作成されたテキスト文書、(Microsoft(登録商標) Paint、MacPaint(登録商標)、又はその他のビットマップ及び/又はベクトルベースのグラフィクスデザインソフトなどの)グラフィクスペイントプログラムによって作成されたグラフィクス文書、撮影システム、光学スキャナなどによって作成された画像文書、或いはテキスト、グラフィクス、画像、及び/又はその他の視覚的情報表現のいずれかの組み合わせなどの文書を含むことができる。少なくともいくつかの実施形態では、文書を、HP PCL、Postscript、PDF、XPS、又はXLなどのPDLの形の入力データストリームとして受け取ることができる。また、少なくともいくつかの実施形態では、文書が、印刷装置に結び付けられた、すなわち印刷装置の能力及びサポートされているフォーマットなどに関連して記述された1又はそれ以上のオブジェクト(グラフィックオブジェクト、フォント、フォント参照、及び色など)を含むことができる。印刷装置に送信される文書に含まれるフォント参照及び/又はフォントは、「ターゲット」フォントと呼ばれる。
【0010】
以下、本発明のいくつかの態様の基本的な理解をもたらすために、本発明の実施形態について簡単に説明する。この簡単な説明は、広範な概要として意図するものではない。主要な又は重要な要素を特定すること、或いは範囲を示したり又は別様に狭めることを意図するものでもない。後述する詳細な説明の前置きとしていくつかの概念を簡略化した形で示すことのみを目的とする。
【0011】
簡潔に言えば、本発明は、受け取った文書が、印刷用の代用フォントでエミュレートされた1又はそれ以上のターゲットフォントを含む場合の、文書の印刷をサポートする。本発明の実施形態は、視覚的に同じように見え、提供される文書の本来のページ付け及び強制改行を実質的に維持する別の代用フォントでターゲットフォントをエミュレーションできるようにし、この代用フォントを印刷装置によって印刷することができる。少なくとも1つの実施形態では、印刷装置が複数の所定のターゲットフォントの各々を代用フォントでエミュレートできるようにするための戦略/論理を一覧にした1又はそれ以上のテーブルなどの少なくとも1つの論理構成を提供することができる。これらのエミュレーション戦略は、以下に限定されるわけではないが、文書を印刷するために代用する、印刷装置の常駐フォント、伸縮自在フォント、ローカルフォント、又はダウンロード可能フォントのうちの少なくとも1つを識別することを含むことができる。
【0012】
また、少なくとも1つの実施形態では、3つの異なるサブテーブルを事前に処理し、ターゲットフォントをエミュレートするための戦略テーブルのエントリ内で識別される個々の代用フォントに提供する。まず、代用フォントの個々の文字のグリフインデックスに対応するユニコードマッピングテーブルを提供する。詳細なフォーマットは、実施構成に特化したものとすることができるが、一般には、隣接するグリフインデックス範囲に対応付けられるユニコードの隣接範囲をリストする。また、グリフインデックスによりインデックスされて代用フォントの各文字の幅を識別する幅テーブルを提供する。さらに、グリフインデックスによりインデックスされて代用フォントの各文字のグリフ名を与える符号化テーブルも提供する。グリフ名は、代用フォント自体のファイル又はデフォルトテーブルから得ることができる。
【0013】
また、少なくとも1つの実施形態では、各ターゲットフォントの視覚的側面を記述するエントリを含む追加のターゲットフォント仕様テーブルを提供することができる。このターゲットフォント仕様テーブルを使用して、伸縮自在フォントを選択するとともに、ターゲットフォントを正確にエミュレートするようにこれらのフォントを構成することができる。また、少なくとも1つの実施形態では、特定のターゲットフォントに使用する常駐フォントを示すプリンタフォント仕様テーブルを提供することもできる。
【0014】
さらに、データをもういくつかのテーブルにさらに分割するなどの同等の論理編成を使用して、もう1つ又はもう2、3のテーブルを利用できる様々な実施形態を実現することもできる。また、IF、THEN、ELSE文、及びCASE文などの1又はそれ以上の実質的に同等の論理構成によって様々な実施形態を実現することもできる。
【0015】
また、少なくとも1つの実施形態では、印刷装置が文書を印刷するのに適した1又はそれ以上の代用フォントをユーザに表示して選択させることができる。少なくともいくつかの実施形態では、選択された代用フォントがネットワークからダウンロードされ、又は別の非常駐ターゲットフォントをエミュレートするためのフォント戦略テーブルに既にリストされている。
【0016】
その後、本発明の実施形態は、ユーザが指定する編集に基づいて(単複の)文書の修正を生成し、この修正した文書の印刷プレビューをユーザに提供することができる。いくつかの実施形態では、印刷装置の一部であるディスプレイ(LCDディスプレイなど)上に表示されるUIを通じて、印刷プレビューをユーザに提供することができる。しかしながら、本発明はこのように限定されるものではなく、いくつかの実施形態では、クライアント装置上(ユーザのモバイル装置及びデスクトップコンピュータなど)に表示されたUIを通じて、印刷プレビューをユーザに提供することができる。ユーザが印刷プレビューUIを通じて(単複の)文書に対して指定した編集を1又はそれ以上の修正として(単複の)文書に組み入れ、その後、この修正した(単複の)文書をユーザに表示して、このユーザが、修正した文書を印刷すること、及び/又はさらなる編集を行うことを選択することができる。
【0017】
本明細書でさらに説明するように、本発明の実施形態では、ネットワーク接続プリンタ、多機能印刷装置、及び/又はその他の印刷装置が、1又はそれ以上のソース(ジョブキュー、セキュリティキュー、文書管理システム、内蔵ディスク、外部ディスク、デジタルカメラ、モバイル装置、ネットワーク装置、及び取り外し可能大容量記憶装置など)からターゲットフォント参照を含む文書を受け取り、印刷装置で印刷するのに適した代用フォントでこの文書を印刷することができる。
【0018】
本発明の実施形態では、ユーザが印刷装置に歩み寄れるようにすることなどの、ユーザにとって有利となり得る機能も可能にし、またフラッシュメモリドライブなどのポータブル記憶装置、及び/又は携帯電話、デジタルカメラ、ノートブックコンピュータ、タブレットコンピュータ及び携帯情報端末などのモバイル装置に記憶された1又はそれ以上の文書を印刷することもできる。印刷する文書を、ローカルディスクから、ウェブサイト又はその他のネットワーク装置/位置から、及び/又は(Microsoft SharePoint(登録商標)、Adobe LifeCycle(登録商標)などの)文書管理システムのようなリモートリポジトリなどから取り出すこともできる。本発明のいくつかの実施形態は、文書管理システムと、本明細書でさらに説明する印刷処理アプリケーションなどの、本発明の機能を実行するソフトウェアアプリケーションとの間の様々な程度の統合をサポートすることができる。
【0019】
例示的動作環境
図1に、1又はそれ以上の実施形態を実施及び/又は実践できる例示的なシステムを示す。本発明を実施するためにこれらの構成要素が全て必要なわけではなく、本発明の思想又は範囲から逸脱することなく、構成要素の配置及び種類を変更することができる。図示のように、図1のシステム100は、ネットワーク110、無線ネットワーク120、クライアント装置101、モバイルクライアント装置103、サーバ装置105、及びプリンタ107〜109を含む。
【0020】
クライアント装置101の実施形態については、以下で図4に示すネットワーク装置に関連してより詳細に説明する。しかしながら、手短に言えば、クライアント装置101は、パーソナルコンピュータ、ワークステーション、ネットワーク端末、マルチプロセッサシステム、マルチプロセッサベースの又はプログラム可能な家電製品、娯楽機器、及びゲーム機などの、通常は固定されたコンピュータ装置を含むことができる。いくつかの実施形態では、クライアント装置101が、有線ネットワークを介してネットワーク110に接続することができる。いくつかの実施形態では、これに加えて又はこれの代わりに、クライアント装置101が、無線ネットワーク120などの無線ネットワークを介してネットワーク110に接続することができる。
【0021】
サーバ装置105の実施形態については、図4に示すネットワーク装置に関連してより詳細に説明する。しかしながら、手短に言えば、サーバ装置105は、パーソナルコンピュータ、ワークステーション、ネットワーク端末、及びマルチプロセッサシステムなどの、通常は固定されたコンピュータ装置を含むことができる。いくつかの実施形態では、サーバ装置105が、有線ネットワークを介してネットワーク110に接続することができる。いくつかの実施形態では、これに加えて又はこれの代わりに、サーバ装置105が、無線ネットワーク120などの無線ネットワークを介してネットワーク110に接続することができる。いくつかの実施形態では、サーバ装置105を、プリンタ107〜109、クライアント装置101、及び/又はモバイルクライアント装置103のアプリケーション、ソフトウェアモジュールなど(ファームウェアなど)の更新を行うように構成することができる。
【0022】
モバイルクライアント装置103の実施形態については、以下で図3に関連してより詳細に説明する。しかしながら、手短に言えば、モバイルクライアント装置103は、ネットワークを介してメッセージを送受信できる事実上あらゆるコンピュータ装置を含むことができる。このような装置は、携帯電話、スマートフォン、ディスプレイページャ、無線周波数(RF)装置、赤外線(IR)装置、携帯情報端末(PDA)、ハンドヘルドコンピュータ、ラップトップコンピュータ、ウェアラブルコンピュータ、タブレットコンピュータ、これらの装置の1又はそれ以上を組み合わせた統合装置又はプリンタなどのポータブル装置を含むことができる。いくつかの実施形態では、モバイルクライアント装置103を、無線ネットワーク120などの無線ネットワークを介してネットワーク110に接続するように構成することができる。いくつかの実施形態では、これに加えて又はこれの代わりに、モバイルクライアント装置103が、有線ネットワークを介してネットワーク110に接続することができる。
【0023】
通常、クライアント装置101及び103は、能力及び機能の面で広範囲にわたる。例えば、携帯電話は、数字キーパッド、及び文字しか表示できない数行の白黒LCDディスプレイを有することができる。別の例では、ウェブ対応クライアント装置は、タッチセンサ式スクリーン、スタイラス、及び文字とグラフィクスをいずれも表示できる数行のカラーLCDディスプレイを有することができる。少なくともいくつかの実施形態では、クライアント装置101及び103を、印刷装置107〜109の少なくとも1つに、印刷用の文書などのデータを提供するように構成することができる。
【0024】
1つの実施形態では、クライアント装置101及び103が、様々な機構のいずれかを使用して印刷用の文書を提供することができる。例えば、クライアント装置101及び103は、HP PCL、Postscript、PDF、又はXPSなどのページ記述言語(PDL)又はプリンタコマンド言語(PCL)を介して通信することができる。しかしながら、クライアント装置101及び103は、これらの通信機構に限定されるものではなく、他の通信機構を使用することもできる。例えば、いくつかの実施形態では、クライアント装置101及び103が、グラフィカルデバイスインターフェイス(GDI)フォーマット又はOpenGLフォーマットなどのグラフィクスAPIを使用して通信することもできる。
【0025】
図示のように、クライアント装置101及び103は、ネットワーク110及び/又は無線ネットワーク120を介して印刷装置107〜109と通信することができる。しかしながら、本発明はこのように限定されるものではない。例えば、いくつかの実施形態では、図示のように、クライアント装置103などのクライアント装置が、図1に破線130で示すIR信号などの直接通信方法を介して印刷装置109などの印刷装置と直接通信することができる。いくつかの実施形態では、クライアント装置とプリンタの間の通信がホストサーバを介して行われるように、印刷装置107〜109の1又はそれ以上が、サーバ105などのサーバにホストされ、又はこれに別様に接続することができる。このような場合、ホスト側サーバは、1又はそれ以上の印刷装置のためのプリンタハブ又は印刷サーバとして機能することができる。
【0026】
いくつかの実施形態では、ネットワーク110を、クライアント装置101及び103を無線ネットワーク120を介して互いに結合するように構成することができる。さらに、ネットワーク110は、クライアント装置101及び103をサーバ105及び/又は印刷装置107〜109に結合することができる。ネットワーク110は、1つの電子装置からもう1つの電子装置に情報を通信するためのあらゆる形のコンピュータ可読媒体を使用することができる。ネットワーク110は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、ユニバーサルシリアルバス(USB)ポートなどを介した直接接続、他の形のコンピュータ可読媒体、又はこれらのいずれかの組み合わせに加えてインターネットを含むことができる。異なるアーキテクチャ及びプロトコルに基づくものを含む相互接続されたLANの組では、ルータ、スイッチ又はその他のネットワーク装置がLAN間のリンクの役目を果たして、一方から他方へメッセージを送信できるようにする。また通常、LAN内の通信リンクはツイストペア線又は同軸ケーブルを含むのに対し、ネットワーク間の通信リンクは、アナログ電話回線、T1、T2、T3、及びT4を含む完全な又は部分的な専用デジタル回線、統合サービスデジタル通信網(ISDN)、デジタル加入者回線(DSL)、限定するわけではないが衛星リンクを含む無線リンク、又は当業者に公知のその他の通信リンクを利用することができる。さらに、リモートコンピュータ及びその他の関連電子装置を、モデム及び一時的電話リンクを介してLAN又はWANのいずれかに遠隔的に接続することができる。
【0027】
無線ネットワーク120は、モバイル装置103などのモバイルクライアント装置及びその構成要素をネットワーク110に接続するように構成することができる。無線ネットワーク120は、モバイルクライアント装置103にインフラ指向の接続を提供するために、独立型アドホックネットワークにさらにオーバレイできる様々な無線サブネットワークのいずれかなどを含むことができる。このようなサブネットワークは、メッシュネットワーク、無線LAN(WLAN)ネットワーク、及びセルラーネットワークなどを含むことができる。無線ネットワーク120は、無線リンクなどによって接続された、端末、ゲートウェイ、及びルータなどの自律システムをさらに含むことができる。これらの接続装置を、自由かつランダムに動いてこれらの装置自体を任意に体系化するように構成することにより、無線ネットワーク120のトポロジーを即座に変更できるようにすることができる。
【0028】
無線ネットワーク120は、セルラーシステムのための第2(2G)、第3(3G)、第4(4G)、第5(5G)世代無線アクセスなどを含む1又はそれ以上のアクセス技術を利用することができる。2G、2.5G、3G、4G、5G、及び将来的なアクセスネットワークなどのアクセス技術は、クライアント装置101及び103などのクライアント装置、サーバ装置105、及び/又は印刷装置107〜109のための広域カバレッジを様々な可動度で実現することができる。例えば、無線ネットワーク120は、グローバルシステムフォーモバイルコミュニケーション(GSM(登録商標))、汎用パケット無線サービス(GPRS)、拡張データGSM環境(EDGE)、符号分割多元接続(CDMA)、広帯域符号分割多元接続(WCDMA)、時分割多元接続(TDMA)、進化型高速パケットアクセス(HSPA)、ロングタームエボリューション(LTE)、WLAN、WiFi、WiMax、無線ルータ(WR)メッシュ、又はBluetooth(登録商標)などの、無線ネットワークアクセスを介した無線接続を可能にすることができる。基本的に、無線ネットワーク120は、クライアント装置101及び103、サーバ装置105、及び/又は印刷装置107〜109と、他のコンピュータ装置及び/又はネットワークなどの間で情報が伝わるようにする事実上あらゆる無線通信機構を含むことができる。
【0029】
また通常、通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他の種類のコンテンツの、事実上制限のない送信を可能にすることができる。一例として、通信媒体は、ツイストペア、同軸ケーブル、光ファイバ、導波路、及びその他の有線媒体などの有線媒体、及び音響、RF、赤外線、及びその他の無線媒体などの無線媒体を含む。
【0030】
プリンタ107〜109の実施形態については、以下で図2に関連してより詳細に説明する。手短に言えば、印刷装置107〜109は、紙、プラスティック、布、金属及び合成材料などのハードコピーフォーマット上にデータを印刷するように構成された事実上あらゆる装置を表すことができる。1つの実施形態では、印刷装置107〜109が、ハードコピーフォーマット上に印刷データを転写するためのレーザビーム又は同様の技術を利用するように構成されたレーザ印刷装置を表す。なお、1つの実施形態としてレーザ印刷について説明するが、本発明はこのように限定されるものではなく、本発明の範囲から逸脱することなく他の印刷機構を利用することもできる。
【0031】
いくつかの実施形態では、印刷装置107〜109が、データを異なる解像度で印刷するように設定及び構成される。さらに、印刷装置107〜109は、白黒及び/又はカラーで出力を行うように構成することができる。印刷装置107〜109は、画像、グラフィクス及び/又はテキストを印刷するようにさらに構成することができる。1つの実施形態では、印刷装置107〜109が、レーザ印刷機構を利用するように構成される。
【0032】
例示的プリンタ装置
図2に、本発明を実施するシステムに含めることができるプリンタ200の1つの実施形態を示す。プリンタ200は、図2に示すものよりも多くの又は少ない構成要素を含むことができる。しかしながら、本発明を実施するための例示的な実施形態を開示するには図示の構成要素で十分である。プリンタ200は、例えば、図1のプリンタ107〜109の1つ又はそれ以上を表すことができる。いくつかの実施形態では、プリンタ200を、レーザ印刷技術を利用するように構成することができる。しかしながら、本発明はこのように限定されるものではなく、以下に限定されるわけではないが、LEDプリンタ(又は他のトナーによる印刷技術)、液体インクジェットプリンタ、固体インクプリンタ、昇華型プリンタ、感熱式プリンタ及びUVプリンタなどのインクレスプリンタ、ドットマトリクスプリンタ、ラインプリンタ、及びペンによるプロッタなどを含む他の印刷技術を本発明の範囲から逸脱することなく利用することもできる。
【0033】
図示のように、プリンタ200は、中央処理装置212、1又はそれ以上のネットワークインターフェイス210、プロセッサ可読記憶媒体240、入力/出力インターフェイス242、ディスプレイ244、赤外線(IR)インターフェイス246、トナーアセンブリ260、印刷アセンブリ262、キーボード及び/又はキーパッド264、ポインティングデバイス266、及び大容量メモリを含むことができ、これらは全てバス214を介して互いに通信する。一般に、大容量メモリは、RAM216及びROM250を含むことができ、プロセッサ可読記憶媒体240を含むこともできる。図2に示すように、プリンタ200は、(単複の)ネットワークインターフェイス210を介して、以下に限定されるわけではないが、TCP/IP、Wi−Fi、グローバルシステムフォーモバイルコミュニケーション(GSM)、WAP、超広帯域(UWB)、IEEE802.16ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMax)、汎用パケット無線サービス(GPRS)、拡張データGSM環境(EDGE)、符号分割多元接続(CDMA)、広帯域符号分割多元接続(WCDMA)、時分割多元接続(TDMA)、進化型高速パケットアクセス(HSPA)、ロングタームエボリューション(LTE)、WLAN、無線ルータ(WR)メッシュ、Bluetooth(登録商標)、又はZigbee(登録商標)などを含む様々な有線及び/又は無線通信プロトコルを利用して、インターネット又は他の何らかの通信ネットワークと通信することができる。ユニバーサルシリアルポート(USB)、パラレルポート、RS−232(Recommended Standard 232)又はANSI/TIA/EIA−422などのシリアルバス、或いは(ファイヤワイヤなどの)IEEE1394などを介して通信を行うこともできる。(単複の)ネットワークインターフェイスユニット210は、トランシーバ、送受信装置、又はネットワークインターフェイスカード(NIC)として知られていることもある。
【0034】
IRインターフェイス246は、プリンタ200と、図1に示すモバイルクライアント装置103などのクライアント装置との間の通信を可能にすることができる。IRインターフェイス246は、赤外線データ通信協会(IrDA)プロトコルなどのIR通信プロトコルなどを介した通信をサポートすることができる。いくつかの実施形態では、IRインターフェイス246が、プリンタ200と短距離にある、及び/又はプリンタ200と見通し線内にあるクライアント装置との通信をサポートすることができる。図1に示す接続130は、モバイルクライアント装置103と、プリンタ107〜109の1つ又はそれ以上との間のこのような直接通信の例を示すものである。
【0035】
キーボード/キーパッド264は、ユーザから入力を受け取るように構成されたいずれかの入力装置を含むことができる。例えば、キーボード/キーパッド264は、プッシュボタン数字ダイヤル、キーボード、又はタッチスクリーンなどを含むことができる。キーボード/キーパッド264は、アルファベット入力部、数字入力部、及び/又はその他の文字入力部を含むことができ、文書の選択、考察、編集、及び/又は印刷を行うための機能に関連する機能及び/又はコマンドボタンをさらに含むことができる。キーボード/キーパッド264を介して行ったユーザ入力は、ディスプレイ244内に表示することができる。
【0036】
ポインティングデバイス266は、ユーザが空間及び/又は位置データをプリンタ200に入力できるようにする事実上あらゆる装置を含むことができる。ポインティングデバイス266は、タッチパッド、タッチスクリーン、グラフィクスタブレット、ジョイスティック又はポインティングスティックなどの、ユーザが身体の一部(指又は手など)、又はワンド、スタイラス、ペン及びライトペンなどの物体で表面に触れることに基づく装置を含むことができる。ポインティングデバイス266は、マウス、トラックボール、及びジョイスティックなどの、ユーザが物体を動かすことに基づく装置をさらに含むことができる。ポインティングデバイス266を介して行ったユーザ入力は、ディスプレイ244内に表示することができる。
【0037】
ディスプレイ244は、テキスト、グラフィクス、画像、及び/又は他のいずれかの種類のデータをユーザに表示する事実上あらゆる種類のディスプレイ、モニタ、端末、及び画面などを含むことができる。ディスプレイの種類としては、以下に限定されるわけではないが、液晶ディスプレイ(LCD)、ガスプラズマ、発光ダイオード(LED)、又はブラウン管(CRT)などを挙げることができる。ユーザ入力を受け取って表示するために、ディスプレイ244をキーボード/キーパッド264及び/又はポインティングデバイス266にインターフェイス接続することもできる。さらに、ディスプレイ244は、ディスプレイ上の1又はそれ以上の位置に触れるユーザの指の場所に基づくシングルタッチ及びマルチタッチコマンドをサポートするタッチスクリーンインターフェイスを含むことができる。これに加えて又はこれとは別に、プリンタ200は、プリンタ外部の1又はそれ以上のディスプレイ装置と通信して、ユーザが考察及び修正するプリントジョブ及び/又は文書に関する情報を表示することができる。
【0038】
入力/出力インターフェイス242は、外部ディスプレイ、ユーザ入力装置、コンピュータ装置及びネットワーク装置などの外部装置と通信するための様々な手段を含むことができる。入力/出力インターフェイス242は、以下に限定されるわけではないが、USB、Bluetooth(登録商標)、ファイヤワイヤ、(RS−232規格などの)シリアルポート及び(IEEE1284規格などの)パラレルポートなどを含む1又はそれ以上の通信技術を利用することができる。
【0039】
上述した大容量メモリは、例示的な種類のコンピュータ可読媒体、すなわちコンピュータ可読又はプロセッサ可読記憶媒体を示すものである。プリンタ200に含まれるこのような大容量メモリは、RAM216及びROM250、及び/又はプロセッサ可読記憶媒体240を含むことができる。コンピュータ可読記憶媒体又はプロセッサ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他のデータなどの情報を記憶するためのあらゆる方法又は技術で実現される、揮発性、不揮発性、取り外し可能及び取り外し不能媒体を含むことができる。コンピュータ可読記憶媒体の例として、RAM、ROM、EEPROM、フラッシュメモリ又はその他のメモリ技術、CD−ROM、デジタル多機能ディスク(DVD)又はその他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶装置、或いは所望の情報を記憶するために使用できるとともにコンピュータ装置によってアクセスできる他のいずれかの媒体が挙げられる。
【0040】
RAM216などの大容量メモリは、印刷装置200の動作を制御するためのオペレーティングシステム200を記憶することができる。プリンタ200の機能をサポートする(Windows(登録商標)、UNIX(登録商標)及びLINUX(登録商標)などの)あらゆる汎用オペレーティングシステムを利用することができる。いくつかの実施形態では、オペレーティングシステム220を、特別に構成されたバージョンの汎用オペレーティングシステム、或いはプリンタ200の機能をサポートするように設計及び作成された専用オペレーティングシステムとすることができる。オペレーティングシステム200は、仮想機械モジュールの下で実行されるアプリケーションを介してハードウェア構成要素及び/又はオペレーティングシステム機能を制御できる、Java(登録商標)仮想機械又はMicrosoft.NETランタイムなどの仮想機械モジュールを含み、又はこれにインターフェイス接続することができる。プリンタ200の起動及び診断などの低水準動作を制御するための基本入力/出力システム(「BIOS」)252を提供することもできる。図2に示すように、BIOSをROM250などの大容量メモリに記憶し、及び/又はここから実行することができる。
【0041】
大容量メモリは、プログラムコード、命令、及び/又はデータを記憶することもできる。例えば、データ記憶装置226を、プリンタコマンド、診断、ユーザの好み、プリンタ制御ソフトウェア、サポートされるカラーパレット、フォント、ページ付け及びページサイズなどのプリンタの能力に関する情報を記憶するように構成することができる。データ記憶装置226は、印刷する文書、中間文書、ユーザの編集及び/又は修正に関する情報、印刷する文書のラスタ画像など、並びに文書の選択、考察、編集、修正、表示及び/又は印刷に必要な他のいずれかの情報をさらに記憶することができる。
【0042】
いくつかの実施形態では、大容量メモリが、本発明の実施形態を動作させるための、1又はそれ以上のアプリケーション、プログラム、及びソフトウェアモジュールなどを記憶することができる。このようなアプリケーションは、印刷処理アプリケーション222、印刷プレビューユーザインターフェイス224、フォント戦略テーブル230を含むことができる。本明細書では、これらのアプリケーションの一般的な動作を図5〜図9Cに関連してさらに説明する。いくつかの実施形態では、印刷処理アプリケーション222及び印刷プレビューUI224の一方又は両方が、データ記憶装置226及び/又はプロセッサ可読記憶媒体240にデータを記憶し、キャッシュし、及び/又はこれらのデータにアクセスして、ディスプレイ244に情報を表示することができる。RAM216などの大容量メモリは、データ記憶装置226及び/又はプロセッサ可読記憶媒体240にデータを記憶し、キャッシュし、及び/又はこれらのデータにアクセスするように構成できるとともにディスプレイ244に情報を表示することができる他のアプリケーション280を含むこともできる。アプリケーション222、224及び228を大容量メモリにロードして、オペレーティングシステム220上で実行することができる。このようなアプリケーションをRAM216に含まれる形で示しているが、本発明はこのように限定されるものではない。例えば、本発明の範囲から逸脱することなく、アプリケーション222、224及び/又は228の1又はそれ以上をROM250及び/又はプロセッサ可読記憶媒体240にロードし、及び/又はここで実行することもできる。
【0043】
本明細書で述べるように、プリンタ200は、本発明の範囲から逸脱することなく様々な種類の印刷技術を含むことができる。いくつかの実施形態では、プリンタ200を、レーザ印刷技術を利用するように構成することができる。以下は、本発明の実施形態を実現するために利用できるレーザ印刷技術の例示的で非限定的な説明である。このような実施形態では、印刷アセンブリ262が、レーザ印刷に必要な、ドラムアセンブリ、コロナワイヤ、定着器、放電ランプ、レーザ走査ユニット、及び/又は受光器などの要素を含むことができる。いくつかの実施形態では、ドラムアセンブリを回転するように構成し、様々な感光材料のいずれかで作成することができる。ドラムアセンブリには、コロナワイヤによって(又はいくつかの実施形態では、荷電ローラによって)電荷を与えることができる。ドラムアセンブリが回転すると、レーザ走査ユニットが、印刷するデータに基づいてドラムアセンブリの表面全体にレーザビームを導くことができる。トナーアセンブリ260は、粉末などの形のトナーをドラムアセンブリ上に供給することができる。コロナワイヤは、紙又はその他の印刷材料に電荷を与えて、これをドラムアセンブリにわたって移動させることができる。その後、紙又はその他の印刷材料が定着器を通過して、付着したトナーが加熱され、或いは紙又はその他の印刷材料に別様に付着するようになる。トナーが紙又はその他の印刷材料に付着すると、ドラムアセンブリのドラムの表面が放電ランプを通過し、ここで光などによってドラムを露光して電気映像を消去又は除去することができる。1つの実施形態では、次にこのドラムアセンブリのドラム表面がコロナワイヤを通過し、ここで再度電荷を与えることができる。なお、本発明の実施形態は、印刷材料上にデータを転写するこの方法に限定されるものではなく、他の機構を使用することもできる。従って、本発明をこの実施形態によって限定又は別様に制限すべきではない。
【0044】
例示的モバイル装置
図3に、本発明の1つの実施形態による例示的なモバイル装置300を示す。一般に、モバイル装置300は、図示のものよりも多くの又は少ない構成要素を含むことができる。しかしながら、本発明を実施するための例示的な実施形態を開示するには図示の構成要素で十分である。モバイル装置300は、例えば図1のモバイルクライアント装置103を表すことができる。
【0045】
モバイル装置300は、中央処理装置322、電源326、プロセッサ可読記憶媒体327、GPSインターフェイス364、1又はそれ以上のネットワークインターフェイス350、音声インターフェイス352、ディスプレイ354、キーパッド356、照明器358、入力/出力インターフェイス360、触覚インターフェイス362、及び大容量メモリを含み、これらは全てバス324を介して互いに通信する。一般に、大容量メモリは、RAM332、ROM334、及びプロセッサ可読記憶媒体327などの1又はそれ以上の取り外し可能又は永久大容量記憶装置を含む。大容量メモリには、クライアント装置300の動作を制御するためのオペレーティングシステム341を記憶することができる。このオペレーティングシステム341をRAM332に記憶することもできる。あるバージョンのUNIX又はLINUXなどの汎用オペレーティングシステムを利用することができる。いくつかの実施形態では、オペレーティングシステム341を、Windows Mobile、Sybian、Google Android又はApple iPhoneオペレーティングシステムなどの専用クライアント通信オペレーティングシステムとすることができる。オペレーティングシステムは、仮想機械の下で実行されるアプリケーションを介してハードウェア構成要素及び/又はオペレーティングシステム機能を制御できる、Java仮想機械又はMicrosoft.NETランタイムなどの仮想機械モジュールを含み、又はこれにインターフェイス接続することができる。モバイル装置300の低水準動作を制御するための基本入力/出力システム(BIOS)340を提供して、これを大容量メモリに、及びいくつかの実施形態ではROM334に記憶することができる。
【0046】
モバイル装置300は、1又はそれ以上のネットワークインターフェイス350を介して基地局(図示せず)と、又は直接別のコンピュータ装置と通信することができる。ネットワークインターフェイス350は、モバイル装置300を1又はそれ以上のネットワークに結合するための回路を含むことができ、また以下に限定されるわけではないが、グローバルシステムフォーモバイルコミュニケーション(GSM)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、ユーザデータグラムプロトコル(UDP)、送信制御プロトコル/インターネットプロトコル(TCP/IP)、SMS、汎用パケット無線サービス(GPRS)、WAP、超広帯域(UWB)、IEEE802.16ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMax)、拡張データGSM環境(EDGE)、符号分割多元接続(CDMA)、広帯域符号分割多元接続(WCDMA)、時分割多元接続(TDMA)、進化型高速パケットアクセス(HSPA)、ロングタームエボリューション(LTE)、WLAN、WiFi、無線ルータ(WR)メッシュ、SIPIRTP、Bluetooth(登録商標)、赤外線、Wi−Fi、及びZigbeeを含む1又はそれ以上の有線及び/又は無線通信プロトコル及び技術とともに使用されるように構成することができる。(単複の)ネットワークインターフェイスユニット350は、トランシーバ、送受信装置、又はネットワークインターフェイスカード(NIC)として知られていることもある。クライアント装置300は、ファイヤワイヤ、シリアルポート、パラレルポート又はUSBなどを利用できる入力/出力インターフェイス360を介して印刷装置又はその他の装置と通信することもできる。
【0047】
上述した大容量メモリは、一種のコンピュータ可読記憶媒体、すなわち図3に示すプロセッサ可読記憶媒体327などのコンピュータ可読又はプロセッサ可読記憶媒体を示す。コンピュータ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他のデータなどの情報を記憶するためのあらゆる方法又は技術で実現される、揮発性、不揮発性、取り外し可能及び取り外し不能媒体を含むことができる。コンピュータ可読記憶媒体の例として、RAM、ROM、EEPROM、フラッシュメモリ又はその他のメモリ技術、CD−ROM、デジタル多機能ディスク(DVD)又はその他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶装置、或いは所望の情報を記憶するために使用できるとともにコンピュータ装置によってアクセスできる他のいずれかの媒体が挙げられる。
【0048】
RAM332、ROM334などの大容量メモリ、及び/又はプロセッサ可読記憶媒体327は、プログラムコード及びデータを記憶することもできる。例えば、RAM332は、ブラウザ343などのブラウザアプリケーションを含むことができる。アプリケーションプログラムの他の例には、トランスコーダ、スケジューラ、カレンダー、データベースプログラム、文書処理プログラム、HTTPプログラム、カスタマイズ可能なユーザインターフェイスプログラム、IPSecアプリケーション、暗号化プログラム、セキュリティプログラム、VPNプログラム、SMSメッセージクライアント、IMメッセージクライアント、電子メールクライアント、アカウント管理などがある。RAM332などの大容量メモリ内のアプリケーションは、印刷プレビューユーザインターフェイス(UI)344、フォント戦略テーブル348、及び/又は印刷処理アプリケーション345を含むこともでき、本明細書では、これらの動作を図5〜図9Cに関連してより詳細に説明する。RAM332は、その他のアプリケーション346を記憶することもできる。一般に、本明細書で説明するアプリケーションは、いずれも大容量メモリにロードしてオペレーティングシステム341上で実行することができ、データを記憶し、キャッシュし、データにアクセスするためのデータ記憶装置342及び/又はプロセッサ可読記憶媒体327を利用することができ、情報を表示するためのディスプレイ354を利用することができ、音声情報を伝えるための音声インターフェイス352を利用することができ、(触知性などの)触覚情報をモバイル装置300のユーザに伝えるための触覚インターフェイス362を利用することができる。
【0049】
電源326は、モバイル装置300に電力を供給することができる。再充電可能又は再充電不能バッテリを使用して電力を供給することができる。バッテリを補充及び/又は再充電するACアダプタ又は給電用格納台などの外部電源によって電力を供給することもできる。
【0050】
音声インターフェイス352は、人間の声音及び音楽などの音声信号を生成し、これらを受け取るように構成することができる。例えば、音声インターフェイス352をスピーカ及びマイク(図示せず)に結合して、他者との通信を可能にし、及び/又は何らかの動作のための音声肯定応答を生成することができる。ディスプレイ354は、液晶ディスプレイ(LCD)、ガスプラズマ、発光ダイオード(LED)、又はコンピュータ装置とともに使用する他のいずれの種類のディスプレイであってもよい。ディスプレイ354は、スタイラスなどの物体又は人間の指からの入力を受け取るように構成されたタッチセンサ式スクリーンを含むこともできる。
【0051】
キーパッド356は、ユーザからの入力を受け取るように構成されたあらゆる入力装置を含むことができる。例えば、キーパッド356は、プッシュボタン数字ダイヤル又はキーボードを含むことができる。キーパッド356は、大容量メモリに記憶されてオペレーティングシステム341上で実行される1又はそれ以上のアプリケーションの様々な機能に関連するコマンドボタンを含むこともできる。照明器358は、状態指示を行うこと、及び/又は光を与えることができる。照明器358は、特定の期間にわたって、又はイベントに対応して動作し続けることができる。例えば、照明器358は、動作中にキーパッド356上のボタンをバックライト照明し、クライアント装置が給電を受けている間オン状態にしておくことができる。また、照明器358は、別のクライアント装置に電話するなどの特定の動作が行われている場合、様々なパターンでこれらのボタンをバックライト照明することもできる。照明器358は、クライアント装置の透明又は半透明のケース内に位置する光源を、動作に応じて点灯させることもできる。
【0052】
モバイル装置300は、ヘッドホンなどの外部装置、図3に示していない他の入力又は出力装置、又は他のコンピュータ装置と通信するための入力/出力インターフェイス360を含むこともできる。入力/出力インターフェイス360は、USB、赤外線、Bluetooth(登録商標)、Wi−Fi、又はZigbeeなどの1又はそれ以上の通信技術を利用することができる。触覚インターフェイス362は、クライアント装置のユーザに触知性フィードバックを提供することができる。例えば、触覚インターフェイスを使用して、別のコンピュータ装置のユーザが電話を掛けてきたときにモバイル装置300を特定の方法で振動させることができる。
【0053】
GPSトランシーバ364は、位置を緯度及び経度値として出力することにより、地表上のモバイル装置300の物理座標を特定するように構成することができる。GPSトランシーバ364は、以下に限定されるわけではないが、三角測量、アシスト型GPS(AGPS)、E−OTD、CI、SA1、ETA又はBSSなどを含む他のジオポジショニング機構を利用して、地表上のモバイル装置300の物理的位置を特定することもできる。GPSトランシーバ364は、異なる条件下において、モバイル装置300の物理的位置をミリメートルの範囲内で特定できる場合もあれば、特定される物理的場所が、メートル又はかなり大きな距離範囲内のようにそれほど正確でない場合もある。本明細書で説明したように、このGPSトランシーバ364により出力された位置情報を大容量メモリ(データ記憶装置342及び/又はプロセッサ可読記憶媒体327など)に記憶し、この情報を、大容量メモリに記憶されてオペレーティングシステム341内で実行される様々なアプリケーションが利用することができる。
【0054】
図3には示していないが、モバイル装置300は、ビデオ及び/又は静止画像を取り込むように構成されたビデオ/画像取り込みインターフェイスをさらに含むことができる。例えば、ビデオ/画像取り込みインターフェイスはカメラを内蔵し、レンズ、画像センサ、及びその他の電子機器を含むことができる。画像センサは、補完的金属酸化膜半導体(CMOS)集積回路、電荷結合素子(CCD)、又は光を感知するための他のいずれかの集積回路を含むことができる。このようなインターフェイスによって取り込んだ画像及び/又はビデオを、RAM332、ROM334などの大容量メモリ、及び/又はプロセッサ可読記憶媒体327に記憶し、またネットワークインターフェイス350を介して他のコンピュータ装置(プリンタ107〜109など)に通信することもできる。
【0055】
例示的ネットワーク装置
図4に、本発明の少なくとも1つの実施形態による例示的なネットワーク装置400を示す。一般に、ネットワーク装置400は、図示のものよりも多くの又は少ない構成要素を含むことができる。しかしながら、本発明を実施するための例示的な実施形態を開示するには図示の構成要素で十分である。ネットワーク装置400は、例えば、図1のクライアント装置101及び/又はサーバ装置105を表すことができる。
【0056】
ネットワーク装置400は、中央処理装置412、1又はそれ以上のネットワークインターフェイス410、入力/出力インターフェイス442、ハードディスクドライブ444、ビデオディスプレイアダプタ446、及び大容量メモリを含むことができ、これらは全てバス414を介して互いに通信する。一般に、大容量メモリは、RAM416、ROM450、ハードディスクドライブ444、及びプロセッサ可読記憶媒体440などの、1又はそれ以上の取り外し可能又は永久大容量記憶装置を含む。大容量メモリは、テープドライブ、フロッピー(登録商標)ディスクドライブ及び光学ドライブなどの記憶装置をさらに含むことができる。大容量メモリには、ネットワーク装置400の動作を制御するためのオペレーティングシステム420を記憶することができる。いくつかの実施形態では、オペレーティングシステム420をRAM416に記憶することができる。あるバージョンのUNIX又はLINUXなどの汎用オペレーティングシステムを利用することができる。いくつかの実施形態では、オペレーティングシステム420を、Windows Mobile(登録商標)、Sybian、Google Android(登録商標)又はApple iPhone(登録商標)オペレーティングシステムなどの専用クライアント通信オペレーティングシステムとすることができる。オペレーティングシステムは、仮想機械の下で実行されるアプリケーションを介してハードウェア構成要素及び/又はオペレーティングシステム機能を制御できる、Java仮想機械又はMicrosoft.NETランタイムなどの仮想機械モジュールを含み、又はこれにインターフェイス接続することができる。ネットワーク装置400の低水準動作を制御するための基本入力/出力システム(BIOS)450を提供して、これを大容量メモリに、及びいくつかの実施形態ではROM450に記憶することもできる。
【0057】
ネットワーク装置400は、1又はそれ以上のネットワークインターフェイス410を介してインターネットなどのネットワークと、又は直接別のコンピュータ装置と通信することができる。ネットワークインターフェイス410は、ネットワーク装置400を1又はそれ以上のネットワークに結合するための回路を含むことができ、また以下に限定されるわけではないが、グローバルシステムフォーモバイルコミュニケーション(GSM)、符号分割多元接続(CDMA)、時分割多元接続(TDMA)、ユーザデータグラムプロトコル(UDP)、送信制御プロトコル/インターネットプロトコル(TCP/IP)、SMS、汎用パケット無線サービス(GPRS)、拡張データGSM環境(EDGE)、符号分割多元接続(CDMA)、広帯域符号分割多元接続(WCDMA)、時分割多元接続(TDMA)、進化型高速パケットアクセス(HSPA)、ロングタームエボリューション(LTE)、WLAN、無線ルータ(WR)メッシュ、WAP、超広帯域(UWB)、IEEE802.16ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMax)、SIPIRTP、Bluetooth(登録商標)、赤外線、Wi−Fi及びZigbeeなどを含む1又はそれ以上の通信プロトコル及び技術とともに使用されるように構成することができる。(単複の)ネットワークインターフェイス410は、トランシーバ、送受信装置、又はネットワークインターフェイスカード(NIC)として知られていることもある。ネットワーク装置400は、ファイヤワイヤ、シリアルポート、パラレルポート又はUSBなどを利用できる入力/出力インターフェイス442を介して印刷装置又はその他の装置と通信することもできる。
【0058】
上述した大容量メモリは、一種のコンピュータ可読記憶媒体、すなわち図4に示すプロセッサ可読記憶媒体440などのコンピュータ可読又はプロセッサ可読記憶媒体を示す。コンピュータ可読記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、又はその他のデータなどの情報を記憶するためのあらゆる方法又は技術で実現される、揮発性、不揮発性、取り外し可能及び取り外し不能媒体を含むことができる。コンピュータ記憶媒体の例として、RAM、ROM、EEPROM、フラッシュメモリ又はその他のメモリ技術、CD−ROM、デジタル多機能ディスク(DVD)又はその他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置又はその他の磁気記憶装置、或いは所望の情報を記憶するために使用できるとともにコンピュータ装置によってアクセスできる他のいずれかの媒体が挙げられる。
【0059】
RAM416、ROM450などの大容量メモリ、ハードディスクドライブ444、及び/又はプロセッサ可読記憶媒体440は、プログラムコード及びデータを記憶することもできる。例えば、RAM416は、ブラウザ422などのブラウザアプリケーションを含むことができる。アプリケーションプログラムの他の例には、トランスコーダ、スケジューラ、カレンダー、データベースプログラム、文書処理プログラム、HTTPプログラム、カスタマイズ可能なユーザインターフェイスプログラム、IPSecアプリケーション、暗号化プログラム、セキュリティプログラム、VPNプログラム、SMSメッセージクライアント、IMメッセージクライアント、電子メールクライアント、アカウント管理などがある。RAM416などの大容量メモリ内のアプリケーションは、印刷プレビューユーザインターフェイス(UI)428、印刷処理アプリケーション426、フォント戦略テーブル432を含むこともでき、本明細書では、これらの動作を図5〜図9Cに関連してより詳細に説明する。いくつかの実施形態では、ネットワーク装置400が図1のクライアント装置101などのクライアント装置として機能している場合、印刷プレビューUI428、フォント戦略テーブル432、及び/又は印刷処理アプリケーション426をこのような装置に含めることができる。RAM416は、その他のアプリケーション430を記憶することもできる。一般に、本明細書で説明するアプリケーションは、いずれも大容量メモリにロードしてオペレーティングシステム420上で実行することができ、アプリケーションに関連するデータを記憶し、キャッシュし、及び/又はデータにアクセスするためのデータ記憶装置424、プロセッサ可読記憶媒体440、及び/又はハードディスクドライブ444を利用することができる。
【0060】
ネットワーク装置400の大容量メモリ内で実行される少なくともいくつかのアプリケーションは、ビデオディスプレイアダプタ446を利用して、ユーザに表示するための情報を出力することができる。いくつかの実施形態では、ビデオディスプレイアダプタ446を、ビデオカード、グラフィクスカード、ビデオアダプタ、ディスプレイアダプタ、又はグラフィクスアクセラレータカードなどとすることができる。ビデオディスプレイアダプタ446は、VGA、SVGA及びXGAなどの1又はそれ以上の出力用ビデオ及び/又はグラフィクスフォーマットをサポートすることができる。ビデオディスプレイアダプタ446は、グラフィクス処理ユニット(GPU)、ビデオ及び/又はグラフィクスBIOS、並びにビデオ及び/又はグラフィクスファームウェアなどの、ビデオ及び/又はグラフィクスを処理するためのソフトウェア及び/又はハードウェア構成要素を含むことができる。ビデオディスプレイアダプタ446は、ビデオ及び/又はグラフィクスを処理するための専用メモリをさらに含むことができる。ビデオディスプレイアダプタ446は、ビデオグラフィクスアレイ(VGA)ポート、デジタルビジュアルインターフェイス(DVI)ポート、ビデオインビデオアウト(VIVO)ポート、高解像度マルチメディアインターフェイス(HDMI)ポート、ディスプレイポート、及び合成ビデオポートなどの、1又はそれ以上の出力ポートを含むことができる。ビデオディスプレイアダプタ446は、(モニタなどの)1又はそれ以上の外部ディスプレイ、又はネットワーク装置400に統合されたディスプレイにインターフェイス接続してユーザに情報を表示することができる。
【0061】
一般的動作
以下で説明する例示的なフロー図の各ブロック、及びフロー図内のブロックの組み合わせは、コンピュータプログラム命令によって実施できると理解されたい。これらのプログラム命令をプロセッサに提供して機械を生産することにより、プロセッサ上で実行される命令が、フロー図の1又は複数のブロック内に示される動作を実施する手段を生み出すようにすることができる。コンピュータプログラム命令をプロセッサにより実行して、プロセッサにより実行される一連の動作ステップがコンピュータ実行プロセスを生み出すようにすることにより、プロセッサ上で実行される命令が、フロー図の1又は複数のブロック内に示される動作を実行するステップを提供するようにすることができる。コンピュータプログラム命令は、フロー図のブロック内に示す動作ステップの少なくともいくつかを同時に実行させることもできる。さらに、ステップのいくつかを、マルチプロセッサコンピュータシステムで行われるような形で複数のプロセッサにわたって実行することもできる。さらに、フロー図の1又はそれ以上のブロック又はブロックの組み合わせを、他のブロック又はブロックの組み合わせと同時に、或いは本発明の範囲又は思想から逸脱することなく図示の順序とは異なる順序で実行することもできる。
【0062】
従って、フロー図のブロックは、指定の動作を行うための手段の組み合わせ、指定の動作を行うためのステップの組み合わせ、及び指定の動作を行うためのプログラム命令手段をサポートする。また、指定の動作又はステップを実行する専用ハードウェアベースシステム、又は専用ハードウェアとコンピュータ命令の組み合わせによって、フロー図の個々のブロック、及びフロー図のブロックの組み合わせを実行することもできる。
【0063】
図5に、本発明の実施形態により実行できる例示的なプロセスの概要500を示す。いくつかの実施形態では、図2の印刷装置200、図3のモバイル装置300、及び/又は図4のネットワーク装置400上で実行される1又はそれ以上のアプリケーションによってプロセス500(及び/又は図6〜図9Cに示すプロセスの1又はそれ以上)を実施することができる。
【0064】
このプロセスは、開始ブロックからブロック502へ進み、特定の印刷装置のために、フォント戦略テーブル内にリストされた各ターゲットフォント参照のエミュレーション情報の事前処理を行う。ターゲットフォント名を使用して、個々のリストされたターゲットフォント名の、TrueTypeフォントファイルなどの対応するフォントファイルを生成し、各リストされたフォントの、ユニコードマッピングテーブル、グリフ符号化テーブル、及び文字幅テーブルなどの少なくとも3つのサブセットテーブルを生成する。フォント戦略テーブルへの最初のターゲットフォント名の投入は、自動及び/又は手動で行うことができる。また、フォント戦略テーブル内の各ターゲットフォント名に、印刷のために受け取ったターゲットフォントの後続処理に関する戦略又は論理を与える。また、新たなターゲットフォント名、論理、及び対応するフォントファイルが、事前処理中に最初にフォント戦略テーブルに含まれていない場合、時間とともにこれらを追加することもできる。また、サブセットテーブルに関するさらなる詳細は、少なくとも以下の図6〜図9Cに関する説明で見出すこともできる。
【0065】
次に、プロセスはブロック504へ進み、ここで印刷装置が、ターゲットフォント参照を含む印刷用の文書を受け取る。ブロック506において、受け取った文書に含まれる新たな又は既知の(単複の)ターゲットフォント参照、及び対応するフォント戦略テーブル内のエントリに少なくとも部分的に基づいて、ターゲットフォント参照のための代用フォントエミュレーション情報にアクセスする。プロセスはブロック508へ進み、アクセスした代用フォントのエミュレーション情報を利用して、印刷装置で文書を印刷する。プロセスはブロック510へ進み、その後に識別するための新たなターゲットフォント参照に関するアクセス情報、論理及び代用フォントエミュレーション情報を、フォント戦略テーブルに既知のフォント参照として記憶する。その後、プロセスは他の動作の処理に戻る。
【0066】
図6に、本発明の実施形態により実行できる例示的な事前処理プロセス600を示す。いくつかの実施形態では、図2の印刷装置200、図3のモバイル装置300、及び/又は図4のネットワーク装置400上で実行される1又はそれ以上のアプリケーションによってプロセス500(及び/又は図5、図7〜図9Cに示すプロセスの1又はそれ以上)を実施することができる。
【0067】
このプロセスは、開始ブロックからブロック602へ進み、特定の印刷装置による印刷のためにエミュレートされる各ターゲットフォント参照のフォント戦略テーブルを生成する。フォント戦略テーブル内の各エントリにターゲットフォント名を与える。また、フォント戦略テーブル内の各エントリの後続する印刷処理のための戦略又は論理も与える。フォント戦略テーブルへの最初のターゲットフォント名及び論理の投入は、自動及び/又は手動で行うことができる。ブロック604において、フォント戦略テーブル内にリストされた各ターゲットフォント名に、TrueTypeフォントファイルなどのフォントファイルを与える。ブロック606へ進み、各ターゲットフォント名の文字に対して、通常は少なくとも2つのサブセットテーブルを生成する。
【0068】
ブロック608へ進み、受け取った文書内のエミュレートされたターゲットフォント参照の印刷でその後に使用するために、フォント戦略テーブル内のターゲットフォント名エントリ、及び対応する論理、フォントファイル及びサブテーブルを記憶する。次に、プロセスは他の動作の処理に戻る。また、新たなターゲットフォント名、論理、及び対応するフォントファイルが、事前処理中に最初にフォント戦略テーブルに含まれていない場合、時間とともにこれらをフォント戦略テーブルに追加し、又は更新することもできる。また、フォント戦略テーブル内のターゲットフォントのためのエントリは、視覚的に同じように見え、提供された文書の本来のページ付け及び強制改行を実質的に維持する別の代用フォントでターゲットフォント参照をエミュレーションできるように選択され、この代用フォントを印刷装置によって印刷することができる。
【0069】
或いは、少なくとも1つの実施形態では、事前処理プロセス中にフォント戦略テーブルを提供せず、又はエントリを含まないフォント戦略テーブルを提供することもできる。このようにして、空のフォント戦略テーブルにエントリをランタイムで提供し、又はフォント戦略テーブル及びそのエントリをランタイム中に最初に作成して、事前処理プロセス中に作成しないようにする。
【0070】
図7に、本発明の実施形態により実行できる例示的なランタイム処理プロセス700を示す。いくつかの実施形態では、図2の印刷装置200、図3のモバイル装置300、及び/又は図4のネットワーク装置400上で実行される1又はそれ以上のアプリケーションによってプロセス700(及び/又は図5、図6、図8、及び図9A〜図9Cに示すプロセスの1又はそれ以上)を実行することができる。
【0071】
このプロセスは、開始ブロックからブロック702へ進み、ターゲットフォント参照を含む文書を受け取る。判定ブロック704において、受け取った文書内の(単複の)ターゲットフォント参照がフォント戦略テーブル内に存在するかどうかを判定する。これが真である場合、プロセスはブロック708へ進み、フォント戦略テーブルにアクセスしてターゲットフォントエミュレーション情報を識別する。
【0072】
プロセスは、ブロック710へ進み、フォント戦略テーブル内のターゲットフォント参照のためのエントリに対応する論理が、印刷装置上にエミュレーション情報が存在することを示すかどうかを判定する。示す場合、存在する代用フォントのためのターゲットフォントエミュレーション情報を、印刷装置で印刷する各文字の幅とともに指定する。プロセスがこれらの動作を以前に実行したと判断した場合、これらの動作の少なくとも一部を省略して、印刷のためにエミュレーション情報を印刷装置へ送信することができる。
【0073】
プロセスはブロック712へ進み、フォント戦略テーブル内のターゲットフォント参照のためのエントリに対応する論理が、代用フォントに関するエミュレーション情報が伸縮自在フォントであることを示すかどうかを判定する。示す場合、プロセスは、この伸縮自在フォント情報をダウンロードして、印刷装置で印刷する各文字の幅を指定する。伸縮自在フォント情報の特性は、セリフ及び高さなどを含むことができる。また、伸縮代用フォント情報は、ストローク幅及びセリフ高などの、各文字の少なくとも1つの調整可能パラメータを含むことができる。また、少なくとも1つの実施形態では、決定される伸縮自在フォントをマルチマスタフォントなどとすることができる。プロセスがこれらの動作を以前に実行したと判断した場合、これらの動作の少なくとも一部を省略して、印刷のためにエミュレーション情報を印刷装置へ送信することができる。
【0074】
ブロック714へ進み、フォント戦略テーブル内のターゲットフォント参照のためのエントリに対応する論理が、代用フォントのエミュレーション情報がダウンロード可能であることを示すかどうかを判定する。これが真である場合、プロセスは、印刷装置に提供する各文字のフォント情報及び幅をダウンロードする。次に、プロセスは他の動作の実行に戻る。しかしながら、ブロック714において、プロセスがこれらの動作を以前に実行したと判断した場合、これらの動作の少なくとも一部を省略して、印刷のためにエミュレーション情報を印刷装置へ送信することができる。
【0075】
或いは、決定ブロック704での判定が偽である場合、プロセスはブロック716へ進む。ブロック716において、プロセスは、ターゲットフォントデータをランタイム環境で利用できるかどうかを判定する。利用できる場合、プロセスは、このデータをロードして、ターゲットフォントデータ情報を印刷装置にダウンロードする。また、プロセスがこれらの動作を以前に実行したと判断した場合、これらの動作の少なくとも一部を省略して、印刷のためにエミュレーション情報を印刷装置へ送信することもできる。
【0076】
しかしながら、ブロック716における判定が偽である場合、プロセスは、利用可能なデフォルトターゲットフォント参照を選択する。プロセスはブロック708へ戻り、上述したものと実質的に同じプロセスを実行する。一方、ブロック716での判定が真である場合、プロセスは他の動作の実行に戻る。
【0077】
また、少なくとも1つの実施形態のランタイムプロセス中に、フォント戦略テーブルを、ターゲットフォント名、論理、代用フォント及び文字データを示す新たなエントリで更新することができる。
【0078】
図8に、本発明の実施形態により実行できる例示的な任意のプロセス800を示す。いくつかの実施形態では、図2の印刷装置200、図3のモバイル装置300、及び/又は図4のネットワーク装置400上で実行される1又はそれ以上のアプリケーションによってプロセス800(及び/又は図5〜図7、及び図9A〜図9Cに示すプロセスの1又はそれ以上)を実行することができる。
【0079】
このプロセスは、開始ブロックから判定ブロック802へ進み、受け取った文書に含まれる、印刷装置が認識していないターゲットフォントのためのエントリがフォント戦略テーブル内に存在しないかどうかを判定する。ブロック804において、少なくとも1つの実施形態では、ユーザが選択するための複数の代用フォントを表示する。また、少なくとも1つの実施形態では、ユーザが代用フォントを有料で購入することができる。選択した代用フォントを購入するための金銭取引はネットワークを介して行い、ユーザに関連する口座又はクレジットカードに請求することができる。また、少なくとも1つの実施形態では、複数の代用フォントからのユーザの選択を無料で提供することもできる。
【0080】
ブロック806へ進み、ユーザが選択するための別のフォント戦略テーブルを表示する。少なくとも1つの実施形態では、ユーザが、特定の印刷装置とともに使用するように識別された複数のフォント戦略テーブルから1つのフォント戦略テーブルを選択することができる。ブロック808において、選択した代用フォントの拡大縮小規則の表示をユーザに対して行う。少なくとも1つの実施形態では、少なくとも1つの拡大縮小規則をユーザが選択することにより、印刷装置で使用するために文字幅及びフォントサイズ(ポイントサイズ)の少なくとも一方を変更することができる。
【0081】
ブロック810へ進み、少なくともユーザによる代用フォント情報及び文字幅の選択をポインティングデバイスに提供する。次に、プロセスは他の動作の実行に戻る。
【0082】
図9Aに、ターゲットフォント名、戦略(論理)、代用フォント、及び文字データのためのエントリ又はフィールドを含む例示的なフォント戦略テーブル900を示す。通常は、システムごとに1つのフォント戦略テーブルが提供される。図9Bに、フォント戦略テーブルのエントリ内で識別される特定のフォント名の文字データに対応する例示的な文字テーブル910を示す。この例示的なサブテーブル910は、フォントごとのユニコードの範囲及びグリフインデックスのためのエントリを含む。図9Cに、文字テーブル910のグリフインデックスに対応する例示的な文字テーブル920を示す。この例示的な文字テーブル920は、少なくともフォントごとの幅及びグリフ名のためのエントリを含む。
【特許請求の範囲】
【請求項1】
モバイル装置が印刷装置において文書を印刷できるようにする方法であって、
テキストを含むとともに各文字の少なくとも1つのターゲットフォント参照を識別する前記文書を前記モバイル装置で受信するステップと、
前記ターゲットフォント参照の名前がフォント戦略テーブル内にリストされていることを確定し、対応する論理要素、代用フォントデータ、及び文字データのうちの少なくとも1つを使用して、各文字の代用フォント情報及び幅を前記印刷装置に提供するステップと、
前記印刷装置が、提供された各文字のフォント情報及び幅を使用して、前記文書に含まれるテキストを印刷できるようにするステップと、
を含むことを特徴とする方法。
【請求項2】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず、前記モバイル装置のためのランタイム環境でターゲットフォント情報が利用可能である場合、各文字の前記ターゲットフォント情報及び幅を前記印刷装置に提供するステップを含む、請求項1に記載の方法。
【請求項3】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが前記印刷装置の常駐フォントを識別するときは、各文字の前記常駐フォント情報及び幅を前記印刷装置に指示する、請求項1に記載の方法。
【請求項4】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが伸縮自在フォントを識別するときは、各文字の伸縮自在フォント情報及び幅を前記印刷装置に提供する、請求項1に記載の方法。
【請求項5】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルがダウンロード可能フォントを識別するときは、各文字の前記ダウンロード可能フォント情報及び幅を前記印刷装置に提供する、請求項1に記載の方法。
【請求項6】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず利用可能でない場合、各文字のデフォルトフォント情報及び幅を前記印刷装置に提供するステップを含む、請求項1に記載の方法。
【請求項7】
前記ターゲットフォント参照のための、少なくともグリフインデックス及びユニコードを含む第1の文字テーブルを生成するステップと、
前記ターゲットフォント参照のための、少なくとも幅及びグリフ名を含む第2の文字テーブルを生成するステップと、
をさらに含む、請求項1に記載の方法。
【請求項8】
ネットワークを介して情報を通信するように構成されたネットワークインターフェイスと、
情報を記憶して、前記情報にアクセスできるようにするメモリと、
命令を実行するプロセッサと、
を備えた、印刷装置で文書を印刷できるようにするための装置であって、
前記命令は、
テキストを含み、各文字の少なくとも1つのターゲットフォント参照を識別する文書を受信すること、
前記ターゲットフォント参照の名前がフォント戦略テーブル内にリストされている場合、対応する論理要素、代用フォントデータ、及び文字データのうちの少なくとも1つを使用して、各文字の代用フォント情報及び幅を前記印刷装置に提供すること、
前記印刷装置が、提供された各文字のフォント情報及び幅を使用して、前記文書に含まれるテキストを印刷できるようにすることを含むアクションを実行する、前記装置。
【請求項9】
前記アクションとして、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず、前記モバイル装置のためのランタイム環境でターゲットフォント情報が利用可能である場合、各文字の前記ターゲットフォント情報及び幅を前記印刷装置に提供することを更に含む、請求項8に記載の装置。
【請求項10】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが前記印刷装置の常駐フォントを識別すれば、各文字の前記常駐フォント情報及び幅を前記印刷装置に指示するアクションをさらに実行する、請求項8に記載の装置。
【請求項11】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが伸縮自在フォントを識別すれば、各文字の伸縮自在フォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項8に記載の装置。
【請求項12】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルがダウンロード可能フォントを識別すれば、各文字の前記ダウンロード可能フォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項8に記載の装置。
【請求項13】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず利用可能でない場合、各文字のデフォルトフォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項8に記載の装置。
【請求項14】
前記プロセッサは、
前記ターゲットフォント参照のための、少なくともグリフインデックス及びユニコードを含む第1の文字テーブルを生成すること、及び、
前記ターゲットフォント参照のための、少なくとも幅及びグリフ名を含む第2の文字テーブルを生成することを含むアクションをさらに実行する、請求項8に記載の装置。
【請求項15】
文書を印刷する印刷装置とモバイル装置とを備えた文書印刷システムであって、
前記モバイル装置が、
(i)ネットワークを介して情報を通信するように構成されたネットワークインターフェイスと、
(ii)情報を記憶して、前記情報にアクセスできるようにするメモリと、
(iii)命令を実行するプロセッサであって、
テキストを含み、各文字の少なくとも1つのターゲットフォント参照を識別する文書を受信すること、
前記ターゲットフォント参照の名前がフォント戦略テーブル内にリストされている場合、対応する論理要素、代用フォントデータ、及び文字データのうちの少なくとも1つを使用して、各文字の代用フォント情報及び幅を前記印刷装置に提供すること、
前記印刷装置が、提供された各文字のフォント情報及び幅を使用して、前記文書に含まれるテキストを印刷できるようにするアクションを実行する前記プロセッサと、
を備えた前記システム。
【請求項16】
前記アクションとして、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず、前記モバイル装置のためのランタイム環境でターゲットフォント情報が利用可能である場合、各文字の前記ターゲットフォント情報及び幅を前記印刷装置に提供することを更に含む、請求項15に記載のシステム。
【請求項17】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが前記印刷装置の常駐フォントを識別すれば、各文字の前記常駐フォント情報及び幅を前記印刷装置に指示するアクションをさらに実行する、請求項15に記載のシステム。
【請求項18】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが伸縮自在フォントを識別すれば、各文字の伸縮自在フォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項15に記載のシステム。
【請求項19】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルがダウンロード可能フォントを識別すれば、各文字の前記ダウンロード可能フォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項15に記載のシステム。
【請求項20】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず利用可能でない場合、各文字のデフォルトフォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項15に記載のシステム。
【請求項21】
前記プロセッサは、
前記ターゲットフォント参照のための、少なくともグリフインデックス及びユニコードを含む第1の文字テーブルを生成すること、及び、
前記ターゲットフォント参照のための、少なくとも幅及びグリフ名を含む第2の文字テーブルを生成することを含むアクションをさらに実行する、請求項15に記載のシステム。
【請求項22】
データ及び命令を含むプロセッサ可読な非推移記憶媒体であって、前記命令を実行することにより、印刷装置において文書を印刷するアクションが可能となり、
前記アクションとして、
テキストを含み、各文字の少なくとも1つのターゲットフォント参照を識別する前記文書をネットワーク装置において受信すること、
前記ターゲットフォント参照の名前がフォント戦略テーブル内にリストされている場合、対応する論理要素、代用フォントデータ、及び文字データのうちの少なくとも1つを使用して、各文字の代用フォント情報及び幅を前記印刷装置に提供すること、
前記印刷装置が、提供された各文字のフォント情報及び幅を使用して、前記文書に含まれるテキストを印刷できるようにすることを含む、前記媒体。
【請求項23】
前記アクションが、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず、前記ネットワーク装置のためのランタイム環境でターゲットフォント情報が利用可能である場合、各文字の前記ターゲットフォント情報及び幅を前記印刷装置に提供することをさらに含む、請求項22に記載の媒体。
【請求項24】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが前記印刷装置の常駐フォントを識別すれば、各文字の前記常駐フォント情報及び幅を前記印刷装置に指示する、請求項22に記載の媒体。
【請求項25】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが伸縮自在フォントを識別すれば、各文字の伸縮自在フォント情報及び幅を前記印刷装置に提供する、請求項22に記載の媒体。
【請求項26】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルがダウンロード可能フォントを識別すれば、各文字の前記ダウンロード可能フォント情報及び幅を前記印刷装置に提供する、請求項22に記載の媒体。
【請求項27】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず利用可能でない場合、各文字のデフォルトフォント情報及び幅を前記印刷装置に提供する、請求項22に記載の媒体。
【請求項28】
前記ターゲットフォント参照のための、少なくともグリフインデックス及びユニコードを含む第1の文字テーブルを生成すること、
前記ターゲットフォント参照のための、少なくとも幅及びグリフ名を含む第2の文字テーブルを生成することをさらに含む、請求項22に記載の媒体。
【請求項1】
モバイル装置が印刷装置において文書を印刷できるようにする方法であって、
テキストを含むとともに各文字の少なくとも1つのターゲットフォント参照を識別する前記文書を前記モバイル装置で受信するステップと、
前記ターゲットフォント参照の名前がフォント戦略テーブル内にリストされていることを確定し、対応する論理要素、代用フォントデータ、及び文字データのうちの少なくとも1つを使用して、各文字の代用フォント情報及び幅を前記印刷装置に提供するステップと、
前記印刷装置が、提供された各文字のフォント情報及び幅を使用して、前記文書に含まれるテキストを印刷できるようにするステップと、
を含むことを特徴とする方法。
【請求項2】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず、前記モバイル装置のためのランタイム環境でターゲットフォント情報が利用可能である場合、各文字の前記ターゲットフォント情報及び幅を前記印刷装置に提供するステップを含む、請求項1に記載の方法。
【請求項3】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが前記印刷装置の常駐フォントを識別するときは、各文字の前記常駐フォント情報及び幅を前記印刷装置に指示する、請求項1に記載の方法。
【請求項4】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが伸縮自在フォントを識別するときは、各文字の伸縮自在フォント情報及び幅を前記印刷装置に提供する、請求項1に記載の方法。
【請求項5】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルがダウンロード可能フォントを識別するときは、各文字の前記ダウンロード可能フォント情報及び幅を前記印刷装置に提供する、請求項1に記載の方法。
【請求項6】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず利用可能でない場合、各文字のデフォルトフォント情報及び幅を前記印刷装置に提供するステップを含む、請求項1に記載の方法。
【請求項7】
前記ターゲットフォント参照のための、少なくともグリフインデックス及びユニコードを含む第1の文字テーブルを生成するステップと、
前記ターゲットフォント参照のための、少なくとも幅及びグリフ名を含む第2の文字テーブルを生成するステップと、
をさらに含む、請求項1に記載の方法。
【請求項8】
ネットワークを介して情報を通信するように構成されたネットワークインターフェイスと、
情報を記憶して、前記情報にアクセスできるようにするメモリと、
命令を実行するプロセッサと、
を備えた、印刷装置で文書を印刷できるようにするための装置であって、
前記命令は、
テキストを含み、各文字の少なくとも1つのターゲットフォント参照を識別する文書を受信すること、
前記ターゲットフォント参照の名前がフォント戦略テーブル内にリストされている場合、対応する論理要素、代用フォントデータ、及び文字データのうちの少なくとも1つを使用して、各文字の代用フォント情報及び幅を前記印刷装置に提供すること、
前記印刷装置が、提供された各文字のフォント情報及び幅を使用して、前記文書に含まれるテキストを印刷できるようにすることを含むアクションを実行する、前記装置。
【請求項9】
前記アクションとして、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず、前記モバイル装置のためのランタイム環境でターゲットフォント情報が利用可能である場合、各文字の前記ターゲットフォント情報及び幅を前記印刷装置に提供することを更に含む、請求項8に記載の装置。
【請求項10】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが前記印刷装置の常駐フォントを識別すれば、各文字の前記常駐フォント情報及び幅を前記印刷装置に指示するアクションをさらに実行する、請求項8に記載の装置。
【請求項11】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが伸縮自在フォントを識別すれば、各文字の伸縮自在フォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項8に記載の装置。
【請求項12】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルがダウンロード可能フォントを識別すれば、各文字の前記ダウンロード可能フォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項8に記載の装置。
【請求項13】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず利用可能でない場合、各文字のデフォルトフォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項8に記載の装置。
【請求項14】
前記プロセッサは、
前記ターゲットフォント参照のための、少なくともグリフインデックス及びユニコードを含む第1の文字テーブルを生成すること、及び、
前記ターゲットフォント参照のための、少なくとも幅及びグリフ名を含む第2の文字テーブルを生成することを含むアクションをさらに実行する、請求項8に記載の装置。
【請求項15】
文書を印刷する印刷装置とモバイル装置とを備えた文書印刷システムであって、
前記モバイル装置が、
(i)ネットワークを介して情報を通信するように構成されたネットワークインターフェイスと、
(ii)情報を記憶して、前記情報にアクセスできるようにするメモリと、
(iii)命令を実行するプロセッサであって、
テキストを含み、各文字の少なくとも1つのターゲットフォント参照を識別する文書を受信すること、
前記ターゲットフォント参照の名前がフォント戦略テーブル内にリストされている場合、対応する論理要素、代用フォントデータ、及び文字データのうちの少なくとも1つを使用して、各文字の代用フォント情報及び幅を前記印刷装置に提供すること、
前記印刷装置が、提供された各文字のフォント情報及び幅を使用して、前記文書に含まれるテキストを印刷できるようにするアクションを実行する前記プロセッサと、
を備えた前記システム。
【請求項16】
前記アクションとして、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず、前記モバイル装置のためのランタイム環境でターゲットフォント情報が利用可能である場合、各文字の前記ターゲットフォント情報及び幅を前記印刷装置に提供することを更に含む、請求項15に記載のシステム。
【請求項17】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが前記印刷装置の常駐フォントを識別すれば、各文字の前記常駐フォント情報及び幅を前記印刷装置に指示するアクションをさらに実行する、請求項15に記載のシステム。
【請求項18】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが伸縮自在フォントを識別すれば、各文字の伸縮自在フォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項15に記載のシステム。
【請求項19】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルがダウンロード可能フォントを識別すれば、各文字の前記ダウンロード可能フォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項15に記載のシステム。
【請求項20】
前記プロセッサは、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず利用可能でない場合、各文字のデフォルトフォント情報及び幅を前記印刷装置に提供するアクションをさらに実行する、請求項15に記載のシステム。
【請求項21】
前記プロセッサは、
前記ターゲットフォント参照のための、少なくともグリフインデックス及びユニコードを含む第1の文字テーブルを生成すること、及び、
前記ターゲットフォント参照のための、少なくとも幅及びグリフ名を含む第2の文字テーブルを生成することを含むアクションをさらに実行する、請求項15に記載のシステム。
【請求項22】
データ及び命令を含むプロセッサ可読な非推移記憶媒体であって、前記命令を実行することにより、印刷装置において文書を印刷するアクションが可能となり、
前記アクションとして、
テキストを含み、各文字の少なくとも1つのターゲットフォント参照を識別する前記文書をネットワーク装置において受信すること、
前記ターゲットフォント参照の名前がフォント戦略テーブル内にリストされている場合、対応する論理要素、代用フォントデータ、及び文字データのうちの少なくとも1つを使用して、各文字の代用フォント情報及び幅を前記印刷装置に提供すること、
前記印刷装置が、提供された各文字のフォント情報及び幅を使用して、前記文書に含まれるテキストを印刷できるようにすることを含む、前記媒体。
【請求項23】
前記アクションが、前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず、前記ネットワーク装置のためのランタイム環境でターゲットフォント情報が利用可能である場合、各文字の前記ターゲットフォント情報及び幅を前記印刷装置に提供することをさらに含む、請求項22に記載の媒体。
【請求項24】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが前記印刷装置の常駐フォントを識別すれば、各文字の前記常駐フォント情報及び幅を前記印刷装置に指示する、請求項22に記載の媒体。
【請求項25】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルが伸縮自在フォントを識別すれば、各文字の伸縮自在フォント情報及び幅を前記印刷装置に提供する、請求項22に記載の媒体。
【請求項26】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされている場合、前記フォント戦略テーブルがダウンロード可能フォントを識別すれば、各文字の前記ダウンロード可能フォント情報及び幅を前記印刷装置に提供する、請求項22に記載の媒体。
【請求項27】
前記ターゲットフォント参照の名前が前記フォント戦略テーブル内にリストされておらず利用可能でない場合、各文字のデフォルトフォント情報及び幅を前記印刷装置に提供する、請求項22に記載の媒体。
【請求項28】
前記ターゲットフォント参照のための、少なくともグリフインデックス及びユニコードを含む第1の文字テーブルを生成すること、
前記ターゲットフォント参照のための、少なくとも幅及びグリフ名を含む第2の文字テーブルを生成することをさらに含む、請求項22に記載の媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9A】
【図9B】
【図9C】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9A】
【図9B】
【図9C】
【公開番号】特開2012−168953(P2012−168953A)
【公開日】平成24年9月6日(2012.9.6)
【国際特許分類】
【外国語出願】
【出願番号】特願2012−42408(P2012−42408)
【出願日】平成24年2月10日(2012.2.10)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.WCDMA
2.HDMI
【出願人】(511235113)シーエスアール テクノロジー インコーポレイテッド (1)
【Fターム(参考)】
【公開日】平成24年9月6日(2012.9.6)
【国際特許分類】
【出願番号】特願2012−42408(P2012−42408)
【出願日】平成24年2月10日(2012.2.10)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.WCDMA
2.HDMI
【出願人】(511235113)シーエスアール テクノロジー インコーポレイテッド (1)
【Fターム(参考)】
[ Back to top ]