プログラムと印刷データ変換装置とコンピュータ読み取り可能な記録媒体
【課題】 印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択できるようにする。
【解決手段】 データ形式選択部は、S1でGDIから変倍率を取得すると、S2で変倍率が1よりも大きいか否かを判断する。変倍率が1よりも大きいなら、S3〜S5でデータ形式がアウトライン形式のフォントデータを取得し、上記変倍率に基づいて上記アウトラインデータを変倍(拡大処理を施す)し、変倍率が1よりも大きくないなら、S7〜S9でデータ形式がビットマップ形式のフォントデータを取得し、上記変倍率に基づいて上記ビットマップデータをそのまま、あるいは変倍して、S6でスプーラに一時蓄積した後にプリンタへ送信する。
【解決手段】 データ形式選択部は、S1でGDIから変倍率を取得すると、S2で変倍率が1よりも大きいか否かを判断する。変倍率が1よりも大きいなら、S3〜S5でデータ形式がアウトライン形式のフォントデータを取得し、上記変倍率に基づいて上記アウトラインデータを変倍(拡大処理を施す)し、変倍率が1よりも大きくないなら、S7〜S9でデータ形式がビットマップ形式のフォントデータを取得し、上記変倍率に基づいて上記ビットマップデータをそのまま、あるいは変倍して、S6でスプーラに一時蓄積した後にプリンタへ送信する。
【発明の詳細な説明】
【技術分野】
【0001】
この発明は、プログラムと印刷データ変換装置とコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【0002】
パーソナルコンピュータにおいてプリンタで文字を印刷するとき、文字データがビットマップデータの場合、そのビットマップデータを拡大すると、文字の斜線部や曲線部のギザギザ(これを「ジャギー」と呼ぶ)が目立つようになり、印字品質が低下する。
一方、文字データがアウトラインデータの場合は、そのアウトラインデータを縮小すると、文字の一部が欠けたりつぶれたりして印字品質が低下する。
そこで従来、ビットマップデータの文字の輪郭からベクタデータを作成して印刷データに変換する印刷データ変換装置(例えば、特許文献1参照)が提案されている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、従来の印刷データ変換装置では、ビットマップデータからベクタデータを作成するという新たな処理を行わなければならず、その処理負担がかかる上に、プリンタドライバが得られるデータ形式の文字データのままでも印字品質の劣化を防止することが容易にできないという問題があった。
この発明は上記の点に鑑みてなされたものであり、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択できるようにすることを目的とする。
【課題を解決するための手段】
【0004】
この発明は上記の目的を達成するため、次のプログラムを提供する。
コンピュータに、印刷する文字データに付加された指定情報を取得する取得手順と、その取得手順によって取得した指定情報に基づいて上記印刷する文字データを印刷データに変換したとき、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択する選択手順と、その選択手順によって選択されたデータ形式の文字データを要求する要求手順を実行させるためのプログラム。
また、上記のようなプログラムにおいて、上記要求手順によって要求したデータ形式の文字データを取得し、上記指定情報に基づいて上記取得したデータ形式の文字データを印刷データに変換する変換手順を含むようにするとよい。
【0005】
さらに、上記のようなプログラムにおいて、コンピュータに、上記文字データと上記指定情報とを含む中間データを作成する作成手順と、上記作成手順によって作成した中間データを記憶する記憶手順と、上記記憶手順によって記憶された中間データの指定情報に対する変更指示に基づいて、その指定情報の変更処理を行う変更手順とを実行させ、上記取得手順が、上記記憶手順によって記憶された中間データから指定情報を取得し、上記選択手順が、上記中間データから取得した指定情報に基づいて、その中間データから文字データを選択し、上記要求手順が、上記中間データから上記選択手順によって選択した文字データを要求するようにするとよい。
また、上記のようなプログラムにおいて、上記指定情報は、変倍率、文字幅、文字高さ、文字属性のいずれか1つを含む情報にするとよい。
さらに、上記のようなプログラムにおいて、上記文字データのデータ形式には、アウトラインデータとビットマップデータとフォントデータを含むとよい。
【0006】
また、上記のようなプログラムのいずれかを記録したコンピュータ読み取り可能な記録媒体も提供する。
さらに、印刷する文字データに付加された指定情報を取得する取得手段と、その取得手段によって取得した指定情報に基づいて上記印刷する文字データを印刷データに変換したとき、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択する選択手段と、その選択手段によって選択されたデータ形式の文字データを要求する要求手段と、その要求手段によって要求したデータ形式の文字データを取得し、上記指定情報に基づいて上記取得したデータ形式の文字データを印刷データに変換する変換手段を備えた印刷データ変換装置も提供する。
【発明の効果】
【0007】
この発明によるプログラムは、コンピュータに、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択できるようにすることができるようにするための機能を実現させることができる。
また、この発明による印刷データ変換装置は、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択し、その選択した文字データを印刷データに変換することができる。
また、この発明による印刷データ変換装置は、条件により、GDIから取得できる文字データ(例えば、ビットマップデータ、アウトラインデータ、フォントデータ)から選択することで、良好な変倍後の文字データを得ることができる。
さらに、この発明のコンピュータ読み取り可能な記録媒体は、コンピュータに上記プログラムを容易に導入することができる。
【図面の簡単な説明】
【0008】
【図1】この発明の実施例1の印刷システムの構成を示すブロック図である。
【図2】図1に示すグラフィック部の処理を示すフローチャート図である。
【図3】図1に示すグラフィック部の他の処理例を示すフローチャート図である。
【図4】図1に示すグラフィック部のまた他の処理例を示すフローチャート図である。
【図5】図1に示すデータ形式選択部における処理内容を選択する処理を示すフローチャート図である。
【0009】
【図6】この発明の実施例2の印刷システムの構成を示すブロック図である。
【図7】図6に示すグラフィック前処理部の処理を示すフローチャート図である。
【図8】図6に示すグラフィック後処理部の処理を示すフローチャート図である。
【図9】この発明の実施例3の印刷システムの構成を示すブロック図である。
【図10】図9に示すグラフィック部の処理を示すフローチャート図である。
【図11】図9に示すグラフィック部の他の処理例を示すフローチャート図である。
【0010】
【図12】図9に示すグラフィック部のまた他の処理例を示すフローチャート図である。
【図13】この発明の実施例4の印刷システムの構成を示すブロック図である。
【図14】図13に示すグラフィック前処理部の処理を示すフローチャート図である。
【図15】図13に示すグラフィック後処理部の処理を示すフローチャート図である。
【図16】この発明の実施例5の印刷システムの構成を示すブロック図である。
【図17】図16に示すグラフィック前処理部の処理を示すフローチャート図である。
【図18】図16に示すグラフィック後処理部の処理を示すフローチャート図である。
【発明を実施するための形態】
【0011】
以下、この発明を実施するための形態を図面に基づいて具体的に説明する。
〔実施例1〕
図1は、この発明の実施例1の印刷システムの構成を示すブロック図である。
なお、この実施例1におけるこの発明に係る部分以外の機能部については、説明を簡略にするためにそれらの図示と説明を省略する。
この印刷システムは、パーソナルコンピュータ(PC)1に直接又はネットワークを介してレーザプリンタを含むプリンタ2が印刷可能に接続されている。
PC1は、CPU,ROM及びRAMからなるマイクロコンピュータによって実現される、このPC1の全体の制御を司る制御部(この実施例において主要な処理を行う部分ではないので図示を省略する)と、グラフィック・デバイス・インタフェース(Graphics Device Interface:GDI)10と、プリンタドライバ11の機能部を備えている。また、コンピュータ読み取り可能な記録媒体である、例えば上記ROMにこの発明に係るプログラムを格納している。
【0012】
プリンタドライバ11は、グラフィック部12を有し、グラフィック部12は、データ形式選択部13とアウトライン変換部14とビットマップ変換部15の機能部を備えている。
上記データ形式選択部13が、上記ROMに格納されたこの発明に係るプログラムの取得手順と選択手順と要求手順を実行し、上記アウトライン変換部14とビットマップ変換部15が、この発明に係る変換手順を実行することにより、プリンタドライバ11のグラフィック部12が、この発明に係る印刷データ変換装置の各手段の機能を果たす。
【0013】
次に、図1に示したグラフィック部12における印刷時の処理について説明する。
ユーザが、図示を省略したユーザインタフェース(UI)部から、このPC1上で動作する、例えば、文書作成のアプリケーションソフトウェアに対して文書データに対する印刷指示をし、UI部に提示された印刷設定画面による印刷設定を入力すると、GDI10、図示を省略したプリンタドライバユーザインタフェース(UI)部に対してDEVMODEを渡し、GDI10に対して文書データとその文書データに付加された指定情報をGDIコールで渡す。また、UI部の印刷設定画面で入力された印刷設定の制御データもGDI10に渡される。
【0014】
ここで、この処理における上記指定情報が、文書データ中の文字の変倍率である場合の処理について説明する。
図2は、図1に示したグラフィック部12の処理を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)1でGDI10から変倍率を取得すると、ステップ2で、変倍率が1よりも大きいか否かを判断し、1よりも大きいなら文字の拡大であるから、ステップ3でアウトラインのデータ形式を選択し、ステップ4で、GDI10にアウトラインデータを要求して取得し、上記変倍率と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ5で、アウトライン変換部14は、上記変倍率に基づいて上記アウトラインデータを変倍(この場合は拡大処理を施す)し、ステップ6で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0015】
一方、ステップ2で変倍率が1よりも大きくないと判断したら、その場合は文字は等倍か縮小なので、ステップ7でビットマップのデータ形式を選択し、ステップ8で、GDI10にビットマップデータを要求して取得し、上記変倍率と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ9で、ビットマップ変換部15は、上記変倍率に基づいて上記ビットマップデータをそのまま、あるいは変倍(この場合は縮小処理を施す)し、ステップ6で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
上記処理において、データ形式選択部13は、GDI10から印刷設定の制御データも受け取って上記変換後のデータと共にプリンタ2へ送信する。
【0016】
このようにして、フォントラスタライザを搭載していない安価なプリンタに文字を印字させる場合、文字を拡大するときには拡大時に文字の輪郭に凹凸が生じるビットマップデータを使わずに拡大しても画質の劣化が少ないアウトラインデータを用い、文字を縮小するときには縮小時に文字の一部が欠けたり潰れたりするアウトラインデータを使わずに縮小しても画質の劣化が少ないビットマップデータを用いることにより、拡大した文字にジャギーが目立ったり、縮小した文字の一部が消えたり潰れたりしない良好な印字結果を得ることができる。
【0017】
次に、上記指定情報が文字幅と文字高さからなる文字サイズ情報の場合の処理について説明する。
図3は図1に示したグラフィック部12の他の処理例を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)11でGDI10から文字サイズ情報を取得すると、ステップ12で、例えば、PC1の図示を省略したレジストリやPC1内部に予め保存あるいはユーザによって入力された設定ファイルから文字サイズの閾値を取得し、ステップ13で文字サイズ情報の文字幅又は文字高さが閾値よりも大きいか否かを判断し、閾値よりも大きいなら、ステップ14でアウトラインのデータ形式を選択し、ステップ15で、GDI10にアウトラインデータを要求して取得し、上記文字サイズ情報と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ16で、アウトライン変換部14は、上記文字サイズ情報に基づいて上記アウトラインデータを変換し、ステップ17で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0018】
一方、ステップ13で文字サイズ情報の文字幅又は文字高さが閾値よりも大きくないと判断したら、ステップ18でビットマップのデータ形式を選択し、ステップ19で、GDI10にビットマップデータを要求して取得し、上記文字サイズ情報と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ20で、ビットマップ変換部15は、上記文字サイズ情報に基づいて上記ビットマップデータを変換し、ステップ17で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
上記処理において、データ形式選択部13は、GDI10から印刷設定の制御データも受け取って上記変換後のデータと共にプリンタ2へ送信する。
【0019】
このようにして、文字サイズが所定の大きさよりも大きいときには文字の輪郭に凹凸が生じるビットマップデータを使わずにアウトラインデータを用い、文字サイズが所定の大きさ以下のときには文字の一部が欠けたり潰れたりするアウトラインデータを使わずにビットマップデータを用いることにより、文字サイズによってジャギーが目立ったり、文字の一部が消えたり潰れたりしない良好な印字結果を得ることができる。上記文字サイズの所定の大きさとしては、予め各文字サイズ毎にフォントデータのデータ形式を変えて印字結果を評価し、印字品質が劣化する大きさの閾値に決定すると良い。
【0020】
次に、上記指定情報がボールド,イタリックを含む文字属性情報の場合の処理について説明する。
図4は、図1に示したグラフィック部12のまた他の処理例を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)31でGDI10から文字属性情報を取得すると、ステップ32で、文字属性情報の文字属性がボールドか否かを判断し、ボールド(太字)でなければ、ステップ33で、文字属性情報の文字属性がイタリック(斜体)か否かを判断し、イタリックでなければ、ステップ34でビットマップのデータ形式を選択し、ステップ35で、GDI10にビットマップデータを要求して取得し、上記文字属性情報と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ36で、ビットマップ変換部15は、上記文字属性情報に基づいて上記ビットマップデータを変換(この場合は普通の書体に変換)し、ステップ37で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0021】
一方、ステップ32で文字属性がボールドと判断した場合と、ステップ33で文字属性がイタリックと判断した場合は、ステップ38で、アウトラインのデータ形式を選択し、ステップ39で、GDI10にアウトラインデータを要求して取得し、上記文字属性情報と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ40で、アウトライン変換部14は、上記文字属性情報に基づいて上記アウトラインデータを変換(書体をボールド体あるいはイタリック体に変換)し、ステップ37で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0022】
このようにして、文字の書体がボールドやイタリックのような場合、文字の輪郭に凹凸が生じ易いビットマップデータを使わずにアウトラインデータを用いることにより、また、通常の書体の場合はビットマップデータを用いることにより、それぞれ書体によってジャギーが目立ったり、文字の一部が消えたり潰れたりしない良好な印字結果を得ることができる。
【0023】
次に、上記データ形式選択部13において上記指定情報として変倍率、文字サイズ情報、文字属性情報のいずれを用いた処理にするかを選択するようにすれば、ユーザのニーズにあった使い勝手の良いものになる。
図5は、図1に示すデータ形式選択部13における処理内容を選択する処理を示すフローチャート図である。
ここで、以下の処理では、上記変倍率を用いた処理方式を変倍法と、上記文字サイズ情報を用いた処理方式を閾値法と、上記文字属性情報を用いた処理方式を属性法と呼ぶ。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)51で、例えば、PC1内のレジストリや設定ファイルに記憶されている方式情報を取得する。この方式情報には、グラフィック部12が印刷時に行う変倍法,閾値法,属性法のいずれかの処理方式を示す情報が記録されている。
【0024】
ステップ52で、データ形式選択部13は、上記方式情報に基づいて処理方式を選択し、ステップ53で、変倍法の処理方式を選択したか否かを判断し、変倍法の処理方式を選択したら、ステップ56で変倍法による処理を実行し、この処理を終了する。
この変倍法の具体的な処理は、図2のフローチャート図で示した処理内容である。
また、ステップ53で変倍法の処理方式の選択ではないと判断したら、ステップ54で、閾値法の処理方式を選択したか否かを判断し、閾値法の処理方式を選択したら、ステップ57で閾値法による処理を実行し、この処理を終了する。
この閾値法の具体的な処理は、図3のフローチャート図で示した処理内容である。
さらに、ステップ54で閾値法の処理方式の選択ではないと判断したら、残りの属性法であるから、ステップ55で、属性法による処理を実行し、この処理を終了する。
この属性法の具体的な処理は、図4のフローチャート図で示した処理内容である。
このようにして、データ形式選択部13において行う処理方式の種類を選択することができる。
【0025】
〔実施例2〕
次に、上述の実施例1では、GDI10から取得したデータ(ビットマップデータ又はアウトラインデータ)に上述したような変換を行ってプリンタ2へ印刷データとして出力する場合の処理について説明したが、GDI10から取得したデータとその指定情報から中間データを作成して保持するようにすれば、その中間データを使うことにより、ユーザからの印刷方法変更指示があっても上述と同様にして印字品質の良い印刷ができる。
図6は、この発明の実施例2の印刷システムの構成を示すブロック図である。
なお、この実施例2においても、この発明に係る部分以外の機能部については、説明を簡略にするためにそれらの図示と説明を省略する。
この印刷システムは、PC1のプリンタドライバ20の内部構成が上述のものと異なり、グラフィック前処理部21とグラフィック後処理部22と中間データ印刷アプリケーション部23の機能部を備えている。
【0026】
そして、グラフィック前処理部21は、GDI10からデータとその指定情報と印刷指示の制御データを受け取ると、それらから中間データ作成部24によって中間データを作成し、中間データ印刷アプリケーション部23へ送信する。
ここで、上記中間データとは、上記指定情報が反映されていないデータ(アウトラインデータ又はビットマップデータ)と、上記指定情報とを含むデータである。具体的には、GDI10から「2倍拡大」という指定情報を受け取った場合、中間データ作成部24はアウトラインデータ又はビットマップデータと指定情報「2倍拡大」とを含む中間データを作成する。
【0027】
中間データ印刷アプリケーション部23は、グラフィック前処理部21から受け取った中間データを中間データ記憶部29に記憶する。また、この中間データに対して、図示を省略したUI部の入力部によってユーザから指定情報変更指示の入力があると、その指示に基づいて中間データ記憶部29に記憶されている変更対象の指定情報が含まれている中間データについて、その指定情報の変更処理を施す。具体的には、中間データ印刷アプリケーション部23は、指定情報「2倍拡大」とアウトラインデータ又はビットマップデータとを含む中間データに対して、指定情報を「2倍拡大」から「1/2縮小」に変更する指示があった場合、その指示に基づいて、中間データ記憶部29から変更対象の指定情報を含む中間データを検索し、その検索した中間データの指定情報を「2倍拡大」から「1/2縮小」への変更処理を施す。
【0028】
さらに、中間データ印刷アプリケーション部23は、中間データ記憶部29の中間データから、指定情報を反映したアウトラインデータ又はビットマップデータを、図示を省略したUI部の表示部にプレビュー表示することもできる(そのプレビュー表示は、自動的に表示するようにしてもよいし、ユーザからの要求に基づいて表示するようにしてもよい)。したがって、ユーザは、中間データ印刷アプリケーション部23による中間データのプレビュー表示により、指定情報変更による文字データの印刷時の品質を容易に確認することができる。
また、指定情報の変更前と変更後の文字データを同時にプレビュー表示するようにすれば、指定情報変更前の中間データに基づく表示内容と指定情報変更後の中間データに基づく表示内容とを比較することにより、両者の印刷時の品質の差を容易に確認することができる。
【0029】
その後、中間データ印刷アプリケーション部23は、この中間データに対してユーザから印刷指示があると、中間データをグラフィック後処理部22に読み取らせる。
また、中間データ印刷アプリケーション部23は、その中間データを中間データ記憶部29に格納して保持することにより、ユーザからの最初の印刷指示の場合は中間データ記憶部29の中間データがグラフィック後処理部22によってそのまま読み取られるが、ユーザから印刷方法変更指示があると、その指示に基づいて中間データ記憶部29の中間データの制御データに編集処理を施し、グラフィック後処理部22に読み取らせることができる。
この実施例2では、上述の実施例1と同じように、データ形式選択部26が、この発明に係る取得手順と選択手順と要求手順を実行し、アウトライン変換部27とビットマップ変換部28が、この発明に係る変換手順を実行する。しかし、データ形式選択部26は、中間データ印刷アプリケーション部23が、変倍率,文字サイズ情報,文字属性情報の指定情報の受け取り先であり、その点については上述のものとは異なる。
【0030】
次に、図6に示したグラフィック前処理部21の処理について説明する。
図7は図6に示したグラフィック前処理部21の処理を示すフローチャート図である。
この処理では、上記指定情報として変倍率を用いた場合を説明する。
グラフィック前処理部21は、ステップ(図中「S」で示す)61で、GDI10から変倍率を取得し、ステップ62で、文書データ中の文字のビットマップデータを取得し、ステップ63で、文書データ中の文字のアウトラインデータを取得し、その他に印刷設定の制御データも取得すると、ステップ64で、それらの全データ(変倍率,ビットマップデータ,アウトラインデータ,制御データ)を合わせた中間データを作成し、ステップ65で、その中間データを中間データ印刷アプリケーション部23へ送信し、この処理を終了する。
この処理では、上記指定情報として変倍率を用いた場合を説明したが、文字サイズ情報又は文字属性情報を用いた場合でも同様に実施することができる。
【0031】
次に、図6に示したグラフィック後処理部22の処理について説明する。
このグラフィック後処理部22の行う処理は、上述した実施例1のグラフィック部12での処理とほぼ同じであるが、指定情報とアウトラインデータ又はビットマップデータの受け取り先が中間データ印刷アプリケーション部23から取得する点が上述とは異なる。
図8は図6に示したグラフィック後処理部22の処理を示すフローチャート図である。
グラフィック後処理部22の中間データ読取部25は、ステップ(図中「S」で示す)71で中間データ印刷アプリケーション部23の中間データ記憶部29から中間データを読み取り、データ形式選択部26へ送信する。
【0032】
データ形式選択部26は、中間データから変倍率を取得すると、ステップ72で、変倍率が1よりも大きいか否かを判断し、1よりも大きいなら文字の拡大であるから、ステップ73で中間データからアウトラインデータを取得し、上記変倍率と上記アウトラインデータと制御データをアウトライン変換部27へ送り、ステップ74で、アウトライン変換部27は、上記変倍率に基づいて上記アウトラインデータを変倍(この場合は拡大処理を施す)し、ステップ75で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0033】
一方、ステップ72で変倍率の変倍率が1よりも大きくないと判断したら、その場合は文字は等倍か縮小なので、ステップ76で中間データからビットマップデータを取得し、上記変倍率と上記ビットマップデータと制御データをビットマップ変換部28へ送り、ステップ77で、ビットマップ変換部28は、上記変倍率に基づいて上記ビットマップデータをそのまま、あるいは変倍(この場合は縮小処理を施す)し、ステップ75で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
この処理では、上記指定情報として変倍率を用いた場合を説明したが、文字サイズ情報又は文字属性情報を用いた場合でも同様に実施することができる。
このようにして、ユーザから印刷方法や印刷設定の変更があっても、中間データを用いて速やかに良好な印字結果を得ることができる。
【0034】
〔実施例3〕
次に、文字のデータ形式が、アウトラインデータ,ビットマップデータ,フォントデータの3種類の場合の実施例3について説明する。
図9は、この発明の実施例3の印刷システムの構成を示すブロック図である。
なお、この実施例3においても、この発明に係る部分以外の機能部については、説明を簡略にするためにそれらの図示と説明を省略する。
この印刷システムは、実施例1のPC1と内部構成が同じであり、その変換処理も上述の場合とほぼ同じであるが、アウトラインデータ,ビットマップデータ,フォントデータの3種類の文字のデータ形式を扱う点が上述のものとは異なり、一部のデータについての変倍処理はプリンタ2のラスタライザ30を利用する点も異なる。
【0035】
この印刷システムでは、上述と同じようにして指定情報に基づいて、アウトラインデータ,ビットマップデータ,フォントデータの3種類の文字のデータ形式の中から1つを選択し、アウトラインデータとビットマップデータのいずれかを選択した場合は、上述と同じようにグラフィック部12において変換した後にプリンタ2へ送出するが、フォントデータを選択した場合は、そのフォントデータと指定情報とをプリンタ2へ送り、プリンタ2では、ラスタライザ30によって上記指定情報に基づいてフォントデータを変換する。
上記フォントデータは、明朝体,ゴシック体を含む各種の書体毎の文字データを作成するためのデータである。
【0036】
ここで、この処理における上記指定情報が、文書データ中の文字の変倍率である場合の処理について説明する。
図10は、図9に示したグラフィック部12の処理を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)81でGDI10から変倍率を取得すると、ステップ82で、変倍率が1よりも大きいか否かを判断し、1よりも大きいなら文字の拡大であるから、ステップ83でアウトラインのデータ形式を選択し、ステップ84で、GDI10にアウトラインデータを要求して取得し、上記変倍率と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ85で、アウトライン変換部14は、上記変倍率に基づいて上記アウトラインデータを変倍(この場合は拡大処理を施す)し、ステップ86で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0037】
一方、ステップ82で変倍率が1よりも大きくないと判断したら、その場合は文字は等倍か縮小なので、ステップ87で変倍率が0.1よりも大きく1以下であるか否かを判断し、変倍率が0.1よりも大きく1以下と判断したら、ステップ88でビットマップのデータ形式を選択し、ステップ89で、GDI10にビットマップデータを要求して取得し、上記変倍率と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ90で、ビットマップ変換部15は、上記変倍率に基づいて上記ビットマップデータをそのまま、あるいは変倍(この場合は縮小処理を施す)し、ステップ86で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0038】
また、ステップ87の判断で、変倍率が0.1よりも大きく1以下ではないと判断したら、ステップ91で、フォントデータのデータ形式を選択し、ステップ92でGDI10にフォントデータを要求して取得し、そのフォントデータと上記既に取得した変倍率とをプリンタ2へ送信し、この処理を終了する。
上記フォントデータと変倍率とを受信したプリンタ2は、ラスタライザ30によって上記フォントデータを上記変倍率に基づいて変倍する。
上記処理において、データ形式選択部13は、GDI10から印刷設定の制御データも受け取って上記変換後のデータと共にプリンタ2へ送信する。
そして、プリンタ2は、受信したデータに基づいてプリントする。
このようにして、フォントラスタライザを搭載しているプリンタに文字を印字させる場合、縮小倍率が小さい文字についてはフォントデータを利用することができる。
【0039】
次に、上記指定情報が文字幅と文字高さからなる文字サイズ情報の場合の処理について説明する。
図11は、図9に示したグラフィック部12の他の処理例を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)101でGDI10から文字サイズ情報を取得すると、ステップ102で、例えば、PC1の図示を省略したレジストリやPC1内部に予め保存あるいはユーザによって入力された設定ファイルから文字サイズの閾値を取得し、ステップ103で文字サイズ情報の文字幅又は文字高さが第1閾値よりも大きいか否かを判断し、第1閾値よりも大きいなら、ステップ104でアウトラインのデータ形式を選択し、ステップ105で、GDI10にアウトラインデータを要求して取得し、上記文字サイズ情報と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ106で、アウトライン変換部14は、上記文字サイズ情報に基づいて上記アウトラインデータを変換し、ステップ107で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0040】
一方、ステップ103で文字サイズ情報の文字幅又は文字高さが第1閾値よりも大きくないと判断したら、ステップ108で、文字サイズ情報の文字幅又は文字高さが第2閾値よりも大きく第1閾値以下か否かを判断し、文字サイズ情報の文字幅又は文字高さが第2閾値よりも大きく第1閾値以下なら、ステップ109でビットマップのデータ形式を選択し、ステップ110で、GDI10にビットマップデータを要求して取得し、上記文字サイズ情報と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ111で、ビットマップ変換部15は、上記文字サイズ情報に基づいて上記ビットマップデータを変換し、ステップ107で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0041】
また、ステップ108の判断で、文字サイズ情報の文字幅又は文字高さが第2閾値よりも大きく第1閾値以下ではないと判断したら、ステップ112で、フォントデータのデータ形式を選択し、ステップ113でGDI10にフォントデータを要求して取得し、そのフォントデータと上記既に取得した文字サイズ情報の文字幅又は文字高さとをプリンタ2へ送信し、この処理を終了する。
上記フォントデータと文字サイズ情報の文字幅又は文字高さとを受信したプリンタ2は、ラスタライザ30によって上記フォントデータを上記文字サイズ情報の文字幅又は文字高さに基づいて変換する。
上記処理において、データ形式選択部13は、GDI10から印刷設定の制御データも受け取って上記変換後のデータと共にプリンタ2へ送信する。
そして、プリンタ2は、受信したデータに基づいてプリントする。
なお、上述の第1閾値と第2閾値は予め設定された値であり、第1閾値>第2閾値の大小関係がある。
【0042】
次に、上記指定情報がボールド,イタリックを含む文字属性情報の場合の処理について説明する。
図12は、図9に示したグラフィック部12のまた他の処理例を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)121でGDI10から文字属性情報を取得すると、ステップ122で、文字属性情報の文字属性がボールドか否かを判断し、ボールド(太字)なら、ステップ123で、アウトラインのデータ形式を選択し、ステップ124で、GDI10にアウトラインデータを要求して取得し、上記文字属性情報と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ125で、アウトライン変換部14は、上記文字属性情報に基づいて上記アウトラインデータを変換(書体をボールド体に変換)し、ステップ126で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0043】
一方、ステップ122の判断でボールドでなければ、ステップ127で、文字属性情報の文字属性がイタリック(斜体)か否かを判断し、イタリックなら、ステップ128でビットマップのデータ形式を選択し、ステップ129で、GDI10にビットマップデータを要求して取得し、上記文字属性情報と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ130で、ビットマップ変換部15は、上記文字属性情報に基づいて上記ビットマップデータを変換(この場合はイタリック体に変換)し、ステップ126で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0044】
また、ステップ127で文字属性がイタリックではないと判断した場合、ステップ131、フォントデータのデータ形式を選択し、ステップ132で、GDI10にフォントデータを要求して取得し、ステップ126で、上記文字属性情報と上記フォントデータとをプリンタ2へ送信し、この処理を終了する。
上記フォントデータと文字属性情報を受信したプリンタ2は、ラスタライザ30によって上記フォントデータを上記文字属性情報に基づく書体の文字データに変換する。
そして、プリンタ2は、受信したデータに基づいてプリントする。
さらに、上記データ形式選択部13において上記指定情報として変倍率、文字サイズ情報、文字属性情報のいずれを用いた処理にするかを選択する処理は、図5で示した処理と同じなので、その説明を省略する。
【0045】
〔実施例4〕
次に、GDI10から取得したビットマップデータ,アウトラインデータ,又はフォントデータとその指定情報から中間データを作成して保持する場合の実施例について説明する。
図13は、この発明の実施例4の印刷システムの構成を示すブロック図である。
なお、この実施例4においても、この発明に係る部分以外の機能部については、説明を簡略にするためにそれらの図示と説明を省略する。
この印刷システムは、プリンタドライバ20の中間データ作成部24によってビットマップデータ,アウトラインデータ,又はフォントデータとその指定情報から中間データを作成し、それを中間データ印刷アプリケーション部23の中間データ記憶部29に記憶させて保持する。
そして、プリンタ2へは、その中間データに基づいて、ビットマップデータとアウトラインデータは変換して送出し、フォントデータの場合は指定情報と共に送出する。
プリンタ2は、受信したデータに基づいてプリントする。
【0046】
次に、図13に示したグラフィック前処理部21の処理について説明する。
図14は、図13に示したグラフィック前処理部21の処理を示すフローチャート図である。
この処理では、上記指定情報として変倍率を用いた場合を説明する。
グラフィック前処理部21は、ステップ(図中「S」で示す)141で、GDI10から変倍率を取得し、ステップ142で、文書データ中の文字のビットマップデータを取得し、ステップ143で、文書データ中の文字のアウトラインデータを取得し、ステップ144で、文書データ中の文字のフォントデータを取得し、その他に印刷設定の制御データも取得すると、ステップ145で、それらの全データ(変倍率,ビットマップデータ,アウトラインデータ,フォントデータ,制御データ)を合わせた中間データを作成し、ステップ146で、その中間データを中間データ印刷アプリケーション部23へ送信し、この処理を終了する。
この処理では、上記指定情報として変倍率を用いた場合を説明したが、文字サイズ情報又は文字属性情報を用いた場合でも同様に実施することができる。
【0047】
次に、図13に示したグラフィック後処理部22の処理について説明する。
このグラフィック後処理部22の行う処理は、上述した実施例3のグラフィック部12での処理とほぼ同じであるが、指定情報とアウトラインデータ,ビットマップデータ,又はフォントデータの受け取り先が中間データ印刷アプリケーション部23から取得する点が上述とは異なる。
図15は、図13に示したグラフィック後処理部22の処理を示すフローチャート図である。この処理では、指定情報が変倍率の場合を説明する。
グラフィック後処理部22の中間データ読取部25は、ステップ(図中「S」で示す)151で中間データ印刷アプリケーション部23の中間データ記憶部29から中間データを読み取り、データ形式選択部26へ送信する。
【0048】
データ形式選択部26は、中間データから変倍率を取得すると、ステップ152で、変倍率が1よりも大きいか否かを判断し、1よりも大きいなら文字の拡大であるから、ステップ153で中間データからアウトラインデータを取得し、上記変倍率と上記アウトラインデータと制御データをアウトライン変換部27へ送り、ステップ154で、アウトライン変換部27は、上記変倍率に基づいて上記アウトラインデータを変倍(この場合は拡大処理を施す)し、ステップ155で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0049】
一方、ステップ152で変倍率の変倍率が1よりも大きくないと判断したら、その場合は文字は等倍か縮小なので、さらに、ステップ156で変倍率が0.1よりも大きく1以下であるか否かを判断し、変倍率が0.1よりも大きく1以下であるなら、ステップ157で中間データからビットマップデータを取得し、上記変倍率と上記ビットマップデータと制御データをビットマップ変換部28へ送り、ステップ158で、ビットマップ変換部28は、上記変倍率に基づいて上記ビットマップデータをそのまま、あるいは変倍(この場合は縮小処理を施す)し、ステップ155で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0050】
また、ステップ156で変倍率が0.1よりも大きく1以下ではないと判断したら、ステップ159で、中間データからフォントデータを取得し、ステップ155で、上記既に取得した変倍率と共にプリンタ2へ送信する。
上記フォントデータと変倍率とを受信したプリンタ2は、ラスタライザ30によって上記フォントデータを上記変倍率に基づいて変換する。
そして、プリンタ2は、受信したデータに基づいてプリントする。
この処理では、上記指定情報として変倍率を用いた場合を説明したが、文字サイズ情報又は文字属性情報を用いた場合でも同様に実施することができる。
【0051】
〔実施例5〕
次に、実施例4では、ビットマップ,アウトライン,フォントの全データを含む中間データを作成する場合の実施例を説明したが、指定情報に基づいてビットマップ,アウトライン,フォントのいずれかのデータを選択し、その選択したデータのみを含む中間データを作成して保持するようにしてもよい。
この実施例5では、ビットマップ,アウトライン,フォントのいずれかのデータのみを含む中間データを保持し、その中間データに基づいてプリンタ2へデータを提供する場合の例を説明する。
【0052】
図16は、この発明の実施例5の印刷システムの構成を示すブロック図である。
なお、この実施例5においても、この発明に係る部分以外の機能部については、説明を簡略にするためにそれらの図示と説明を省略する。
この印刷システムは、プリンタドライバ20のグラフィック前処理部21によって指定情報からビットマップデータ,アウトラインデータ,あるいはフォントデータを選択し、その選択したデータと指定情報からなる中間データを作成し、それを中間データ印刷アプリケーション部23の中間データ記憶部29に記憶させて保持する。
そして、プリンタ2へは、その中間データに基づいて、ビットマップデータとアウトラインデータは変換して送出し、フォントデータの場合は指定情報と共に送出する。
【0053】
図17は、図16に示したグラフィック前処理部21の処理を示すフローチャート図である。
グラフィック前処理部21のデータ形式選択部40は、ステップ(図中「S」で示す)161でGDI10から変倍率を取得すると、ステップ162で、変倍率が1よりも大きいか否かを判断し、1よりも大きいなら文字の拡大であるから、ステップ163でアウトラインのデータ形式を選択し、ステップ164で、GDI10にアウトラインデータを要求して取得し、ステップ165で、上記変倍率と上記アウトラインデータとからなる中間データを作成し、ステップ166で、中間データ印刷アプリケーション部23へ中間データを送信し、この処理を終了する。
【0054】
一方、ステップ162で変倍率が1よりも大きくないと判断したら、その場合は文字は等倍か縮小なので、ステップ167で変倍率が0.1よりも大きく1以下であるか否かを判断し、変倍率が0.1よりも大きく1以下と判断したら、ステップ168でビットマップのデータ形式を選択し、ステップ169で、GDI10にビットマップデータを要求して取得し、ステップ170で、上記変倍率と上記ビットマップデータとからなる中間データを作成し、ステップ166で、中間データ印刷アプリケーション部23へ中間データを送信し、この処理を終了する。
【0055】
また、ステップ167の判断で、変倍率が0.1よりも大きく1以下ではないと判断したら、ステップ171で、フォントデータのデータ形式を選択し、ステップ172でGDI10にフォントデータを要求して取得し、ステップ173で、そのフォントデータと上記既に取得した変倍率とからなる中間データを作成し、ステップ166で、中間データ印刷アプリケーション部23へ中間データを送信し、この処理を終了する。
中間データ印刷アプリケーション部23は、受信した中間データを中間データ記憶部29に記憶して保持する。
【0056】
次に、図16に示したグラフィック後処理部22の処理について説明する。
図18は、図16に示したグラフィック後処理部22の処理を示すフローチャート図である。この処理では、指定情報が変倍率の場合を説明する。
グラフィック後処理部22の中間データ読取部50は、ステップ(図中「S」で示す)181で中間データ印刷アプリケーション部23の中間データ記憶部29から中間データを読み取って取得し、ステップ182で、その中間データから変倍率を取得し、ステップ183で、中間データから文字のデータを取得する。
ステップ184で、上記取得した文字のデータがアウトラインデータであるか否かを判断し、アウトラインデータであると判断したら、ステップ185で、アウトライン変換部27へ送り、アウトライン変換部27は上記変倍率に基づいてアウトラインデータを変倍し、ステップ186で上記変倍後のアウトラインデータをプリンタ2へ送信し、この処理を終了する。
【0057】
一方、ステップ184でアウトラインデータではないと判断したら、ステップ188で、上記取得した文字のデータがビットマップデータであるか否かを判断し、ビットマップデータであると判断したら、ステップ189で、ビットマップ変換部28へ送り、ビットマップ変換部28は上記変倍率に基づいてビットマップデータを変倍し、ステップ186で上記変倍後のビットマップデータをプリンタ2へ送信し、この処理を終了する。
また、ステップ188でビットマップデータではないと判断したら、残りのフォントデータであるから、ステップ190で、中間データから取得した変倍率とフォントデータを取りまとめ、ステップ186で、プリンタ2へ送信し、この処理を終了する。
そして、プリンタ2は、受信したデータに基づいてプリントする。
【産業上の利用可能性】
【0058】
この発明によるプログラムと印刷データ変換装置は、デスクトップパソコン,ノートブックパソコンを含むコンピュータにおいて適用することができる。
【符号の説明】
【0059】
1:PC 2:プリンタ 10:GDI 11,20:プリンタドライバ 12:グラフィック部 13,26,40:データ形式選択部 14,27:アウトライン変換部 15,28:ビットマップ変換部 21:グラフィック前処理部 22:グラフィック後処理部 23:中間データ印刷アプリケーション部 24:中間データ作成部 25,50:中間データ読取部 29:中間データ記憶部 30:ラスタライザ
【先行技術文献】
【特許文献】
【0060】
【特許文献1】特開平9−62849号公報
【技術分野】
【0001】
この発明は、プログラムと印刷データ変換装置とコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【0002】
パーソナルコンピュータにおいてプリンタで文字を印刷するとき、文字データがビットマップデータの場合、そのビットマップデータを拡大すると、文字の斜線部や曲線部のギザギザ(これを「ジャギー」と呼ぶ)が目立つようになり、印字品質が低下する。
一方、文字データがアウトラインデータの場合は、そのアウトラインデータを縮小すると、文字の一部が欠けたりつぶれたりして印字品質が低下する。
そこで従来、ビットマップデータの文字の輪郭からベクタデータを作成して印刷データに変換する印刷データ変換装置(例えば、特許文献1参照)が提案されている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、従来の印刷データ変換装置では、ビットマップデータからベクタデータを作成するという新たな処理を行わなければならず、その処理負担がかかる上に、プリンタドライバが得られるデータ形式の文字データのままでも印字品質の劣化を防止することが容易にできないという問題があった。
この発明は上記の点に鑑みてなされたものであり、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択できるようにすることを目的とする。
【課題を解決するための手段】
【0004】
この発明は上記の目的を達成するため、次のプログラムを提供する。
コンピュータに、印刷する文字データに付加された指定情報を取得する取得手順と、その取得手順によって取得した指定情報に基づいて上記印刷する文字データを印刷データに変換したとき、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択する選択手順と、その選択手順によって選択されたデータ形式の文字データを要求する要求手順を実行させるためのプログラム。
また、上記のようなプログラムにおいて、上記要求手順によって要求したデータ形式の文字データを取得し、上記指定情報に基づいて上記取得したデータ形式の文字データを印刷データに変換する変換手順を含むようにするとよい。
【0005】
さらに、上記のようなプログラムにおいて、コンピュータに、上記文字データと上記指定情報とを含む中間データを作成する作成手順と、上記作成手順によって作成した中間データを記憶する記憶手順と、上記記憶手順によって記憶された中間データの指定情報に対する変更指示に基づいて、その指定情報の変更処理を行う変更手順とを実行させ、上記取得手順が、上記記憶手順によって記憶された中間データから指定情報を取得し、上記選択手順が、上記中間データから取得した指定情報に基づいて、その中間データから文字データを選択し、上記要求手順が、上記中間データから上記選択手順によって選択した文字データを要求するようにするとよい。
また、上記のようなプログラムにおいて、上記指定情報は、変倍率、文字幅、文字高さ、文字属性のいずれか1つを含む情報にするとよい。
さらに、上記のようなプログラムにおいて、上記文字データのデータ形式には、アウトラインデータとビットマップデータとフォントデータを含むとよい。
【0006】
また、上記のようなプログラムのいずれかを記録したコンピュータ読み取り可能な記録媒体も提供する。
さらに、印刷する文字データに付加された指定情報を取得する取得手段と、その取得手段によって取得した指定情報に基づいて上記印刷する文字データを印刷データに変換したとき、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択する選択手段と、その選択手段によって選択されたデータ形式の文字データを要求する要求手段と、その要求手段によって要求したデータ形式の文字データを取得し、上記指定情報に基づいて上記取得したデータ形式の文字データを印刷データに変換する変換手段を備えた印刷データ変換装置も提供する。
【発明の効果】
【0007】
この発明によるプログラムは、コンピュータに、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択できるようにすることができるようにするための機能を実現させることができる。
また、この発明による印刷データ変換装置は、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択し、その選択した文字データを印刷データに変換することができる。
また、この発明による印刷データ変換装置は、条件により、GDIから取得できる文字データ(例えば、ビットマップデータ、アウトラインデータ、フォントデータ)から選択することで、良好な変倍後の文字データを得ることができる。
さらに、この発明のコンピュータ読み取り可能な記録媒体は、コンピュータに上記プログラムを容易に導入することができる。
【図面の簡単な説明】
【0008】
【図1】この発明の実施例1の印刷システムの構成を示すブロック図である。
【図2】図1に示すグラフィック部の処理を示すフローチャート図である。
【図3】図1に示すグラフィック部の他の処理例を示すフローチャート図である。
【図4】図1に示すグラフィック部のまた他の処理例を示すフローチャート図である。
【図5】図1に示すデータ形式選択部における処理内容を選択する処理を示すフローチャート図である。
【0009】
【図6】この発明の実施例2の印刷システムの構成を示すブロック図である。
【図7】図6に示すグラフィック前処理部の処理を示すフローチャート図である。
【図8】図6に示すグラフィック後処理部の処理を示すフローチャート図である。
【図9】この発明の実施例3の印刷システムの構成を示すブロック図である。
【図10】図9に示すグラフィック部の処理を示すフローチャート図である。
【図11】図9に示すグラフィック部の他の処理例を示すフローチャート図である。
【0010】
【図12】図9に示すグラフィック部のまた他の処理例を示すフローチャート図である。
【図13】この発明の実施例4の印刷システムの構成を示すブロック図である。
【図14】図13に示すグラフィック前処理部の処理を示すフローチャート図である。
【図15】図13に示すグラフィック後処理部の処理を示すフローチャート図である。
【図16】この発明の実施例5の印刷システムの構成を示すブロック図である。
【図17】図16に示すグラフィック前処理部の処理を示すフローチャート図である。
【図18】図16に示すグラフィック後処理部の処理を示すフローチャート図である。
【発明を実施するための形態】
【0011】
以下、この発明を実施するための形態を図面に基づいて具体的に説明する。
〔実施例1〕
図1は、この発明の実施例1の印刷システムの構成を示すブロック図である。
なお、この実施例1におけるこの発明に係る部分以外の機能部については、説明を簡略にするためにそれらの図示と説明を省略する。
この印刷システムは、パーソナルコンピュータ(PC)1に直接又はネットワークを介してレーザプリンタを含むプリンタ2が印刷可能に接続されている。
PC1は、CPU,ROM及びRAMからなるマイクロコンピュータによって実現される、このPC1の全体の制御を司る制御部(この実施例において主要な処理を行う部分ではないので図示を省略する)と、グラフィック・デバイス・インタフェース(Graphics Device Interface:GDI)10と、プリンタドライバ11の機能部を備えている。また、コンピュータ読み取り可能な記録媒体である、例えば上記ROMにこの発明に係るプログラムを格納している。
【0012】
プリンタドライバ11は、グラフィック部12を有し、グラフィック部12は、データ形式選択部13とアウトライン変換部14とビットマップ変換部15の機能部を備えている。
上記データ形式選択部13が、上記ROMに格納されたこの発明に係るプログラムの取得手順と選択手順と要求手順を実行し、上記アウトライン変換部14とビットマップ変換部15が、この発明に係る変換手順を実行することにより、プリンタドライバ11のグラフィック部12が、この発明に係る印刷データ変換装置の各手段の機能を果たす。
【0013】
次に、図1に示したグラフィック部12における印刷時の処理について説明する。
ユーザが、図示を省略したユーザインタフェース(UI)部から、このPC1上で動作する、例えば、文書作成のアプリケーションソフトウェアに対して文書データに対する印刷指示をし、UI部に提示された印刷設定画面による印刷設定を入力すると、GDI10、図示を省略したプリンタドライバユーザインタフェース(UI)部に対してDEVMODEを渡し、GDI10に対して文書データとその文書データに付加された指定情報をGDIコールで渡す。また、UI部の印刷設定画面で入力された印刷設定の制御データもGDI10に渡される。
【0014】
ここで、この処理における上記指定情報が、文書データ中の文字の変倍率である場合の処理について説明する。
図2は、図1に示したグラフィック部12の処理を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)1でGDI10から変倍率を取得すると、ステップ2で、変倍率が1よりも大きいか否かを判断し、1よりも大きいなら文字の拡大であるから、ステップ3でアウトラインのデータ形式を選択し、ステップ4で、GDI10にアウトラインデータを要求して取得し、上記変倍率と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ5で、アウトライン変換部14は、上記変倍率に基づいて上記アウトラインデータを変倍(この場合は拡大処理を施す)し、ステップ6で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0015】
一方、ステップ2で変倍率が1よりも大きくないと判断したら、その場合は文字は等倍か縮小なので、ステップ7でビットマップのデータ形式を選択し、ステップ8で、GDI10にビットマップデータを要求して取得し、上記変倍率と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ9で、ビットマップ変換部15は、上記変倍率に基づいて上記ビットマップデータをそのまま、あるいは変倍(この場合は縮小処理を施す)し、ステップ6で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
上記処理において、データ形式選択部13は、GDI10から印刷設定の制御データも受け取って上記変換後のデータと共にプリンタ2へ送信する。
【0016】
このようにして、フォントラスタライザを搭載していない安価なプリンタに文字を印字させる場合、文字を拡大するときには拡大時に文字の輪郭に凹凸が生じるビットマップデータを使わずに拡大しても画質の劣化が少ないアウトラインデータを用い、文字を縮小するときには縮小時に文字の一部が欠けたり潰れたりするアウトラインデータを使わずに縮小しても画質の劣化が少ないビットマップデータを用いることにより、拡大した文字にジャギーが目立ったり、縮小した文字の一部が消えたり潰れたりしない良好な印字結果を得ることができる。
【0017】
次に、上記指定情報が文字幅と文字高さからなる文字サイズ情報の場合の処理について説明する。
図3は図1に示したグラフィック部12の他の処理例を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)11でGDI10から文字サイズ情報を取得すると、ステップ12で、例えば、PC1の図示を省略したレジストリやPC1内部に予め保存あるいはユーザによって入力された設定ファイルから文字サイズの閾値を取得し、ステップ13で文字サイズ情報の文字幅又は文字高さが閾値よりも大きいか否かを判断し、閾値よりも大きいなら、ステップ14でアウトラインのデータ形式を選択し、ステップ15で、GDI10にアウトラインデータを要求して取得し、上記文字サイズ情報と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ16で、アウトライン変換部14は、上記文字サイズ情報に基づいて上記アウトラインデータを変換し、ステップ17で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0018】
一方、ステップ13で文字サイズ情報の文字幅又は文字高さが閾値よりも大きくないと判断したら、ステップ18でビットマップのデータ形式を選択し、ステップ19で、GDI10にビットマップデータを要求して取得し、上記文字サイズ情報と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ20で、ビットマップ変換部15は、上記文字サイズ情報に基づいて上記ビットマップデータを変換し、ステップ17で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
上記処理において、データ形式選択部13は、GDI10から印刷設定の制御データも受け取って上記変換後のデータと共にプリンタ2へ送信する。
【0019】
このようにして、文字サイズが所定の大きさよりも大きいときには文字の輪郭に凹凸が生じるビットマップデータを使わずにアウトラインデータを用い、文字サイズが所定の大きさ以下のときには文字の一部が欠けたり潰れたりするアウトラインデータを使わずにビットマップデータを用いることにより、文字サイズによってジャギーが目立ったり、文字の一部が消えたり潰れたりしない良好な印字結果を得ることができる。上記文字サイズの所定の大きさとしては、予め各文字サイズ毎にフォントデータのデータ形式を変えて印字結果を評価し、印字品質が劣化する大きさの閾値に決定すると良い。
【0020】
次に、上記指定情報がボールド,イタリックを含む文字属性情報の場合の処理について説明する。
図4は、図1に示したグラフィック部12のまた他の処理例を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)31でGDI10から文字属性情報を取得すると、ステップ32で、文字属性情報の文字属性がボールドか否かを判断し、ボールド(太字)でなければ、ステップ33で、文字属性情報の文字属性がイタリック(斜体)か否かを判断し、イタリックでなければ、ステップ34でビットマップのデータ形式を選択し、ステップ35で、GDI10にビットマップデータを要求して取得し、上記文字属性情報と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ36で、ビットマップ変換部15は、上記文字属性情報に基づいて上記ビットマップデータを変換(この場合は普通の書体に変換)し、ステップ37で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0021】
一方、ステップ32で文字属性がボールドと判断した場合と、ステップ33で文字属性がイタリックと判断した場合は、ステップ38で、アウトラインのデータ形式を選択し、ステップ39で、GDI10にアウトラインデータを要求して取得し、上記文字属性情報と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ40で、アウトライン変換部14は、上記文字属性情報に基づいて上記アウトラインデータを変換(書体をボールド体あるいはイタリック体に変換)し、ステップ37で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0022】
このようにして、文字の書体がボールドやイタリックのような場合、文字の輪郭に凹凸が生じ易いビットマップデータを使わずにアウトラインデータを用いることにより、また、通常の書体の場合はビットマップデータを用いることにより、それぞれ書体によってジャギーが目立ったり、文字の一部が消えたり潰れたりしない良好な印字結果を得ることができる。
【0023】
次に、上記データ形式選択部13において上記指定情報として変倍率、文字サイズ情報、文字属性情報のいずれを用いた処理にするかを選択するようにすれば、ユーザのニーズにあった使い勝手の良いものになる。
図5は、図1に示すデータ形式選択部13における処理内容を選択する処理を示すフローチャート図である。
ここで、以下の処理では、上記変倍率を用いた処理方式を変倍法と、上記文字サイズ情報を用いた処理方式を閾値法と、上記文字属性情報を用いた処理方式を属性法と呼ぶ。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)51で、例えば、PC1内のレジストリや設定ファイルに記憶されている方式情報を取得する。この方式情報には、グラフィック部12が印刷時に行う変倍法,閾値法,属性法のいずれかの処理方式を示す情報が記録されている。
【0024】
ステップ52で、データ形式選択部13は、上記方式情報に基づいて処理方式を選択し、ステップ53で、変倍法の処理方式を選択したか否かを判断し、変倍法の処理方式を選択したら、ステップ56で変倍法による処理を実行し、この処理を終了する。
この変倍法の具体的な処理は、図2のフローチャート図で示した処理内容である。
また、ステップ53で変倍法の処理方式の選択ではないと判断したら、ステップ54で、閾値法の処理方式を選択したか否かを判断し、閾値法の処理方式を選択したら、ステップ57で閾値法による処理を実行し、この処理を終了する。
この閾値法の具体的な処理は、図3のフローチャート図で示した処理内容である。
さらに、ステップ54で閾値法の処理方式の選択ではないと判断したら、残りの属性法であるから、ステップ55で、属性法による処理を実行し、この処理を終了する。
この属性法の具体的な処理は、図4のフローチャート図で示した処理内容である。
このようにして、データ形式選択部13において行う処理方式の種類を選択することができる。
【0025】
〔実施例2〕
次に、上述の実施例1では、GDI10から取得したデータ(ビットマップデータ又はアウトラインデータ)に上述したような変換を行ってプリンタ2へ印刷データとして出力する場合の処理について説明したが、GDI10から取得したデータとその指定情報から中間データを作成して保持するようにすれば、その中間データを使うことにより、ユーザからの印刷方法変更指示があっても上述と同様にして印字品質の良い印刷ができる。
図6は、この発明の実施例2の印刷システムの構成を示すブロック図である。
なお、この実施例2においても、この発明に係る部分以外の機能部については、説明を簡略にするためにそれらの図示と説明を省略する。
この印刷システムは、PC1のプリンタドライバ20の内部構成が上述のものと異なり、グラフィック前処理部21とグラフィック後処理部22と中間データ印刷アプリケーション部23の機能部を備えている。
【0026】
そして、グラフィック前処理部21は、GDI10からデータとその指定情報と印刷指示の制御データを受け取ると、それらから中間データ作成部24によって中間データを作成し、中間データ印刷アプリケーション部23へ送信する。
ここで、上記中間データとは、上記指定情報が反映されていないデータ(アウトラインデータ又はビットマップデータ)と、上記指定情報とを含むデータである。具体的には、GDI10から「2倍拡大」という指定情報を受け取った場合、中間データ作成部24はアウトラインデータ又はビットマップデータと指定情報「2倍拡大」とを含む中間データを作成する。
【0027】
中間データ印刷アプリケーション部23は、グラフィック前処理部21から受け取った中間データを中間データ記憶部29に記憶する。また、この中間データに対して、図示を省略したUI部の入力部によってユーザから指定情報変更指示の入力があると、その指示に基づいて中間データ記憶部29に記憶されている変更対象の指定情報が含まれている中間データについて、その指定情報の変更処理を施す。具体的には、中間データ印刷アプリケーション部23は、指定情報「2倍拡大」とアウトラインデータ又はビットマップデータとを含む中間データに対して、指定情報を「2倍拡大」から「1/2縮小」に変更する指示があった場合、その指示に基づいて、中間データ記憶部29から変更対象の指定情報を含む中間データを検索し、その検索した中間データの指定情報を「2倍拡大」から「1/2縮小」への変更処理を施す。
【0028】
さらに、中間データ印刷アプリケーション部23は、中間データ記憶部29の中間データから、指定情報を反映したアウトラインデータ又はビットマップデータを、図示を省略したUI部の表示部にプレビュー表示することもできる(そのプレビュー表示は、自動的に表示するようにしてもよいし、ユーザからの要求に基づいて表示するようにしてもよい)。したがって、ユーザは、中間データ印刷アプリケーション部23による中間データのプレビュー表示により、指定情報変更による文字データの印刷時の品質を容易に確認することができる。
また、指定情報の変更前と変更後の文字データを同時にプレビュー表示するようにすれば、指定情報変更前の中間データに基づく表示内容と指定情報変更後の中間データに基づく表示内容とを比較することにより、両者の印刷時の品質の差を容易に確認することができる。
【0029】
その後、中間データ印刷アプリケーション部23は、この中間データに対してユーザから印刷指示があると、中間データをグラフィック後処理部22に読み取らせる。
また、中間データ印刷アプリケーション部23は、その中間データを中間データ記憶部29に格納して保持することにより、ユーザからの最初の印刷指示の場合は中間データ記憶部29の中間データがグラフィック後処理部22によってそのまま読み取られるが、ユーザから印刷方法変更指示があると、その指示に基づいて中間データ記憶部29の中間データの制御データに編集処理を施し、グラフィック後処理部22に読み取らせることができる。
この実施例2では、上述の実施例1と同じように、データ形式選択部26が、この発明に係る取得手順と選択手順と要求手順を実行し、アウトライン変換部27とビットマップ変換部28が、この発明に係る変換手順を実行する。しかし、データ形式選択部26は、中間データ印刷アプリケーション部23が、変倍率,文字サイズ情報,文字属性情報の指定情報の受け取り先であり、その点については上述のものとは異なる。
【0030】
次に、図6に示したグラフィック前処理部21の処理について説明する。
図7は図6に示したグラフィック前処理部21の処理を示すフローチャート図である。
この処理では、上記指定情報として変倍率を用いた場合を説明する。
グラフィック前処理部21は、ステップ(図中「S」で示す)61で、GDI10から変倍率を取得し、ステップ62で、文書データ中の文字のビットマップデータを取得し、ステップ63で、文書データ中の文字のアウトラインデータを取得し、その他に印刷設定の制御データも取得すると、ステップ64で、それらの全データ(変倍率,ビットマップデータ,アウトラインデータ,制御データ)を合わせた中間データを作成し、ステップ65で、その中間データを中間データ印刷アプリケーション部23へ送信し、この処理を終了する。
この処理では、上記指定情報として変倍率を用いた場合を説明したが、文字サイズ情報又は文字属性情報を用いた場合でも同様に実施することができる。
【0031】
次に、図6に示したグラフィック後処理部22の処理について説明する。
このグラフィック後処理部22の行う処理は、上述した実施例1のグラフィック部12での処理とほぼ同じであるが、指定情報とアウトラインデータ又はビットマップデータの受け取り先が中間データ印刷アプリケーション部23から取得する点が上述とは異なる。
図8は図6に示したグラフィック後処理部22の処理を示すフローチャート図である。
グラフィック後処理部22の中間データ読取部25は、ステップ(図中「S」で示す)71で中間データ印刷アプリケーション部23の中間データ記憶部29から中間データを読み取り、データ形式選択部26へ送信する。
【0032】
データ形式選択部26は、中間データから変倍率を取得すると、ステップ72で、変倍率が1よりも大きいか否かを判断し、1よりも大きいなら文字の拡大であるから、ステップ73で中間データからアウトラインデータを取得し、上記変倍率と上記アウトラインデータと制御データをアウトライン変換部27へ送り、ステップ74で、アウトライン変換部27は、上記変倍率に基づいて上記アウトラインデータを変倍(この場合は拡大処理を施す)し、ステップ75で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0033】
一方、ステップ72で変倍率の変倍率が1よりも大きくないと判断したら、その場合は文字は等倍か縮小なので、ステップ76で中間データからビットマップデータを取得し、上記変倍率と上記ビットマップデータと制御データをビットマップ変換部28へ送り、ステップ77で、ビットマップ変換部28は、上記変倍率に基づいて上記ビットマップデータをそのまま、あるいは変倍(この場合は縮小処理を施す)し、ステップ75で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
この処理では、上記指定情報として変倍率を用いた場合を説明したが、文字サイズ情報又は文字属性情報を用いた場合でも同様に実施することができる。
このようにして、ユーザから印刷方法や印刷設定の変更があっても、中間データを用いて速やかに良好な印字結果を得ることができる。
【0034】
〔実施例3〕
次に、文字のデータ形式が、アウトラインデータ,ビットマップデータ,フォントデータの3種類の場合の実施例3について説明する。
図9は、この発明の実施例3の印刷システムの構成を示すブロック図である。
なお、この実施例3においても、この発明に係る部分以外の機能部については、説明を簡略にするためにそれらの図示と説明を省略する。
この印刷システムは、実施例1のPC1と内部構成が同じであり、その変換処理も上述の場合とほぼ同じであるが、アウトラインデータ,ビットマップデータ,フォントデータの3種類の文字のデータ形式を扱う点が上述のものとは異なり、一部のデータについての変倍処理はプリンタ2のラスタライザ30を利用する点も異なる。
【0035】
この印刷システムでは、上述と同じようにして指定情報に基づいて、アウトラインデータ,ビットマップデータ,フォントデータの3種類の文字のデータ形式の中から1つを選択し、アウトラインデータとビットマップデータのいずれかを選択した場合は、上述と同じようにグラフィック部12において変換した後にプリンタ2へ送出するが、フォントデータを選択した場合は、そのフォントデータと指定情報とをプリンタ2へ送り、プリンタ2では、ラスタライザ30によって上記指定情報に基づいてフォントデータを変換する。
上記フォントデータは、明朝体,ゴシック体を含む各種の書体毎の文字データを作成するためのデータである。
【0036】
ここで、この処理における上記指定情報が、文書データ中の文字の変倍率である場合の処理について説明する。
図10は、図9に示したグラフィック部12の処理を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)81でGDI10から変倍率を取得すると、ステップ82で、変倍率が1よりも大きいか否かを判断し、1よりも大きいなら文字の拡大であるから、ステップ83でアウトラインのデータ形式を選択し、ステップ84で、GDI10にアウトラインデータを要求して取得し、上記変倍率と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ85で、アウトライン変換部14は、上記変倍率に基づいて上記アウトラインデータを変倍(この場合は拡大処理を施す)し、ステップ86で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0037】
一方、ステップ82で変倍率が1よりも大きくないと判断したら、その場合は文字は等倍か縮小なので、ステップ87で変倍率が0.1よりも大きく1以下であるか否かを判断し、変倍率が0.1よりも大きく1以下と判断したら、ステップ88でビットマップのデータ形式を選択し、ステップ89で、GDI10にビットマップデータを要求して取得し、上記変倍率と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ90で、ビットマップ変換部15は、上記変倍率に基づいて上記ビットマップデータをそのまま、あるいは変倍(この場合は縮小処理を施す)し、ステップ86で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0038】
また、ステップ87の判断で、変倍率が0.1よりも大きく1以下ではないと判断したら、ステップ91で、フォントデータのデータ形式を選択し、ステップ92でGDI10にフォントデータを要求して取得し、そのフォントデータと上記既に取得した変倍率とをプリンタ2へ送信し、この処理を終了する。
上記フォントデータと変倍率とを受信したプリンタ2は、ラスタライザ30によって上記フォントデータを上記変倍率に基づいて変倍する。
上記処理において、データ形式選択部13は、GDI10から印刷設定の制御データも受け取って上記変換後のデータと共にプリンタ2へ送信する。
そして、プリンタ2は、受信したデータに基づいてプリントする。
このようにして、フォントラスタライザを搭載しているプリンタに文字を印字させる場合、縮小倍率が小さい文字についてはフォントデータを利用することができる。
【0039】
次に、上記指定情報が文字幅と文字高さからなる文字サイズ情報の場合の処理について説明する。
図11は、図9に示したグラフィック部12の他の処理例を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)101でGDI10から文字サイズ情報を取得すると、ステップ102で、例えば、PC1の図示を省略したレジストリやPC1内部に予め保存あるいはユーザによって入力された設定ファイルから文字サイズの閾値を取得し、ステップ103で文字サイズ情報の文字幅又は文字高さが第1閾値よりも大きいか否かを判断し、第1閾値よりも大きいなら、ステップ104でアウトラインのデータ形式を選択し、ステップ105で、GDI10にアウトラインデータを要求して取得し、上記文字サイズ情報と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ106で、アウトライン変換部14は、上記文字サイズ情報に基づいて上記アウトラインデータを変換し、ステップ107で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0040】
一方、ステップ103で文字サイズ情報の文字幅又は文字高さが第1閾値よりも大きくないと判断したら、ステップ108で、文字サイズ情報の文字幅又は文字高さが第2閾値よりも大きく第1閾値以下か否かを判断し、文字サイズ情報の文字幅又は文字高さが第2閾値よりも大きく第1閾値以下なら、ステップ109でビットマップのデータ形式を選択し、ステップ110で、GDI10にビットマップデータを要求して取得し、上記文字サイズ情報と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ111で、ビットマップ変換部15は、上記文字サイズ情報に基づいて上記ビットマップデータを変換し、ステップ107で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0041】
また、ステップ108の判断で、文字サイズ情報の文字幅又は文字高さが第2閾値よりも大きく第1閾値以下ではないと判断したら、ステップ112で、フォントデータのデータ形式を選択し、ステップ113でGDI10にフォントデータを要求して取得し、そのフォントデータと上記既に取得した文字サイズ情報の文字幅又は文字高さとをプリンタ2へ送信し、この処理を終了する。
上記フォントデータと文字サイズ情報の文字幅又は文字高さとを受信したプリンタ2は、ラスタライザ30によって上記フォントデータを上記文字サイズ情報の文字幅又は文字高さに基づいて変換する。
上記処理において、データ形式選択部13は、GDI10から印刷設定の制御データも受け取って上記変換後のデータと共にプリンタ2へ送信する。
そして、プリンタ2は、受信したデータに基づいてプリントする。
なお、上述の第1閾値と第2閾値は予め設定された値であり、第1閾値>第2閾値の大小関係がある。
【0042】
次に、上記指定情報がボールド,イタリックを含む文字属性情報の場合の処理について説明する。
図12は、図9に示したグラフィック部12のまた他の処理例を示すフローチャート図である。
グラフィック部12のデータ形式選択部13は、ステップ(図中「S」で示す)121でGDI10から文字属性情報を取得すると、ステップ122で、文字属性情報の文字属性がボールドか否かを判断し、ボールド(太字)なら、ステップ123で、アウトラインのデータ形式を選択し、ステップ124で、GDI10にアウトラインデータを要求して取得し、上記文字属性情報と上記アウトラインデータとをアウトライン変換部14へ送り、ステップ125で、アウトライン変換部14は、上記文字属性情報に基づいて上記アウトラインデータを変換(書体をボールド体に変換)し、ステップ126で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0043】
一方、ステップ122の判断でボールドでなければ、ステップ127で、文字属性情報の文字属性がイタリック(斜体)か否かを判断し、イタリックなら、ステップ128でビットマップのデータ形式を選択し、ステップ129で、GDI10にビットマップデータを要求して取得し、上記文字属性情報と上記ビットマップデータとをビットマップ変換部15へ送り、ステップ130で、ビットマップ変換部15は、上記文字属性情報に基づいて上記ビットマップデータを変換(この場合はイタリック体に変換)し、ステップ126で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0044】
また、ステップ127で文字属性がイタリックではないと判断した場合、ステップ131、フォントデータのデータ形式を選択し、ステップ132で、GDI10にフォントデータを要求して取得し、ステップ126で、上記文字属性情報と上記フォントデータとをプリンタ2へ送信し、この処理を終了する。
上記フォントデータと文字属性情報を受信したプリンタ2は、ラスタライザ30によって上記フォントデータを上記文字属性情報に基づく書体の文字データに変換する。
そして、プリンタ2は、受信したデータに基づいてプリントする。
さらに、上記データ形式選択部13において上記指定情報として変倍率、文字サイズ情報、文字属性情報のいずれを用いた処理にするかを選択する処理は、図5で示した処理と同じなので、その説明を省略する。
【0045】
〔実施例4〕
次に、GDI10から取得したビットマップデータ,アウトラインデータ,又はフォントデータとその指定情報から中間データを作成して保持する場合の実施例について説明する。
図13は、この発明の実施例4の印刷システムの構成を示すブロック図である。
なお、この実施例4においても、この発明に係る部分以外の機能部については、説明を簡略にするためにそれらの図示と説明を省略する。
この印刷システムは、プリンタドライバ20の中間データ作成部24によってビットマップデータ,アウトラインデータ,又はフォントデータとその指定情報から中間データを作成し、それを中間データ印刷アプリケーション部23の中間データ記憶部29に記憶させて保持する。
そして、プリンタ2へは、その中間データに基づいて、ビットマップデータとアウトラインデータは変換して送出し、フォントデータの場合は指定情報と共に送出する。
プリンタ2は、受信したデータに基づいてプリントする。
【0046】
次に、図13に示したグラフィック前処理部21の処理について説明する。
図14は、図13に示したグラフィック前処理部21の処理を示すフローチャート図である。
この処理では、上記指定情報として変倍率を用いた場合を説明する。
グラフィック前処理部21は、ステップ(図中「S」で示す)141で、GDI10から変倍率を取得し、ステップ142で、文書データ中の文字のビットマップデータを取得し、ステップ143で、文書データ中の文字のアウトラインデータを取得し、ステップ144で、文書データ中の文字のフォントデータを取得し、その他に印刷設定の制御データも取得すると、ステップ145で、それらの全データ(変倍率,ビットマップデータ,アウトラインデータ,フォントデータ,制御データ)を合わせた中間データを作成し、ステップ146で、その中間データを中間データ印刷アプリケーション部23へ送信し、この処理を終了する。
この処理では、上記指定情報として変倍率を用いた場合を説明したが、文字サイズ情報又は文字属性情報を用いた場合でも同様に実施することができる。
【0047】
次に、図13に示したグラフィック後処理部22の処理について説明する。
このグラフィック後処理部22の行う処理は、上述した実施例3のグラフィック部12での処理とほぼ同じであるが、指定情報とアウトラインデータ,ビットマップデータ,又はフォントデータの受け取り先が中間データ印刷アプリケーション部23から取得する点が上述とは異なる。
図15は、図13に示したグラフィック後処理部22の処理を示すフローチャート図である。この処理では、指定情報が変倍率の場合を説明する。
グラフィック後処理部22の中間データ読取部25は、ステップ(図中「S」で示す)151で中間データ印刷アプリケーション部23の中間データ記憶部29から中間データを読み取り、データ形式選択部26へ送信する。
【0048】
データ形式選択部26は、中間データから変倍率を取得すると、ステップ152で、変倍率が1よりも大きいか否かを判断し、1よりも大きいなら文字の拡大であるから、ステップ153で中間データからアウトラインデータを取得し、上記変倍率と上記アウトラインデータと制御データをアウトライン変換部27へ送り、ステップ154で、アウトライン変換部27は、上記変倍率に基づいて上記アウトラインデータを変倍(この場合は拡大処理を施す)し、ステップ155で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0049】
一方、ステップ152で変倍率の変倍率が1よりも大きくないと判断したら、その場合は文字は等倍か縮小なので、さらに、ステップ156で変倍率が0.1よりも大きく1以下であるか否かを判断し、変倍率が0.1よりも大きく1以下であるなら、ステップ157で中間データからビットマップデータを取得し、上記変倍率と上記ビットマップデータと制御データをビットマップ変換部28へ送り、ステップ158で、ビットマップ変換部28は、上記変倍率に基づいて上記ビットマップデータをそのまま、あるいは変倍(この場合は縮小処理を施す)し、ステップ155で、図示を省略したスプーラに一時蓄積した後にプリンタ2へ送信し、この処理を終了する。
【0050】
また、ステップ156で変倍率が0.1よりも大きく1以下ではないと判断したら、ステップ159で、中間データからフォントデータを取得し、ステップ155で、上記既に取得した変倍率と共にプリンタ2へ送信する。
上記フォントデータと変倍率とを受信したプリンタ2は、ラスタライザ30によって上記フォントデータを上記変倍率に基づいて変換する。
そして、プリンタ2は、受信したデータに基づいてプリントする。
この処理では、上記指定情報として変倍率を用いた場合を説明したが、文字サイズ情報又は文字属性情報を用いた場合でも同様に実施することができる。
【0051】
〔実施例5〕
次に、実施例4では、ビットマップ,アウトライン,フォントの全データを含む中間データを作成する場合の実施例を説明したが、指定情報に基づいてビットマップ,アウトライン,フォントのいずれかのデータを選択し、その選択したデータのみを含む中間データを作成して保持するようにしてもよい。
この実施例5では、ビットマップ,アウトライン,フォントのいずれかのデータのみを含む中間データを保持し、その中間データに基づいてプリンタ2へデータを提供する場合の例を説明する。
【0052】
図16は、この発明の実施例5の印刷システムの構成を示すブロック図である。
なお、この実施例5においても、この発明に係る部分以外の機能部については、説明を簡略にするためにそれらの図示と説明を省略する。
この印刷システムは、プリンタドライバ20のグラフィック前処理部21によって指定情報からビットマップデータ,アウトラインデータ,あるいはフォントデータを選択し、その選択したデータと指定情報からなる中間データを作成し、それを中間データ印刷アプリケーション部23の中間データ記憶部29に記憶させて保持する。
そして、プリンタ2へは、その中間データに基づいて、ビットマップデータとアウトラインデータは変換して送出し、フォントデータの場合は指定情報と共に送出する。
【0053】
図17は、図16に示したグラフィック前処理部21の処理を示すフローチャート図である。
グラフィック前処理部21のデータ形式選択部40は、ステップ(図中「S」で示す)161でGDI10から変倍率を取得すると、ステップ162で、変倍率が1よりも大きいか否かを判断し、1よりも大きいなら文字の拡大であるから、ステップ163でアウトラインのデータ形式を選択し、ステップ164で、GDI10にアウトラインデータを要求して取得し、ステップ165で、上記変倍率と上記アウトラインデータとからなる中間データを作成し、ステップ166で、中間データ印刷アプリケーション部23へ中間データを送信し、この処理を終了する。
【0054】
一方、ステップ162で変倍率が1よりも大きくないと判断したら、その場合は文字は等倍か縮小なので、ステップ167で変倍率が0.1よりも大きく1以下であるか否かを判断し、変倍率が0.1よりも大きく1以下と判断したら、ステップ168でビットマップのデータ形式を選択し、ステップ169で、GDI10にビットマップデータを要求して取得し、ステップ170で、上記変倍率と上記ビットマップデータとからなる中間データを作成し、ステップ166で、中間データ印刷アプリケーション部23へ中間データを送信し、この処理を終了する。
【0055】
また、ステップ167の判断で、変倍率が0.1よりも大きく1以下ではないと判断したら、ステップ171で、フォントデータのデータ形式を選択し、ステップ172でGDI10にフォントデータを要求して取得し、ステップ173で、そのフォントデータと上記既に取得した変倍率とからなる中間データを作成し、ステップ166で、中間データ印刷アプリケーション部23へ中間データを送信し、この処理を終了する。
中間データ印刷アプリケーション部23は、受信した中間データを中間データ記憶部29に記憶して保持する。
【0056】
次に、図16に示したグラフィック後処理部22の処理について説明する。
図18は、図16に示したグラフィック後処理部22の処理を示すフローチャート図である。この処理では、指定情報が変倍率の場合を説明する。
グラフィック後処理部22の中間データ読取部50は、ステップ(図中「S」で示す)181で中間データ印刷アプリケーション部23の中間データ記憶部29から中間データを読み取って取得し、ステップ182で、その中間データから変倍率を取得し、ステップ183で、中間データから文字のデータを取得する。
ステップ184で、上記取得した文字のデータがアウトラインデータであるか否かを判断し、アウトラインデータであると判断したら、ステップ185で、アウトライン変換部27へ送り、アウトライン変換部27は上記変倍率に基づいてアウトラインデータを変倍し、ステップ186で上記変倍後のアウトラインデータをプリンタ2へ送信し、この処理を終了する。
【0057】
一方、ステップ184でアウトラインデータではないと判断したら、ステップ188で、上記取得した文字のデータがビットマップデータであるか否かを判断し、ビットマップデータであると判断したら、ステップ189で、ビットマップ変換部28へ送り、ビットマップ変換部28は上記変倍率に基づいてビットマップデータを変倍し、ステップ186で上記変倍後のビットマップデータをプリンタ2へ送信し、この処理を終了する。
また、ステップ188でビットマップデータではないと判断したら、残りのフォントデータであるから、ステップ190で、中間データから取得した変倍率とフォントデータを取りまとめ、ステップ186で、プリンタ2へ送信し、この処理を終了する。
そして、プリンタ2は、受信したデータに基づいてプリントする。
【産業上の利用可能性】
【0058】
この発明によるプログラムと印刷データ変換装置は、デスクトップパソコン,ノートブックパソコンを含むコンピュータにおいて適用することができる。
【符号の説明】
【0059】
1:PC 2:プリンタ 10:GDI 11,20:プリンタドライバ 12:グラフィック部 13,26,40:データ形式選択部 14,27:アウトライン変換部 15,28:ビットマップ変換部 21:グラフィック前処理部 22:グラフィック後処理部 23:中間データ印刷アプリケーション部 24:中間データ作成部 25,50:中間データ読取部 29:中間データ記憶部 30:ラスタライザ
【先行技術文献】
【特許文献】
【0060】
【特許文献1】特開平9−62849号公報
【特許請求の範囲】
【請求項1】
コンピュータに、印刷する文字データに付加された指定情報を取得する取得手順と、該取得手順によって取得した指定情報に基づいて前記印刷する文字データを印刷データに変換したとき、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択する選択手順と、該選択手順によって選択されたデータ形式の文字データを要求する要求手順とを実行させるためのプログラム。
【請求項2】
コンピュータに、前記要求手順によって要求したデータ形式の文字データを取得し、前記指定情報に基づいて前記取得したデータ形式の文字データを印刷データに変換する変換手順を実行させるための請求項1記載のプログラム。
【請求項3】
コンピュータに、前記文字データと前記指定情報とを含む中間データを作成する作成手順と、
前記作成手順によって作成した中間データを記憶する記憶手順と、
前記記憶手順によって記憶された中間データの指定情報に対する変更指示に基づいて、該指定情報の変更処理を行う変更手順とを実行させ、
前記取得手順は、前記記憶手順によって記憶された中間データから指定情報を取得する手順であり、
前記選択手順は、前記中間データから取得した指定情報に基づいて、該中間データから文字データを選択する手順であり、
前記要求手順は、前記中間データから前記選択手順によって選択した文字データを要求する手順である請求項1又は2記載のプログラム。
【請求項4】
前記指定情報は、変倍率、文字幅、文字高さ、文字属性のいずれか1つを含む情報である請求項1乃至3のいずれか一項に記載のプログラム。
【請求項5】
前記文字データのデータ形式には、アウトラインデータとビットマップデータとフォントデータとを含む請求項1乃至4のいずれか一項に記載のプログラム。
【請求項6】
請求項1乃至5のいずれか一項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項7】
印刷する文字データに付加された指定情報を取得する取得手段と、該取得手段によって取得した指定情報に基づいて前記印刷する文字データを印刷データに変換したとき、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択する選択手段と、該選択手段によって選択されたデータ形式の文字データを要求する要求手段と、該要求手段によって要求したデータ形式の文字データを取得し、前記指定情報に基づいて前記取得したデータ形式の文字データを印刷データに変換する変換手段とを備えた印刷データ変換装置。
【請求項1】
コンピュータに、印刷する文字データに付加された指定情報を取得する取得手順と、該取得手順によって取得した指定情報に基づいて前記印刷する文字データを印刷データに変換したとき、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択する選択手順と、該選択手順によって選択されたデータ形式の文字データを要求する要求手順とを実行させるためのプログラム。
【請求項2】
コンピュータに、前記要求手順によって要求したデータ形式の文字データを取得し、前記指定情報に基づいて前記取得したデータ形式の文字データを印刷データに変換する変換手順を実行させるための請求項1記載のプログラム。
【請求項3】
コンピュータに、前記文字データと前記指定情報とを含む中間データを作成する作成手順と、
前記作成手順によって作成した中間データを記憶する記憶手順と、
前記記憶手順によって記憶された中間データの指定情報に対する変更指示に基づいて、該指定情報の変更処理を行う変更手順とを実行させ、
前記取得手順は、前記記憶手順によって記憶された中間データから指定情報を取得する手順であり、
前記選択手順は、前記中間データから取得した指定情報に基づいて、該中間データから文字データを選択する手順であり、
前記要求手順は、前記中間データから前記選択手順によって選択した文字データを要求する手順である請求項1又は2記載のプログラム。
【請求項4】
前記指定情報は、変倍率、文字幅、文字高さ、文字属性のいずれか1つを含む情報である請求項1乃至3のいずれか一項に記載のプログラム。
【請求項5】
前記文字データのデータ形式には、アウトラインデータとビットマップデータとフォントデータとを含む請求項1乃至4のいずれか一項に記載のプログラム。
【請求項6】
請求項1乃至5のいずれか一項に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項7】
印刷する文字データに付加された指定情報を取得する取得手段と、該取得手段によって取得した指定情報に基づいて前記印刷する文字データを印刷データに変換したとき、印刷先のプリンタで印字品質の劣化が最も少ない印刷データに変換可能なデータ形式の文字データを選択する選択手段と、該選択手段によって選択されたデータ形式の文字データを要求する要求手段と、該要求手段によって要求したデータ形式の文字データを取得し、前記指定情報に基づいて前記取得したデータ形式の文字データを印刷データに変換する変換手段とを備えた印刷データ変換装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【公開番号】特開2010−140459(P2010−140459A)
【公開日】平成22年6月24日(2010.6.24)
【国際特許分類】
【出願番号】特願2009−24171(P2009−24171)
【出願日】平成21年2月4日(2009.2.4)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
【公開日】平成22年6月24日(2010.6.24)
【国際特許分類】
【出願日】平成21年2月4日(2009.2.4)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】
[ Back to top ]