(57)【要約】【課題】電子化ドキュメントの幾何学形状内の作成されたコンテンツを識別コードにして出力することができるコンピューティングデバイスおよびプログラムを提供する。【解決手段】実施形態に係るコンピューティングデバイスは、電子化ドキュメントの幾何学形状内に作成されたコンテンツを識別コードにして出力するためのプリンタドライバを有する。前記プリンタドライバは、前記幾何学形状によって規定された領域内の前記コンテンツを検出し、前記コンテンツをプリンティングデバイスが解釈可能なフォーマットとして出力するためのプリントジョブとしてエンコードし、前記プリンティングデバイスに向けて前記エンコードされた前記プリントジョブを送る。【選択図】図４
2020135862.tif 000002
【特許請求の範囲】
【請求項１】
電子化ドキュメントの幾何学形状内に作成されたコンテンツを識別コードにして出力するためのプリンタドライバを有するコンピューティングデバイスであって、
前記プリンタドライバは、
前記幾何学形状によって規定された領域内の前記コンテンツを検出し、
前記コンテンツをプリンティングデバイスが解釈可能なフォーマットとして出力するためのプリントジョブとしてエンコードし、
前記プリンティングデバイスに向けて前記エンコードされた前記プリントジョブを送る
コンピューティングデバイス。
【請求項２】
前記幾何学形状の領域は、印字に使用しない特定の色に塗りつぶされている請求項１に記載のコンピューティングデバイス。
【請求項３】
前記プリンタドライバは、
前記幾何学形状が第１幾何学形状である場合、バーコードを示す前記識別コードが生成された領域であると識別し、
前記幾何学形状が前記第１幾何学形状とは異なる第２幾何学形状である場合、ＱＲコード又はＲＦＩＤタグを示す前記識別コードが生成された領域であると識別する
請求項１に記載のコンピューティングデバイス。
【請求項４】
前記プリンタドライバは、
第１の色に塗りつぶされた前記幾何学形状は、バーコードを示す前記識別コードが生成された領域であると識別し、
前記第１の色とは異なる第２の色に塗りつぶされた前記幾何学形状は、ＱＲコード又はＲＦＩＤタグを示す前記識別コードが生成された領域であると識別する
請求項２に記載のコンピューティングデバイス。
【請求項５】
電子化ドキュメントの幾何学形状内に作成されたコンテンツを識別コードにして出力するためのプリンタドライバを有するコンピューティングデバイスによって実行されるプログラムであって、
前記幾何学形状によって規定された領域内の前記コンテンツを検出する手順と、
前記コンテンツをプリンティングデバイスが解釈可能なフォーマットとして出力するためのプリントジョブとしてエンコードする手順と、
前記プリンティングデバイスに向けて前記エンコードされた前記プリントジョブを送る手順と、
を前記プリンタドライバによって実行されるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、幾何学形状内のコンテンツを識別コードにして出力するコンピューティングデバイスおよびプログラムに関する。
【背景技術】
【０００２】
商品や物品等の識別コードを示すバーコード、或いはアドレス等のアクセスコードを示す二次元バーコード（ＱＲコード（登録商標））等の識別コードを出力（印刷等）するバーコードプリンタは、多くの異なる形式のバーコード（識別コード）を生成するための組み込みの機能を有する。また、多くのプリンタモデルは、情報をＲＦＩＤタグや他の不可視の情報にエンコードすることができる。一般的にこの機能は、ラベルデザイン（label-design）ソフトウェアによってユーザに提供される。しかし、そのようなソフトウェアは、ワードプロセッシング（文書作成）、スプレッドシートの作成、又は複雑なグラフィックデザイン作業などの、他のタスクには好適ではない。加えて、そのようなソフトウェアは、通常のコンピュータのリソース上で厳格に仕様が非公開であり、高価で、やっかいである。
【０００３】
反対に、ワードプロセッシングやスプレッドシートのソフトウェアは、いたるところに存在するようになっており、それらはいかなるコンピュータ上でも見つけ出せる。コンピュータを使用するほとんどのユーザは誰もが、簡単にそのようなソフトウェアを使用することができる。残念なことに、ほとんどのワードプロセッシングソフトウェアは、バーコードを印刷する、又はバーコードプリンタと協働する機能に欠ける。加えて、ワードプロセッシングソフトウェアにバーコードプリンタとのやり取りをする機能が装備されていたとしても、必要とされる追加のコードが、そのようなワードプロセッシングソフトウェアをより低速で、低い応答性で動作させる虞がある。
【０００４】
多くの課題を有する典型的なバーコードソフトウェアとは対照的に、ほぼ全ての現代のコンピュータユーザは、少なくとも１つのワードプロセッシング（文書作成）アプリケーションに精通している。例えば、Ｍｉｃｒｏｓｏｆｔ（登録商標） Ｗｏｒｄ（登録商標）が最も一般的な例であるが、他にも多くの類似するソフトウェアが存在する。しかし、ワードプロセッシングアプリケーションなどのソフトウェアで作成した文書にバーコードを作成するには、ユーザは、後でイメージとしてドキュメントの中に挿入されるバーコードを生成するために、外付けのツールを使用しなければならない。そのような外付けのツールは、多くの場合、バーコードの「印刷」を可能にする拡張または専用のプリンタドライバを含む。また外付けのツールは、特別のトレーニングを必要とし、ユーザにとって使い易くはない。そして、これらの外付けのツールは、多くの場合、ワードプロセッシングなどのソフトウェアのアップデートに合わせてアップデートされない。
【０００５】
他の選択肢の一つは、単にラスターイメージ処理を用いてバーコード（又は、ＱＲコードなどの２次元バーコード）を印刷することである。これは、いくつかの理由から課題がある。その一つは、ほとんどのバーコードプリンタが、一般的に解像度において、通常のデスクトップまたは多機能プリンタよりも低いことから、結果として、スケールの変更による画像の乱れ（スケーリングアーティファクト）が生じて、印刷されたバーコードの品質や可読性を低下させる。いくつかの場合には、可読性低下の課題は非常に厳しく、その後のバーコードのコンピュータでの読み取り処理に悪影響を及ぼす。これらの課題は、ベクトルベースのバーコードイメージの使用を通して緩和され得るが、ラスターまたはベクトルバーコードイメージのいずれかの印刷において、明瞭かつ正確なバーコードを描画するためのプリンタに組み込みの機能は、完全には無しには済まされない。必要とされることは、普通にプリンタが、通常のプリンタの使い易さを以て高品質のバーコードを生成することができるシステムである。
【０００６】
この課題への回避策は、ドキュメント自身の中に、イメージとしてバーコード（例えば、ＱＲコードなどの２次元バーコード）を挿入することである。この解決策は、バーコードプリンタがそのようなドキュメントを印刷するために使用されない場合、プリンタのバーコード印刷機能が利用されないから、理想的ではない。さらに、多くの場合、解像度が失われ、いくつかのバーコードを使用できなくする（例えば、バーコードスキャナによってスキャンできない）。加えて、ＲＦＩＤタグエンコードなどの印刷のような機能は、この方法を行うことができない。バーコードプリンタは、また、多くの場合に低いデータ通信レートを有し、バーコードイメージのデータをプリンタに送ることは、バーコードを生成するために、単に、コマンドをバーコードプリンタに送ることよりも実質的に低速である。
【０００７】
いくつかの例外を除いて、バーコードプリンタは単色のデバイスである。カラー（着色）ドキュメントをバーコードプリンタに印刷することは、通常の使用状況ではない。バーコードプリンタを介して印刷することを目的としたドキュメントには一般的にカラーは用いられないので、多色は、その代わりに、バーコードプリンタドライバに対して特別な意味を与えることができる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特許第５８３４８７９号公報
【特許文献２】特開２０１２−７１５３２号公報
【特許文献３】特開平１１−２２１９４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
発明が解決しようとする課題は、電子化ドキュメントの幾何学形状内の作成されたコンテンツを識別コードにして出力することができるコンピューティングデバイスおよびプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
実施形態に係るコンピューティングデバイスは、電子化ドキュメントの幾何学形状内に作成されたコンテンツを識別コードにして出力するためのプリンタドライバを有する。前記プリンタドライバは、前記幾何学形状によって規定された領域内の前記コンテンツを検出し、前記コンテンツをプリンティングデバイスが解釈可能なフォーマットとして出力するためのプリントジョブとしてエンコードし、前記プリンティングデバイスに向けて前記エンコードされた前記プリントジョブを送る。
【図面の簡単な説明】
【００１１】
【図１】実施形態に係る識別コードであるバーコード等を出力（印刷等）するシステムの一例を示す図である。
【図２】実施形態に係る識別コードであるバーコード等を出力（印刷等）するためのシステムのブロック図である。
【図３】実施形態に係るコンピューティングデバイスのブロック図である。
【図４】実施形態に係る可視テキストをバーコードに変換するための処理のフローチャートである。
【図５】実施形態に係るバーコードに変換されるべきテキストのいくつかが存在するドキュメント例を示す図である。
【図６】実施形態に係るテキストのいくつかの上に追加された、着色された幾何学形状を有するドキュメント例を示す図である。
【図７】実施形態に係るテキストのいくつかを置き換えたバーコードが付されたドキュメント例を示す図である。
【発明を実施するための形態】
【００１２】
実施形態において用いられる「バーコード」は、従来の一連の縦線バーコード、ＱＲコード、ＰＤＦ４１７コード、データマトリクス（Data Matrix）コード、または、他の類似の２次元バーコードなどの２次元バーコード、ＲＦＩＤ（無線周波数識別子： radio frequency identification）タグ、又は人が読み取ることができるテキストでなく、ドキュメント上に表され、形成され、又は重ね合わされる任意の他の形式を意味する。同様に、実施形態の中で用いられる「バーコードプリンタ」は、上記バーコードを出力（印刷等）する専用のデバイス、又はバーコード出力（印刷等）を命令することができ、バーコード出力（印刷等）を行うことができる汎用のデバイス（例えば、多機能プリンタまたは周辺機器）を意味する。バーコードの「出力」は、実際には、印刷による可視であってもよく、可視でなくても（例えば、ＲＦＩＤタグを書き込むこと）よく、機械が解釈可能な形式でテキストまたは他のコンテンツを書き込むことを含んでよい。
【００１３】
実施形態では、ユーザが、バーコードの配置や大きさを視覚化するだけでなく、ドキュメントが出力（印刷等）される前にバーコードの内容を知ることができることにより、先行技術の課題を克服する。ユーザは、すでに非常に慣れたソフトウェアに依存し、追加したり、調整したり、見たりすることが比較的簡単である機能（幾何学形状を挿入するような）を使用することができる。したがって、ユーザは、当該幾何学形状内の動作の対象であろうコンテンツを知ることができる。加えて、実施形態では、可能な最良のバーコード品質を確保して、バーコードを描画するためのプリンタの組み込み機能の利用を教示する。
【００１４】
［装置の説明］
以下、図面を参照して本発明の実施形態について説明する。
図１は、実施形態に係る識別コードであるバーコードを出力（印刷等）するためのシステム１００が示される。システム１００は、多機能周辺機器１１０、デスクトップコンピュータ１２０、モバイルデバイス１３０、バーコードプリンタ１４０を含み、これら全てがネットワーク１５０によって相互接続される。多機能周辺機器１１０、デスクトップコンピュータ１２０、および、モバイルデバイス１３０は、後述するコンピューティングデバイス（図３）である。
【００１５】
多機能周辺機器１１０は、通常の印刷機能の他に、ドキュメントをスキャン（ファクシミリ）し、スキャンデータを送信および／又は受信すること、光学的文字認識機能、電子メールを送信および／又は受信すること、の機能などを含んでも良い既存のプリンティングデバイスである。多機能周辺機器１１０は、上記機能に関する基本コマンドを入力するためのユーザインターフェイスを含む。ある場合には、多機能周辺機器１１０は、デスクトップコンピュータ１２０やモバイルデバイス１３０と同じコンピューティングデバイスとして、実施形態に記載される機能を実行することができる。多機能周辺機器１１０は、モバイルデバイス１３０やデスクトップコンピュータ１２０によって生成されたドキュメントおよび／又はバーコードを単にプリント出力する。当該プリント処理が終了したら、それらを出力することに加えて、実施形態において記載されるようにバーコードを生成する、又はバーコードを生成するために用いてもよい。その意味では、多機能周辺機器１１０は、コンピューティングデバイスとして、および出力デバイスとしての両方の機能を有している。
【００１６】
デスクトップコンピュータ１２０は、後述するようなコンピューティングデバイスである。デスクトップコンピュータ１２０は、バーコードへの変換のためのテキストを特定するためのソフトウェアや機能性を有すると共に、ワードプロセッシングソフトウェアを組み込んでもよい。デスクトップコンピュータ１２０は、ネットワーク１５０を用いて、多機能周辺機器１１０やバーコードプリンタ１４０などのプリンティングデバイスと通信することができる。ここでは、「デスクトップ」として表現しているが、デスクトップコンピュータ１２０は、ワードプロセッシングソフトウェアを使用してプリンティングデバイス（多機能周辺機器１１０又はバーコードプリンタ１４０）に出力することができる、ラップトップコンピュータ、タブレット、又は他の類似のコンピューティングデバイスであってよい。
【００１７】
モバイルデバイス１３０は、デスクトップコンピュータ１２０と同様コンピューティングデバイスである。モバイルデバイス１３０は、バーコードプリンタ１４０または多機能周辺機器１１０に対してバーコードとして出力するためのテキストコンテンツをラベル付けする動作も行う、いわゆるスマートフォンに代表される携帯端末である。
【００１８】
バーコードプリンタ１４０は、（上記で定義されたような）バーコードを出力（印刷等）するだけ、又は主に出力（印刷等）する専用のハードウェアであってよい。即ち、実際のバーコードのプリンタであってもよいが、それは、ＱＲコードプリンタ、ＲＦＩＤラベルプリンタであってもよい。バーコードは、印刷されたドキュメントや物理的な対象物（例えば、箱）に添付されるか、又は統合され得る、機械が解釈可能なコンテンツの他の類似の形態のものであってもよい。
【００１９】
ネットワーク１５０は、インターネットであってよく、又はインターネットを含んでよいが、システム１００の様々なコンポーネントがお互いに通信することを可能にするための通信システムとして用いられる。
【００２０】
図２は、実施形態に係る識別コードであるバーコードを出力（印刷等）するためのシステム２００のブロック図である。システム２００は、図１と同じ多機能周辺機器２１０、デスクトップコンピュータ２２０、モバイルデバイス２３０、バーコードプリンタ２４０を含む。この図２は、各装置又はデバイスの最も関連のあるそれら要素にのみ焦点をあてるために、意図的に簡略化される。そのため、システム２００の各要素において存在し得る、又は存在しなくてもよいコンポーネントまたは機能が省略されている。
【００２１】
図２において、多機能周辺機器２１０は、少なくとも、ラスターイメージプロセッサ２１１と、プリントハードウェア２１２を含む。ラスターイメージプロセッサ２１１は、プリント（印刷）ジョブを、物理的なドキュメント上に出力される可視イメージに変換する。ラスターイメージプロセッサ２１１は、多機能周辺機器２１０が他の形式のバーコードを印刷する、又はＲＦＩＤタグに情報をエンコードする機能を含む場合には、専用のイメージ処理機能を含んでよい。
【００２２】
また、多機能周辺機器２１０のプリントハードウェア２１２は、ラスターイメージプロセッサ２１１が、受け取ったプリンタ言語のドキュメントをプリントハードウェア２１２のための出力（印刷等）命令に変換すると、物理的なドキュメントおよび／又はバーコードを出力することに責任を負う物理的なハードウェアである。プリントハードウェア２１２は、既存のプリンティンングハードウェアを含んでも、任意の専用のハードウェア（例えば、ＲＦＩＤタグエンコードハードウェア）を含んでもよい。
【００２３】
バーコードプリンタ２４０は、イメージプロセッサ２４１と、プリントハードウェア２４２を含む。バーコードプリンタ２４０は、バーコードを印刷する、又は視覚化されない情報をエンコードするために好適な専用のプリンタである。上述のように、バーコードは、実際のバーコードであってよいが、ＲＦＩＤタグエンコードなどの他の形式をとってもよい。
【００２４】
イメージプロセッサ２４１は、ラスターイメージプロセッサ２１１とほぼ同じ処理を実行する汎用の処理装置でよいが、プリンタ言語がバーコードプリンタ２４０専用であることを考慮すると、個別の専用装置であってもよい。イメージプロセッサ２４１は、プリントジョブを受け取ると、バーコードが印刷され得るようにプリントハードウェア２４２に当該ジョブを出力する。
【００２５】
デスクトップコンピュータ２２０とモバイルデバイス２３０との各々は、オペレーティングシステム２２１、２３１、ワードプロセッサ２２２、２３２、プリンタドライバ２２３、２３３を含む。デスクトップコンピュータ２２０とモバイルデバイス２３０の両方が、共に動作可能であることを示している。上述のように、多機能周辺機器２１０がこれらのコンポーネントを含んでもよく、そのような場合もある。
【００２６】
オペレーティングシステム２２１、２３１は、デスクトップコンピュータ２２０とモバイルデバイス２３０の基本レベルの動作を司る。ワードプロセッサ２２２、２３２は、一般的に、テキスト形式のドキュメントにおける取り込みのために、語句を入力し、編集し、構成するために使用される典型的なソフトウェアアプリケーションである。Ｍｉｃｒｏｓｏｆｔ（登録商標） Ｗｏｒｄ（登録商標）が最も一般的なワードプロセッサである。図２では、ワードプロセッサアプリケーションとして記載しているが、ある場合に、ワードプロセッサ２２２、２３２は、実際には、スプレッドシート（spreadsheet）アプリケーション、パブリシング（publishing）アプリケーション（例えば、Ａｄｏｂｅ（登録商標） Ｒｅａｄｅｒ（登録商標）、プレゼンテーション（presentation）アプリケーション（例えば、Ｍｉｃｒｏｓｏｆｔ（登録商標） ＰｏｗｅｒＰｏｉｎｔ（登録商標）など、異なる形式のアプリケーションであってよい。しかし、これらアプリケーションの主たる特徴は、それらの全てが、従来の典型的なプリンタドライバ２２３、２３３に依存していることである。それらは、バーコードを生成するために、又はバーコードプリンタによる印刷を可能にするために、専ら使用される専用のソフトウェアアプリケーションには依拠しない。
【００２７】
最後に、プリンタドライバ２２３、２３３は、ワードプロセッサ２２２、２３２が印刷のためにドキュメントを出力するソフトウェアである。プリンタドライバ２２３、２３３は、ワードプロセッサ２２２，２３２によって生成されるドキュメント内のテキストとイメージの部分を認識するための検出機能を含む。
【００２８】
図３は、実施形態に係るコンピューティングデバイスのブロック図が示される。コンピューティングデバイス３００は、サーバコンピュータ、クライアントデバイス、モバイルデバイス、および他のコンピューティングデバイスの代表例であってよい。コンピューティングデバイス３００は、着色領域のバーコード印刷を実現するための機能性や態様を提供するためのソフトウェアおよび／又はハードウェアを含む。したがって、コンピューティングデバイス３００は、ロジックアレイ、メモリ、アナログ回路、デジタル回路、ソフトウェア、ハードウェア、およびプロセッサを含んでよい。コンピューティングデバイス３００のハードウェアおよびファームウェアコンポーネントは、着色領域のバーコード印刷を実現する機能性や態様を提供するための様々な専用のユニット、回路、ソフトウェア、およびインターフェイスを含んでよい。
【００２９】
コンピューティングデバイス３００は、メモリ３１４、ストレージ３１８、ネットワークインターフェイス３１１、およびＩ／Ｏインターフェイス３１５に接続されたプロセッサ３１２を有し得る。プロセッサ３１２は、１つまたは複数のマイクロプロセッサや特定用途向け集積回路（ＡＳＩＣ）であってよく、又は含んでもよい。
【００３０】
メモリ３１４は、ＲＡＭ、ＲＯＭ、ＤＲＡＭ、ＳＲＡＭ、および、ＭＲＡＭであってよく、又は含んでもよい。メモリ３１４は、コンピューティングデバイス３００とプロセッサ３１２の動作の期間に用いられる、静的データまたは固定命令などのファームウェア、ＢＩＯＳ、システム機能、構成データ、他のルーチン等を含む。また、メモリ３１４は、プロセッサ３１２によって扱われるアプリケーションとデータに関連付けられたデータと命令のための記憶領域を提供する。
【００３１】
ストレージ３１８は、コンピューティングデバイス３００におけるデータまたは命令の不揮発、大容量、または長期の記憶部を提供する。ストレージ３１８は、ディスク、テープ、ＣＤ、ＤＶＤ、又は他の合理的に大容量のアドレス可能な、又は連続的な記憶媒体の形態をとってよい。複数のストレージデバイスが、コンピューティングデバイス３００に提供され、又は利用可能であってよい。これらストレージデバイスのある物は、ネットワークストレージまたはクラウドベースのストレージのように、コンピューティングデバイス３００の外部に備えられていてもよい。ネットワークインターフェイス３１１は、ネットワーク１５０（図１）などのネットワークにインターフェイスするように動作する。Ｉ／Ｏインターフェイス３１５は、表示装置、キーボード、およびＵＳＢデバイスなどの周辺機器（図示されない）にプロセッサ３１２をインターフェイスするように動作する。
【００３２】
［処理の説明］
図４は、図２のシステム２００における可視テキストをバーコードに変換／印刷するための処理のフローチャートである。処理は、開始ステップ４０５で始まり、終了ステップ４９５で終わる。ステップ４０５〜ステップ４８０の処理は、所定のドキュメントが、ステップ４９０においてプリンタに送られる前に、所定のドキュメントにおいて何回も行われる。
【００３３】
開始ステップ４０５に続いて、ステップ４１０において、ユーザがドキュメントにアクセスする。ユーザは、例えばデスクトップコンピュータ２２０、又はモバイルデバイス２３０、又は何らかの他のコンピューティングデバイスを用いてドキュメントにアクセスする。このアクセスは、一般的には、ワードプロセッシングソフトウェア等を実行して新しいドキュメントを開くこと、又はワードプロセッシングソフトウェア等を用いて作成済みのドキュメントを編集する処理を開始することを伴う。
【００３４】
次に、ステップ４２０において、ドキュメントは、コンピューティングデバイスの表示装置（図３のＩ／Ｏインターフェイス３１５に含まれるディスプレイ）に表示される。表示装置は、ユーザ操作に関連しており、又はユーザに可視であり得る。表示装置は、ユーザ操作によりドキュメントを編集する、ドキュメントにテキストを追加する、又はドキュメントをフォーマットする等により、ドキュメントと相互作用し得るようにドキュメントをユーザに可視化する。
【００３５】
表示装置に開かれたドキュメントの一例を、図５に示す。図５のドキュメント例には、バーコードが生成されないテキスト５５０と、バーコードが生成されるテキスト５５２とが存在する。当該のテキスト処理は、以降により詳細に論じられる。
【００３６】
図４に戻って、ワードプロセッシングソフトウェア等のユーザは、ステップ４３０において、表示装置に表示されるドキュメントに重ねて、又はドキュメント上に、幾何学形状を描き得る。幾何学形状は、印字に使用しない特定の色で塗りつぶしされていることが望ましい。特定の色は、プリンタドライバ２２２又は２３３が、プリンティングデバイス（多機能周辺機器２１０又はバーコードプリンタ２４０）のためにバーコードが生成されるドキュメントの部分をより容易に認識することを可能にするために、重要となり得る。しかし、場合によっては、幾何学形状を特定の色で塗りつぶさないようにしてもよい。
【００３７】
図６は、そのようなドキュメントの一例が表される。図６のドキュメント例には、バーコードが生成されない図５のテキスト５５０と同じテキスト６５０が可視のまま表示されるが、バーコードに変換されるテキスト６５２上に重ね合わされた幾何学形状（この場合には矩形）６６０が表示（存在）される。重要なことは、この幾何学形状６６０は、ワードプロセッシングソフトウェアに本来備わっている幾何学形状描画機能を用いて描かれたことである。図６に図示されていないが、幾何学形状（矩形）６６０の内部は、「赤」、「緑」、「黄」、又は何らかの他の色などの特定の色に着色（塗りつぶし）されている。着色は、テキストが当該幾何学形状の背後で人に可視できなくなる着色ではなく、テキストの背後に現れる（可視できる）か、又は半透明であり、通常はテキストと同じ色ではない。しかし、幾何学形状の背後のテキストコンテンツは、テキストが関連するファイル形式で記憶されている限り、コンピュータやプリンタドライバ２２３又は２３３に解釈可能であるので、必要に応じて黒色のテキストの上に黒色の形状を含み、テキストに対応する色でさえも使用してよい。
【００３８】
あるタイプのアプリケーションソフトウェア（例えば、ＰＤＦ（ポータブルドキュメントフォーマット）ビューア）にとって、ドキュメントのプリントデータは、単に、イメージとして記憶される。それらタイプのアプリケーションソフトウェアにおいて、プリンタドライバ２２３又は２３３が、幾何学形状の背後のテキストのための光学的文字認識（optical character recognition： ＯＣＲ）を行うことを必要とされるので、テキストに対して、半透明の重ね合わせ（塗りつぶし）が必要とされ得る。幾何学形状が完全にテキストを覆うので、プリンタドライバ２２３又は２３３がテキストを全く「見る」ことができない場合、ＯＣＲ機能は動作が不可能であり、よって所望のテキストのバーコードへの変換は機能しなくなる。
【００３９】
より典型的には、例えば、ユーザは、Ｍｉｃｒｏｓｏｆｔ（登録商標） Ｗｏｒｄ（登録商標）において、ドキュメントを開く。そして、ユーザは、Ｉ／Ｏインターフェイス３１５に含まれる表示装置を用いてドキュメント上に幾何学形状を描くために、図形挿入機能を使用する。Ｗｏｒｄの代わりに、Ａｄｏｂｅ（登録商標） Ｒｅａｄｅｒ（登録商標）を使用する場合、ユーザは、Ｉ／Ｏインターフェイス３１５に含まれる表示装置を用いてイメージまたは幾何学形状を挿入するために、ツール機能を使用し得る。各アプリケーションプログラムが、特定の色で幾何学形状を挿入することをユーザに対して可能にする機能を有する限り、ユーザが使用するアプリケーションプログラムは特に重要ではない。
【００４０】
幾何学形状が描かれる処理は、多くの形態をとってよい。例えば、ユーザは、一連の接合された線を生成するためのツールを用いてもよく、又は六角形または平行四辺形などの予め設定された幾何学形状を描くためのアプリケーションソフトウェアによって提供されるツールを用いてもよい。
【００４１】
各アプリケーションソフトウェア（例えば、ワードプロセッシングソフトウェア、ＰＤＦビューアソフトウェア、スプレッドシートソフトウェア、ＣＡＤ（Computer Aided Design： コンピュータ支援設計）ソフトウェア）が、既存のドキュメント又はドキュメント内のテキストの部分の上の重ね合わせとして「幾何学形状」を描くために、Ｉ／Ｏインターフェイス３１５の表示装置を用いたユーザによる操作を解釈し、この情報を、当該ユーザ操作を介して生成された「関連するドキュメント上のその場所に当該色や形状を出力すること」をプリントデバイス２２３又は２３３に指示するために好適である情報に変換する。プリンタドライバ２２３又は２３３は、幾何学形状の下敷きになったテキスト６５２をバーコードに変換するというユーザによる所望の指示と解釈する。
【００４２】
幾何学形状は、単純な形状であっても複雑な形状であってもよい。ユーザは、特定の高さと幅の矩形を描くことができ、アプリケーションソフトウェアが、そのような寸法がバーコードを加えることに関連づけられると理解するよう、アプリケーションソフトウェアにあらかじめプログラムされてもよい。加えて、特定の色が、バーコードが置かれるべきであるか否かを定義するために用いられてもよい。例えば、幾何学形状が特別に大きいか、又は特別に小さい場合は、それは無視するように設定してもよい。同様に、特定の幾何学形状についてはバーコードが置かれると設定してもよい（例えば、システムは、矩形や四角形を認識するだけでよく、円や三角形を無視し得る）。他の場合には、全てのタイプの形状が認識されてもよい。
【００４３】
更に、特定の幾何学形状が、行われるべき特定の動作を指してもよい。例えば、矩形は、バーコードが生成されるべきであると設定してよい。台形は、ＱＲコードが下敷きになったテキストから生成されるべきであると設定してよい。また、異なる色に着色（塗りつぶし）された矩形または四角形は、異なるタイプのコードを示してもよい（例えば、赤の着色がバーコード、緑の着色がＱＲコード）。このような設定の場合、プリンタドライバ２２３又は２３３は、幾何学形状が第１幾何学形状（矩形）である場合、バーコードを示す識別コードが生成された領域であると識別し、幾何学形状が第２幾何学形状（台形）である場合、ＱＲコード又はＲＦＩＤタグを示す識別コードが生成された領域であると識別することができる。
【００４４】
更にまた、カラーコーディングがバーコード自身の印刷パラメータ、又は他の特性を示すために用いられてもよい。例えば、「緑」の矩形は、バーコードが可能な限り低い解像度（例えば、７５ｄｐｉ）で印刷するものと設定してよい。「赤」の矩形は、中間の解像度（例えば、３００ｄｐｉ）で印刷すると設定してよい。「青」の矩形は、可能な限り高い解像度（例えば、２４００ｄｐｉ）で印刷すると設定してよい。このような設定の場合、プリンタドライバ２２３又は２３３は、第１の色（緑色）に塗りつぶされた幾何学形状は、低い解像度で印刷するバーコードが生成された領域であると識別し、第２の色（赤色）に塗りつぶされた幾何学形状は、中間の解像度で印刷するバーコードが生成された領域であると識別し、第３の色（青色）に塗りつぶされた幾何学形状は、高い解像度で印刷するバーコードが生成された領域であると識別することができる。
【００４５】
更に場合に応じて、バーコード（例えば、ＱＲコード）は、それらのエンコードの一部として、色に依存するか、又は色を用いることができる。幾何学形状の所与の色は、カラーＱＲコードが用いられるべきであることを示してもよく、他の色は、白黒のＱＲコードだけが用いられるべきであることを示してよい。このような設定の場合、プリンタドライバ２２３又は２３３は、第１の色（所与の色）に塗りつぶされた幾何学形状は、バーコードを示す識別コードが生成された領域であると識別し、第２の色（白黒）に塗りつぶされた幾何学形状は、ＱＲコード又はＲＦＩＤタグを示す識別コードが生成された領域であると識別することができる。
【００４６】
代替的に行われるべき特定の動作は、関連するテキスト自身に基づいてもよい。例えば、ＲＦＩＤタグは、数千バイトのデータをエンコードすることができる。しかし、ＲＦＩＤタグは、フォントサイズ、又はドキュメントにおける利用可能なスペースなどの制限により、幾何学形状内に簡単に配置することができない。したがって、関連するテキストは、プリンタドライバ２２３又は２３３が、ＲＦＩＤタグにエンコードするために読み込み、データとして扱うことができるリソース（ファイルの名前など）を表わすようにしてよい。
【００４７】
代替的に行われるべき特定の動作は、関連するテキストのためのバーコード生成以外の動作であってよい。例えば、内側に電子メール（ｅｍａｉｌ）アドレスを有する「青」に着色された幾何学形状領域が検出された場合、プリンタドライバ２２３又は２３３に対し、その着色された領域内の電子メールアドレスにドキュメントを電子メール送信するように指示することができる。更に複雑なバージョンは、「青」に着色された領域内の電子メールアドレスに、「赤」に着色された領域における変換されたテキストのバーコードを電子メールで送信することを含んでもよい。他には、着色された領域内か、又はドキュメントを記憶するための命令が関連付けられる特定の色に着色された領域に単に関連付けられた領域の、いずれかで特定される場所にドキュメントを記憶することでもよい。例えば、その領域内にテキストがあるか、又はテキストがないかを表わす「赤」の色は、ドキュメントが特定のクラウドストレージサービス又はネットワークロケーション上に記憶されるべきであることを示す。
【００４８】
特定の色又は幾何学形状の使用は、行われるべき異なる動作を示すことができる。それらの動作は、テキスト、ドキュメント、又はテキストの同じまたは他の部分から生成されたバーコードを、電子メールアドレス、ファクシミリ番号、クラウドストレージサービス、又はネットワークデバイス又はロケーションに送るように設定できる。送信されるバーコードは、元のドキュメント、変換されたテキストからのバーコードを帯びたドキュメント、又はドキュメント上の着色された領域から生成された、単なるバーコード自身であってよい。このように、内側にファクシミリ番号、クラウドストレージサービス、又はネットワークデバイスに送ることを示す色に着色された幾何学形状領域が検出された場合、プリンタドライバ２２３又は２３３に対し電子化ドキュメント又は識別コードを送信するように指示することができる。
【００４９】
同様に、カラーコーディングが同じ機能を行ない得る。例えば、全ての「青」の幾何学形状はバーコードのためにあってよく、全ての「黄」の幾何学形状はＱＲコード生成のためにあってよく、全ての「赤」の幾何学形状はＲＦＩＤタグ生成のためにあってよい。関連付けられる色の定義は、広く、又は特定的のいずれでもよい。場合によっては認識される前に、特定の指定を有した色が必要とされ得る。例えば、プリンタドライバ２２３又は２３３が、バーコードの生成のために矩形の形態で色（例えば、１６進数で「ＦＦ００００」と表される赤色）を関連付ける場合で、同じ赤色（「ＦＦ００００」）をもった正しい矩形形状がユーザによって描かれる場合、バーコードが関連するプリンタにより生成されるのみである。このように、内側に１６進数で表現した色に着色された幾何学形状領域が検出された場合、プリンタドライバ２２３又は２３３に対し識別コードをエンコードするように指示することができる。
【００５０】
他の例では、色の範囲が好適であり得る。例えば、バーコード生成のための要件を示す１６進数コード「ＦＦ００００」のみの代わりに、赤色の任意の濃淡または限定された（予め定められた）スペクトルが、描かれることを必要とするバーコードを指定し得る。他の例では、１つより多くの色または幾何学形状が、バーコードを示すために選択されてよい。例えば、オレンジ色または緑色のいずれかである幾何学形状が選択されてよい。そして、これらの設定の全ては、ユーザまたは管理者によって実施される。
【００５１】
ユーザが所望の幾何学形状と関連する色を加えるためにドキュメントを変更し終えると、ドキュメントデータは、ステップ４４０において、プリンタドライバ２２３又は２３３に送られる。
【００５２】
図４に戻って、プリンタドライバ２２３又は２３３は、幾つかのタスクを行う。まず、ステップ４４５において、プリンタドライバ２２３又は２３３は、ドキュメント内に幾何学形状かあるか否かを決定する。幾何学形状の検出は、いくつかの方法で達成され得る。例えば、幾何学形状が矩形の場合には、プリンタドライバ２２３又は２３３は、お互いの矩形線について「真っ直ぐ」（検出された許容度内で）であるベクトルを決める１組の点を決定する。１組の点を検出する代わりに、プリンタドライバ２２３又は２３３は、所定の頁上のある範囲の２組の線の各々がお互いに平行である（例えば、左側と右側、および上側と下側）ことを検出してもよい。ここで、システムは、絶対的に正確な平行線は必要とされないように、許容度のある範囲を考慮に入れてもよい。矩形の幾何学形状は、最も容易に検出される形状の中の１つであるので、特に有用である。つまり、２組の平行な線と、その平行線の中に満たされた内部とをもった規則的な形状を有する。ある場合には、プリンタドライバ言語自身が線についての印刷動作を規定し、例えば、印刷されたドキュメントの次々に続く線における２つの水平な線の検出は、プリンタドライバ２２３又は２３３にとってとても簡単である。他の形状の場合には、異なる検出方法が利用される。
【００５３】
幾何学形状が検出されない場合（ステップ４４５における「Ｎｏ」）、処理はステップ４７５に進み、更に形状が存在するか否かを決定する。検出された幾何学形状がある場合（ステップ４４５における「Ｙｅｓ」）、処理はステップ４５５において、使用可能な色があるか否かを決定する。
【００５４】
ステップ４５５において、プリンタドライバ２２３又は２３３は、幾何学形状内に使用可能な色があるか否かを決定する。適切な色の存在の決定は、いくつかの方法で達成される。ステップ４５５における着色された領域の検出を単純にするために、色は数値化されてよい。特に、色は範囲または許容度を与えられる。これは、ユーザに対して構成可能な色の数を制限することで、類似の色が異なる目的のために用いられることを避けることができ、ユーザの混乱を軽減する。
【００５５】
色の数値化は多くの形態で設定してよいが、この処理について動作するために見出されている１つの形態は、おおよその検出された色を、３６０度の弧に沿った「角度」に換算する。したがって、検出された幾何学形状の色（例えば、元は、ＲＧＢ（赤・緑・青）またはＣＭＹＫ（シアン・マゼンダ・イエロー・ブラック）としての形式であってよい）が、まず、ＨＳＶ（色相、彩度、明度）の色モデルに変形される。この色モデルにおいて、色相は３０度の倍数に近くなければならず、彩度と明度は１００％に近くなければならない。これらの許容度は、ユーザによって調整されることができるが、一般的に言って、色相について±５度、彩度と明度について５％までのデフォルトの許容度が、ほとんどの状況について好適である。
【００５６】
色の数値化のこの処理は、使用可能な１２個の異なる色相があることを意味する。１００％の彩度と明度の場合、これらの色は、伝統的に以下のように名付けられる： 
赤（０度）、          オレンジ色（３０度）、          黄（６０度）、
明るい薄黄緑色（シャルトルーズ）（９０度）、          緑（１２０度）、
新緑色（スプリング・グリーン）（１５０度）、      シアン（１８０度）、
紺色（２１０度）、          青（２４０度）、          紫（２７０度）、
マゼンダ（３００度）、  バラ色（３３０度）。
【００５７】
他の数値化システムが使用され得ることは明らかであるが、この数値化は、様々な色相間にゆとりをもった十分な範囲を提供することに貢献する。その上、テキストをバーコードに変換することにおいて、システムが信頼性をもって機能するために、好適なレベルの正確さを可能にする。
【００５８】
プリンタドライバ２２３又は２３３によって検出される使用可能な色がない場合（ステップ４５５において「Ｎｏ」）、ドキュメントはステップ４７５に送られる。しかし、使用可能な色がある場合（ステップ４５５において「Ｙｅｓ」）、プリンタドライバ２２３又は２３３は、ステップ４６０において、幾何学形状内の印刷可能なコンテンツを検出する。この印刷可能なコンテンツは、テキスト、ハイパーリンク、写真、イメージ、オーディオファイル、等々などのバーコードで表現されることができる任意の情報である。プリンタドライバ２２３又は２３３は、検出された幾何学形状内の全てのコンテンツを取り込むことを試みる。しかしながら、ある情報が一つのバーコードに表されるには大きすぎることもあり、ソフトウェアにとって検出されなかったり、又は判読できなかったりすることもある。情報が大きすぎる場合は、複数のバーコードに分割してもよくし、又は切り詰めてもよい。検出および判読されないコンテンツは、除外される。
【００５９】
ステップ４６０において、テキストを取り込むことに加えて、テキストの任意のフォーマット化（例えば、テキストがドキュメントに対して配置される０度、９０度、１８０度、又は２７０度などの角度、ある場合には、太字化または強調表示またはイタリック表示、又は下線付与、など）のデータも記録される。テキストが一致した幾何学図形の中で１つのよりも多くの角度で配置される場合、最後の角度だけが記憶されてもよい。より複雑なシステムではテキストのフォーマットの全てが表され、バーコード情報の中に記憶されてもよい。ほとんどのプリンティングシステムは、アフィン変換によって座標空間を変換することを可能にする。アフィン変換は、移動（translation）、拡大・縮小（scaling）、および、回転（rotation）を含む。アフィン変換は、一般に、変換行列を連結することによって行われる。プリンタドライバ２２３又は２３３は、多くの場合、プリンティングシステムの座標空間における座標をデバイスの座標空間にマッピングするために、変換行列を使用する。この情報は、ソフトウェアがそのようにすることを可能にする限り、結果的に生成されるバーコードの中に表され得る。これらの形式の変換は、検出されたテキストの角度やフォーマットを変更してもよい（例えば、頁に対して９０度の角度で、イタリック）。
【００６０】
あるものが頁上に表される場合の現在の回転角度θを検出することは、現在のデバイスとプリンティングシステムの変換行列に対して２点を乗算し、次に、２つの計算された射影座標の比の逆タンジェント（逆正接）を得ることによって算出できる。数１は、Ｔｄが現在のデバイスの変換行列を表し、Ｔｃが現在のプリンティングデバイスの変換行列を表す場合の現在の回転角度を決定するためのアルゴリズムである。
【００６１】
【数１】
2020135862.tif 000003
【００６２】
これは、移動と等方性の拡大・縮小が適用された後でも、幾何学形状内の特定されたテキストについての回転の角度を成功裡に検出する。せん断（shearing）や異方性スケーリング（anisotropic scaling）などの（あまり一般的ではない）他のアフィン変換は、この計算の正確性に影響する。±５度にデフォルト設定されているユーザが構成可能な許容度は、ＩＥＥＥ７５４浮動小数点演算を用いた連続行列連結の後で生じる丸め誤差を許容する。
【００６３】
バーコードプリンタ２４０の能力に応じて、ステップ４６０において検出された、テキストの丸められた角度が０度、９０度、１８０度、又は２７０度でない場合、ほとんどのバーコードプリンタ２４０が他の角度でバーコードを印刷することができないので、それは捨てられてよい。
【００６４】
印刷可能なコンテンツ、およびその角度が検出されると、ステップ４７０において、当該コンテンツがバーコードにエンコードされる。当該印刷可能なコンテンツのためのバーコードが、同じ角度で、および特定のバーコードプリンタの制限を考慮に入れて可能であるだけの関連するフォーマット情報を有して提供される。
【００６５】
処理は、ドキュメント内に他の幾何学形状があるかぎり繰り返される（ステップ４７５における「Ｙｅｓ」からステップ４４５）。全ての一致した幾何学図形が処理されると（ステップ４７５における「Ｎｏ」）、ステップ４８０において、バーコードが生成される。バーコードの角度は、以前に決定された角度と同じになる。所与のバーコードプリンタは、離散した大きさでバーコードを生成できるだけの場合もある。バーコードの大きさは、対応する一致した幾何学形状の大きさに等しいか、又はそれよりも小さい、バーコードプリンタによってサポートされる最も大きな大きさとなる。バーコードは、ステップ４６０における検出された場所において頁上に位置づけられ、それが幾何学図形の大きさよりも小さい場合、検出された幾何学形状の領域内の垂直と水平の両方の中心に置かれる。このように、バーコードが、幾何学形状内にあった関連するテキストを効果的に「置き換え」る。
【００６６】
ある例では、幾何学図形があった場所の左揃えまたは右揃えなどのカスタム設定が、ユーザや管理者によって予めプログラムされてもよく、バーコードプリンタ２４０の設定であってもよい。
【００６７】
ステップ４８０において、バーコードにエンコードされたデータは、ステップ４６０において検出され、ステップ４７０においてエンコードされたテキストを表すバーコードコンテンツである。ステップ４７０におけるエンコードの後で適切な文字がない場合（例えば、テキストが判読できなかった、意味をなさなかった、又はプリンタドライバによって処理できなかった）、デフォルトまたはエラーを示すイメージが、検出された幾何学図形と同じ場所にバーコードの代わりに印刷される。デフォルトまたはエラーを示すイメージは、関連するテキストがバーコード生成のために適切でなかったことをユーザに提示できる。他の例では、何のイメージも全く印刷しなくてもよい。或いは、その部分は、挿入され着色された幾何学形状として、又は元のテキストとしての、いずれかで印刷してもよい。これもまた、ユーザ、管理者、又はプリンタ自身によって設定される。しかし、何のバーコードも全く印刷されない場合、ユーザは、印刷可能なテキストが検出されなかったのではなく、バーコードプリンタ２４０の全体的な機能に何らかの異常があると考えるかもしれないので、図形を印刷することが好ましい。
【００６８】
ある場合には、標準のコンテンツまたは何らかの他の可視的なオブジェクトが、データがエンコードされるときに、各バーコードに組み込まれてもよい。例えば、特定のロゴ、または、デフォルトのコンテンツ（例えば、ウェブサイト、ハイパーリンク、または、会社名）が、それがエンコードされるときに、バーコードと組み合わされて印刷してもよい。デフォルトのコンテンツは、自動的に生成されてよく、ドキュメント内、又はドキュメントの組の中の他のカラーコード化された幾何学形状によって設定されてもよい。例えば、黄色の矩形が検出される毎に、当該テキストがドキュメントの組の中の各バーコード上に表れるように、印刷されるバーコードのデフォルト部分として用いられてもよい。
【００６９】
ステップ４８０において、幾何学形状がバーコードに置き換えられると、ドキュメントは、出力のためにステップ４９０において、バーコードプリンタ２４０に送られる。そして、バーコードプリンタ２４０は、ステップ４９２において、置き換えられたバーコードまたは複数のバーコードを含むドキュメントを印刷出力する。これにより、物理的なドキュメントが印刷されることができ、又はバーコードを有したデジタルファイルが作成されることができる。そのようなドキュメントの例が、図７に表される。図７に見られるように、バーコードに置き換えられない同じテキスト７５０は可視であるが、テキスト６５２（図６）は、ここで、バーコード７７０に変換されている。上述のように、他の形態のバーコードも可能である。以降、処理はステップ４９５において終了する。バーコード出力は、ユーザの選択又はデフォルト設定等によりバーコードプリンタ２４０ではなく、多機能周辺機器２１０であってもよい。
【００７０】
本明細書を通じて示された実施形態や例は、開示された、又は特許請求の範囲に記載された機器や手順への限定ではなく、例として考慮されるべきである。提示される例の多くは、方法の動作やシステムの要素の特定の組み合わせを含むが、当該動作や当該要素は、同じ目的を達成するために他の方法で組み合わされてもよいことが理解されるべきである。フローチャートに関して、追加のステップやより少ないステップが行われてもよく、示されたステップは方法を達成するために、組み合わせを行い、又は更に洗練されてもよい。一つの実施形態に関連してのみ論じられた動作や要素や態様は、他の実施形態における類似の役割から除外されることを意図されない。
【００７１】
本技術の実施形態について上に説明したが、実施形態は単に例示であり、本技術は上述の実施形態にのみ限定されるものではない。上述の新規な実施形態は、他の種々の形態で実現し得、さらに、本発明の要旨を逸脱しない範囲内において種々省略、代替及び変更を加え得る。特許請求の範囲及びその均等物は、これらの形態又は変形をカバーし、これらは本発明の要旨を逸脱しない。
【符号の説明】
【００７２】
１００、２００・・システム、  １１０、２１０・・多機能周辺機器
１２０、２２０・・デスクトップコンピュータ、  １３０、２３０・・モバイルデバイス
１４０、２４０・・バーコードプリンタ、  １５０・・ネットワーク
２１１・・ラスターイメージプロセッサ、  ２１２・・プリントハードウェア
２２１、２３１・・オペレーティングシステム、  ２２２、２３２・・ワードプロセッサ
２２３、２３３・・プリンタドライバ、  ２４１・・イメージプロセッサ
２４２・・プリントハードウェア、  ３００・・コンピューティングデバイス
３１１・・ネットワークインターフェイス、  ３１２・・プロセッサ
３１４・・メモリ、  ３１５・・Ｉ／Ｏインターフェイス、  ３１８・・ストレージ
５５０、６５０、７５０・・バーコードが生成されないテキスト
５５２、６５２・・バーコードが生成されるテキスト
６６０・・幾何学形状、  ７７０・・バーコード
【図１】
2020135862.tif 000004
【図２】
2020135862.tif 000005
【図３】
2020135862.tif 000006
【図４】
2020135862.tif 000007
【図５】
2020135862.tif 000008
【図６】
2020135862.tif 000009
【図７】
2020135862.tif 000010