(57)【要約】【課題】  アプリケーションがプリンタのデバイスフォントを取得できない場合であっても、アプリケーションによる印刷対象の文字をデバイスフォントでプリンタに印刷させることを可能にする。【解決手段】  情報処理装置３０は、ＯＳ（Operating System）部３１と、プリンタ制御部３２とを備える。プリンタ制御部３２のパイプライン処理部３３は、ＯＳが持つ書体データであるシステムフォントと、プリンタ３４が持つデバイスフォントとの対応関係を表すフォント対応データから、印刷対象の文字を表すテキストデータである文字データに関連付けられているシステムフォントに対応するデバイスフォントを抽出する。また、パイプライン処理部３３は、印刷対象の文字データに関連付けられているシステムフォントを、抽出したデバイスフォントに置換し、置換後の前記デバイスフォントが関連付けられた文字データをプリンタに向けて出力する。【選択図】      図５
2019128637.tif 000002
【特許請求の範囲】
【請求項１】
装置を制御する基本ソフトウェアであるＯＳ（Operating System）に基づいた処理を実行するＯＳ部と、
プリンタを制御するソフトウェアであるプリンタドライバに基づいた処理を実行するプリンタ制御部と
を備え、
前記プリンタ制御部は、複数の処理要素を順次処理していくパイプライン処理を実行するパイプライン処理部を含み、
当該パイプライン処理部は、前記ＯＳが持つ書体データであるシステムフォントと、前記プリンタが持つデバイスフォントとの対応関係を表すフォント対応データから、印刷対象の文字を表すテキストデータである文字データに関連付けられている前記システムフォントに対応する前記デバイスフォントを抽出し、前記文字データに関連付けられている前記システムフォントを、抽出した前記デバイスフォントに置換し、置換後の前記デバイスフォントが関連付けられた前記文字データを前記プリンタに向けて出力する機能を備える情報処理装置。
【請求項２】
前記パイプライン処理部は、前記システムフォントに対応する前記デバイスフォントを前記フォント対応データから抽出できない場合には、前記システムフォントで表される前記印刷対象の文字の画像データを前記プリンタに向けて出力する機能をさらに備える請求項１に記載の情報処理装置。
【請求項３】
前記プリンタ制御部は、前記システムフォントを前記デバイスフォントに置換するフォント置換機能を有効とするか否かの情報を受け付け、当該受け付けた情報に基づいて前記フォント置換機能を有効と無効の一方に切り替え設定する機能切り替え部をさらに備え、
前記パイプライン処理部は、前記フォント置換機能が無効に設定されている場合には、前記フォント置換機能を実行せずに、印刷対象の文字データに関連付けられている前記システムフォントの前記システムフォントで表される前記印刷対象の文字の画像データを前記プリンタに向けて出力する請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記ＯＳが持つ複数の前記システムフォントのそれぞれに対応させる前記デバイスフォントを指定する情報を受け付け、当該受け付けた情報に基づいて前記フォント対応データを生成するデータ生成部をさらに備える請求項１乃至請求項３の何れか一つに記載の情報処理装置。
【請求項５】
前記フォント対応データには、前記システムフォントとしてのコード情報が含まれている請求項１乃至請求項４の何れか一つに記載の情報処理装置。
【請求項６】
複数の処理要素を順次処理していくパイプライン処理を実行する機能を備えたコンピュータが、前記パイプライン処理により、
装置を制御する基本ソフトウェアであるＯＳ（Operating System）が持つ書体データであるシステムフォントと、プリンタが持つデバイスフォントとの対応関係を表すフォント対応データから、印刷対象の文字を表すテキストデータである文字データに関連付けられている前記システムフォントに対応する前記デバイスフォントを抽出し、
前記文字データに関連付けられている前記システムフォントを、抽出した前記デバイスフォントに置換し、
置換後の前記デバイスフォントが関連付けられた前記文字データを前記プリンタに向けて出力する印字処理方法。
【請求項７】
複数の処理要素を順次処理していくパイプライン処理を実行する機能を備えたコンピュータに、前記パイプライン処理により、
装置を制御する基本ソフトウェアであるＯＳ（Operating System）が持つ書体データであるシステムフォントと、プリンタが持つデバイスフォントとの対応関係を表すフォント対応データから、印刷対象の文字を表すテキストデータである文字データに関連付けられている前記システムフォントに対応する前記デバイスフォントを抽出する処理と、
前記文字データに関連付けられている前記システムフォントを、抽出した前記デバイスフォントに置換する処理と、
置換後の前記デバイスフォントが関連付けられた前記文字データを前記プリンタに向けて出力する処理と
を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置がプリンタに向けて印刷対象の文字情報を送信する際の処理に関する。
【背景技術】
【０００２】
基本ソフトウェアであるＯＳ（Operating System）に基づいて動作するパーソナルコンピュータ（パソコン）等の情報処理装置においては、ＯＳにより提供される動作環境の下でアプリケーションが実行される。また、ＯＳには、プリンタの制御に関わるプリンタドライバアーキテクチャが含まれている。このプリンタドライバアーキテクチャには、ＯＳのバージョンに応じた複数のバージョンがある。プリンタを制御すべく情報処理装置にインストールされるプリンタドライバは、そのプリンタドライバアーキテクチャのバージョンに応じて構成されるソフトウェアである。また、プリンタは、印刷可能な文字の書体データであるデバイスフォントを持つ。さらに、ＯＳには、デバイスフォントとは異なる文字の書体データであるシステムフォントが含まれている。
【０００３】
ところで、特許文献１には、次のような機能を持つプリンタドライバが提案されている。すなわち、特許文献１におけるプリンタドライバは、アプリケーションから、デバイスフォントが関連付けられている印字データを受け取った場合には、その印字データ（テキストデータ）をプリンタに送信する。また、プリンタドライバは、デバイスフォントが関連付けられていない印字データを受け取った場合には、印字のイメージを表す画像を生成し当該画像データをプリンタに送信する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−０５２７８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１で提案されている構成では、アプリケーションからプリンタドライバに向けて出力される印刷対象の文字データに、デバイスフォントのデータが関連付けられていることを前提としている。
【０００６】
しかしながら、プリンタドライバによっては、対応しているプリンタドライバアーキテクチャのバージョン（具体例としては、Microsoft（登録商標）社が提供するVersion４（Ｖ４）のプリンタドライバアーキテクチャ）の機能に起因してパスツール機能を持たない。パスツール機能を持たないプリンタドライバには次のような問題が生じる。つまり、パスツール機能を持つプリンタドライバが採用されている場合には、プリンタドライバのパスツール機能により、アプリケーションはプリンタからデバイスフォントを取得できる。このため、アプリケーションは、印刷対象の文字データにデバイスフォントを関連付けることができる。しかし、パスツール機能を持たないプリンタドライバを採用すると、アプリケーションはデバイスフォントを取得できない。このため、パスツール機能を持たないプリンタドライバを備えている情報処理装置が特許文献１の構成を採用すると、アプリケーションは印刷対象の文字データにデバイスフォントを関連付けできないから、デバイスフォントでの印字ができないこととなる。また、情報処理装置からプリンタに送信される印刷対象の文字を表すデータは全て画像データとなることから、データの送信に時間が掛かる。
【０００７】
本発明は上記課題を解決するために考え出された。すなわち、本発明の主な目的は、アプリケーションがデバイスフォントを取得できない場合であっても、アプリケーションによる印刷対象の文字をデバイスフォントでプリンタにより印刷させることを可能とする技術を提供することにある。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の情報処理装置は、
装置を制御する基本ソフトウェアであるＯＳ（Operating System）に基づいた処理を実行するＯＳ部と、
プリンタを制御するソフトウェアであるプリンタドライバに基づいた処理を実行するプリンタ制御部と
を備え、
前記プリンタ制御部は、複数の処理要素を順次処理していくパイプライン処理を実行するパイプライン処理部を含み、
当該パイプライン処理部は、前記ＯＳが持つ書体データであるシステムフォントと、前記プリンタが持つデバイスフォントとの対応関係を表すフォント対応データから、印刷対象の文字を表すテキストデータである文字データに関連付けられている前記システムフォントに対応する前記デバイスフォントを抽出し、前記文字データに関連付けられている前記システムフォントを、抽出した前記デバイスフォントに置換し、置換後の前記デバイスフォントが関連付けられた前記文字データを前記プリンタに向けて出力する機能を備える。
【０００９】
本発明の印字処理方法は、
複数の処理要素を順次処理していくパイプライン処理を実行する機能を備えたコンピュータが、前記パイプライン処理により、
装置を制御する基本ソフトウェアであるＯＳ（Operating System）が持つ書体データであるシステムフォントと、プリンタが持つデバイスフォントとの対応関係を表すフォント対応データから、印刷対象の文字を表すテキストデータである文字データに関連付けられている前記システムフォントに対応する前記デバイスフォントを抽出し、
前記文字データに関連付けられている前記システムフォントを、抽出した前記デバイスフォントに置換し、
置換後の前記デバイスフォントが関連付けられた前記文字データを前記プリンタに向けて出力する。
【００１０】
本発明のコンピュータプログラムは、
複数の処理要素を順次処理していくパイプライン処理を実行する機能を備えたコンピュータに、前記パイプライン処理により、
装置を制御する基本ソフトウェアであるＯＳ（Operating System）が持つ書体データであるシステムフォントと、プリンタが持つデバイスフォントとの対応関係を表すフォント対応データから、印刷対象の文字を表すテキストデータである文字データに関連付けられている前記システムフォントに対応する前記デバイスフォントを抽出する処理と、
前記文字データに関連付けられている前記システムフォントを、抽出した前記デバイスフォントに置換する処理と、
置換後の前記デバイスフォントが関連付けられた前記文字データを前記プリンタに向けて出力する処理と
を実行させる。
【発明の効果】
【００１１】
本発明によれば、アプリケーションがデバイスフォントを取得できない場合であっても、アプリケーションによる印刷対象の文字をデバイスフォントでプリンタに印刷させることができる。
【図面の簡単な説明】
【００１２】
【図１】本発明に係る第１実施形態の情報処理装置の構成を簡略化して表すブロック図である。
【図２】フォント対応データの一例を示す図である。
【図３】第１実施形態におけるプリンタ制御部の動作の一例を表すフローチャートである。
【図４】フォント対応データのその他の形態例を示す図である。
【図５】本発明に係るその他の実施形態の情報処理装置の構成を簡略化して表すブロック図である。
【発明を実施するための形態】
【００１３】
以下に、本発明に係る実施形態を図面を参照して説明する。
【００１４】
＜第１実施形態＞
図１は、本発明に係る第１実施形態の情報処理装置の構成を表すブロック図である。第１実施形態の情報処理装置１は、印刷装置であるプリンタ２と、ディスプレイ等の表示装置３とに接続されている。この情報処理装置１は、大概構成として、制御装置５と、記憶装置６とを備えている。
【００１５】
記憶装置６は、各種データやコンピュータプログラム（プログラム）を記憶する記憶媒体である。なお、記憶媒体には、磁気記録媒体であるハードディスクや、光ディスクや、半導体メモリなどの記憶方式の違いによる様々な種類がある。また、記憶媒体には、制御装置に内蔵される記憶媒体や、情報処理装置１に外付けされる記憶媒体などの構造の相違による複数の種類がある。ここでは、情報処理装置１が利用する記憶媒体の種類および数は限定されず、また、情報処理装置１が利用する記憶媒体として複数の記憶媒体がある場合には、それらをまとめて記憶装置６として記載する。
【００１６】
制御装置５はＣＰＵ（Central Processing Unit）を備えている。第１実施形態では、制御装置５は、記憶装置６に記憶されているコンピュータプログラムをＣＰＵが実行することにより、機能部として、ＯＳ（Operating System）部１０と、アプリケーション部１１と、プリンタ制御部１２と、データ生成部１３とを備える。
【００１７】
ＯＳ部１０は、基本ソフトウェアであるＯＳ（Operating System）に基づいた処理を実行する機能を備える。
【００１８】
アプリケーション部１１は、アプリケーションソフトウェアに基づいた処理を実行する機能を備える。アプリケーション部１１は複数種のアプリケーションソフトウェアに基づいた処理を実行可能である。アプリケーション部１１が処理するアプリケーションソフトウェアの種類は限定されないが、例えば、アプリケーション部１１は、文字を表示装置３に表示させる表示コマンドやプリンタ２に向けて文字の印刷を指示する印刷コマンドを出力する処理を実行可能である。第１実施形態では、アプリケーション部１１は、プリンタ２に印刷コマンドを出力する場合には、印刷対象の文字を表す文字データに、ＯＳが持つ文字の書体データであるシステムフォントを関連付け、当該文字データを印刷コマンドと共にプリンタ制御部１２に向けて出力する。なお、ここでは、文字データもシステムフォントもテキストデータの形態を採る。
【００１９】
データ生成部１３は、システムフォントと、プリンタ２が持つデバイスフォントとを取得し、それらフォントを表す情報を表示装置３に表示させる機能を持つ。ここでは、例えば、データ生成部１３の機能により、表示装置３の同じ画面に、システムフォントが表示される表示領域と、デバイスフォントが表示される表示領域とが並べて配置される。
【００２０】
第１実施形態では、システムフォントもデバイスフォントも、複数ずつ設定されている。データ生成部１３は、複数のシステムフォントのそれぞれに一対一で対応させるデバイスフォントをユーザに指定させることを促すメッセージを表示装置３に表示させる機能をさらに備える。さらに、データ生成部１３は、情報を入力するマウスやタッチパネル等の入力装置を利用して、ユーザがフォントの対応関係を指定する情報を入力すると、その情報を受け付ける機能を備える。さらにまた、データ生成部１３は、その受け付けた情報に基づいてシステムフォントとデバイスフォントとの対応関係を表すフォント対応データを生成し、記憶装置６に書き込む機能を備える。図２は、フォント対応データの一例を表す図である。図２の例では、システムフォントの『Ｆｏｎｔ−Ｂ』、『Ｆｏｎｔ−Ｘ』には、それぞれ、対応するデバイスフォントとして『ＤｅｖｉｃｅＦｏｎｔ−Ｂ』、『ＤｅｖｉｃｅＦｏｎｔ−Ｘ』が設定されている。また、システムフォントの『Ｆｏｎｔ−Ａ』に対応するデバイスフォントは設定されていない。
【００２１】
プリンタ制御部１２は、プリンタを制御するソフトウェアであるプリンタドライバに基づいた処理を実行する機能を備える。第１実施形態では、プリンタ制御部１２は、ＵＩ（User Interface）部１５と、パイプライン処理部１６とを備える。
【００２２】
ＵＩ部１５は、ユーザがプリンタ２の印刷処理に関わる設定情報を入力（設定）する処理を支援する機能を備える。その一つの機能として、ＵＩ部１５は、機能切り替え部１８を備える。機能切り替え部１８は、パイプライン処理部１６によるフォント置換機能を有効とするか無効とするかの択一的な情報をユーザに設定させる機能を備える。例えば、機能切り替え部１８は、フォント置換機能を有効とするか無効とするかの情報をユーザに選定させる画面を表示装置３に表示させる。その表示装置３の画面表示に従ってユーザが有効あるいは無効の情報を入力装置によって入力すると、機能切り替え部１８はその入力された情報を受け付け、受け付けた情報を情報処理装置１に保持させる。
【００２３】
パイプライン処理部１６は、複数の処理要素を順次処理していくパイプライン処理を実行する機能を備える。当該パイプライン処理部１６は、抽出部２０と、置換部２１と、出力部２２とを備える。抽出部２０は、フォント置換機能が有効に設定されている場合には、アプリケーション部１１から出力された印刷対象の文字を表す文字データを受け付ける機能を備える。また、抽出部２０は、文字データに関連付けられているシステムフォントに対応するデバイスフォントをフォント対応データから抽出する機能を備える。
【００２４】
置換部２１は、システムフォントに対応するデバイスフォントがフォント対応データから抽出された場合に、文字データに関連付けられているシステムフォントを、抽出されたデバイスフォントに置換する機能を備える。
【００２５】
出力部２２は、置換部２１の置換処理によりデバイスフォントが関連付けられた文字データをプリンタ２に向けて出力する機能を備える。また、出力部２２は、フォント置換機能が無効に設定されている場合には、アプリケーション部１１から出力された印刷対象の文字を表す文字データを受け付ける機能を備える。そして、出力部２２は、その受け付けた文字データに関連付けられているシステムフォントを参照し、当該システムフォントで表される印刷対象の文字の画像データを生成し、当該画像データをラスタイメージでもってプリンタ２に向けて出力する機能を備える。
【００２６】
また、出力部２２は、抽出部２０がデバイスフォントをフォント対応データから抽出できなかった場合に、上記同様に生成された文字の画像データをラスタイメージでもってプリンタ２に向けて出力する機能を備える。
【００２７】
次に、情報処理装置１におけるプリンタ制御部１２の動作例を図３のフローチャートを利用して説明する。
【００２８】
まず、プリンタ制御部１２が、アプリケーション部１１から印刷対象の文字データを印刷コマンドと共に受け取ると（ステップＳ１０１）、フォント置換機能の設定情報を参照しフォント置換機能が有効に設定されているか否かを判断する（ステップＳ１０２）。そして、有効に設定されている場合には、プリンタ制御部１２におけるパイプライン処理部１６の抽出部２０が記憶装置６にフォント対応データが格納されているか否かを判断する（ステップＳ１０３）。これにより、フォント対応データが格納されていると判断した場合には、抽出部２０は、印刷対象の文字データに関連付けられているシステムフォント（処理対象のフォント）をフォント対応データに照合する（ステップＳ１０４）。このとき、印刷コマンドと共に受け取った印刷対象の文字データが複数有る場合には、抽出部２０は、印刷対象の複数の文字データのうちの一つを選択し、選択された文字データに関連付けられているシステムフォントを処理対象のフォントとしてフォント対応データに照合する。
【００２９】
そして、抽出部２０は、フォント対応データの中に、システムフォントに対応するデバイスフォントが設定されているか（有るか）否かを判断する（ステップＳ１０５）。これにより、デバイスフォントが有る場合には、抽出部２０は、そのシステムフォントに対応するデバイスフォントをフォント対応データから抽出する。その後、置換部２１が、文字データに関連付けられている処理対象のフォントであるシステムフォントを、抽出部２０により抽出されたデバイスフォントに置換する（ステップＳ１０６）。これにより、印刷対象の文字データにデバイスフォントが関連付けられたテキストデータが印刷データとして生成される。
【００３０】
然る後に、抽出部２０は、印刷コマンドと共に受け取った印刷対象の文字データの全てについて上述したようなシステムフォントの置換に関わる処理を終了したか否かを判断する（ステップＳ１０８）。そして、抽出部２０は、システムフォントの置換に関わる処理が終了していない（未処理のシステムフォントがある）と判断した場合には、その未処理のシステムフォントを処理対象としてステップＳ１０４以降の処理を繰り返し行う。
【００３１】
一方、フォント対応データの中に、処理対象のシステムフォントに対応するデバイスフォントが設定されていない（無い）場合がある。この場合には、出力部２２が、テキストデータである印刷データに代えて、処理対象のシステムフォントでの印刷対象の文字の画像（イメージ）データを印刷データとして生成する（ステップＳ１０７）。
【００３２】
また、ステップＳ１０２の判断動作により、フォント置換機能が有効でない（無効である）と判断された場合には、出力部２２が、印刷対象の全ての文字について、システムフォントでの印刷対象の文字の画像（イメージ）データを印刷データとして生成する（ステップＳ１１０）
さらに、ステップＳ１０３の判断動作により、フォント対応データを保持していないと判断した場合にも、上記同様に、出力部２２が、印刷対象の全ての文字について、システムフォントでの印刷対象の文字の画像（イメージ）データを印刷データとして生成する。
【００３３】
このようにして、印刷コマンドと共に受け取った印刷対象の文字データの全てについて上述したような処理による印刷データの生成が完了した場合に、出力部２２は、プリンタ２に向けて印刷データを送信する（ステップＳ１０９）。
【００３４】
第１実施形態の情報処理装置１は、上記のようにアプリケーション部１１から出力された印刷対象の文字データに関連付けられているシステムフォントをデバイスフォントに置換する機能を備えている。このため、システムフォントを関連付けた印刷対象の文字データをアプリケーション部１１が出力しても、情報処理装置１は、プリンタ２にデバイスフォントで印字させることを可能にする。
【００３５】
また、第１実施形態では、システムフォントをデバイスフォントに置換できた場合には、印刷対象の文字データはテキストデータにより情報処理装置１からプリンタ２に送信される。このため、情報処理装置１は、印刷対象の文字データの全てが画像データの態様でプリンタ２に送信される場合に比べて、印刷対象の文字データの送信に係る通信容量の削減や、送信に要する時間の短縮を図ることができる。換言すれば、情報処理装置１は、印刷に係る処理時間の短縮を図ることができる。
【００３６】
＜その他の実施形態＞
なお、本発明に係る情報処理装置は、第１実施形態に限定されず様々な実施の形態を取り採り得る。例えば、図４に表されているように、バーコードなどの一次元コードや、二次元コードを含むコード情報がシステムフォントとしてフォント対応データに含まれていてもよい。この場合には、例えば、情報処理装置１には、バーコードや二次元コードのパターンと、パターンを識別するコード識別情報である文字コードとの関係データが与えられる。また、ユーザが入力装置によって、コード識別情報である文字コードを情報処理装置１に入力した場合に、情報処理装置１は、その入力されたコード識別情報を受け取り、当該コード識別情報に応じたコードのパターンを検知する機能を備える。このような場合には、プリンタ２がデバイスフォントとしてコード情報を持たなくとも、情報処理装置１は、プリンタ２に印刷対象のバーコードや二次元コードの画像のデータを送信するから、プリンタ２にバーコードなどを印刷させることができる。つまり、情報処理装置１は、ユーザがコード識別情報である文字コードを入力することにより、バーコードや二次元コードをプリンタ２に印刷させることを実現させる。
【００３７】
また、例えば、情報処理装置１は、フォント置換機能を常に有効にすることを基本設定とする場合には、機能切り替え部１８を持たなくともよい。
【００３８】
さらにまた、本発明に係る情報処理装置は、その一形態として、図５に示されるような構成としてもよい。すなわち、図５における情報処理装置３０は、ＯＳ部３１と、プリンタ制御部３２とを備える。ＯＳ部３１は、装置を制御する基本ソフトウェアであるＯＳ（Operating System）に基づいた処理を実行する機能を備える。プリンタ制御部３２は、プリンタ３４を制御するソフトウェアであるプリンタドライバに基づいた処理を実行する機能を備える。また、プリンタ制御部３２は、パイプライン処理部３３を含む。パイプライン処理部３３は、複数の処理要素を順次処理していくパイプライン処理を実行する機能を備える。
【００３９】
パイプライン処理部３３は、ＯＳが持つ書体データであるシステムフォントと、プリンタ３４が持つデバイスフォントとの対応関係を表すフォント対応データから、印刷対象の文字を表すテキストデータである文字データに関連付けられているシステムフォントに対応するデバイスフォントを抽出する機能を有する。また、パイプライン処理部３３は、印刷対象の文字データに関連付けられているシステムフォントを、抽出したデバイスフォントに置換し、置換後の前記デバイスフォントが関連付けられた文字データをプリンタに向けて出力する機能を備える。
【００４０】
このような図５における構成を持つ情報処理装置１は、第１実施形態と同様に、アプリケーションがデバイスフォントを取得できない場合であっても、アプリケーションによる印刷対象の文字をデバイスフォントでプリンタに印刷させることができる。
【符号の説明】
【００４１】
１，３０  情報処理装置
２，３４  プリンタ
１０，３１  ＯＳ部
１２，３２  プリンタ制御部
１３  データ生成部
１６，３３  パイプライン処理部
【図１】
2019128637.tif 000003
【図２】
2019128637.tif 000004
【図３】
2019128637.tif 000005
【図４】
2019128637.tif 000006
【図５】
2019128637.tif 000007