JP2016177694A - プログラム、情報処理装置、印刷データ生成方法及び画像形成システム - Google Patents
プログラム、情報処理装置、印刷データ生成方法及び画像形成システム Download PDFInfo
- Publication number
- JP2016177694A JP2016177694A JP2015058777A JP2015058777A JP2016177694A JP 2016177694 A JP2016177694 A JP 2016177694A JP 2015058777 A JP2015058777 A JP 2015058777A JP 2015058777 A JP2015058777 A JP 2015058777A JP 2016177694 A JP2016177694 A JP 2016177694A
- Authority
- JP
- Japan
- Prior art keywords
- print data
- paper size
- image forming
- command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
【課題】ユーザが用紙サイズを定義して、印刷を行う場合に生ずる、用紙サイズ不一致により印刷が実行できなくなる問題を解消する。【解決手段】 フィルタ124に、画像形成装置に実行させる印刷の内容を規定する印刷データを生成させる場合において、そのフィルタ124に、カスタム用紙サイズの設定値の生データを取得するジョブ情報解析部124aと、上記ジョブ情報解析部124aが取得した生データを上記印刷データに追加する印刷制御部124bと、上記画像形成装置に印刷に使用する印刷データ中のカスタム用紙サイズの設定値を上記印刷制御部124bが追加した生データに置き換える処理を実行させるための置換コマンドを上記印刷データに追加するカスタム用紙サイズUI入力値挿入部124cとを備えた。【選択図】図9
Description
この発明は、プログラム、情報処理装置、印刷データ生成方法及び画像形成システムに関する。
一般に、ユーザが用紙サイズを定義して行う印刷では、ユーザは用紙サイズをmm単位(或いはinch単位)で定義する。PCの描画エンジンは、mm単位で定義された用紙サイズに印刷する印刷指示を受け付けると、そのサイズをpt(ポイント)単位に変換する。そして。pt単位の値の用紙サイズを印刷データに含めてプリンタに送信する。プリンタは、該印刷データを受信すると、用紙サイズをpt単位の値からmm単位の値に変換し、変換後の用紙サイズで印刷を実行する。
理論的には、mm単位の値を一度pt単位に変換し、それを再度mm単位に変換しているのだから、最初のmm単位の値と、最後のmm単位の値とは同じなるはずである。しかし、実際には、ある値をmm単位をpt単位に変換すると、小数点以下の数が生じる。
従来より、PCの描画エンジンは、変換時に生じる小数点以下の数については、いわゆる丸め処理を行い、その丸め処理を行った値(以下、単に「丸めた値」という。)を印刷データに含めてプリンタに送信する。プリンタは丸めた値をmm単位に変換するため、実際には、ユーザが最初に定義したmm単位の値とは誤差が生じることになる。
従来より、PCの描画エンジンは、変換時に生じる小数点以下の数については、いわゆる丸め処理を行い、その丸め処理を行った値(以下、単に「丸めた値」という。)を印刷データに含めてプリンタに送信する。プリンタは丸めた値をmm単位に変換するため、実際には、ユーザが最初に定義したmm単位の値とは誤差が生じることになる。
しかし、この誤差は予め想定されているため、プリンタは、任意の範囲内での誤差については、用紙サイズは一致したものと判断して印刷を実行するように設定されている。しかし、その誤差が予め設定してある範囲を超えてしまった場合は、用紙サイズ不一致と判断するので、印刷は行わない。したがって、このような場合、ユーザは印刷を実行することができなくなるという問題があった。
これを解消する技術として、特許文献1記載の技術がある。特許文献1に記載の技術では、プリンタは、PCが送信した画像データを受信すると、その画像データに含まれる原稿サイズを算出する。その算出した原稿サイズが、設定されている用紙サイズより大きい場合は、各用紙のサイズ毎にサイズ判定調整値というものを設定し、その設定したサイズ判定調整値を各用紙サイズに付加する。プリンタは、この調整値を付加した用紙サイズの値の中で、原稿サイズと一致するものを選択し、その用紙サイズの用紙に印刷を行う。
確かに、特許文献1記載の技術では、原稿サイズと用紙サイズが不一致になる問題は解消される。しかし、上記の技術を実現するためには、プリンタが構成するモジュール数が膨大で、処理が複雑になるため、プリンタにかかる負担が大きいという問題があった。また、用紙サイズが不一致かを判断する処理や、適合する用紙サイズを選択する処理が複雑なため、処理に時間がかかるという問題もあった。
そこで、この発明は、PCのプリンタドライバ側に僅かの変更を加えるだけで、ユーザが用紙サイズを定義する際に生じる、いわゆる丸め誤差による用紙サイズの不一致を解消することを目的とする。
以上の目的を達成するため、この発明によるプログラムは、コンピュータを、画像形成装置に実行させる印刷の内容を規定する印刷データを生成する印刷データ生成手段として機能させるためのプログラムであって、上記印刷データ生成手段が、カスタム用紙サイズの設定値の生データを取得する取得手段と、上記取得手段が取得した生データを上記印刷データに追加する第1追加手段と、上記画像形成装置に、印刷に使用する印刷データ中のカスタム用紙サイズの設定値を上記第1追加手段が追加した生データに置き換える処理を実行させるための置換コマンドを上記印刷データに追加する第2追加手段とを備えることとする。
上記の構成によれば、ユーザが定義した用紙サイズで印刷を実行する場合に生じる、いわゆる丸め誤差による用紙サイズの不一致を解消することができる。
以下、図1乃至20を用いて、本発明を実施するための形態について説明をしていく。
この実施形態は、ユーザが定義した不定形の用紙サイズ(以降、「カスタム用紙サイズ」という。)で印刷を行う場合に、プリンタが設定する用紙サイズとユーザが定義した用紙サイズとがサイズ不一致で印刷できない場合が生じる問題を解消するものである。
まず、上述したした問題が生じる理由については既に述べているが、ここでは、具体的な数字と計算式を用いて、更に詳しく説明する。
この実施形態は、ユーザが定義した不定形の用紙サイズ(以降、「カスタム用紙サイズ」という。)で印刷を行う場合に、プリンタが設定する用紙サイズとユーザが定義した用紙サイズとがサイズ不一致で印刷できない場合が生じる問題を解消するものである。
まず、上述したした問題が生じる理由については既に述べているが、ここでは、具体的な数字と計算式を用いて、更に詳しく説明する。
ユーザがPC(Personal Computer)を介してプリンタに印刷の実行を要求する場合、PCのUI(User Interface)を介して、種々の印刷条件を設定する。このとき、ユーザが用紙サイズをカスタム用紙サイズとし、そのサイズを「210mm×210mm」と定義したとする。こ場合、PCの描画エンジンは、この値を下記の計算式で、pt(point)単位に変換する。
pt数=(mm数×72)÷25.4=(210×72)÷25.4≒595.3pt
pt数=(mm数×72)÷25.4=(210×72)÷25.4≒595.3pt
描画エンジンは、上記で算出した値の小数点以下の部分の数を丸めて、「595pt」とし、それをカスタム用紙サイズの設定値として、印刷データに含め、その印刷データをプリンタに送信する。プリンタは印刷データを受信すると、印刷データに含まれたカスタム用紙サイズの設定値「595pt」を、下記の計算式で、mm単位に変換する。
mm数=(pt数×25.4)÷72=(595×25.4)÷72≒209.9mm
プリンタは上記の計算により得られた値をカスタム用紙サイズの設定値として認識する。
mm数=(pt数×25.4)÷72=(595×25.4)÷72≒209.9mm
プリンタは上記の計算により得られた値をカスタム用紙サイズの設定値として認識する。
しかし、このような丸め処理を行うと、プリンタが認識するカスタム用紙サイズの設定値が、ユーザが定義したカスタム用紙サイズの値と異なってしまう場合が生じる。そこで、プリンタは、予め、カスタム用紙サイズについては、プリンタが上記計算によって算出したカスタム用紙サイズの設定値に、許容誤差を設けて、用紙サイズを判定することにしている。
しかし、例えば、この許容誤差の範囲を「+0.1mm」に設定している場合は、上記計算式で算出した「209.9mm」は、210mm〜210+0.1mmの範囲には収まらないため、用紙サイズ不一致と判定され、印刷を行うことができなくなる。
しかし、例えば、この許容誤差の範囲を「+0.1mm」に設定している場合は、上記計算式で算出した「209.9mm」は、210mm〜210+0.1mmの範囲には収まらないため、用紙サイズ不一致と判定され、印刷を行うことができなくなる。
以上のように、丸め処理行った事により生じたカスタム用紙サイズの誤差が、許容誤差範囲に含まれない場合に、用紙サイズ不一致という問題が生じる。
なお、この丸め処理は、PCのOSが標準で提供する描画エンジンと、一部のアプリケーションが提供する描画エンジンにおいて、一般的に行われている。
なお、この丸め処理は、PCのOSが標準で提供する描画エンジンと、一部のアプリケーションが提供する描画エンジンにおいて、一般的に行われている。
次に、PCのOS(Operating System)のアプリケーションが描画エンジンとフィルタを用いて生成する印刷データのパターンを示す図を図1に示した。図1に示した印刷データ(a)901〜(d)904を用いて、どの印刷データが、用紙サイズ不一致が生じる可能性があるか説明をする。
なお、印刷データは、印刷ジョブ全体にかかる設定とページ毎の描画データによって構成されている。ジョブ全体にかかる設定の部分には、用紙サイズや、両面/片面印刷、ステープル、パンチ、ジョブ名等の種々の設定が含まれる。
なお、印刷データは、印刷ジョブ全体にかかる設定とページ毎の描画データによって構成されている。ジョブ全体にかかる設定の部分には、用紙サイズや、両面/片面印刷、ステープル、パンチ、ジョブ名等の種々の設定が含まれる。
印刷データ(a)901〜印刷データ(d)904は、印刷データに、カスタム用紙サイズ(すなわち不定形用紙サイズ)を含むパターンの一例である。なお、ここでは、説明の便宜のために、印刷データ(a)901〜印刷データ(d)904には、用紙サイズのみ記載し、他の設定については記載を省略している。
まず、印刷データ(a)901は、印刷ジョブ全体で一つの用紙サイズを設定し、且つ、単位変換の際に丸め処理を行う場合の例である。
印刷データ(b)902は、印刷ジョブ全体で一つの用紙サイズを設定し、且つ、単位変換の際に丸め処理を行わない場合の例である。
まず、印刷データ(a)901は、印刷ジョブ全体で一つの用紙サイズを設定し、且つ、単位変換の際に丸め処理を行う場合の例である。
印刷データ(b)902は、印刷ジョブ全体で一つの用紙サイズを設定し、且つ、単位変換の際に丸め処理を行わない場合の例である。
印刷データ(c)903は、ページ毎に用紙サイズを設定し、且つ、単位変換の際に丸め処理を行う場合の例である。
印刷データ(d)904は、ページ毎に用紙サイズを設定し、且つ、単位変換の際に丸め処理を行わない場合の例である。
印刷データ(d)904は、ページ毎に用紙サイズを設定し、且つ、単位変換の際に丸め処理を行わない場合の例である。
ここで、印刷データ(c)903と印刷データ(d)904では、印刷ジョブ全体にかかる設定データ903a、904aには、A4サイズの用紙が設定されていることになっているが、これはOSの仕様によるものであり、ページ毎の描画データ903b乃至903d、904b乃至904dで設定されている用紙サイズの設定のみが有効となる。
印刷データ(a)901は、PCのOSが標準で提供する描画エンジンを用いて、アプリケーションが印刷データを生成する場合の例であり、例えば、MacOS(登録商標)Xの殆どのアプリケーションが生成する印刷データは、印刷データ(a)901に該当する。
なお、アプリケーションが提供する描画エンジンを用いて印刷データを生成する場合は、用紙サイズを印刷ジョブ全体に対して指定するか、ページ毎に指定するか、そして、丸め処理を行うか否かはアプリケーション次第である。したがって、理論上は、アプリケーションが提供する描画エンジンを用いて生成する印刷データは、印刷データ(a)901〜(d)904のいずれに該当するものであってもよい。
なお、アプリケーションが提供する描画エンジンを用いて印刷データを生成する場合は、用紙サイズを印刷ジョブ全体に対して指定するか、ページ毎に指定するか、そして、丸め処理を行うか否かはアプリケーション次第である。したがって、理論上は、アプリケーションが提供する描画エンジンを用いて生成する印刷データは、印刷データ(a)901〜(d)904のいずれに該当するものであってもよい。
ただし、アプリケーション自身が描画エンジンを提供するのは、現在のところ一部のアプリケーション以外には特に存在しない。そして、そのアプリケーションは、ページ毎に用紙サイズを指定し、且つ、丸め処理を行わない。したがって、そのアプリケーションが生成する印刷データは印刷データ(d)904のパターンになる。
図2は、図1で説明した内容を踏まえて、全ての印刷パターンをまとめたリスト905である。リスト905のパターン番号1が、図1の印刷データ(a)901である。
パターン番号2〜5は、アプリケーション自身が描画エンジンを提供するパターンである。
丸め誤差が発生するのはパターン番号1,2,4のパターンである。そして、パターン番号2,4のパターンでは、丸める前の値を取得するのが不可能なため、対策をとることができない。但し、パターン番号2,4のパターンについては、未だ実施されている例がないため、この場合を考慮する必要はないものと考えられる。
この実施形態は、パターン番号1のパターンの印刷データをPCのOSが提供する描画エンジンとフィルタが生成する場合に生じ得る、用紙サイズ不一致の問題を解消することができる。
パターン番号2〜5は、アプリケーション自身が描画エンジンを提供するパターンである。
丸め誤差が発生するのはパターン番号1,2,4のパターンである。そして、パターン番号2,4のパターンでは、丸める前の値を取得するのが不可能なため、対策をとることができない。但し、パターン番号2,4のパターンについては、未だ実施されている例がないため、この場合を考慮する必要はないものと考えられる。
この実施形態は、パターン番号1のパターンの印刷データをPCのOSが提供する描画エンジンとフィルタが生成する場合に生じ得る、用紙サイズ不一致の問題を解消することができる。
次に、この発明を実施するための一の実施形態について、図3乃至図19を用いて説明する。
図3には、この発明の一実施形態である画像形成システムXの構成の一例を示した。
この画像形成システムXは、PCを、画像形成装置に実行させる印刷の内容を規定する印刷データを生成する印刷データ生成手段として機能させるためのシステムである。このシステムAには、PC10とプリンタ20とがネットワークを介して接続する。この画像形成システムXでは、PC10が、生成した印刷データをネットワーク上のプリンタ20に送信し、プリンタ20は該印刷データを受信すると、その印刷データに基づいて印刷を行う。
図3には、この発明の一実施形態である画像形成システムXの構成の一例を示した。
この画像形成システムXは、PCを、画像形成装置に実行させる印刷の内容を規定する印刷データを生成する印刷データ生成手段として機能させるためのシステムである。このシステムAには、PC10とプリンタ20とがネットワークを介して接続する。この画像形成システムXでは、PC10が、生成した印刷データをネットワーク上のプリンタ20に送信し、プリンタ20は該印刷データを受信すると、その印刷データに基づいて印刷を行う。
ここで、接続形態はネットワークに限るものではなく、シリアル接続、Bluetooth(登録商標)接続等、接続可能なものであれば、形態は問わない。
また、プリンタ20は、プリンタ機能を備えるものであれば、デジタル複合機(MFP)等の画像形成装置であってもよい。ただし、後述するPPD(Post Script Description)が利用可能であるとする。また、PC10とプリンタ20とは一台に限られることはない。
また、プリンタ20は、プリンタ機能を備えるものであれば、デジタル複合機(MFP)等の画像形成装置であってもよい。ただし、後述するPPD(Post Script Description)が利用可能であるとする。また、PC10とプリンタ20とは一台に限られることはない。
図3に示したPC19のハードウェアの構成を図4にし示した。
まず、PC10は、CPU101、RAM102、ROM103、HDD(ハードディスクドライブ)104、I/F(インターフェース)105を備え、それらがシステムバス108を介して接続されている。また、I/F105には、LCD(Liquid Crystal Display)106及び操作部107が接続されている。
まず、PC10は、CPU101、RAM102、ROM103、HDD(ハードディスクドライブ)104、I/F(インターフェース)105を備え、それらがシステムバス108を介して接続されている。また、I/F105には、LCD(Liquid Crystal Display)106及び操作部107が接続されている。
上記構成のうち、CPU101は、PC10のRAM102をワークエリアとしてROM103又はHDD104に記憶されたプログラムを実行し、PC10全体の動作を制御する。
I/F105は、システムバス108と各種のハードウェアやネットワーク等を接続し、制御する。LCD106はユーザがPC10の状態を確認するための視覚的ユーザインターフェースである。一方、操作部107は、キーボードやマウス等、ユーザがPC10に情報を入力するためのユーザインタフェースである。
I/F105は、システムバス108と各種のハードウェアやネットワーク等を接続し、制御する。LCD106はユーザがPC10の状態を確認するための視覚的ユーザインターフェースである。一方、操作部107は、キーボードやマウス等、ユーザがPC10に情報を入力するためのユーザインタフェースである。
次に、図3に示したプリンタ20のハードウェアの構成を図5に示した。
プリンタ20は、コントローラ200とエンジン部700とを備え、これらがPCI(Peripheral Component Interface)バス800を介して接続する構成となる。
コントローラ200は、プリンタ20全体の制御と描画、通信、不図示の操作部からの入力を制御する機能を備える。
プリンタ20は、コントローラ200とエンジン部700とを備え、これらがPCI(Peripheral Component Interface)バス800を介して接続する構成となる。
コントローラ200は、プリンタ20全体の制御と描画、通信、不図示の操作部からの入力を制御する機能を備える。
エンジン部700は、PCIバス800に接続可能なプリンタエンジンであり、白黒プロッタ、1ドラムカラープロッタ、4ドラムカラープロッタ、スキャナ、ファックスユニット等を備える。また、誤差拡散やガンマ変換等の画像処理を行う機能も備える。
コントローラ200は、CPU201と、ノースブリッジ(NB)202と、システムメモリ(MEM−P)204と、サウスブリッジ(SB)207と、ローカルメモリ(MEM−C)205と、ASIC(Application Specific Integrated Circuit)203と、ハードディスクドライブ(HDD)206とを備え、NB202とASIC203との間をAGP(Accelerated Graphics Port)バス208で接続した構成となる。
また、MEM−P204は、ROM204aとRAM204bとを備える。
コントローラ200は、CPU201と、ノースブリッジ(NB)202と、システムメモリ(MEM−P)204と、サウスブリッジ(SB)207と、ローカルメモリ(MEM−C)205と、ASIC(Application Specific Integrated Circuit)203と、ハードディスクドライブ(HDD)206とを備え、NB202とASIC203との間をAGP(Accelerated Graphics Port)バス208で接続した構成となる。
また、MEM−P204は、ROM204aとRAM204bとを備える。
CPU201は、プリンタ20全体の動作を制御する。また、NB202、MEM−P204及びSB207を備えるチップセットを介して他の機器と接続する。
NB202は、CPU201をMEM−P204、SB207、AGPバス208と、各々接続させるためのブリッジであり、MEM−P204に対する読み書きなどを制御するメモリコントローラと、PCIマスタおよびAGPターゲットとを備える。
MEM−P204はシステムメモリであって、プログラムやデータの格納用メモリとして用いる読み出し専用のROM204aと、プログラムやデータの展開用メモリ、プリンタの描画用メモリ等して用いる、書き込み及び読み出し可能なメモリであるRAM204bとを備える。
NB202は、CPU201をMEM−P204、SB207、AGPバス208と、各々接続させるためのブリッジであり、MEM−P204に対する読み書きなどを制御するメモリコントローラと、PCIマスタおよびAGPターゲットとを備える。
MEM−P204はシステムメモリであって、プログラムやデータの格納用メモリとして用いる読み出し専用のROM204aと、プログラムやデータの展開用メモリ、プリンタの描画用メモリ等して用いる、書き込み及び読み出し可能なメモリであるRAM204bとを備える。
SB207は、NB202と不図示のPCIデバイスやその他の周辺デバイスとを接続するためのブリッジであり、PCIバス209を介してNB13と接続されている。このPCIバス800には、不図示のネットワークインターフェース(I/F)部なども接続される。
ASIC203は、画像処理用のハードウェア要素を備える画像処理用途向けのIC(Integrated Circuit)であり、AGPバス208、PCIバス440、HDD206及びおよびMEM−C205をそれぞれ接続するブリッジとして機能する。
ASIC203は、画像処理用のハードウェア要素を備える画像処理用途向けのIC(Integrated Circuit)であり、AGPバス208、PCIバス440、HDD206及びおよびMEM−C205をそれぞれ接続するブリッジとして機能する。
ASIC203は、いずれも不図示のPCIターゲット、AGPマスタ、アービタ(ARB)、MEM−C205を制御するメモリコントローラ、ハードウェアロジック等により画像データの回転等を行う複数のDMAC(Direct Memory Access Controller)と、エンジン部700との間でPCIバス800を介したデータ転送をおこなうPCIユニットとを備える。
ASIC203には、PCIバスを介してFCU(Facsimile Control Unit)400、USB(Universal Serial Bus)410、IEEE1394(the Institute of Electrical and Electronics Engineers 1394)I/F420とが接続される。
また、操作表示部300はASIC203に直接接続されている。
ASIC203には、PCIバスを介してFCU(Facsimile Control Unit)400、USB(Universal Serial Bus)410、IEEE1394(the Institute of Electrical and Electronics Engineers 1394)I/F420とが接続される。
また、操作表示部300はASIC203に直接接続されている。
MEM−C205は、コピー用画像バッファ、符号バッファとして用いるローカルメモリである。
HDD206は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージである。また、HDD206は、プリンタ20で実行されるアプリケーションのライセンスファイルを保存する。
AGPバス15は、グラフィックスアクセラレーターカード用のバスインターフェースであり、MEM−P204に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速化する。
HDD206は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージである。また、HDD206は、プリンタ20で実行されるアプリケーションのライセンスファイルを保存する。
AGPバス15は、グラフィックスアクセラレーターカード用のバスインターフェースであり、MEM−P204に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速化する。
次に、図6を用いて、図4で示したPC10のソフトウェアの構成を説明する。
PC10のOS30は、プリンタドライバ40、印刷UI(User Interface)120、PPD(PostScript Printer Description)121、アプリケーション122、描画エンジン123、フィルタ124を備える。これらのソフトウェアはPC10のCPU101が実行する。
なお、OS30は、PC10のハードウェアを制御する機能を備え、プリンタドライバ40は、プリンタ20に接続して、プリンタを制御をする機能を備える。
また、印刷UI120は、プリンタ固有の機能を選択するUI(User Interface)をユーザに提供する機能を備える。
PC10のOS30は、プリンタドライバ40、印刷UI(User Interface)120、PPD(PostScript Printer Description)121、アプリケーション122、描画エンジン123、フィルタ124を備える。これらのソフトウェアはPC10のCPU101が実行する。
なお、OS30は、PC10のハードウェアを制御する機能を備え、プリンタドライバ40は、プリンタ20に接続して、プリンタを制御をする機能を備える。
また、印刷UI120は、プリンタ固有の機能を選択するUI(User Interface)をユーザに提供する機能を備える。
例えば、MacOSXの場合、基本的な印刷機能のUIはOSが提供し、後述のアプリケーション122固有の印刷設定を行うために、アプリケーション122が印刷UIを拡張する。但し、プリンタ特有の機能を実現するために、プリンタベンダがUIを拡張することも可能である。
また、アプリケーション側で細かく印刷データを調整する必要があるアプリケーションの場合は、アプリケーション自身が印刷UIを全て提供する場合もある。
また、アプリケーション側で細かく印刷データを調整する必要があるアプリケーションの場合は、アプリケーション自身が印刷UIを全て提供する場合もある。
PPD121は、Postscriptプリンタで利用可能な機種依存情報が記載されているテキストファイルであり、プリンタベンダによるカスタマイズが可能であるという特徴がある。図7に示したのは、このテキストファイルの一部のコマンドデータ510である。
このコマンドデータ510からわかるように、PPD121には、使用するモジュール(アイコン、カラープロファイル、フィルタ、印刷UIの拡張等)のファイルパス、プリンタの対象機種のモデル名、印刷速度などのプリンタ情報、各種モジュールから参照するためのパラメータ、双方向通信コマンド、ディザパターン、プリント機能とそれに対応する印刷コマンド、機能間の排他等が記載されている。
このコマンドデータ510からわかるように、PPD121には、使用するモジュール(アイコン、カラープロファイル、フィルタ、印刷UIの拡張等)のファイルパス、プリンタの対象機種のモデル名、印刷速度などのプリンタ情報、各種モジュールから参照するためのパラメータ、双方向通信コマンド、ディザパターン、プリント機能とそれに対応する印刷コマンド、機能間の排他等が記載されている。
特に下線付き斜体で記載した印刷コマンド511、512及び513は印刷用紙の設定に関する印刷コマンドである。
印刷データに複数の用紙サイズを設定する情報が含まれる場合は、それぞれの用紙サイズに対してPPD121に記載された対応する印刷コマンドを、印刷データに入れる。例えば、印刷データにA4サイズを設定する印刷コマンドが3箇所ある場合は、その3箇所に対応する場所にPPD121に記載されたA4サイズの用紙設定用の印刷コマンド512を含める。
その他、PPD121は、印刷UI120がプリンタ固有の機能を選択するUIを表示するために参照したり、フィルタ124が機種固有の印刷コマンドを参照し、その印刷コマンドを取得するために用いられる。
印刷データに複数の用紙サイズを設定する情報が含まれる場合は、それぞれの用紙サイズに対してPPD121に記載された対応する印刷コマンドを、印刷データに入れる。例えば、印刷データにA4サイズを設定する印刷コマンドが3箇所ある場合は、その3箇所に対応する場所にPPD121に記載されたA4サイズの用紙設定用の印刷コマンド512を含める。
その他、PPD121は、印刷UI120がプリンタ固有の機能を選択するUIを表示するために参照したり、フィルタ124が機種固有の印刷コマンドを参照し、その印刷コマンドを取得するために用いられる。
アプリケーション122は、印刷するコンテンツを作成する機能を備える。具体的には、印刷実行時に、印刷UI120を呼び出して印刷の設定をし、更に描画エンジン123を呼び出して描画データを生成する。
描画エンジン123は、印刷データを生成する機能や、用紙サイズの単位変換を行う機能を備える。
フィルタ124は、ジョブ情報に基づいて、PPD121から取得した印刷コマンド等を描画データに追加し、印刷データを完成させ、プリンタ20へ送信する機能を備える。また、フィルタ124は、複数で構成され、それぞれパイプラインを形成している。なお、プリンタ独自の機能を実現するために、プリンタベンダがフィルタを提供することも可能である。
描画エンジン123は、印刷データを生成する機能や、用紙サイズの単位変換を行う機能を備える。
フィルタ124は、ジョブ情報に基づいて、PPD121から取得した印刷コマンド等を描画データに追加し、印刷データを完成させ、プリンタ20へ送信する機能を備える。また、フィルタ124は、複数で構成され、それぞれパイプラインを形成している。なお、プリンタ独自の機能を実現するために、プリンタベンダがフィルタを提供することも可能である。
最後に、図6において点線で囲った部分がプリンタドライバ40となるが、プリンタベンダは、プリンタドライバ40として、印刷UI120の一部、PPD121、フィルタ124の一部を供給することができる。
以上が、PC10のソフトウェアの構成に関する説明である。
以上が、PC10のソフトウェアの構成に関する説明である。
なお、MACOSXを始めとして、多くのPCでは、OSのアプリケーションが描画エンジンを提供している。しかし、一部のアプリケーションでは、自ら描画エンジンを持っている場合がある。その場合は、アプリケーションに含まれている描画エンジンを利用する。
また、描画エンジン123が生成する印刷データには描画データとジョブ情報が付加される。ジョブ情報とは、ジョブの基本的な情報や、印刷UI120を介して提供されるUIで設定された値などである。
また、描画エンジン123が生成する印刷データには描画データとジョブ情報が付加される。ジョブ情報とは、ジョブの基本的な情報や、印刷UI120を介して提供されるUIで設定された値などである。
図8を用いて、ジョブ情報について説明をする。ジョブ情報とは、ユーザ名やジョブ名等の基本的な情報と、印刷UI120で選択した機能の情報等を含む情報のことである。図8に示したジョブ情報の表600は、アプリケーション122が、描画エンジン123とフィルタ124を用いて生成する印刷データに含められるジョブ情報の一例である。各項目と、その項目に対応する値とが関連付けられた状態で印刷データに含められる。
ジョブ情報のうち、JobID601、User Name602、Title603、部数604に関する情報は、最低限必要な情報として印刷データに含められる。一方、それ以外の項目は、適宜追加することが可能な、任意の項目であり、その項目に関する情報がなくても、印刷は可能である。
ジョブ情報のうち、JobID601、User Name602、Title603、部数604に関する情報は、最低限必要な情報として印刷データに含められる。一方、それ以外の項目は、適宜追加することが可能な、任意の項目であり、その項目に関する情報がなくても、印刷は可能である。
ここで、図8に示した表600には、Media605の値として、カスタム用紙サイズの丸める前の値である生データ、Page Size606の値として、カスタム用紙サイズが丸めた後の値が表示されているが、これらの値は任意の項目に関する情報になる。但し、アプリケーション122が描画エンジンを用いて生成する印刷データには、所定の形式で必ず印刷データに含められる情報である。
一方、アプリケーション自身が提供する描画エンジンを用いてを生成する印刷データに上述の情報が含められるかは、アプリケーションの仕様次第となる。そして、アプリケーション自身が提供する描画エンジンがジョブ情報に丸める前の値(生データ)を含める場合であっても、その丸める前の値はアプリケーション独自の形式でジョブ情報に含められるため、フィルタがこの値を取得することは困難となる。
したがって、ジョブ情報に、任意の情報である丸める前の値が含まれる場合であっても、現実に丸める前の値を取得することが可能なのは、OSが標準で描画エンジンを提供する場合に限られるといってよい(図2参照)。
したがって、ジョブ情報に、任意の情報である丸める前の値が含まれる場合であっても、現実に丸める前の値を取得することが可能なのは、OSが標準で描画エンジンを提供する場合に限られるといってよい(図2参照)。
次に、図9にフィルタ124の機能とプリンタの機能とを説明するための機能ブロックの図を示した。本発明を実現するための動きは、主として、ここで説明する機能を用いて行われることになる。
フィルタ124は、ジョブ情報解析部124a、印刷データ制御部124b、カスタム用紙サイズUI入力値挿入部124c、印刷コマンド取得部124d、印刷コマンド挿入部124e、印刷データ送信部124fを備える。
以下、各部の機能について説明する。
フィルタ124は、ジョブ情報解析部124a、印刷データ制御部124b、カスタム用紙サイズUI入力値挿入部124c、印刷コマンド取得部124d、印刷コマンド挿入部124e、印刷データ送信部124fを備える。
以下、各部の機能について説明する。
ジョブ情報解析部124aは、印刷データに含まれるジョブ情報を解析し、UIで選択された機能や入力された値を特定する機能を備える。このとき、カスタム用紙サイズが選択されている場合は、入力された丸める前の値を特定して取得する。
印刷データ制御部124bは、印刷データ自体を解析し、印刷コマンドを挿入する場所を検出する機能を備える。また、ジョブ情報を参照して、ジョブ名等を描画データに追加する機能も備える。
印刷データ制御部124bは、印刷データ自体を解析し、印刷コマンドを挿入する場所を検出する機能を備える。また、ジョブ情報を参照して、ジョブ名等を描画データに追加する機能も備える。
カスタム用紙サイズUI入力値挿入部124cは、ジョブ情報解析部124aが取得した丸める前の値を取得する機能と、印刷データ制御部124bから印刷コマンドを挿入する場所の情報を取得する機能と、プリンタが丸める前の値を定義するために用いる印刷コマンドに丸める前の値を書き込む機能を備える。
ここで、挿入するコマンドについて丸める前の値を定義するための印刷コマンドの一例を挙げて説明する。
まず、丸める前の値を定義するには、プリンタ20内に設けられている86f6369627という辞書の_REAL_PageSizeというkeyに対して、カスタム用紙サイズの丸める前の値の配列を定義するれば実現できる。そこで、これを実行するためのコマンドを、印刷データに挿入する。そのコマンドは、下記の印刷コマンドになる。
userdict/86f6369627 get /_Real_Pagesize[510.23456 992.026458]
上記印刷コマンドは、カスタム用紙サイズの設定値を、丸める前の値に置き換える処理を実行させるための置換の印刷コマンドである。
この印刷コマンドを挿入することで、印刷データ内の他の場所からも、丸める前の値
[510.23456 992.026458]を参照することが可能となる。
まず、丸める前の値を定義するには、プリンタ20内に設けられている86f6369627という辞書の_REAL_PageSizeというkeyに対して、カスタム用紙サイズの丸める前の値の配列を定義するれば実現できる。そこで、これを実行するためのコマンドを、印刷データに挿入する。そのコマンドは、下記の印刷コマンドになる。
userdict/86f6369627 get /_Real_Pagesize[510.23456 992.026458]
上記印刷コマンドは、カスタム用紙サイズの設定値を、丸める前の値に置き換える処理を実行させるための置換の印刷コマンドである。
この印刷コマンドを挿入することで、印刷データ内の他の場所からも、丸める前の値
[510.23456 992.026458]を参照することが可能となる。
次に、印刷コマンド取得部124dは、ジョブ情報解析部124aが解析して特定した、ユーザがUIで選択した機能の情報(ジョブ情報)を取得し、該当する機能に対応する印刷コマンドをPPD121から取得する機能を備える。
印刷コマンド挿入部124eは、印刷コマンド取得部124dが取得した印刷コマンドを取得する機能と、印刷データ制御部124bが取得した印刷コマンドを挿入する場所の情報を取得する機能と、取得した印刷コマンドを印刷コマンドを挿入する場所へ挿入する機能を備える。
印刷データ送信部124fは、全ての印刷コマンドが挿入された印刷データをプリンタ20へ送信する機能を備える。
以上が、フィルタ124の各部が備える機能である。
印刷コマンド挿入部124eは、印刷コマンド取得部124dが取得した印刷コマンドを取得する機能と、印刷データ制御部124bが取得した印刷コマンドを挿入する場所の情報を取得する機能と、取得した印刷コマンドを印刷コマンドを挿入する場所へ挿入する機能を備える。
印刷データ送信部124fは、全ての印刷コマンドが挿入された印刷データをプリンタ20へ送信する機能を備える。
以上が、フィルタ124の各部が備える機能である。
次に、プリンタ20の各部が備える機能について説明する。
まず、プリンタ20は印刷データ受信部20a、印刷データ解析部20b、辞書20c、印刷実行部20dを備える。
印刷データ受信部20aは、フィルタ124の印刷データ送信部124fが送信した印刷データを受信する機能を備える。
印刷データ解析部20bは、印刷データ受信部20aが受信した印刷データを解析し、印刷データに含まれる印刷コマンドに従って、辞書20cにジョブ情報を記憶させたり、辞書20cに記憶されているジョブ情報を削除したりする機能を備える。
まず、プリンタ20は印刷データ受信部20a、印刷データ解析部20b、辞書20c、印刷実行部20dを備える。
印刷データ受信部20aは、フィルタ124の印刷データ送信部124fが送信した印刷データを受信する機能を備える。
印刷データ解析部20bは、印刷データ受信部20aが受信した印刷データを解析し、印刷データに含まれる印刷コマンドに従って、辞書20cにジョブ情報を記憶させたり、辞書20cに記憶されているジョブ情報を削除したりする機能を備える。
辞書20cは、プリンタ20のRAM等に用意された特定の記憶領域である。印刷データに含まれるカスタム用紙サイズの丸める前の値(生データ)を記憶しておく。
印刷実行部20dは、印刷データ受信部20aが受信した印刷データに基づき、印刷を実行する機能を備える。
以上が、プリンタ20が備える各部の機能である。
印刷実行部20dは、印刷データ受信部20aが受信した印刷データに基づき、印刷を実行する機能を備える。
以上が、プリンタ20が備える各部の機能である。
次に、PC10が、プリンタ20に実行させる印刷の内容を規定する印刷データを生成し、該印刷データを用いてプリンタ20が印刷を実行する処理について説明する。
まず、この実施形態の特徴的な処理を含まない比較例について、図10を用いて説明する。
図10は、ユーザからの印刷要求を受け付けて、PC10が印刷データを生成し、完成した印刷データをプリンタ20に送信する処理である。また、図10の処理においてユーザは、カスタム用紙サイズで印刷を実行することを要求している。但し、ここでは、いわゆる丸め処理を行い、丸めた後の値をカスタム用紙サイズの設定値として印刷を実行する。また、丸め処理を行ったことによる用紙サイズ不一致の問題は生じていないものとする。
この処理は、PC10のCPU101が制御して行う。また、ここで用いるPC10は、OS30が標準で描画エンジン123を提供しているPC10である。
なお、MACOSXはOS標準の描画エンジンを用いているので、この例に該当する。また、この処理は、PC10のCPU101がユーザからの印刷要求を受け付けると開始する。
まず、この実施形態の特徴的な処理を含まない比較例について、図10を用いて説明する。
図10は、ユーザからの印刷要求を受け付けて、PC10が印刷データを生成し、完成した印刷データをプリンタ20に送信する処理である。また、図10の処理においてユーザは、カスタム用紙サイズで印刷を実行することを要求している。但し、ここでは、いわゆる丸め処理を行い、丸めた後の値をカスタム用紙サイズの設定値として印刷を実行する。また、丸め処理を行ったことによる用紙サイズ不一致の問題は生じていないものとする。
この処理は、PC10のCPU101が制御して行う。また、ここで用いるPC10は、OS30が標準で描画エンジン123を提供しているPC10である。
なお、MACOSXはOS標準の描画エンジンを用いているので、この例に該当する。また、この処理は、PC10のCPU101がユーザからの印刷要求を受け付けると開始する。
まず、PC10のCPU101は、ユーザが選択した機能等が含まれるジョブ情報を取得すると、(S11)その取得したジョブ情報を基に印刷データを生成する(S12)。次に、ステップS11で取得したジョブ情報の中から、ユーザが定義したカスタム用紙サイズの値を取得し、その値をmm単位からpt単位に変換する(S13)。この変換が丸める前の値を取得する処理となる。変換が完了すると、CPU101は、ステップS13で変換したpt単位のカスタム用紙サイズの値に対して、丸め処理を行う(S14)。次に、ステップS14で丸め処理を行った値をカスタム用紙サイズの設定値として、印刷データに追加する(S15)。
次に、CPU101は印刷データを解析し、印刷コマンドを挿入する場所を検出する(S16)。次に、生成した印刷データを解析し、そのユーザが選択した機能等を特定し、その機能に対応する印刷コマンドをPPD121から取得する(S17)。
CPU101は、ステップS16で検出した印刷コマンドを挿入する場所に、ステップS17で取得した印刷コマンドを挿入する(S18)。印刷コマンドの挿入が完了すると、生成した印刷データを再度解析し、印刷データの中からジョブ情報を参照して、ジョブ名等を描画データに追加し、印刷データを完成させ(S19)、完成した印刷データを印刷実行指示と共にプリンタに送信する(S20)。以上でこの処理は終了する。
CPU101は、ステップS16で検出した印刷コマンドを挿入する場所に、ステップS17で取得した印刷コマンドを挿入する(S18)。印刷コマンドの挿入が完了すると、生成した印刷データを再度解析し、印刷データの中からジョブ情報を参照して、ジョブ名等を描画データに追加し、印刷データを完成させ(S19)、完成した印刷データを印刷実行指示と共にプリンタに送信する(S20)。以上でこの処理は終了する。
次に、図11に、プリンタ20のCPU201が行う処理を示す。この処理は図10のステップS17でPC10のCPU101が送信した印刷データをプリンタ20のCPU201が受信したことをもって開始する。
プリンタ20のCPU201は、印刷データを受信すると、その受信した印刷データを解析し(S21)、印刷データに含まれる印刷コマンドに応じて、辞書に記憶すべきデータは、辞書に記憶する(S22)。その後、印刷コマンドに従って、受信した印刷データを印刷して(S23)、この処理は終了となる。
なお、図10及び図11を用いた処理は、ユーザが定義したカスタム用紙サイズを用いて行う場合に、上述した丸め誤差の問題が発生する可能性がある。
プリンタ20のCPU201は、印刷データを受信すると、その受信した印刷データを解析し(S21)、印刷データに含まれる印刷コマンドに応じて、辞書に記憶すべきデータは、辞書に記憶する(S22)。その後、印刷コマンドに従って、受信した印刷データを印刷して(S23)、この処理は終了となる。
なお、図10及び図11を用いた処理は、ユーザが定義したカスタム用紙サイズを用いて行う場合に、上述した丸め誤差の問題が発生する可能性がある。
次に、上述した図10及び11の比較例を踏まえて、この発明の一実施形態である画像形成システムXが印刷を実行する場合の処理について、図12及び13を用いて説明する。まず、図12を用いて、ユーザがカスタム用紙サイズを選択し且つ、ユーザが定義したカスタム用紙サイズの値として、いわゆる丸める前の値を用いて印刷を実行する場合の処理の流れについて説明する。
図12の処理はPC10のCPU101が制御して行う。また、この処理はPC10のCPU101がユーザからの印刷要求を受け付けると開始する。
PC10のCPU101は、ユーザからの印刷要求を受け付けると、図10のステップS11及びS12の処理を行う(S31)。この処理は共通しているので、説明は省略する。
図12の処理はPC10のCPU101が制御して行う。また、この処理はPC10のCPU101がユーザからの印刷要求を受け付けると開始する。
PC10のCPU101は、ユーザからの印刷要求を受け付けると、図10のステップS11及びS12の処理を行う(S31)。この処理は共通しているので、説明は省略する。
次に、CPU101は、ステップS11で取得したジョブ情報の中から、ユーザが定義したカスタム用紙サイズの値を取得し、その値をmm単位からpt単位に変換し、更に丸め処理を行う(S32)。CPU101は、ここで丸めた後の値をカスタム用紙サイズの設定値として取得し、丸める前の値をカスタム用紙サイズの生データとして取得する。この丸める前の値を取得する処理は、ジョブ情報解析部124aの機能と対応する。また、mm単位からpt単位の値に変換をして、丸める前の値を取得する処理は、ジョブ情報解析部124そして、CPU101は、この処理において、カスタム用紙サイズの設定値の丸める前の値(生データ)を取得する取得手段として機能する。また、この丸める前の値の取得にかかる処理は、取得手順の処理である。
次に、CPU101は、pt単位に変換したカスタム用紙サイズの値の設定値である丸めた後の値とその丸める前の値を印刷データに追加する(S33)。この丸める前の値を追加する処理は、印刷制御部124bの機能と対応するものである。そして、この処理は、上記取得手段が取得した生データを印刷データに追加する手段である。この処理において、CPU101は、第1追加手段として機能する。また、この上記取得手段が取得した生データの、印刷データへの追加に係る処理は、第1追加手順の処理である。
次に、CPU101は、印刷データを解析し、印刷コマンドを挿入する場所を検出する(S34)。印刷コマンドを挿入する場所は、印刷データの「印刷ジョブ全体にかかる設定」である。この処理も、印刷データ制御部124bの機能と対応するものである。
次に、CPU101は、印刷データを解析し、印刷コマンドを挿入する場所を検出する(S34)。印刷コマンドを挿入する場所は、印刷データの「印刷ジョブ全体にかかる設定」である。この処理も、印刷データ制御部124bの機能と対応するものである。
次に、CPU101は、図10のステップS12で生成した印刷データを解析し、ユーザが選択した機能等を特定し、その機能に対応する印刷コマンドをPPD121から取得する(S35)。そして、ステップS35で取得した印刷コマンドの中から、丸める前の値を定義するための印刷コマンドを取得し、その印刷コマンドに丸める前の値を書き込む(S36)。
次に、CPU101は、ステップS34で検出した印刷コマンドを挿入する場所のうち、丸める前の値を定義するための印刷コマンドを挿入する場所に、ステップS36で書き込みを行った印刷コマンドを挿入する(S37)。この処理は、カスタム用紙サイズUI入力値挿入部124cの機能に対応するものである。
次に、CPU101は、ステップS34で検出した印刷コマンドを挿入する場所のうち、丸める前の値を定義するための印刷コマンドを挿入する場所に、ステップS36で書き込みを行った印刷コマンドを挿入する(S37)。この処理は、カスタム用紙サイズUI入力値挿入部124cの機能に対応するものである。
なお、上述の印刷コマンドは、カスタム用紙サイズの設定値(丸めた後の値)を、上述の第1追加手段が追加した生データに置き換える処理を実行させるための置換コマンドである。これを印刷データに挿入する処理は、該置換コマンドを印刷データに追加する手段であり、CPU101は、この処理において、第2追加手段として機能する。また、上述の置換コマンドを印刷データの挿入に係る処理は、第2追加手順の処理である。
次に、CPU101は、ステップS34で検出した印刷コマンドを挿入する場所に、ステップS35で取得した印刷コマンドを挿入し、印刷データを完成させる(S38)。この処理は、印刷コマンド挿入部124eの機能に対応するものである。また、ここで挿入される印刷コマンドは、ステップS37で既に挿入された印刷コマンド以外の印刷コマンドである。次にCPU101は、生成した印刷データを再度解析し、印刷データの中からジョブ情報を参照して、ジョブ名等を描画データに追加し、印刷データを完成させると(S39)、完成した印刷データを印刷実行指示と共に、プリンタに送信し(S40)、この処理は終了となる。
以上が、カスタム用紙サイズが選択された場合に、この発明の一実施形態である画像形成システムXに含まれるPC10のCPU101が行う動きである。ここで、CPU101が行うステップS31〜S37までの処理は、画像形成装置に実行させる印刷の内容を規定する印刷データを生成する印刷データ生成の手段であり、この処理において、CPU101は印刷データ生成手段として機能する。
以上が、カスタム用紙サイズが選択された場合に、この発明の一実施形態である画像形成システムXに含まれるPC10のCPU101が行う動きである。ここで、CPU101が行うステップS31〜S37までの処理は、画像形成装置に実行させる印刷の内容を規定する印刷データを生成する印刷データ生成の手段であり、この処理において、CPU101は印刷データ生成手段として機能する。
次に、上述の画像形成システムXに含まれるプリンタ20が、完成した印刷データを受信してからの、プリンタ20のCPU201が行う処理を、図13を用いて説明する。
図13の処理は、図12のステップS39でCPU101が送信した印刷データを受信すると、開始する。また、この処理は、プリンタのCPU201が制御して行う処理である。
まず、プリンタ20のCPU201は、受信した印刷データ及びその印刷データに含まれる印刷コマンドを解析する(S41)。この処理は、印刷データ解析部20bの機能に対応するものである。
次に、CPU201は、受信した印刷データに含まれる丸める前の値を辞書に記憶させ(S42)、印刷データ中のカスタム用紙サイズの設定値、即ち、丸めた後の値を、辞書に記憶させた丸める前の値に置き換える(S43)。
ステップS42の処理は、CPU201が、上述した置換コマンドを用いて、画像形成装置に実行させる処理のうち、印刷データに含まれる生データを、画像形成装置内に用意された特定の記憶領域である辞書20cに記憶させる処理である。なお、辞書20cはプリンタ20のRAM204bに設けられた記憶領域である。
図13の処理は、図12のステップS39でCPU101が送信した印刷データを受信すると、開始する。また、この処理は、プリンタのCPU201が制御して行う処理である。
まず、プリンタ20のCPU201は、受信した印刷データ及びその印刷データに含まれる印刷コマンドを解析する(S41)。この処理は、印刷データ解析部20bの機能に対応するものである。
次に、CPU201は、受信した印刷データに含まれる丸める前の値を辞書に記憶させ(S42)、印刷データ中のカスタム用紙サイズの設定値、即ち、丸めた後の値を、辞書に記憶させた丸める前の値に置き換える(S43)。
ステップS42の処理は、CPU201が、上述した置換コマンドを用いて、画像形成装置に実行させる処理のうち、印刷データに含まれる生データを、画像形成装置内に用意された特定の記憶領域である辞書20cに記憶させる処理である。なお、辞書20cはプリンタ20のRAM204bに設けられた記憶領域である。
また、ステップS43の処理は、上記置換コマンドにより画像形成装置に実行させる処理のうち、印刷データ中のカスタム用紙サイズの設定値をその特定の記憶領域に記憶させた生データに置き換える処理である。
ステップS43までの処理が終了すると、CPU201は、印刷データ及び印刷データに含まれる印刷コマンドに基づいて、印刷を実行して(S44)、この処理を終了する。
ステップS43までの処理が終了すると、CPU201は、印刷データ及び印刷データに含まれる印刷コマンドに基づいて、印刷を実行して(S44)、この処理を終了する。
なお、ここでは、カスタム用紙サイズがユーザに選択されていることを前提として説明をしてきたが、定型用紙サイズとカスタム用紙サイズのどちらを選択するかはユーザしだいである。したがって、上記置換コマンドは、印刷データ中に丸める前の値が含まれているか否かを判断する処理と、該判断において含まれていると判断した場合に、その印刷データ中のカスタム用紙サイズの設定値を丸める前の値に置き換える処理とを画像形成装置に実行させるためのコマンドでもある。
本発明の一実施形態であるPC10とプリンタ20を用いて、上記図12及び図13の処理を行うことにより、丸める前の値である生データがプリンタ20の辞書20cに定義されることになるため、プリンタ20において、pt単位からmm単位への変換を行った場合に、いわゆる丸め誤差が生じることはなくなり、これにより丸め誤差によって生じる用紙不一致の問題は解消される。
しかし、印刷ジョブ全体にかかる設定において、定形サイズと丸める前の値が設定されている場合、ユーザは定形サイズでの印刷を望んでいるのに、辞書20cには丸める前の値が定義されてしまうため、上記の置換コマンドによって、用紙サイズが丸める前の値に置き換わってしまう。
しかし、印刷ジョブ全体にかかる設定において、定形サイズと丸める前の値が設定されている場合、ユーザは定形サイズでの印刷を望んでいるのに、辞書20cには丸める前の値が定義されてしまうため、上記の置換コマンドによって、用紙サイズが丸める前の値に置き換わってしまう。
そこで、このような事態を回避するための処理として、図14及び15に示すフローチャートの処理が考えられる。以下、この処理について図を用いて説明する。
なお、この処理は、この発明の一実施形態である画像形成システムXの変形例の一つである。
まず、図14に示した処理は、定型用紙サイズをユーザが選択した場合の、PC10のCPU101が制御する動きである。
なお、ここでは、用紙サイズが意に反して丸める前の値に置き換わってしまうことを防ぐために行う処理のみ説明する。実際の動きとしては、図10に説明した処理に、この処理が適宜追加される。
なお、この処理は、この発明の一実施形態である画像形成システムXの変形例の一つである。
まず、図14に示した処理は、定型用紙サイズをユーザが選択した場合の、PC10のCPU101が制御する動きである。
なお、ここでは、用紙サイズが意に反して丸める前の値に置き換わってしまうことを防ぐために行う処理のみ説明する。実際の動きとしては、図10に説明した処理に、この処理が適宜追加される。
PC10のCPU101は、丸める前の値を辞書20cから削除する印刷コマンドをPPD121から取得し(S51)、更に、印刷データ中のどの場所に、その印刷コマンドを挿入するかを検出する(S52)。
CPU101はステップS52で検出した場所に、丸める前の値を削除するための印刷コマンドを挿入する(S53)。
なお、ステップS53の処理は、何らかの用紙サイズを設定した場合にプリンタ20の辞書20cに記憶されている丸める前の値を削除するための削除コマンドを印刷データに追加する処理であり、この処理においてCPU101は、第3追加手段として機能する。
CPU101はステップS52で検出した場所に、丸める前の値を削除するための印刷コマンドを挿入する(S53)。
なお、ステップS53の処理は、何らかの用紙サイズを設定した場合にプリンタ20の辞書20cに記憶されている丸める前の値を削除するための削除コマンドを印刷データに追加する処理であり、この処理においてCPU101は、第3追加手段として機能する。
図15は、図14の処理により、丸める前の値を削除する印刷コマンドが追加されている印刷データをプリンタ20のCPU201が受信すると、開始する処理である。なお、図14で行われた処理に対応して行われる処理についてのみ説明する。実際の動きとしては、図11で説明した処理に、この処理が適宜追加される。
この処理は、プリンタ20のCPU201が制御して行う処理である。
この処理は、プリンタ20のCPU201が制御して行う処理である。
プリンタ20のCPU201は、PC10のCPU101から、完成した印刷データを受信すると、辞書20cに丸める前の値が定義されているか否かを判断する(S61)。
定義されていない場合は(S61のNo)、受信した印刷データを印刷して(S53)、この処理は終了する。
定義されている場合は(S51のYes)、印刷データに挿入されている、丸める前の値を削除するための印刷コマンドにより、辞書20cから丸める前の値を削除して(S52)、この処理は終了となる。
定義されていない場合は(S61のNo)、受信した印刷データを印刷して(S53)、この処理は終了する。
定義されている場合は(S51のYes)、印刷データに挿入されている、丸める前の値を削除するための印刷コマンドにより、辞書20cから丸める前の値を削除して(S52)、この処理は終了となる。
以上の、図14及び図15の処理を行うことにより、定型用紙サイズをユーザが指定しているにもかかわらず、丸める前の値が辞書20cに定義されていたために、ユーザが指定した本来の印刷用紙サイズでの印刷ができなくなるという不具合が解消される。
なお、丸める前の値を削除するための印刷コマンドを図16Aに示した。下線を引いたコマンド520が、従来の印刷コマンドに追加されるコマンド部分である。
この印刷コマンド520により、丸める前の値が辞書20cに定義されている場合は、辞書20cから丸める前の値を削除することが可能となる。なお、丸める前の値が辞書20cに定義されていない場合は、この印刷コマンドを実行しても何も変化は生じない。
なお、丸める前の値を削除するための印刷コマンドを図16Aに示した。下線を引いたコマンド520が、従来の印刷コマンドに追加されるコマンド部分である。
この印刷コマンド520により、丸める前の値が辞書20cに定義されている場合は、辞書20cから丸める前の値を削除することが可能となる。なお、丸める前の値が辞書20cに定義されていない場合は、この印刷コマンドを実行しても何も変化は生じない。
また、図16BにPPD121の定型用紙サイズコマンドに、このコマンド520を追加した印刷コマンドデータ530を示した。
点線枠で囲った部分の印刷コマンドデータ531が、定型用紙サイズコマンドが記載されている部分であり、太字斜体を用いて記載をした下線部分の印刷コマンド532及び533が追加されたコマンドである。
ここでは、A3用紙とA4用紙の2つのみを記載しているが、実際には、全ての紙種に対するコマンドが列挙されており、それら全てに対して、同様のコマンドを追加していく。
点線枠で囲った部分の印刷コマンドデータ531が、定型用紙サイズコマンドが記載されている部分であり、太字斜体を用いて記載をした下線部分の印刷コマンド532及び533が追加されたコマンドである。
ここでは、A3用紙とA4用紙の2つのみを記載しているが、実際には、全ての紙種に対するコマンドが列挙されており、それら全てに対して、同様のコマンドを追加していく。
次に、図17について説明する。図17で説明する処理は、この発明の一実施形態である画像形成システムXの別の変形例である。
ユーザが行った印刷要求において、カスタム用紙サイズが選択されている場合、通常は、用紙サイズ指定の印刷コマンドのうち、印刷ジョブ中の一番初めに現れる、印刷ジョブ全体にかかる用紙サイズの印刷コマンドの時だけ、カスタム用紙サイズの設定値を丸める前の値に置き換える処理を行えばよい。
ユーザが行った印刷要求において、カスタム用紙サイズが選択されている場合、通常は、用紙サイズ指定の印刷コマンドのうち、印刷ジョブ中の一番初めに現れる、印刷ジョブ全体にかかる用紙サイズの印刷コマンドの時だけ、カスタム用紙サイズの設定値を丸める前の値に置き換える処理を行えばよい。
しかし、このときに、印刷データに現れるカスタム用紙サイズの2回目以降の印刷コマンド(ページ毎の印刷コマンド)で、ページ毎に丸める前の値を辞書20cに定義するコマンドが含まれていると、ユーザの意に反して、丸める前の値でカスタム用紙サイズの値が置き換わってしまう。このような事態を避けるために、カスタム用紙サイズの設定に関する2回目以降の印刷コマンドでは丸める前の値の定義を削除することが望ましい。
ここでは、カスタム用紙サイズが選択されている場合に、PC10のCPU101が送信した印刷データをプリンタ20が受信すると開始される処理を示した。
ここでは、カスタム用紙サイズが選択されている場合に、PC10のCPU101が送信した印刷データをプリンタ20が受信すると開始される処理を示した。
この処理は、プリンタ20のCPU201が、後述する図18Aに示した印刷コマンドを用いて、プリンタ20のCPU201が行う処理である。また、この図18Aに示した印刷コマンドは、PC10から送信される印刷データに含まれる。
まず、プリンタ20のCPU201はカスタム用紙サイズの設定値が整数値であるか否かを判断する(S71)。ここで、整数値とは、丸められた後の値であることを意味する。
この処理は、印刷データ中に含まれているカスタム用紙サイズの設定値が特定の分解能で記述されているか否かを判断する処理に基づいて行われる処理である。
まず、プリンタ20のCPU201はカスタム用紙サイズの設定値が整数値であるか否かを判断する(S71)。ここで、整数値とは、丸められた後の値であることを意味する。
この処理は、印刷データ中に含まれているカスタム用紙サイズの設定値が特定の分解能で記述されているか否かを判断する処理に基づいて行われる処理である。
整数値である場合は(S71でYes)、辞書20cに丸める前の値が定義されているかを判断し(S72)、丸める前の値が辞書20cに定義されていれば(S72でYes)、上述の印刷コマンドを用いて、カスタム用紙サイズの設定値を丸める前の値に置き換える(S73)。
一方、ステップS71でNoの場合は、丸める前の値が定義されていることになるので、ステップS74に進む。
また、ステップS72でNoの場合は、そのままステップS74に進む。
一方、ステップS71でNoの場合は、丸める前の値が定義されていることになるので、ステップS74に進む。
また、ステップS72でNoの場合は、そのままステップS74に進む。
辞書20cに丸める前の値が定義されている場合(S74のYes)は、プリンタ20のCPU201は、図18Aに示す印刷コマンドを用いて、辞書20cから丸める前の値を削除し(S75)、印刷データを印刷して(S76)、この処理は終了する。
このような処理を行うことで、最初に用紙サイズを設定したにもかかわらず、2回目以降の印刷データに含まれる丸める前の値を辞書20cに定義する印刷コマンドによって、丸める前の値で用紙サイズが設定されてしまうことを防ぐことができる。
このような処理を行うことで、最初に用紙サイズを設定したにもかかわらず、2回目以降の印刷データに含まれる丸める前の値を辞書20cに定義する印刷コマンドによって、丸める前の値で用紙サイズが設定されてしまうことを防ぐことができる。
一方、定義されていない場合(S74のNo)は、CPU201は、そのまま受信した印刷データを印刷して(S76)、この処理は終了する。
定義されていない場合は、そもそも無駄な処理なので、簡易な処理にすることができる。
なお、印刷コマンドを図18(A)に示した。下線を引いたコマンド540が従来の印刷コマンドに追加される部分である。
この印刷コマンド540により、ページ全体の設定を行う最初の印刷コマンドに、丸める前の値が辞書20cに定義されている場合は、丸める前の値と置き換え、2回目以降の印刷コマンドに丸める前の値が定義されている場合は、その値が辞書20cから削除される。
定義されていない場合は、そもそも無駄な処理なので、簡易な処理にすることができる。
なお、印刷コマンドを図18(A)に示した。下線を引いたコマンド540が従来の印刷コマンドに追加される部分である。
この印刷コマンド540により、ページ全体の設定を行う最初の印刷コマンドに、丸める前の値が辞書20cに定義されている場合は、丸める前の値と置き換え、2回目以降の印刷コマンドに丸める前の値が定義されている場合は、その値が辞書20cから削除される。
また、図18(B)にPPD121の定型用紙サイズコマンドに加えて、このコマンド540を追加した印刷コマンドデータ550を示した。
点線枠で囲った部分の印刷コマンドデータ551が、カスタム用紙サイズコマンドが記載されている部分であり、太字斜体を用いて記載をした下線部分の印刷コマンド552及び553が、追加されたコマンドである。
このコマンドにより、図17の処理が実現することになる。
点線枠で囲った部分の印刷コマンドデータ551が、カスタム用紙サイズコマンドが記載されている部分であり、太字斜体を用いて記載をした下線部分の印刷コマンド552及び553が、追加されたコマンドである。
このコマンドにより、図17の処理が実現することになる。
図19に、この画像形成システムXでPC10がプリンタ20に送信する印刷データのパターンを示した。このリストの仕様は図1に対応する。つまり、印刷データ(A)911及び(B)912は、印刷データ全体で1つの用紙サイズを指定し、ページ毎に用紙サイズを指定することはない。一方、印刷データ(C)913及び(D)914はページ毎に用紙サイズを指定する。また、印刷データ(C)913及び(D)914は、印刷データを生成するアプリケーションの仕様により、印刷ジョブ全体にかかる設定913a、914aに用紙サイズが出力される場合もあるが、この設定は無視され、ページ毎の用紙サイズのみが有効となる。また、印刷データ(A)911及び(C)913は丸め処理を行うが、印刷データ(B)912及び(D)914は丸め処理を行わない。
これらの印刷データ(A)911乃至(D)914を、上述してきた画像形成システムを用いて印刷処理を行う場合の、カスタム用紙サイズの設定値について説明する。
まず、図19の印刷データ(A)911は、ページ全体で1つの用紙サイズをカスタム用紙サイズとして設定するパターンのデータである。また、設定911aに記載されている値には、カスタム用紙サイズの設定値として丸めた後の値が設定されている。また、実際の用紙サイズである丸める前の値も含まれている。この画像形成システムでは、既に説明した、置き換えの印刷コマンドを用いて、カスタム用紙サイズの設定値を、現在設定されている丸めた後の値から、実際のサイズである丸める前の値に置き換える。よって、カスタム用紙サイズの設定値は「843.023621×566.929138pt」となる。このように、丸める前の値をカスタム用紙サイズの設定値として置き換えることで、丸め誤差による用紙不一致の問題は解消される。
なお、辞書20cに記憶していた実際のサイズは、置き換えコマンドを実行後は、削除する。これにより、以降は用紙サイズ設定の印刷コマンドは含まれない。
まず、図19の印刷データ(A)911は、ページ全体で1つの用紙サイズをカスタム用紙サイズとして設定するパターンのデータである。また、設定911aに記載されている値には、カスタム用紙サイズの設定値として丸めた後の値が設定されている。また、実際の用紙サイズである丸める前の値も含まれている。この画像形成システムでは、既に説明した、置き換えの印刷コマンドを用いて、カスタム用紙サイズの設定値を、現在設定されている丸めた後の値から、実際のサイズである丸める前の値に置き換える。よって、カスタム用紙サイズの設定値は「843.023621×566.929138pt」となる。このように、丸める前の値をカスタム用紙サイズの設定値として置き換えることで、丸め誤差による用紙不一致の問題は解消される。
なお、辞書20cに記憶していた実際のサイズは、置き換えコマンドを実行後は、削除する。これにより、以降は用紙サイズ設定の印刷コマンドは含まれない。
図19の印刷データ(B)912も、ページ全体で1つの用紙サイズをカスタム用紙サイズとして設定するパターンのデータである。また、設定912には、カスタム用紙データの設定値として、丸める前の値が設定されている。また、丸める前の値は、設定912、実際の用紙サイズとしても含まれている。このため、実際の用紙サイズの値とカスタム用紙サイズとして設定されている値は同じになる。そこで、この例ではカスタム用紙サイズの設定値の置換えは行わない。なお、辞書20cに記憶しておいた丸められる前の値は削除する。よって、カスタム用紙サイズの設定値は「843.023621×566.929138pt」となる。この(B)912のようなパターンでは、そもそも印刷データに丸める前の値は含まれない。したがって、丸め誤差による用紙サイズの不一致という問題は、そもそもが発生しない。
図19の印刷データ(C)913は、ページ毎に用紙設定を行うデータである。したがって、印刷ジョブ全体にかかる設定913aの用紙サイズの設定(定形A4)は無視される。次に、実際のサイズが設定913aに含まれているので、プリンタ20のCPU201は、辞書20cにこの値を定義する。そこで、図15のフローに従って、この値を辞書20cから削除する。次に、ページ毎913b、913c及び913dにカスタム用紙サイズの印刷コマンドを出す。このとき、辞書20cからは丸める前の値が削除されているので、印刷データ(C)913には、丸める前の値が含まれているが、置換えコマンドが出されても、置き換わることはない。したがって、印刷データ(C)913のカスタム用紙サイズの設定値は「843×567pt」となる。(C)913のようなパターンでは、丸める前の値の定義を辞書から削除してしまうので、丸め誤差による用紙サイズの不一致という問題は解消できない。但し、このパターンは一部のアプリケーションでしか提供されないので、あまり気にする必要はないと思われる。
図19の印刷データ(D)914もページ毎に用紙設定を行うデータである。したがって、印刷データ(C)と同じように処理され、カスタム用紙サイズの設定値は「843.023621×566.929138pt」となる。(D)914のパターンも、そもそも丸め処理を行わないパターンなので、丸め誤差による用紙サイズの不一致という問題は生じ得ない。
以上より、この画像形成システムで、丸め誤差による用紙不一致を回避できるのは、印刷データ(A)911のパターンであるが、図2で説明したように、OSが標準で描画エンジンを提供しているのがこのパターンである。殆どのアプリケーションが生成する印刷データはこのパターンに該当するので、この画像形成システムにより、丸め誤差による用紙不一致の問題を解消できたといえる。
なお、このように、丸める前の値を丸めた後の値と置き換えるのは、印刷コマンドを用いて実現することができるため、プリンタドライバに大きな変更を加えることもなく、費用的にも安価、時間的にも短時間で実行可能である。
以上で、本発明の一実施形態である、ネットワークを介して接続されたPC10及びプリンタ20を備える画像形成システムXに関する説明を終了する。
以上より、この画像形成システムで、丸め誤差による用紙不一致を回避できるのは、印刷データ(A)911のパターンであるが、図2で説明したように、OSが標準で描画エンジンを提供しているのがこのパターンである。殆どのアプリケーションが生成する印刷データはこのパターンに該当するので、この画像形成システムにより、丸め誤差による用紙不一致の問題を解消できたといえる。
なお、このように、丸める前の値を丸めた後の値と置き換えるのは、印刷コマンドを用いて実現することができるため、プリンタドライバに大きな変更を加えることもなく、費用的にも安価、時間的にも短時間で実行可能である。
以上で、本発明の一実施形態である、ネットワークを介して接続されたPC10及びプリンタ20を備える画像形成システムXに関する説明を終了する。
以上で本発明の実施形態の説明を終了するが、この発明において、装置の具体的な構成、ネットワークの具体的な構成、具体的な処理の手順等は、実施形態で説明したものに限るものではない。
例えば、本発明の辞書20cに丸める前の値を定義する印刷コマンドを取得する処理と、UIでユーザが選択した機能に対応する印刷コマンドを取得する処理は、処理の順序が変わってもよいし、同時に行ってもよい。
PC10及びプリンタ20の数も任意であり、図3に示した構成に限られるものではない。また、プリンタ20の代わりに、MFP等の画像形成装置を用いてもよい。
例えば、本発明の辞書20cに丸める前の値を定義する印刷コマンドを取得する処理と、UIでユーザが選択した機能に対応する印刷コマンドを取得する処理は、処理の順序が変わってもよいし、同時に行ってもよい。
PC10及びプリンタ20の数も任意であり、図3に示した構成に限られるものではない。また、プリンタ20の代わりに、MFP等の画像形成装置を用いてもよい。
また、上述の実施形態におけるPC10及びプリンタ20の機能を実現する情報処理装置としてもよい。
また、1又は複数のプロセッサが協働して、上述の実施形態においてPC10及びプリンタ20が実行した処理の各手順を実行する情報処理装置が実行する印刷データ生成方法としてもよい。
更に、また、1又は複数のコンピュータに、上述したPC10とプリンタ20の機能を実現させるためのプログラムとしてもよい。
また、1又は複数のプロセッサが協働して、上述の実施形態においてPC10及びプリンタ20が実行した処理の各手順を実行する情報処理装置が実行する印刷データ生成方法としてもよい。
更に、また、1又は複数のコンピュータに、上述したPC10とプリンタ20の機能を実現させるためのプログラムとしてもよい。
本発明におけるPC10、プリンタ20が行う処理に関するプログラムは、ROM103に記憶しておく他、外部の記憶媒体等に記憶しておいてもよい。また、メモリカード、CD、DVD、ブルーレイディスク等の任意の不揮発性記録媒体に記録して提供することもできる。それらの記録媒体に記録されたプログラムを他の画像形成装置にインストールして実行させることにより、上述した各手順を実行させることができる。
また、ネットワークに接続され、プログラムを記録した記録媒体を備える外部装置あるいはプログラムを記憶手段に記憶した外部装置からダウンロードし、コンピュータにインストールして実行させることも可能である。
更に、上述してきた処理を行うプログラムを搭載した情報処理装置としてもよい。
また、この発明の実施形態であるプログラムを搭載した情報処理装置が行う処理の方法としてもよいし、当該プログラムと、それを実行する手段を備える画像形成装置とを備える画像形成システムとしてもよい。
また、以上説明してきた実施形態及び変形例の構成は、相互に矛盾しない限り任意に組み合わせて実施可能であることは勿論である。
更に、上述してきた処理を行うプログラムを搭載した情報処理装置としてもよい。
また、この発明の実施形態であるプログラムを搭載した情報処理装置が行う処理の方法としてもよいし、当該プログラムと、それを実行する手段を備える画像形成装置とを備える画像形成システムとしてもよい。
また、以上説明してきた実施形態及び変形例の構成は、相互に矛盾しない限り任意に組み合わせて実施可能であることは勿論である。
10:PC、101:CPU、103:ROM、20:プリンタ、201:CPU、204a:ROM、30:OS、40:プリンタドライバ、120:印刷UI、121:PPD、122:アプリケーション、123:描画エンジン、124:フィルタ、124a:ジョブ解析部、124b:印刷データ制御部、124c:カスタム用紙サイズUI入力値挿入部、124d:印刷コマンド取得部、124e:印刷コマンド挿入部、124f:印刷データ送信部20a:印刷データ受信部、20b:印刷データ解析部、20c:辞書、20d:印刷実行部、X:画像形成システム
Claims (10)
- コンピュータを、
画像形成装置に実行させる印刷の内容を規定する印刷データを生成する印刷データ生成手段として機能させるためのプログラムであって、
前記印刷データ生成手段が、
カスタム用紙サイズの設定値の生データを取得する取得手段と、
前記取得手段が取得した生データを前記印刷データに追加する第1追加手段と、
前記画像形成装置に、印刷に使用する印刷データ中のカスタム用紙サイズの設定値を前記第1追加手段が追加した生データに置き換える処理を実行させるための置換コマンドを前記印刷データに追加する第2追加手段とを備えることを特徴とするプログラム。 - 請求項1に記載のプログラムであって、
前記置換コマンドにより前記画像形成装置に実行させる処理は、前記印刷データに含まれる生データを、前記画像形成装置内に用意された特定の記憶領域に記憶させる処理と、前記印刷データ中のカスタム用紙サイズの設定値をその特定の記憶領域に記憶させた生データに置き換える処理とを含み、
前記印刷データ生成手段は、
前記画像形成装置に、何らかの用紙サイズを設定した場合に前記特定の記憶領域に記憶されている前記生データを削除する処理を実行させるための削除コマンドを前記印刷データに追加する第3追加手段を備えることを特徴とするプログラム。 - 請求項1又は2に記載のプログラムであって、
前記置換コマンドは、前記印刷に使用する印刷データ中に前記生データが含まれているか否か判断する処理と、該判断において含まれていると判断した場合に、前記印刷データ中のカスタム用紙サイズの設定値を前記生データに置き換える処理とを前記画像形成装置に実行させるためのコマンドであることを特徴とするプログラム。 - 請求項1乃至3のいずれか一項に記載のプログラムであって、
前記置換コマンドは、前記印刷に使用する印刷データ中に含まれているカスタム用紙サイズの設定値が特定の分解能で記述されているか否か判断する処理と、該判断において特定の分解能と判断した場合に、前記印刷データ中のカスタム用紙サイズの設定値を前記生データに置き換える処理とを前記画像形成装置に実行させるためのコマンドであることを特徴とするプログラム。 - 画像形成装置に実行させる印刷の内容を規定する印刷データを生成する印刷データ生成手段を備え、
前記印刷データ生成手段が、
カスタム用紙サイズの設定値の生データを取得する取得手段と、
前記取得手段が取得した生データを前記印刷データに追加する第1追加手段と、
前記画像形成装置に、印刷に使用する印刷データ中のカスタム用紙サイズの設定値を前記第1追加手段が追加した生データに置き換える処理を実行させるための置換コマンドを前記印刷データに追加する第2追加手段とを備えることを特徴とする情報処理装置。 - 請求項5に記載の情報処理装置であって、
前記置換コマンドにより前記画像形成装置に実行させる処理は、前記印刷データに含まれる生データを、前記画像形成装置内に用意された特定の記憶領域に記憶させる処理と、前記印刷データ中のカスタム用紙サイズの設定値をその特定の記憶領域に記憶させた生データに置き換える処理とを含み、
前記印刷データ生成手段は、
前記画像形成装置に、用紙サイズを設定した場合に前記特定の記憶領域に記憶されている前記生データを削除する処理を実行させるための削除コマンドを前記印刷データに追加する第3追加手段を備えることを特徴とする情報処理装置。 - 請求項5又は6に記載の情報処理装置であって、
前記置換コマンドは、前記印刷に使用する印刷データ中に前記生データが含まれているか否か判断する処理と、該判断において含まれていると判断した場合に、前記印刷データ中のカスタム用紙サイズの設定値を前記生データに置き換える処理とを前記画像形成装置に実行させるためのコマンドであることを特徴とする情報処理装置。 - 請求項5乃至7のいずれか一項に記載の情報処理装置であって、
前記置換コマンドは、前記印刷に使用する印刷データ中に含まれているカスタム用紙サイズの設定値が特定の分解能で記述されているか否か判断する処理と、該判断において特定の分解能と判断した場合に、前記印刷データ中のカスタム用紙サイズの設定値を前記生データに置き換える処理とを前記画像形成装置に実行させるためのコマンドであることを特徴とする情報処理装置。 - 画像形成装置に実行させる印刷の内容を規定する印刷データを生成する印刷データ生成方法であって、
情報処理装置が、
カスタム用紙サイズの設定値の生データを取得する取得手順と、
前記取得手順で取得した生データを前記印刷データに追加する第1追加手順と、
前記画像形成装置に、印刷に使用する印刷データ中のカスタム用紙サイズの設定値を前記第1追加手順で追加した生データに置き換える処理を実行させるための置換コマンドを前記印刷データに追加する第2追加手順とを備えることを特徴とする印刷データ生成方法。 - 請求項1乃至4のいずれか一項に記載のプログラムと、
前記印刷データに含まれる前記置換コマンドを実行する手段を備える画像形成装置と、
を備えることを特徴とする画像形成システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015058777A JP2016177694A (ja) | 2015-03-20 | 2015-03-20 | プログラム、情報処理装置、印刷データ生成方法及び画像形成システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015058777A JP2016177694A (ja) | 2015-03-20 | 2015-03-20 | プログラム、情報処理装置、印刷データ生成方法及び画像形成システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016177694A true JP2016177694A (ja) | 2016-10-06 |
Family
ID=57070098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015058777A Pending JP2016177694A (ja) | 2015-03-20 | 2015-03-20 | プログラム、情報処理装置、印刷データ生成方法及び画像形成システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016177694A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019200571A (ja) * | 2018-05-16 | 2019-11-21 | キヤノン株式会社 | 情報処理装置、制御方法、およびプログラム |
-
2015
- 2015-03-20 JP JP2015058777A patent/JP2016177694A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019200571A (ja) * | 2018-05-16 | 2019-11-21 | キヤノン株式会社 | 情報処理装置、制御方法、およびプログラム |
JP7066513B2 (ja) | 2018-05-16 | 2022-05-13 | キヤノン株式会社 | 情報処理装置、制御方法、およびプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20050030334A1 (en) | Data processing apparatus, print control method, computer-readable storage medium, and program stored therein | |
JP7435697B2 (ja) | サポートプログラム、情報処理装置、および印刷方法 | |
JP2008030287A (ja) | 印刷装置、印刷システム及びプログラム | |
JP2023073347A (ja) | サポートプログラム、情報処理装置、および印刷方法 | |
JP2020126370A (ja) | アプリケーションプログラム、情報処理装置、および印刷方法 | |
US8625117B2 (en) | Apparatus for controlling image formation, computer readable device having stored thereon computer-executable instructions for forming images, and method of generating image formation setting information | |
JP4576446B2 (ja) | 画像処理装置及び画像処理方法 | |
JP6171725B2 (ja) | 中継装置、プログラムおよび中継装置の制御方法 | |
JP6917285B2 (ja) | 画像形成装置 | |
KR20060065755A (ko) | 프린트 문서 편집 방법 및 그 장치 | |
US9280727B2 (en) | Information processing unit, printing control method for printer driver, and computer program product | |
JP6303667B2 (ja) | プログラム、情報処理装置および情報処理システム | |
JP5597943B2 (ja) | システム及び方法 | |
JP2015058592A (ja) | 画像処理装置、表示制御方法およびプログラム | |
JP4965996B2 (ja) | 画像処理装置、画像処理方法、画像処理プログラム並びに記憶媒体 | |
US20110055689A1 (en) | Method of performing at least one operation in image forming apparatus, and image forming apparatus and host device to perform the method | |
JP2016177694A (ja) | プログラム、情報処理装置、印刷データ生成方法及び画像形成システム | |
JP2012252635A (ja) | 印刷制御装置、印刷制御プログラム及び記録媒体 | |
JP2017091303A (ja) | 情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法 | |
US10795622B2 (en) | Information processing apparatus, printing method, and computer-readable medium | |
US9430173B2 (en) | Information processing device, setting method, and computer program product | |
JP7200632B2 (ja) | 印刷システム、プリンタ、およびサポートプログラム | |
US9165225B2 (en) | Program and information processing apparatus | |
JP7255277B2 (ja) | 画像処理装置および画像処理システム | |
JP2014056424A (ja) | 印刷制御装置、印刷制御方法及び印刷制御システム |