説明

フォントを管理する方法及び装置

【課題】プリンタにより利用されるフォントについて、プリンタに送信する必要のあるデータの量を減少させる。
【解決手段】フォントマネジャ7は、プリンタ2のメモリ10内に未だ格納されていない、プリンタ2の実行するプリントジョブ内のフォントを特定し、特定されたフォントに対応するフォントデータ6−1;・・・;6−kを、後続のプリントジョブを実行する際に利用するために上記プリンタメモリ10内にダウンロードして格納させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、フォントを処理することに関する。特に、本発明は、プリンタにより利用されるフォントを与えて処理する方法及び装置に関する。
【背景技術】
【0002】
従来、コンピュータからドキュメントを印刷するとき、そのドキュメントを作成するために、若しくは見るために、ワードプロセッサなどのアプリケーションが利用される。ユーザがドキュメントをプリントアウトすることを望むとき、特定のプリンタにより利用され得るフォーマットにドキュメントデータを翻訳する、コンピュータ上に備えられるプリンタドライバに、アプリケーションはドキュメントデータを送信する。プリントジョブがプリンタにより受信されると、プリンタはプリントジョブに含まれる命令を解釈し、ドキュメントを1部複写する。
【0003】
プリンタがドキュメント内に現れる文字を特定のフォントでプリントするために、プリンタは、そのフォントに示される個別の文字若しくはグリフの各々の外観を規定するフォントデータへのアクセスを必要とする。ビットマップフォントの場合、このフォントデータはピクセルのアレイのフォームである。アウトライン若しくはベクトルフォントの場合、フォントデータは、ライン及びカーブの数学的記述のフォームである。
【0004】
通常ドキュメントをプリントアウトするときは、プリンタドライバは、プリンタへ送信されるプリントジョブの一部としてこのフォントデータを含む。多数の文字種を含む中国語や日本語などの特定の言語の場合、一つの言語で利用される文字種の全てを規定するのに必要なフォントデータの量は、非常に大きいものとなり得る。このデータがプリンタに送信されると、一つのフォントが利用される毎に、個々のプリントジョブのために非常に大量のデータが送信されることが必要である。
【0005】
従来技術のシステムがこの問題を扱う一つの方法は、埋め込みフォントの利用によるものである。埋め込みフォントは、プリンタ上に予め格納されたフォントである。これらの埋め込みフォントはテキストをプリントするのに利用され、関連フォントグリフがダウンロードされる必要は無い。関連するプリンタドライバには、そのフォントがプリンタ内部に埋め込まれているという情報が備わる。プリンタドライバが埋め込みフォントのみ利用するプリントジョブをフォーマットするように要求されると、プリンタドライバはプリンタに送信されるデータ内にフォントデータを含める。
【発明の概要】
【発明が解決しようとする課題】
【0006】
埋め込みフォントを利用するとプリンタに送信する必要のあるデータの量は減少するが、埋め込みフォントの利用には幾つかの問題がある。
【0007】
埋め込みフォントを利用することの一つの問題点は、埋め込みフォントはスクリーンフォントと必ずしも一致しないということである。例えば、プリンタには、対応するアプリケーションにより利用されているフォントのより古いバージョンであるタイプフェースのバージョンが、埋め込まれていることがある。その場合、このことは、スクリーンフォントはプリントされるフォントと異なる、ということを意味する。
【0008】
埋め込みフォントを利用することの主たる問題点は、一つのドキュメント内部で利用されるフォントがプリンタ内部に予め格納されるものの一つではない場合、ドキュメントをプリントするためフォントデータがプリンタに更にダウンロードされねばならない、ということである。
【課題を解決するための手段】
【0009】
本出願の一つの形態に従って、フォントデータを管理する方法であって、
プリンタのメモリ内にフォントデータがそのために未だ格納されていない、実行されるべきプリントジョブ内のフォントを特定するステップと、
上記特定されたフォントのためのみのフォントデータを含むプリントジョブを生成するステップと、
上記生成されたプリントジョブを実行するステップと
を含み、
上記特定されたフォントに対応するフォントデータをダウンロードし、後続のプリントジョブを実行する際に利用するために上記プリンタメモリ内に上記フォントデータを格納するステップを、更に含むことを特徴とする方法が、提示される。
【0010】
本発明の実施形態は、フォントデータを格納するように動作するメモリを有するプリンタにより実行されるプリンタジョブを、フォントマネジャがモニタするプリントシステムを提示する。フォントマネジャは、プリンタのメモリ内に未だ格納されていない、プリンタの実行するプリントジョブ内のフォントを特定し、特定されたフォントに対応するフォントデータを、後続のプリントジョブを実行する際に利用するために上記プリンタメモリ内にダウンロードして格納させるように、構成される。このように、プリンタのメモリ内に未だ存在しないフォントデータのみ含むプリントジョブを、コンピュータに生成させることにより、プリントジョブのサイズが減少され、これにより、そのプリントジョブが生成されプリンタに送信される速度が増大する。
【0011】
フォントマネジャは、プリンタ上に設けられても、コンピュータ内部に設けられても、通信ネットワークを介してプリンタ及びコンピュータと接続するプリンタサーバの部分として設けられてもよい。
【0012】
以下の記載及び添付の図面を参照して、本発明の更なる形態及び実施形態が明らかになる。
【図面の簡単な説明】
【0013】
【図1】図1は、本発明の第1の実施形態に係るプリンタとコンピュータの概略ブロック図である。
【図2】図2は、プリントジョブの間に図1のコンピュータのプリンタドライバにより為される処理のフロー図である。
【図3】図3は、プリントジョブの間に図1のプリンタのフォントマネジャにより為される処理のフロー図である。
【図4】図4は、本発明の第2の実施形態に係るプリンタネットワークの概略ブロック図である。
【発明を実施するための形態】
【0014】
第1の実施形態
図1は、双方向通信リンク3を介してプリンタ2に接続されるコンピュータ1の概略ブロック図である。ドキュメントを作成するワードプロセッサなどのアプリケーション4とプリンタドライバ5は、アプリケーション4により利用され得る種々の可能なフォントを規定するフォントデータ6−1;・・・;6−kとともにコンピュータ1のメモリ内に格納される。
【0015】
利用時にユーザが生成されたドキュメントをプリントアウトすることを望めば、アプリケーション4は、プリンタ2にドキュメントをアウトプットさせるプリントジョブを生成するプリンタドライバ5を呼び出す。このプリントジョブは、双方向リンク3を介して、プリントジョブを実行しドキュメントをプリントするプリンタ2に、転送される。
【0016】
プリンタ2上には、フォントデータを管理するフォントマネジャ7、プリンタ2にドキュメントをプリントさせるプリンタドライバ5により生成されるプリントジョブを処理するプリンタコントロールモジュール8、埋め込みフォントメモリ9及びプリンタメモリ10が、設けられる。従来のプリンタのように、埋め込みフォントメモリは、多数の埋め込みフォントのためのグリフの形状を規定するフォントデータ11−1;・・・;11−nを含む。このデータは、プリンタ2が製造されるときに埋め込みフォントメモリ内に予め格納される。同じ埋め込みフォントデータが同じタイプの全てのプリンタ上に予め格納されるので、プリンタドライバ5は、これらの予め格納されたフォントの識別を知らされており、これらのフォントを利用するドキュメントをプリントアウトする際、より小さいプリントジョブを定式化するのにこの知識を利用する。
【0017】
以下に説明するように、フォントマネジャ7は、プリントジョブの受信をモニタし、ダウンロードされたフォントを識別するリスト13と、一つのフォントが利用された回数及び種々のフォントの利用の頻度を示す統計データ14と共に、プリンタメモリ10内に格納される追加のフォントデータ12−1;・・・;12−mのダウンロードを調整するように、構成される。その後フォントマネジャ7はプリンタドライバ5と連動し、これによりプリンタドライバ5は、埋め込みフォントに加えられたフォントがドキュメント内で利用される際に、より小さいジョブを生成するのに、格納されたこれら追加のフォントを利用することができる。よってこのように、プリンタ2がプリントジョブを受信し処理する速度は増加される。
【0018】
プリンタドライバ5と、プリンタにプリントジョブをさせ得るフォントマネジャ7とにより為される処理を、図2及び図3を参照して以下に説明する。
【0019】
プリンタドライバにより為される処理
プリンタドライバ5により為される処理のフロー図である図2を参照して、以下詳細に説明する。
【0020】
プリンタドライバ5は、プリンタ2が実行するためにプリントジョブを策定するように要求するプリントリクエストをアプリケーションから受け取ると(s2−1)、呼び出される。プリンタドライバ5が最初呼び出されると(s2―2)、プリントリクエストを解析し要求されたドキュメントをプリントするのに必要なフォントの全てのリストを生成する。プリンタドライバ5は、プリントジョブのコーディング内で、利用されているフォントを識別することにより、このリストを展開する。
【0021】
プリンタドライバ5は続いて、プリンタ2の埋め込みフォントメモリ9内に格納された埋め込みフォント11−1;・・・;11−nに対応するフォントをリストから除去することで、生成されたリストにフィルタをかける(s2−3)。特別のプリンタ2と共に利用するプリンタドライバ5は、埋め込みフォント11−1;・・・;11−nに関する情報を有することになる。これらのフォントは工場でプリンタ2の埋め込みフォントメモリ9内に予め格納され、これにより、プリンタ2の開発時にこの情報がプリンタドライバ5内に含まれ得るからである。プリンタドライバ5は、双方向リンク3を介してプリンタのフォントマネジャ7に、フィルタされたリストを送信する。後で詳しく説明するように、フォントマネジャ7は、受信したフィルタされたリストを利用し始め、現在のプリントジョブをプリントするのに必要なフォントデータを識別してこのリストを双方向リンク3を介してプリンタドライバ5に送信し戻す。
【0022】
要求されたフォントのリストがフォントマネジャ7により生成されコンピュータ1に送信し戻されると、リストはプリンタドライバ5により受信される(s2−4)。プリンタドライバ5は、要求されたフォントのこのリストの受信に応答し、要求されたフォントに対応するフォントデータ6−1;・・・;6−kと共に、プリンタ2によりプリントされるテキスト及び画像データを含むプリントジョブを、生成する。このプリントジョブデータは双方向リンク3を介してプリンタ2に送信され、プリントジョブがプリンタ2に受信されると、プリンタコントロールモジュール8は、埋め込みフォントメモリ9若しくはプリンタメモリ10内に格納されたフォントデータ11−1;・・・;11−n;12−1;・・・;12−mと共に、受信されたプリントジョブデータを利用して、プリンタ2に、プリントジョブに対応するドキュメントをプリントアウトさせる。
【0023】
後で説明するように、フォントマネジャ7は、フォントの利用をモニタし、埋め込みフォントメモリ9内に埋め込みフォントデータ11−1;・・・;11−nとして、若しくは、プリンタメモリ10内にフォントデータ12−1;・・・;12−nとして、現在格納されていない、プリントジョブ内に現れるフォントに対応するフォントデータ6−1;・・・;6−kを、コンピュータ1から要求するように、構成されている。このように、フォントマネジャ7は、最も頻繁に利用されるフォントに対応するフォントデータがプリンタ2上に存在するため、プリンタ2に送信されるプリントジョブ内に含まれる必要がないことを、保証できる。このことにより、プリントジョブのサイズが小さくなり、よって、ドキュメントがプリンタ2によりディスパッチされ処理される速度が速くなる。
【0024】
フォントマネジャにより為される処理
コンピュータ1からプリンタメモリ10へのフォントデータ6−1;・・・;6−kのダウンロードを管理するフォントマネジャ7により為される処理は、この処理を示すフロー図である図3を参照して、以下詳細に示される。
【0025】
プリンタ2が、双方向リンク3を介してプリンタドライバ5から、新しいプリントジョブを実行するように要求されるフォントリストのためのリクエストを受信すると、フォントマネジャ7は最初呼び出される(s3−1)。上記のように、この実施形態では、このリクエストは、プリントアウトされるドキュメント内に現れるフォントのリストの形式であり、埋め込みメモリ9内に格納される埋め込みフォント11−1;・・・;11−nに対応するフォントは除去されている。
【0026】
このリストが受信されると、フォントマネジャ7は、プリンタメモリ10内に格納されるフォントリスト13と、受信したリストを比較する(s3−2)。プリンタメモリ10内に格納されたフォントリスト13は、フォントデータ12−1;・・・;12−mがプリンタメモリ10内に既に格納されているフォントを識別するので、この比較により、フォントマネジャ7は、要求されたプリントジョブを実行するのに追加のフォントデータが要求されるかどうかを識別できる。
【0027】
要求されたフォントの全てがプリンタメモリ10上に存在する場合には、フォントマネジャ7は、ヌルリストの生成を始め、コンピュータ1上のプリンタドライバ5に戻す。上述のように、そのリストを受け取ることで、プリンタドライバは、フォントデータを含まないプリントジョブを生成しディスパッチする。このプリンタジョブがプリンタ2に受信されると、プリンタコントロールモジュール8は、埋め込みフォントデータ11−1;・・・;11−nと、プリンタメモリ10内に格納されるフォントデータ12−1;・・・;12−mとを利用して、プリントジョブに対応するドキュメントをプリントアウトし、ドキュメント内に示されるキャラクタの描出を生成する。
【0028】
フォントマネジャ7が、コンピュータ1上のプリンタドライバ7にヌルリストをディスパッチした後、フォントマネジャ7はプリンタメモリ10内に格納された利用統計14の更新を始める(s3−4)。特に、フォントマネジャ7が、プリンタドライバ5から受信したフォントリスト内に現れるフォントの各々に関連する利用統計をインクリメントすることを始め、リスト内に現れるフォントの各々が利用される機会の数を示すデータを1だけインクリメントし、現在の回数を識別するため、リスト内に現れるフォントの各々が利用された最新の機会を識別するデータを設定する。
【0029】
フォントマネジャ7がプリンタドライバ5からフォントのリストを受信するとき、フォントマネジャ7が、受信されたリストにより識別されるフォントの全てが、プリンタメモリ10内に格納されたフォントリスト13上に現れるフォントに、対応しているわけではない、と判断すると、フォントマネジャ7は、欠落したフォントを識別するリストの生成を開始して、コンピュータ1上のプリンタドライバ5に戻す(s3−5)。
【0030】
上述のように、このリストを受け取ると、プリンタドライバ5は、これら欠落したフォントのためのフォントデータ6−1;・・・;6−kを含むプリンタジョブを生成してディスパッチする。このプリントジョブがプリンタ2に受信されると、プリンタコントロールモジュール8は、このフォントデータ6−1;・・・;6−kと、埋め込みフォントデータ11−1;・・・;11−nと、プリンタメモリ10内に格納されるフォントデータ12−1;・・・;12−mとを利用して、プリントジョブに対応するドキュメントをプリントアウトし、ドキュメント内に示されるキャラクタの描出を生成する。
【0031】
フォントマネジャ7が、要求されたフォントのリストをプリンタドライバ5にディスパッチした後、フォントマネジャ7は、要求されたフォントについてのサイズの情報を要求する更なるメッセージを生成し、プリンタドライバ5にディスパッチする(s3−6)。この実施形態では、サイズの情報のためのこのリクエストは、要求されたフォントのリストのプリンタドライバ5への戻りから独立して、生成されてディスパッチされ、プリンタドライバ5の要求する処理の量を減少させてプリントジョブを完成して生成し、更に、プリントジョブデータのディスパッチに先行してプリンタドライバ5が更なる処理を為すことを要求することで生成され得る遅延を回避する。別の実施形態では、プリンタドライバ5は、要求されたフォントに対応するフォントデータ6−1;・・・;6−kのサイズを決定することで、要求されたフォントリストの受信に自動的に応答するように、構成され得る。
【0032】
サイズの情報のためのリクエストが、フォントマネジャ7によりディスパッチされた(s3−6)後、フォントマネジャ7は、リクエストされた情報がプリンタドライバ5に受信されることを待つ(s3−7)。サイズの情報が受信されると(s3−7)、予めディスパッチされたリクエストされたフォントリスト内に現れるフォントの各々のためのデータが特定され、識別されたフォントの各々を格納するのに要求されるメモリの量を特定するデータが特定される。
【0033】
プリンタメモリ10内部に充分なメモリがあれば、フォントマネジャ7は、更なるフォントデータのために、リクエストをプリンタドライバ5に送信する(s3−9)。それに応じて、プリンタドライバ5は、リクエストされたフォントに対応するフォントデータ6−1;・・・;6−kのコピーを双方向リンク3を介して転送させる。このフォントデータ6−1;・・・;6−kがプリンタ2により受信されると、フォントマネジャ7はこのフォントデータをプリンタメモリ10内に格納させる。このことにより、最も最近のプリントジョブ内に現れるフォントに対応するフォントデータがプリンタメモリ10内に格納されることが保証され、プリンタドライバ5が後続のプリントジョブ内にそのデータを含んでしまうことを回避できるようになる。
【0034】
フォントマネジャ7が、更なるフォントを格納するのに要求されるメモリに対して、利用可能なメモリの量を対照する(s3−8)とき、フォントマネジャ7がプリンタメモリ10が充分な利用可能なメモリを有していないと判定すると、フォントマネジャ7はプリンタメモリ10から消去するためのフォントを選択し始める(s3−10)。特に、フォントマネジャは、メモリ10内に格納された利用統計14に基づいて、消去のためのフォントデータ12−1;・・・;12−mを選択する。
【0035】
この実施形態では、最も少ない回数利用されたフォントをフォントマネジャ7が消去するように選択することにより、このことが達成される。2つ若しくはそれ以上のフォントがこのテストによって識別されると、この実施形態ではフォントマネジャ7は最も長い期間利用されなかったフォントを選択するように構成されている。このことによりフォントマネジャ7が消去するためのフォントを一つも選択できない場合、フォントマネジャ7は、最も少ない回数利用され最も長い期間利用されなかった、最も大きいメモリ量を示すフォントを選択する。
【0036】
消去すべきフォントを選択すると、フォントマネジャ7は選択されたフォントを消去し始める(s3−11)。続いてフォントマネジャ7は、最新のプリントジョブのためにリクエストされたフォントデータを格納するのに、充分なメモリが利用可能であるか再び決定する(s3−8)。利用可能でないならば、フォントマネジャ7はプリンタメモリ10から更にフォント12−1;・・・;12−mを選択して消去し、その後、最新のプリントジョブのためにリクエストされたフォントデータを格納するのに、充分なメモリが利用可能であるか再び決定する(s3−8)。
【0037】
フォントマネジャ7が、更なるフォントのためにプリンタメモリ12内に充分なメモリが利用可能であると決定すると(s3−9)、フォントマネジャ7はプリンタドライバ5への六エストを生成し双方向リンク3を介してディスパッチし、フォントデータ6−1;・・・;6−kのコピーをプリンタ2に送信するように要求する。プリンタドライバがこのリクエストを受信すると、プリンタドライバ5は応答して、リクエストされたフォントデータ6−1;・・・;6−kをプリンタ2へディスパッチする。このデータがプリンタ2に受信されると、フォントマネジャ7は、受信されたデータを、後続のプリントジョブで利用するためのフォントデータ12−1;・・・;12−mとしてプリンタメモリ10内に格納させる。
【0038】
最後に、受信したフォントデータを格納する際、フォントマネジャ7はプリンタメモリ10に格納された利用統計14の更新を開始し(s3−4)、リスト内に現れるフォントの各々が利用された回数を示す、受信されたフォントの各々に係る利用統計を1だけインクリメントし、リスト内に現れるフォントの各々が利用され最新の時期を識別する最新時期を示すデータを設定する。
【0039】
プリントジョブのためにリクエストされたフォントのみを識別してダウンロードし、一般に利用されるフォントを格納することで、不必要なフォントの転送が回避され、これによりプリンタの効力が向上する。上述のようにフォントをダウンロードすることでスクリーン上のフォントに対応しない埋め込みフォントを利用する際の問題が克服される。個々のダウンロードされたフォントがフォントのスクリーン表示を生成するのに利用されるフォントデータと等しいからである。
【0040】
第2の実施形態
前述の実施形態では、フォントマネジャ7及びプリンタドライバ5が、夫々、プリンタ2及びコンピュータ3上に設けられているシステムを説明した。更なる実施形態では、本発明がコンピュータ及びプリンタのネットワークにいかに適用されるかを示すものである。
【0041】
図4は、通信リンクにより複数のプリンタ30及びプリンタサーバ20に接続する複数のコンピュータ1を伴うプリンタネットワークの概略ブロック図である。この実施形態のコンピュータ1は、前述の実施形態のものと同じであり、前述のように、夫々メモリ内にアプリケーション4、プリンタドライバ5及びフォントデータ6−1;・・・;6−kを格納する。
【0042】
利用の際ユーザが生成されたドキュメントをプリントアウトすることを望むとき、前述の実施形態とは異なり、コンピュータ1の各々の上のプリンタドライバ5は、プリンタサーバ20と通信するように構成されている。続いてプリンタサーバ20はプリントリクエストを処理し、リクエストされたプリントジョブをプリントアウトする適切なプリンタ30へリクエストを転送する。
【0043】
コンピュータ1からプリンタ30へのフォントデータ6−1;・・・;6−kのフローを管理するために、本実施形態のプリントサーバ20は、フォントマネジャ21、プリンタ30の各々に関してフォントデータの利用及び格納を記録する利用統計22のセット、個々のプリンタ30のメモリに格納されるフォントを識別する個々のプリンタ30に関するフォントリスト23−1;・・・;23−nを、格納するように構成されている。プリンタサーバ20は、プリントジョブがプリンタ30上で実行されるように、プリントジョブデータ24−1;・・・;24−kを受信し格納するようにも構成されている。
【0044】
前述の実施形態のようにユーザがドキュメントをプリントアウトすることを望めば、本実施形態では、ユーザのコンピュータ1上に存在するプリンタドライバ5は最初、リクエストされる可能性のあるフォントのリストを転送する。このリストは、プリンタサーバ20に受信され、ユーザが利用を望むことを特定したプリンタ30に関するフォントリスト23−1;・・・;23−nと、フォントマネジャ20により比較される。続いてフォントマネジャ21は、上述と同様にしてリクエストの処理を開始し、リクエストされたフォントのリストを特定し、利用統計を更新し、フォントデータのダウンロードを調整し選択されたプリンタ30のメモリの中に格納する。
【0045】
上述の間に、プリンタドライバ5はプリントジョブを生成しプリンタサーバ20にディスパッチする。実行のためにプリンタへディスパッチされる前に、生成されたプリントジョブ24−1;・・・;24−kはプリンタサーバ20上のプリントキュー内に格納される。プリントジョブ24−1;・・・;24−kをこのように格納することで、プリントジョブをキャンセルしたり再スケジュールしたりすることが可能となり、更に、例えば、プリンタ30がスイッチオフされているとき等プリンタサーバ20とプリンタ30の間で通信障害が発生した場合にプリントジョブのコピーが維持されることが、保証される。
【0046】
プリンタが単体のコンピュータに接続する第1の実施形態とは異なり、本発明がネットワーク状況内に実装される場合、ネットワーク通信が機能しなくなり命令やデータが損失してしまうかもしれないことから、複数の更なる問題が生じる。更に、ネットワーク環境ではプリンタ30には揮発性メモリしか設けられないこともあり、従って前にダウンロードされたフォントデータが損失するかもしれない。
【0047】
これらの問題は全て、フォントマネジャ21とネットワークプリンタ30が周期的に相互にポーリングし個々のプリンタの現在の利用可能性を確認することで、対処され得る。
【0048】
従って、例えば、プリンタ30の各々は、最初スイッチオンされると常に、プリンタサーバ20にコンタクトするように構成され得る。これらプリンタが揮発性メモリストレージのみ含むのであれば、フォントマネジャ21は、その信号の受信に応じて、プリンタ30に関連するフォントリスト23−1;・・・;23−nをクリアするように構成され得る。
【0049】
同様に、プリンタサーバ20は、実行するためにプリントジョブ24−1;・・・;24−kをプリンタ30にディスパッチする前に、特定のプリンタ30がオンラインされていたことをチェックするように構成され得る。プリンタサーバ20は、特定のプリンタ30から適切な応答が受信されるまでプリントジョブ24−1;・・・;24−kを一時停止するように構成され得る。フォントのダウンロードを管理するために、プリンタサーバ20は、特定のプリントジョブが実行されたことをプリンタから確認するためにモニタするようにも構成され得る。そのようなシステムでは、プリントジョブが完了したことを示す信号を受信する前に、プリンタがまさにスイッチオンされたことを示す信号がプリンタ30から受信されるならば、このことはプリンタ30はこの期間でスイッチオフされたことを示す。よってプリンタがスイッチオフされたときに損失したフォントに取って代わるために、予め存在するプリントジョブに依存するフォントがプリンタ30のメモリ内にダウンロードされるまで、フォントマネジャ21は、ドキュメントをプリントすることを遅延させるように構成され得る。
【0050】
更なる実施形態及び変形
フォントマネジャ7がプリンタ2上に配置される、若しくは、フォントマネジャ21プリンタサーバ20上に配置される、上述の二つの実施形態に加えて、当然ながら、プリンタドライバ5に対してホストとなるコンピュータ3のメモリ内にフォントマネジャが設置されることもある。フォントマネジャが外部のプリンタと通信してそのプリンタのメモリ内へのフォントデータのダウンロードを調整するという点において、そのようなフォントマネジャの機能は第2の実施形態のフォントマネジャと類似する。予め存在するプリントジョブが実行され得るように更なるフォントデータのダウンロードを調整するためには、プリンタドライバとフォントマネジャがプリンタがスイッチオフされるときには常に協動する必要があるので、揮発性メモリ内部にプリンタがフォントデータを維持するシステムでは、更なる警戒が為される必要がある。
【0051】
複数のコンピュータをひとつ又はそれ以上のプリンタに接続し、個々のコンピュータ1にはプリンタドライバ5とフォントマネジャが配備された、ネットワークとして、上記のシステムも実装され得る。プリンタドライバがその関連するフォントマネジャと通信するのにネットワークオーバヘッドが要求されないという利点が、そのようなシステムにはある。更に、個別のフォントマネジャの障害は、全体システムではなく単体のコンピュータにのみ影響するに過ぎない。複数のフォントマネジャが配置される場合、それらフォントマネジャは、個別のプリンタ上に存在するフォント及び個別のフォントの利用を識別する状態データの同期を採るように構成される。
【0052】
上述の実施形態では、プリントジョブを実行することを要求されているフォントのリストを生成するものとして、プリンタドライバ5が記載されているが、別の実施形態では、完全なリストを生成するのではなくプリンタドライバ5は、フォント毎にフォントに関するフォントマネジャ7;21とインタフェースをとることができる。
【0053】
この実施形態では、ユーザがプリントするドキュメントを選択しアプリケーション4がプリンタドライバ5を呼び出すと、プリンタドライバ5は、ドキュメントがプリントアウトされるべきプリンタ2;30のためのフォントマネジャ7;21との通信を確立する。アプリケーション4がドキュメント内に含まれるフォントを特定すると必ず、プリンタドライバ5は、埋め込みフォントデータ11−1;・・・;11−nがそのためにプリンタ30の埋め込みメモリ内に格納されたフォントの一つに、リクエストされたフォントが対応するのか否かを、先ずチェックする。そうでない場合には、プリンタドライバ5はフォントマネジャ7;21にフォントリクエストをする。それに対し、プリントジョブのその部分を実行するための適切なフォントデータ12−1;・・・;12−mがプリンタ2;30のプリンタメモリ内に格納されていれば、フォントマネジャ7;21は、リクエストされたフォントデータの位置を特定する、プリントジョブ内に含まれる識別子を戻す。同時にフォントマネジャ7;21は、そのフォントのためにフォントデータ12;・・・;12−mに関連してフラグを設定し、プリントジョブの実行が生成される前にそのフォントが消去されることを防ぐことができる。リクエストされたフォントデータがプリンタメモリ10の中に存在しないと判定されたら、フォントマネジャ7;21はこのことを記録し、プリンタドライバに「フォントが見つからない」メッセージを戻し、該プリンタドライバは、プリントジョブ内にそのフォントのためのフォントデータを含むことを開始する。その後、プリントジョブが実行された後、フォントマネジャ7;21は、見つからなかったフォントデータがプリンタメモリ10内にダウンロードされるように、即ち、後続のプリントジョブで利用されるように、構成され得る。
【0054】
上述の実施形態では、アプリケーション4がプリンタドライバ5を呼び出すことで、ドキュメントが生成されるシステムが、記述されているが、もちろん、プリンタドライバ5が無くても本発明は実行され得る。例えばそのような実施形態では、フォントマネジャ7;212は、プリンタ2;30に命令を与えるように構成されたダイレクトプリントアプリケーションなどの、プリンタドライバ5以外のコンピュータプログラムとインタフェースを採るように構成され得る。ダイレクトプリントアプリケーションのリクエストするフォントの特定は、様々な方法で達成され得る。
【0055】
一つのアプローチは、フォントマネジャ7;21が、プリンタ2を利用し得る個々のダイレクトプリントアプリケーションのためにリクエストされたフォントのリストを格納することである。プリントジョブが受信されると、フォントマネジャ7;21はアプリケーションの識別(特定)を利用して、プリンタメモリ10内にダウンロードされるべきフォントデータを決定できる。
【0056】
別の他のアプローチは、フォントマネジャ7;21が、ダイレクトプリントアプリケーションにより形成されるプリントジョブのためのプリントストリームをスキャンし、フォント識別子がアプリケーションのためのフォント利用テーブルを生成し、フォントが現在利用可能ではないことを判定することに応答して、識別されたフォントをダウンロードさせること、である。一方で、アプリケーションにより生成されるプリントストリームは、パースされてフォントデータの存在を特定し、このことは、そのアプリケーションからの将来のプリントジョブに応答してダウンロードするために、フォントを特定するのに利用され得る。
【0057】
更にその実施形態では、特定のアプリケーションからのプリントストリームの特定に応答してデータをダウンロードするのではなく、特定のアプリケーションが利用されること及び何のフォントが利用されるかが、前もって分かっていれば、これらは、周期的に、例えば、個々の就業日の開始時と終了時に、ダウンロードされ除去されるようにスケジュールすることができる。
【0058】
上記で詳細に記載した実施形態では、メモリ制約により、若しくは、データが揮発性ストレージに格納されプリンタがスイッチオフされることにより、消去されるものとして、フォントデータは記載されている。別の実施形態では、所定の時間後フォントデータをクリアするように、プリンタが構成され得る。このようなアプローチは、格納されたフォントデータが周期的に更新されることが保証され、それ故所定の時間より長い期間プリンタが古い若しくは期限切れのフォントデータを使用することがない、という利点がある。
【0059】
第1の実施形態で消去のためのフォントデータを選択する特定の方法を記載したが、消去のためのフォントデータを選択する別の方法が利用可能であることは、もちろんである。
【0060】
第1の実施形態で、プリンタに、プリンタメモリ内に動的にダウンロードされるフォントに加えて、埋め込みフォントが設けられるシステムが、記載されているが、埋め込みフォントデータを何ら含まないプリンタでも本発明を利用し得ることはもちろんである。
【0061】
上記の記載では、リクエストされると常にダウンロードされるものとしてフォントを記載しているが、フォントデータのコピーの形成が制約されることがあってもよい。データをコピーすることに関するそのような制約は、通常、コンピュータ1に格納されたフォントデータ6−1;・・・;6−kの一部としてのあるチェックデータの存在により示される。そのようなチェックデータが利用可能である実施形態では、フォントデータの不正コピーの生成を避けるために、フォントマネジャは、フォントデータのコピーが生成される前にコピーが許可されることを保証するために、そのデータをチェックするように、構成され得る。
【0062】
上記の記載では、フォントデータのダウンロードについて述べてきたが、ヘッド付き便箋の外観を生成するのに利用されるマクロなどのオーバレイ、一つ若しくはそれ以上の質問に対する応答を記録するページの領域を示すフォーム、又は、異なるプリントを相互に区別できるようにすべくプリントされるページに付加されるテキスト若しくはイメージを規定するウオータマークなどの、プリントされるドキュメントの外観を決定するようにプリンタにより利用される他のデータアイテムにも、もちろん、本発明は適用可能である。
【0063】
上記の実施形態では、ダウンロードはコンピュータのコントロールの下で生じるものとして記載しているが、コンピュータという用語がどのコンピュータデバイスも含むように広く解釈されてもよいのは、もちろんである。特に、ラップトップコンピュータや、適切なソフトウエアがインストールされたモバイルフォンなどの、モバイルコンピュータデバイスにより、上述の処理が為されてもよいのは、もちろんである。
【0064】
図面を参照して記載した本発明の実施形態は、コンピュータ装置及びコンピュータ装置内で実行される処理を含むが、本発明は、コンピュータプログラム、特に、本発明を実現するように調整された、キャリア上の若しくは内のコンピュータプログラムにも、拡張される。プログラムは、ソース若しくはオブジェクトコードの形式でもよく、又は、本発明に係る処理の実行にて利用されるのに適した他のどの形式でもよい。キャリアは、プリグラムを坦持できるどの実体若しくはデバイスであってもよい。
【0065】
例えば、キャリアは、ROM、例えば、CD ROMや半導体ROMなどの、ストレージ媒体や、例えば、フロッピー(登録商標)ディスクやハードディスクなどの、磁気記録媒体を含んでもよい。更に、キャリアは、電気若しくは光学ケーブルを介して、又は無線や他の手段により伝搬される、電気若しくは光学信号などの、伝搬性キャリアであってもよい。
【0066】
ケーブルや他のデバイス若しくは手段により、直接に伝搬される信号内にプログラムが埋め込まれると、キャリアは、そのケーブルや他のデバイス若しくは手段により構成され得る。
【0067】
一方、キャリアはプログラムが埋め込まれた集積回路でもよい。ここで集積回路は、関連する処理を実行する調整されている、若しくは、関連する処理の実行で利用される。
【符号の説明】
【0068】
1・・・コンピュータ、2、30・・・プリンタ、4・・・アプリケーション、5・・・プリンタドライバ、6・・・フォントデータ、7、21・・・フォントマネジャ、8・・・プリンタコントローラ、9・・・埋め込みフォントメモリ、10・・・プリンタメモリ、11・・・埋め込みフォント、12・・・フォントデータ、13、23・・・フォントリスト、14、22・・・利用統計、20・・・プリンタサーバ、24・・・プリントジョブ。

【特許請求の範囲】
【請求項1】
フォントデータを管理する方法であって、
プリンタ(2)のメモリ(10)内にフォントデータ(6−1;・・・;6−k)がそのために未だ格納されていない、実行されるべきプリントジョブ内のフォントを特定する(s3−5)ステップと、
上記特定されたフォントのためのみのフォントデータを含むプリントジョブを生成する(s2−5)ステップと、
上記生成されたプリントジョブを実行するステップと
を含み、
上記特定されたフォントに対応するフォントデータ(6−1;・・・;6−k)をダウンロードし(s3−9)、後続のプリントジョブを実行する際に利用するために上記プリンタメモリ(10)内に上記フォントデータ(6−1;・・・;6−k)を格納するステップを、更に含むことを特徴とする方法。
【請求項2】
請求項1に記載の方法であって、
上記の、プリンタ(2)のメモリ(10)内にフォントデータ(6−1;・・・;6−k)がそのために未だ格納されていない、実行されるべきプリントジョブ内のフォントを特定する(s3−5)ステップが、
プリンタ(2)のメモリ内にフォントデータ(12−1;・・・;12−m)がそのために現在格納されているフォントを特定するデータ(13)を格納するステップと、
プリントジョブを実行する際に利用されるフォントを特定する(s2−2)ステップと、
上記特定されたフォントを格納されたデータ(13)と比較する(s3−5)ステップにより、プリンタ(2)のメモリ(10)内にフォントデータ(6−1;・・・;6−k)がそのために未だ格納されていない、実行されるべきプリントジョブ内のフォントを特定する(s3−5)ステップと
を含む、方法。
【請求項3】
請求項2に記載の方法であって、
プリンタ(2)上にフォントデータ(11−1;・・・;11−n)を予め格納するステップを更に含み、
上記の、プリントジョブを実行する際に利用されるフォントを特定する(s2−2)ステップが、フォントデータ(11−1;・・・;11−n)がそのために予め格納されているフォント以外の、プリントジョブを実行する際に利用されるフォントを特定するフォントのリストを生成するステップを含み、
上記の、特定されたフォントを格納されたデータ(13)と比較するステップが、上記生成されたリストを上記格納されたデータ(13)と比較するステップを含む
方法。
【請求項4】
請求項1に記載の方法であって、
上記の、上記特定されたフォントに対応するフォントデータを含むプリントジョブを生成する(s2−5)ステップが、プリンタ(2)のメモリ(9;10)内に既にフォントデータ11−1;・・・;11−n;12−1;・・・;12−mがそのために格納されている、プリントジョブ内のフォントのフォントデータ11−1;・・・;11−n;12−1;・・・;12−mの位置を特定するポインタと、上記特定されたフォントとに対応するフォントデータを含むプリントジョブを生成する(s2―5)ステップを含む
方法。
【請求項5】
上記識別されたフォントに対応するフォントデータ(6−1;・・・;6−k)をダウンロードする(s3−9)ステップが、
格納されたフォントデータ(12−1;・・・;12−m)の項目の利用を特定するデータ(14)を格納するステップと、
プリンタメモリ(10)が上記フォントデータ(6−1;・・・;6−k)を格納するのに充分であるかどうかを判定する(s3−8)ステップと、
プリンタメモリ(10)が上記フォントデータ(6−1;・・・;6−k)を格納するのに充分でないならば、上記特定されたフォントに対応する上記フォントデータ(6−1;・・・;6−k)をダウンロードする前に、消去する、格納されたフォントデータ(12−1;・・・;12−m)の一つ又はそれ以上の項目を選択するために格納されたデータ(14)を利用するステップと
を含む、請求項1乃至請求項4のうちのいずれか一に記載の方法。
【請求項6】
請求項5に記載の方法であって、
上記の、格納されたフォントデータ(12−1;・・・;12−m)の項目の利用を特定するデータ(14)を格納するステップが、
格納されたフォントデータ(12−1;・・・;12−m)の項目の利用の時間を特定するデータを格納し、プリンタメモリ(10)がダウンロードされる上記フォントデータ(6−1;・・・;6−k)を格納するのに充分でないならば最も長い期間利用されていないフォントデータ(12−1;・・・;12−m)を消去するステップを
含む、方法。
【請求項7】
請求項5に記載の方法であって、
上記の、格納されたフォントデータ(12−1;・・・;12−m)の項目の利用を特定するデータ(14)を格納するステップが、
格納されたフォントデータ(12−1;・・・;12−m)の項目の利用の頻度を特定するデータを格納し、プリンタメモリ(10)がダウンロードされる上記フォントデータ(6−1;・・・;6−k)を格納するのに充分でないならば最も少ない頻度で利用されたフォントデータ(12−1;・・・;12−m)を消去するステップを
含む、方法。
【請求項8】
上記プリンタメモリ(10)内のフォントデータ(12−1;・・・;12−m)の項目の格納の時間を特定するデータを格納するステップと、
所定の期間の後、プリンタメモリ(12−1;・・・;12−m)からフォントデータ(12−1;・・・;12−m)を消去するステップと
を更に含む、請求項1乃至請求項7のうちのいずれか一に記載の方法。
【請求項9】
上記の、上記特定されたフォントに対応するフォントデータ(6−1;・・・;6−k)をダウンロードし(s3−9)、後続のプリントジョブを実行する際に利用するために上記プリンタメモリ(10)内に上記フォントデータ(6−1;・・・;6−k)を格納するステップが、
フォントデータ(6−1;・・・;6−k)が、フォントデータ(6−1;・・・;6−k)の複写時の制約を示すデータに関係するかどうかをチェックし、複写時の制約を示すデータに関係しないフォントデータ(6−1;・・・;6−k)のみをダウンロードするステップを
更に含む、請求項1乃至8のうちのいずれか一に記載の方法。
【請求項10】
プリントシステムであって、
プリンタ(2)と、
フォントデータを含むプリントジョブを生成し、プリントジョブを実行するために上記プリンタ(2)に上記プリントジョブを送信する動作を行うコンピュータ(1)と
を含み、
上記プリンタは、
プリントジョブを実行する際に利用するフォントデータ(12−1;・・・;12−m)を格納するように動作し、プリントジョブの受け取りに応じて、受け取ったプリントジョブを実行する、メモリ(10)と、
プリンタ(2)のメモリ(10)内に未だ格納されていない、実行されるジョブ内のフォントを特定し(s3−5)、特定されたフォントに対応するフォントデータ(6−1;・・・;6−k)を、後続のプリントジョブを実行する際に利用するために上記プリンタメモリ(10)内にダウンロードして格納させる(s3−9)、動作を行うフォントマネジャ(7)と
を有し、
プリントジョブが実行されるプリンタ(2)のメモリ(10)内にフォントデータ(6−1;・・・;6−k)がそのために未だ格納されていないフォントのためにのみ、プリンタ(2)が実行するプリントジョブ内にフォントデータ(6−1;・・・;6−k)を含む(s2−5)ように、上記コンピュータ(1)が構成されることを特徴とする
プリントシステム。
【請求項11】
プリントシステムであって、
プリンタ(2)を含み、
上記プリンタ(2)は、
プリントジョブを実行する際に利用するフォントデータ(12−1;・・・;12−m)を格納するように動作し、プリントジョブの受け取りに応じて、受け取ったプリントジョブを実行する、メモリ(10)と、
コンピュータ(1)とを有し、
上記コンピュータ(1)は、
プリンタ(2)のメモリ(10)内に未だ格納されていない、実行されるジョブ内のフォントを特定し(s3−5)、特定されたフォントに対応するフォントデータ(6−1;・・・;6−k)を、後続のプリントジョブを実行する際に利用するために上記プリンタメモリ(10)内にダウンロードして格納させる(s3−9)、動作を行うフォントマネジャ(7)を含み、
上記コンピュータ(1)は、フォントデータを含むプリントジョブを生成し、プリントジョブを実行するために上記プリンタに上記プリントジョブを送信する動作を行い、
プリントジョブが実行されるプリンタ(2)のメモリ(10)内にフォントデータ(6−1;・・・;6−k)がそのために未だ格納されていないフォントのためにのみ、プリンタ(2)が実行するプリントジョブ内にフォントデータ(6−1;・・・;6−k)を含む(s2−5)ように、上記コンピュータ(1)が構成されることを特徴とする
プリントシステム。
【請求項12】
プリントシステムであって、
フォントデータを含むプリントジョブを生成し、プリントジョブを実行するためにプリンタに(2)上記プリントジョブを送信する動作を行うコンピュータ(1)と、
プリントジョブを実行する際に利用するフォントデータ(12−1;・・・;12−m)を格納するように動作し、プリントジョブの受け取りに応じて、受け取ったプリントジョブを実行する、メモリ(10)を有するプリンタ(2)と、
プリンタ(2)のメモリ(10)内に未だ格納されていない、実行されるジョブ内のフォントを特定し(s3−5)、特定されたフォントに対応するフォントデータ(6−1;・・・;6−k)を、後続のプリントジョブを実行する際に利用するために上記プリンタメモリ(10)内にダウンロードして格納させる(s3−9)、動作を行うフォントマネジャ(7)を含むプリンタサーバ(20)と
を含み、
プリントジョブが実行されるプリンタ(2)のメモリ(10)内にフォントデータ(6−1;・・・;6−k)がそのために未だ格納されていないフォントのためにのみ、プリンタ(2)が実行するプリントジョブ内にフォントデータ(6−1;・・・;6−k)を含む(s2−5)ように、上記コンピュータ(1)が構成されることを特徴とする
プリントシステム。
【請求項13】
プログラム可能なコンピュータが実行する際、コンピュータに、
フォントデータ(12−1;・・・;12−m)を格納するように動作するメモリを有するプリンタにより実行されるプリントジョブをモニタさせ、
プリンタ(2)のメモリ(10)内にそのためにフォントデータ(12−1;・・・;12−m)が未だ格納されていない、実行されるプリントジョブ内のフォントを、特定させ(s3−5)、
特定されたフォントに対応するフォントデータ(6−1;・・・;6−k)を、後続のプリントジョブを実行する際に利用するために上記プリンタメモリ(10)内にダウンロードして格納させる(s3−9)
コンピュータ実装可能命令を坦持するキャリア。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2010−9587(P2010−9587A)
【公開日】平成22年1月14日(2010.1.14)
【国際特許分類】
【外国語出願】
【出願番号】特願2009−119065(P2009−119065)
【出願日】平成21年5月15日(2009.5.15)
【出願人】(505388322)ソフトウェア・イメージング・グループ・リミテッド (3)
【氏名又は名称原語表記】Software Imaging Group Limited
【Fターム(参考)】