JP2019200571A - 情報処理装置、制御方法、およびプログラム - Google Patents

情報処理装置、制御方法、およびプログラム Download PDF

Info

Publication number
JP2019200571A
JP2019200571A JP2018094396A JP2018094396A JP2019200571A JP 2019200571 A JP2019200571 A JP 2019200571A JP 2018094396 A JP2018094396 A JP 2018094396A JP 2018094396 A JP2018094396 A JP 2018094396A JP 2019200571 A JP2019200571 A JP 2019200571A
Authority
JP
Japan
Prior art keywords
paper size
custom
value
difference
printing
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.)
Granted
Application number
JP2018094396A
Other languages
English (en)
Other versions
JP7066513B2 (ja
Inventor
徹 木幡
Toru Kobata
徹 木幡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2018094396A priority Critical patent/JP7066513B2/ja
Publication of JP2019200571A publication Critical patent/JP2019200571A/ja
Application granted granted Critical
Publication of JP7066513B2 publication Critical patent/JP7066513B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimiles In General (AREA)

Abstract

【課題】 定型サイズとは異なるカスタム用紙サイズが定型サイズに変更されることで発生する課題を解決することを目的とする。【解決手段】 設定された第1カスタム用紙サイズが、変更処理の対象となるサイズである場合、設定された第1カスタム用紙サイズが第2カスタムサイズへ変更される。【選択図】 図2

Description

本発明は、情報処理装置、制御方法、およびプログラムに関する。特に、画像形成装置の印刷ジョブにおける出力用紙サイズ情報の補正を行う情報処理装置に関する。
一般に、ホストコンピュータに搭載されるオペレーティングシステム(OS)には、印刷要求を行うホストコンピュータにプリンタが接続された環境での印刷をサポートするための印刷システムが備えられている。このような印刷システムの一つとして、米国アップル社のmacOS(登録商標)上で動作するCUPS(登録商標)(Common UNIX(登録商標) Printing System)印刷システムが知られている。
特許文献1では、CUPS印刷システムを備える情報処理装置において実行される処理について開示されている。
特開2013−246774号公報
ところで、CUPS印刷システムは、定型サイズとは異なるカスタム用紙サイズを定型サイズに変更する機能(以降、変更処理と呼ぶこともある)を備える。この変更処理の機能により生じる課題について、特許文献1では考慮されていなかった。そのため、変更処理に伴い操作者が意図しない印刷が実行されるおそれがあった。
上記のような課題を解決するための本発明は以下のような構成を備える。予め設定されている定型用紙サイズと、前記定型用紙サイズとは異なるサイズであるカスタム用紙サイズの差異に基づいて、前記カスタム用紙サイズを前記定型用紙サイズに変更する変更処理を実行可能な印刷システムを備える情報処理装置であって、前記印刷システムにおいて前記変更処理が実行されない差異を示す第1の値と、前記印刷システムにおいて前記変更処理が実行される差異を示す前記第1の値よりも小さい第2の値を記録する記録手段と、設定画面において入力された指示に基づいて第1カスタム用紙サイズを設定する設定手段と、
前記第1カスタム用紙サイズと前記定型用紙サイズとの差異が前記第2の値よりも小さい場合、前記第1カスタム用紙サイズを第2カスタム用紙サイズに変更する変更手段と、前記変更手段により変更された前記第2カスタム用紙サイズを用いて印刷の実行を指示する指示手段を備え、前記第2カスタム用紙サイズと前記定型用紙サイズとの差異は前記第1の値以上であることを特徴とする情報処理装置。
本発明によれば、用紙サイズの変更処理が実行される環境における印刷処理において、操作者が意図する印刷を実行することが可能となる。
画像形成システムのハードウェア構成を表すブロック図である。 ソフトウェア構成を表すブロック図である。 UI制御部に関するフローチャートである。 プリントデータ生成部に関するフローチャートである。 UI制御部に関するフローチャートである。 プリントデータ生成部に関するフローチャートである。 印刷処理の一例を示す図である。 UI制御部に関するフローチャートである。 プリントデータ生成部に関するフローチャートである。 プリントデータ生成部に関するフローチャートである。 プリントデータ生成部に関するフローチャートである。 プリントデータ生成部に関するフローチャートである。 ドライバUIの一例を示す図である。 エラーメッセージの一例を示す図である。
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
<第一実施形態>
[システム構成]
本実施形態に係る画像形成システムのハードウェア構成について、図1のブロック図を参照して説明する。同図は、ホストコンピュータ11とEthernet(登録商標)やUSB等の通信バス121を介して、プリンタ12とが通信可能な印刷システムの例である。ホストコンピュータ11は情報処理装置の一例である。ホストコンピュータ11には、macOSと同等のOSがインストールされているものとし、印刷システムとしてはmacOSに導入されているCUPS印刷システム202を想定している。つまり、ホストコンピュータ11は、後述する変更処理を実行可能なCUPS印刷システム202を備える。図1では、プリンタは1つのみ図示したが、通信バス121を介して任意の数のプリンタが接続可能である。
ホストコンピュータ11は、例えばパーソナルコンピュータ(PC)であり、インターフェース(I/F)部107と、CPU101、ROM102、RAM103、表示部104、入力部105、外部記憶装置106を有する。そして、プリンタ12へ、プリンタ12を制御するための指示、プリントデータ及び設定コマンド等を送信する。CPU101は、ホストコンピュータ11の各部を制御する中央演算装置であり、後述のプリンタドライバなどの制御プログラムを実行する。ROM102は記憶されたOSによりそのシステム動作を制御する。RAM103は、CPU101による作業領域が展開されるランダムアクセスメモリである。外部記憶装置106はプリンタドライバなどの各種制御プログラムを格納している。入力部105は、ホストコンピュータ11を操作するためのキーボード及びマウス等から構成されている。表示部104は、入力部105から入力した情報を確認するための表示、或いは、プリンタドライバやアプリケーションのユーザインタフェース画面の表示やメッセージの表示などを行う。I/F部107は、プリンタ12とのデータの送受信を行う。
プリンタ12は、例えばインクジェットプリンタであり、I/F部115と、CPU111、ROM112、RAM113、プリントエンジン114を有する。CPU111は以下の各部を制御する中央演算処理装置である。ROM112は読み出し専用メモリであり、プリントエンジン114を制御するプログラムを格納している。RAM113は随時書き込み読み出しメモリであり、プリントエンジン114の動作に必要なプログラム、ホストコンピュータ11から受信した設定値などを一時記憶する。なお、本実施形態においてプリンタ12は、ロール紙に印刷する大判プリンタを想定している。
プリントエンジン114は、ホストコンピュータ11から送られたプリントデータおよび設定コマンドに基づいて記録媒体にプリントする。I/F部115は、ホストコンピュータ11からプリントデータ等を受信する機能、プリンタ12からホストコンピュータ11にプリンタ12の現在のステータスを送信する機能などを有する。ここでいうステータスとは、I/F部を介して接続されているホストコンピュータ11からの要求に応じて、プリンタ12が返却する事の出来るプリンタ12の状態を表すステータスデータである。ステータスデータとは、「印刷中」「待機状態」などのプリンタ12の動作状況や、「用紙切れ」「カバーが開いている」「インク残量無し」などのプリンタ12のエラー状況を知らせるための情報である。
[ソフトウェア構成]
図2は、本発明の実施形態に係るソフトウェア構成を表すブロック図である。ホストコンピュータ11は、CUPS印刷システム202、プリンタドライバ203を備える。プリンタドライバ203は、CUPS印刷システム202と連携することで、アプリケーション201から発行された印刷ジョブに基づいてプリンタ12が解釈可能なデータ形式であるプリントデータを生成する。
アプリケーション201は、CUPS印刷システム202に対して印刷要求を行う。そして印刷要求が行われると、印刷設定情報と描画データを含む印刷ジョブがCUPS印刷システム202に受け渡される。印刷設定情報には、用紙サイズや用紙種類、どのプリントキューにおいて印刷を行うか、などの情報が含まれる。ここでいうアプリケーションは、ホストコンピュータ11の基本ソフトウェアであるOS上で動作するソフトウェアである。アプリケーション201は作成したデータをプリントする機能を有し、例えば、文書作成用のワープロソフトや画像編集ソフト、年賀状作成ソフトなどが挙げられる。
CUPS印刷システム202は、アプリケーション201から送られた描画データのスプール処理や、プリンタドライバ203のロードおよび実行などの様々な印刷制御を行なう。この際、CUPS印刷システム202が生成するスプールファイルの形式は、OS標準のPDF(Portable Document Format)形式とし、以下スプールファイルをPDF印刷データと呼ぶ事にする。また、CUPS印刷システム202はラスタデータ生成部211を持ち、PDF印刷データを印刷設定情報に従ってラスタデータへ変換する機能を持つ。また、CUPS印刷システム202はアプリケーション201から受け渡された印刷設定情報を後続の処理部へ受け渡す。
プリンタドライバ203は、UI制御部222、プリントデータ生成部221、ステータス表示部223、PPDファイル224を備える。プリンタドライバ203は、CUPS印刷システム202からラスタデータと印刷設定情報を受け取り印刷動作に必要な処理を行なう。つまり、プリンタドライバ203は、上述したプリントデータを生成する。なお、これらの各部による制御等は、CPU101がプリンタドライバ203を実行することにより実現される。
UI制御部222は、プリンタ12に対してプリントを実行させるために、プリンタドライバのユーザインタフェース画面(以下、ドライバUI)を表示部104に表示させる。操作者は、ユーザインタフェースを介してプリント実行に関わる指示を入力できる。操作者はUI制御部222により表示部104に表示されるドライバUIを介して、プリント時の各種印刷設定(例えば、記録媒体である用紙の種類及びサイズ、給紙方法、拡大縮小印刷を行うか、等)を指定する。
プリントデータ生成部221は、CUPS印刷システム202で生成されたラスタデータを受け取り、CUPS印刷システム202から受け渡される印刷設定情報に基づいてプリントデータを生成する。
ステータス表示部223は、プリンタ12から受信したステータスデータに基づき、プリンタの状態や必要な操作などの情報を表示部104に表示する。プリンタから受信されるステータスデータの具体例としては、プリンタのインク残量情報、プリンタに発生しているエラーの情報(例えば、紙無しエラーや紙詰まりエラー等)があげられる。
PPDファイル224は、CUPS印刷システム202に適合するフォーマットにて、UI制御部222が読み込みドライバUIの設定項目として表示する設定値のリストが記述されている。さらに、UI制御部222やプリントデータ生成部221による印刷設定値の保存先にもなる。
プリント通信部204は、プリントデータ生成部221が生成したプリントデータをプリンタ12に送信してプリント制御するものである。また、プリンタから送信されるステータスなどのデータ取得も行う。この際使用されるプリント通信部は、印刷設定情報に含まれるプリントキュー情報に依存し、また任意の数のロードが可能である。
ここでCUPS印刷システムについて更に説明する。CUPS印刷システムは、プリンタドライバにより設定されたカスタム用紙サイズを定型サイズに変更する変更処理を実行する機能を備える。なお、本実施形態では、定型サイズとは異なるサイズをカスタム用紙サイズと呼ぶ。例えば、CUPS印刷システムは、プリンタドライバにより設定されたカスタム用紙サイズとプリンタドライバによりサポートされる定型サイズと比較する。そして、その差異が閾値以下である場合、プリンタドライバにより設定されたカスタム用紙サイズを定型サイズへ変更する。そして、CUPS印刷システムはアプリケーションから受信した描画データと変更後の定型サイズに基づいてラスタデータを生成する。つまり、プリンタドライバにおいて設定されたカスタム用紙サイズとは異なる定型サイズのラスタデータが生成されるおそれがあった。なお、CUPS印刷システムは、プリンタドライバかにより設定されたカスタム用紙サイズとプリンタドライバによりサポートされる定型サイズとの比較を毎回行っても良い。また、CUPS印刷システムは、プリンタドライバからカスタム用紙の使用が指定された時に限りこの比較処理を行っても良い。なお、定型サイズとは、例えばA4、A5、レターなど、プリンタドライバ203のインストール時から設定可能に登録されている用紙サイズである。つまり、定型用紙サイズは、プリンタドライバ203をインストールした後、操作者がプリンタドライバを操作する前からプリンタドライバに予め登録されているサイズである。また、操作者がアプリケーション201を使って印刷を指示することで実行される印刷処理について説明する。操作者は、アプリケーション201を操作して図13の画面1301を表示する。ここで、操作者がページ加工ボタンを押下することで領域1302が表示される。この領域1302が、プリンタドライバ203のUI制御部222により提供される印刷設定画面(ドライバUIとも呼ぶ)である。操作者は、このドライバUIを使って印刷設定情報を設定し、印刷の実行を指示する。その結果、UI制御部222は、ドライバUIにおいて設定された印刷設定情報をアプリケーション201に通知し、アプリケーション201は、印刷設定情報に基づいて描画データを生成し、当該描画データと印刷設定情報をCUPS印刷システム202に渡す。CUPS印刷システム202は、描画データと印刷設定情報に基づいてラスタデータを生成し、プリンタドライバ203に印刷設定情報とラスタデータを渡す。プリンタドライバ203のプリントデータ生成部221は、ラスタデータと印刷設定情報に基づいてプリントデータを生成し、プリンタ12へ送信する。
[補正値保存処理]
次に、本実施形態の設定値保存時におけるUI制御部222の処理を説明するフローチャートを図3に示す。UI制御部222はアプリケーション201から起動され、ドライバUIを表示し、操作者はドライバUIにて各種印刷設定を行う。例えば、操作者は、最終的な印刷物のカスタム用紙サイズとして幅および高さをドライバUIに設定しても良い。また、操作者は、所望の幅と、拡大・縮小処理の実行をドライバUIに設定しても良い。なお、所望の幅と拡大・縮小処理の実行がドライバUIに設定された場合、ドライバUIが、設定された幅と、アプリケーションから受信した印刷ジョブに基づいてカスタム用紙サイズとして幅および高さを計算する。なお、拡大・縮小処理の実行は、図13のロール紙の幅に合わせるにオンを設定することで指定される。なお、ロール紙幅に合わせるの選択肢としては、オフ、オン(ふちあり)、オン(ふちなし)がある。また、所望の幅は、図13のロール紙幅を使って設定される。CPU101は、以上の処理によりカスタム用紙サイズを決定する(S301)。
次に、CPU101は、印刷処理開始前の準備処理として、S301において決定されたカスタム用紙サイズを取得する(S302)。次に、CPU101は、取得したカスタム用紙サイズを、後続のプリントデータ生成部221に渡すために印刷設定としてセットする(S303)。最後に、CPU101は、印刷処理開始指示をCUPS印刷システム202に対して行うことで、プリンタ12が解釈可能なデータ形式であるプリントデータを生成する印刷処理を開始する(S304)。
続いて、本実施形態の設定値保存時におけるプリントデータ生成部221の処理を説明するフローチャートを図4に示す。プリントデータ生成部221は、CUPS印刷システム202からラスタデータ及び印刷設定値を受信する。また、プリントデータ生成部221は、UI制御部222からも印刷設定値を受信する。
まず、CPU101は、UI制御部222が渡してくる出力用紙サイズを取得し(S401)、CUPS印刷システム202が渡してくる出力用紙サイズを取得する(S402)。
CPU101は、S401とS402で取得された出力用紙サイズが一致しているか否かを判定する(S403)。S403を実行することで、CUPS印刷システムにおいて出力用紙サイズの変更処理が実行されたか否かが判定可能となる。
S403がYESの場合(つまり出力用紙サイズの変更処理が実行されていない場合)、CPU101は、出力用紙サイズと、プリンタドライバ203がサポートする全ての定型サイズとの差を順に比較する。そして、CPU101、最も小さい値SD1を算出する(S404)。例えば、S401において算出された出力用紙サイズが幅:257mm、高さ:367mmであったとする。CPU101は、S404により、一番近い定型サイズとしてB4(幅:257mm、高さ:364mm)を特定し、その差分を3mmと算出する。この3mmという値は、出力用紙サイズと定型サイズとの差異が3mm以上あればCUPS印刷システムにおいて出力用紙サイズの変更処理が実行されないことを示す。しかし、この値はできる限り小さい値であることが望ましい。そのため、CPU101は、すでにPPDファイル224に記録されている、変更処理が実行されなかったサイズ差PD1の値を取得し(S405)、SD1、PD1の値を比較する(S406)。その結果、SD1の方が小さい場合、CPU101は、PPDファイル224に記録されているPD1の値をSD1の値で更新する(S407)。これにより、変更処理が実行されなかった場合のサイズ差として、よりCUPS印刷システム202の閾値に近い値が記録されることになる。
一方、S403においてNOと判定された場合、CPU101は、UI制御部222からS401において取得した出力用紙サイズと、CUPS印刷システム202からS402で取得した出力用紙サイズとのサイズ差SD2を計算する(S408)。なお、S403においてNOと判定されるということは、CUPS印刷システム202により変更処理が実行されたことに相当する。この差分は、CUPS印刷システムにおいて変更処理が実際に実行された時のサイズ差であるため、できる限り大きい値であることが望ましい。そのため、すでにPPDファイル224に記録されている、変更処理が起きた場合のサイズ差PD2の値を取得し(S409)、SD2、PD2の値を比較する(S410)。その結果、SD2の方が大きければ、PPDファイル224に記録されているPD2の値をSD2の値で更新する(S411)。これにより、変更処理が起きた場合のサイズ差について、よりCUPS印刷システム202の閾値に近い値を記録することができる。以上、図4のS407またはS411により、CPU101は、プリントデータを生成する印刷処理に基づいて、PD1およびPD2の少なくとも1つを更新することが可能となる。
[補正印刷処理]
次に、本実施形態の、PPDファイル224に記録されている設定値を用いた補正印刷時におけるUI制御部222の処理を説明するフローチャートを図5に示す。上述した設定値保存時の処理と同様、UI制御部222はアプリケーション201から起動され、ドライバUIを表示し、操作者はドライバUIにて各種印刷設定を行う。ここでも上述したように、操作者が、ドライバUIに最終仕上がりサイズを設定しても良いし、ドライバUIが最終仕上がりサイズを計算しても良い。CPU101は、以上の処理によりカスタム用紙の用紙サイズを作成する(S501)。
次に、CPU101は、印刷処理開始前の準備処理として、出力用紙サイズ情報を取得する(S502)。そしてCPU101は、S502で取得した出力用紙サイズと、プリンタドライバ203がサポートする全定型サイズの差を順に比較し、最も小さい値SD3を計算する(S503)。
CPU101は、PPDファイル224に記録されている変更処理が起きなかったサイズ差PD1及び変更処理が起きたサイズ差PD2を取得する(S504)。ここで重要なことは、S501で作成したカスタム出力用紙の大きさがCUPS印刷システム202において実行される変更処理により定型用紙サイズに変更されるか否かである。つまりSD3がPD2より小さいか否かが重要である。そのため、CPU101は、SD3とPD2をまず比較する(S505)。仮にSD3の方が小さい場合(S505−Yes)、今の出力用紙サイズではCUPS印刷システムにおいて実行される変更処理により定型サイズに変更されてしまう。そのため、CPU101の処理は、補正処理を行うS507へと進む。具体的には、SD3の値がPD1の値より大きくなるように、CPU101は、カスタム用紙の出力用紙サイズを修正する(S507)。この時、CPU101は、S507においてどれだけサイズを修正したかという情報を印刷設定FSとしてセットする(S508)。
その後、CPU101は、再度S502からS505を実行する。ここで再度S502からS505を実行する理由は、S507において修正した出力用紙サイズが別の定型用紙サイズと近くなってしまうケースに対処するためである。
S505がNOの場合、変更処理が発生しない出力用紙サイズが設定できていることに相当する。よって、CPU101は、その時点のカスタム用紙の出力用紙サイズの大きさで印刷開始指示を行う(S506)。
続いて、本実施形態の補正印刷時におけるプリントデータ生成部221の処理を説明するフローチャートを図6に示す。
CPU101は、図5のS508において設定された用紙サイズ情報FSを取得する(S601)。
CPU101は、CUPS印刷システム202により生成されるラスタデータ及びラスタデータの大きさ情報RSを取得する(S602)。図5の補正処理により、CUPS印刷システム202による変更処理が発生しない状況となっている。そのため、ラスタデータが欠けるたり、余白が大きくなってしまう現象の発生を軽減できる。
CPU101は、取得したラスタデータを読み進め、プリンタ12が解釈可能なプリントデータを順次生成していく(S603)。例えば、CPU101は、ラスタデータをバンド単位にプリントデータに変換していき、S604においてRSからFSを除いた大きさまでラスタデータを読んだかを判定する(S604)。つまり、S604は、図5のS507において変更処理を回避するために修正された大きさを除いた部分に相当するプリントデータを生成したか否かを判定することに相当する。なお、プリントデータの生成対象外となったラスタデータは全て余白であり、画像データが存在しないため、処理対象から除外しても問題はない。また処理対象から除外することで元々印刷しようとしていたカスタム用紙サイズの大きさにて印刷を実現することが可能となる。つまり、以上の処理により、S507において修正されたカスタム用紙サイズに対応するラスタデータに基づいてプリントデータが生成される。なお、実際に作成されるプリントデータのサイズは、S603およびS604が実行されるため、S501で設定されたカスタム用紙サイズに対応している。
S604がYESと判定された場合、CPU101は、プリントデータをプリンタ12に送信し(S605)、プリントデータ生成部221の処理を終了する。
図7に、これまで説明してきた設定値のPPDファイル224への設定値の保存に関して、具体的な値の変化、および保存されている設定値を使用してのカスタムサイズの補正処理に関する一例を示す。
まず、初期値として、PD1には5mm、PD2には0mmが設定されているとする。
1回目の印刷において、S302において取得された出力用紙サイズ(カスタム用紙サイズ)が211×297であったとする。ここでCPU101は、カスタム用紙サイズとして211×297をセットして印刷開始を指示する(S304)。続いて、CPU101は、図3の処理の次に図5を実行する。つまり、CPU101は、カスタム用紙サイズとして211×297を取得し、全定型サイズと比較することで、A4サイズ(210×297)との差異であるSD3=1mmが最小値であると決定する(S501−S503)。そして、CPU101は、図7に示されるようにPD1=5mm、PD2=0mmを取得して、S505を実行し、Noと判定する。そのため、CPU101は、そのままS304で設定されたカスタム用紙サイズにて印刷処理の開始を指示する(S506)。次に、CPU101は、図6を実行する。なお、図7の1回目の印刷において記載されているように、1mmの差異はCUPS印刷システムにより変更処理が実行される。そのため、CPU101は、A4サイズのラスタデータを取得する。ここではRSが未設定であるため、S603においてA4サイズのプリントデータを生成してプリンタに送信することになる。
続いてCPU101は、図4を実行する。CPU101は、カスタム用紙サイズとして211×297を取得し(S401)、出力用紙サイズとしてCUPS印刷システムからA4サイズを取得する(S402)。そして、両者が一致していないため(S403−No)、CPU101は、S408からS411を実行する。つまり、差異であるSD2=1mmはPD2=0mmより大きいため、CPU101は、PPDファイルのPD2を1mmに更新する(S411)。
続いて、2回目の印刷においてCPU101は、図5を実行する。2回目の印刷では、SD3=4mmとなる。そのためCPU101は、S505においてNoと判定するためカスタム用紙サイズとして214×297を使って印刷開始を指示する(S506)。
次に、CPU101は、図6を実行する。なお、図7の2回目の印刷において記載されているように、4mmの差異はCUPS印刷システムによる変更処理の対象外である。ため、CPU101は、カスタム用紙サイズである214×297のプリントデータを生成してプリンタに送信することになる。
続いてCPU101は、図4を実行する。上述したように4mmの差異はCUPS印刷システムによる変更処理の対象外である。そのため、CPU101は、カスタム用紙サイズとして214×297を取得し(S401)、出力用紙サイズとしてCUPS印刷システムから214×297を取得する(S402)。そして、両者が一致しているため(S403−Yes)、CPU101は、S404からS407を実行する。つまり、差異であるSD1=4mmはPD1=5mmより小さいため、CPU101は、PPDファイルのPD1を4mmに更新する(S407)。
同様の処理を3回目および4回目の印刷時にも実行することで、4回目の印刷終了時点においてPD1=3.6mm、PD2=1.8mmがPPDファイルに記録される。
ここで5回目の印刷について説明する。
CPU101は、5回目の印刷において、S302において取得された出力用紙サイズ(カスタム用紙サイズ)が210.1×297であったとする。ここでCPU101は、カスタム用紙サイズとして210.1×297をセットして印刷開始を指示する(S304)。続いて、CPU101は、図3の処理の次に図5を実行する。つまり、CPU101は、カスタム用紙サイズとして210.1×297を取得し、全定型サイズと比較することで、A4サイズ(210×297)との差異であるSD3=0.1mmが最小値であると決定する(S501−S503)。そして、CPU101は、図7に示されるようにPD1=3.6mm、PD2=1.8mmを取得して、S505を実行する。ここでは、SD3=0.1mm、PD2=1.8mmであるため、S505の判定結果がYesとなる。そして、CPU101は、SD3=0.1mmがPD1=3.6mm以上となるようにカスタム用紙サイズを213.6×297に修正する(S507)。そして、CPU101は、FSとして213.6−210.1=3.5を設定し(S508)、カスタム用紙サイズとして213.6×297を設定してS506を実行する。
以上の処理により、アプリケーションは当初の原稿サイズである210.1×297よりも大きい213.6×297で描画データを生成する。なお、差分部分の描画データは余白データである。アプリケーションは、213.6×297の描画データと213.6×297というカスタム用紙サイズをCUPS印刷システムへ渡す。ここでCUPS印刷システムは、213.6×297とA4との差異は3.6であるため変更処理の対象外と判定する。そのため、CUPS印刷システムは、213.6×297のラスタデータを生成しプリンタドライバへ渡す。
次にCPU101は、図6を実行する。CPU101は、FS=3.6を取得し、213.6×297のラスタデータを取得する(S601、S602)。さらにCPU101は、ラスタデータを読み進めて210.1×297に相当するプリントデータを生成したかを判定する(S603、S604)。S604においてYesと判定された場合、CPU101は、210.1×297のプリントデータをプリンタに送信する(S605)。なお、S603およびS604によりプリントデータの生成対象外となるラスタデータは、上述したように余白部分であるため除外されても問題ない。
つまり、図7の例では、5回目の印刷においてユーザが意図したカスタム用紙サイズで印刷することが可能となる。また、PD1の値を可能な限り小さい値にするため、無駄なラスタデータを生成する処理も軽減される。
<第二実施形態>
次に、第二実施形態について説明する。なお、以下の説明では第一実施形態と共通する図及びその説明は省略し、異なる点について説明する。第一実施形態ではUI制御部222及びプリントデータ生成部221は常に図5および図6を行っていたが、本実施形態では、用紙の幅に合わせた拡大・縮小処理の実行がドライバUIにおいて指定された場合に限定して処理を行うこととする。なお、システム構成、ソフトウェア構成、補正値保存処理に関しては第一実施形態と同様であるため図及び説明を省略する。
[補正印刷処理]
図8は本実施形態におけるUI制御部222の処理を説明するフローチャートである。CPU101は、現在の印刷設定として「用紙の幅に合わせた拡大・縮小処理の実行」が設定されているか否かを判断する(S801)。S801がYESである場合、CPU101は、カスタム用紙サイズを計算する(S802)。一方、S801がNOである場合、CPU101はPPDファイル224に保存されている設定値を使用しない。そのため、CPU101は、現在の出力用紙サイズをそのまま使用してプリントデータの生成処理を行い、終了する(S803)。
S802以降の処理は第一実施形態のS502以降と同様の処理となるため、説明を省略する。
以上の処理により、「用紙の幅に合わせた拡大・縮小処理の実行」を指定することでドライバUIがカスタム用紙サイズを計算するケースに限り図5および図6を実行することが可能となる。つまり、常に図5および図6を行う場合と比較して、必要性の高い時に限り図5および図6が実行されるため効率の良い印刷処理を実行することが可能となる。なお、図5および図6を行う条件として他の条件が設定されても良い。例えばフチ無し印刷が設定された場合に図5および図6が実行されても良い。また、用紙タイプにおいて光沢紙など高価な用紙が選択された場合に図5および図6が実行されても良い。
<第三実施形態>
続いて第三実施形態について説明する。なお、以下の説明では前述の実施形態と共通する図及びその説明は省略し、異なる点について説明する。前述の第一実施形態では、図3、図5、図6、図4の順番で印刷処理が行われていたが、本実施形態では、図5の次に図9を実行する。この順序で印刷処理を実行することで、ドライバUIにおいて決定されたカスタム用紙サイズとは異なる定型サイズで印刷が実行される可能性を軽減することが可能とする。
[設定値保存後の印刷処理]
図9は本実施形態のプリントデータ生成部221の処理を説明するフローチャートである。CPU101は、UI制御部からカスタム用紙サイズを取得する(S901)。この処理はS401と同じである。次に、CPU101は、CUPS印刷システムから出力用紙サイズを取得する(S902)。これはS402と同様の処理である。CPU101は、S901で取得したカスタム用紙サイズとS902で取得した出力用紙サイズが一致しているか否かを判定する(S903)。この判定により、変更処理が発動しているかが判断される。これはS403と同様の処理である。
S903がYESの場合は、このまま印刷を行なってもUI制御部において設定されたカスタム用紙サイズに基づくプリントデータが生成されるためS904を実行する。つまり、図9に続いて図6が実行される。一方、変更処理が発動した場合(S903−No)、このまま印刷を行うとカスタム用紙サイズとは異なるサイズにてプリントデータが生成される可能性がある。そのため、ステータス表示部223に図14のようなエラーメッセージを表示し印刷処理を停止する(S905)。これにより、可能な限り変更処理によりカスタム用紙サイズとは異なるサイズにてプリントデータが生成される可能性を軽減できる。
なお、S905が実行された場合、第1実施形態の図6がスキップされて図4が実行される。そのためカスタム用紙サイズとは異なるサイズにてプリントデータが生成される可能性を軽減しながら、次の印刷に備えてPPDファイルを更新することが可能となる。なお、S905においてエラーを表示する際に、再度の印刷指示を操作者に促すメッセージを表示しても良い。この場合、図3、図5、図9、図4の処理を経てPPDファイルが更新された後に、再度図3、図5が実行される。この図5では、更新されたPPDファイルが使用されるためS507およびS508が実行された後に図9が実行される。つまり、CUPS印刷システムによる変更処理が実行されないカスタム用紙サイズがS507において設定されているため、図5に続いて実行される図9ではS903においてYESと判定される。その結果、継続して図6を実行することが可能となり、結果としてカスタム用紙サイズのプリントデータを生成することが可能となる。
<第四実施形態>
次に、第四実施形態について説明する。なお、以下の説明では前述の実施形態と共通する図及びその説明は省略し、異なる点についてのみ説明する。第一実施形態では印刷回数を考慮せずに図5および図6の補正処理を実行していた。本実施形態では、PPDファイルの更新回数が一定以上になった場合に図5および図6の補正処理を開始することとする。
[補正値保存処理]
図10は本実施形態のプリントデータ生成部221の処理を説明するフローチャートである。S411までの処理については第一の実施形態と同様であるため、説明を省略する。S407の実行後、CPU101は、S1001にて、PPDファイル224に記録されているPD1が何回更新されたかの値をカウントアップする。同様に、S411の実行後、CPU101は、S1002にて、PPDファイル224に記録されているPD2が何回更新されたかの値をカウントアップする。なお、カウントアップされた値は、プリントデータ生成部221が、参照可能なエリアに保存されても良いし、PPDファイルに記録されても良い。
[補正印刷処理]
図11は本実施形態のプリントデータ生成部221処理を説明するフローチャートである。図10において説明した補正値保存処理にて追加された補正値PD1およびPD2が何回更新されたかを示す値をS503の後のS1101にて、CPU101は、PD1及びPD2の値とともに取得する。次いで、S1102にて、CPU101は、補正値の更新回数が閾値以上であれば、つまりS1102がYESであれば第一の実施形態で説明したS505の手順へ処理を進める。一方で、S1102がNOの場合は、補正値の更新回数が閾値に達していないため、S507およびS508を実行することなくS506を実行する。なお、ここで説明した「補正値の更新回数」は類似の指標として「印刷回数」に置き換えることも可能である。
<第五実施形態>
次に、第五実施形態について説明する。なお、以下の説明では前述の実施形態と共通する図及びその説明は省略し、異なる点についてのみ説明する。前述の第四実施形態ではプリントデータ生成部221において補正値の更新回数を記録していたが、その補正値を取得した時のOSのバージョンについては記録されていなかった。本実施形態では、補正値の更新回数と共にOSのバージョンをPPDファイル224に記録する。そして、動作OSのバージョンが記録されているOSのバージョンと異なる場合、CPU101は、更新回数をリセットする。
[補正値保存処理]
図12は本実施形態のプリントデータ生成部221における補正値保存処理を説明するフローチャートである。S406においてYESの場合、つまりPD1を更新するための処理において、CPU101は、S1201の処理で現在PPDファイルに記載されているPD1の値はどのOSバージョンで記録されたものかを確認する。PPDファイルに記録されているバージョンが現在動作中のOSのバージョンと異なる場合(S1201−No)、CPU101は、S1202にてPD1の更新回数を初期値にリセットする。以上の処理により、OSのバージョンが異なる場合は、再度ある程度のデータが集まるまで補正値の更新処理を行い、補正印刷を制限することが可能となる。同様に、CPU101は、変更処理発生時のサイズ差PD2の値がどのOSバージョンで記録されたものかも確認する(S1203)。そして、現在動作中のOSのバージョンとPPDファイルに記録されているOSのバージョンが異なる場合(S1204−No)、CPU101は、はS1204にてPD2の更新回数を初期値にリセットする。つまり、PD1およびPD2の少なくとも1つを記録した時に使用していたオペレーティングシステムのバージョンと操作者から印刷の実行が指示された時に動作しているオペレーティングシステムのバージョンが異なる場合、更新回数が初期化されることになる。これにより、OSのアップデートなどがあった場合に、現在使用されているOSに適した値を管理することが可能となる。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
11 ホストコンピュータ
12 プリンタ
101 CPU
102 ROM

Claims (14)

  1. 予め設定されている定型用紙サイズと、前記定型用紙サイズとは異なるサイズであるカスタム用紙サイズの差異に基づいて、前記カスタム用紙サイズを前記定型用紙サイズに変更する変更処理を実行可能な印刷システムを備える情報処理装置であって、
    前記印刷システムにおいて前記変更処理が実行されない差異を示す第1の値と、前記印刷システムにおいて前記変更処理が実行される差異を示す前記第1の値よりも小さい第2の値の少なくとも1つを、プリントデータを生成する印刷処理に基づいて記録する記録手段と、
    設定画面において入力された指示に基づいて第1カスタム用紙サイズを設定する設定手段と、
    前記第1カスタム用紙サイズと前記定型用紙サイズとの差異が前記第2の値よりも小さい場合、前記第1カスタム用紙サイズを第2カスタム用紙サイズに変更する変更手段と、
    前記変更手段により変更された前記第2カスタム用紙サイズを用いて印刷の実行を指示する指示手段を備え、
    前記第2カスタム用紙サイズと前記定型用紙サイズとの差異は前記第1の値以上であることを特徴とする情報処理装置。
  2. 前記印刷システムにおいて実行される前記変更処理により前記第1カスタム用紙サイズが前記定型用紙サイズに変更された場合、前記第1カスタム用紙サイズと前記定型用紙サイズとの差異を決定する第1決定手段を更に有し、
    前記決定された差異を前記第2の値として更新する更新処理が実行されることを特徴とする請求項1に記載の情報処理装置。
  3. 前記決定された差異が前記記録されている第2の値よりも大きい場合、前記決定された差異が前記第2の値として記録されることを特徴とする請求項2に記載の情報処理装置。
  4. 前記印刷システムにおいて実行される前記変更処理により前記第1カスタム用紙サイズが前記定型用紙サイズに変更されなかった場合、前記第1カスタム用紙サイズと前記定型用紙サイズとの差異を決定する第2決定手段を更に有し、
    前記決定された差異を前記第1の値として更新する更新処理が実行されることを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記決定された差異が前記記録されている第1の値よりも小さい場合、前記決定された差異が前記第1の値として記録されることを特徴とする請求項4に記載の情報処理装置。
  6. 前記印刷の実行が指示された場合、前記第2カスタム用紙サイズに対応するラスタデータに基づいてプリントデータを生成する生成手段を更に備えることを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. 前記第2カスタム用紙サイズに対応するラスタデータの内、前記第1カスタム用紙サイズに対応するラスタデータに基づいて前記プリントデータが生成されることを特徴とする請求項6に記載の情報処理装置。
  8. 前記印刷システムにおいて実行される前記変更処理により前記第1カスタム用紙サイズが前記定型用紙サイズに変更された場合、前記第1カスタム用紙サイズを用いた印刷処理が停止されることを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 前記印刷システムにおいて実行される前記変更処理により前記第1カスタム用紙サイズが前記定型用紙サイズに変更された場合、印刷処理の停止を示すメッセージが表示されることを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。
  10. 前記更新処理が実行された回数が閾値以上である場合、前記第2カスタム用紙サイズを用いて印刷の実行を指示し、
    前記更新処理が実行された回数が閾値以上でない場合、前記第1カスタム用紙サイズを用いて印刷の実行を指示することを特徴とする請求項2または4に記載の情報処理装置。
  11. 前記第1および第2の値の少なくとも1つを記録した時に使用していたオペレーティングシステムのバージョンと操作者から印刷の実行が指示された時に動作しているオペレーティングシステムのバージョンが異なる場合、前記記録される回数が初期化されることを特徴とする請求項10に記載の情報処理装置。
  12. 前記変更処理において、前記カスタム用紙サイズは、前記カスタム用紙サイズとの差異が最も小さいサイズである定型用紙サイズに変更されることを特徴とする請求項1乃至11のいずれか1項に記載の情報処理装置。
  13. 予め設定されている定型用紙サイズと、前記定型用紙サイズとは異なるサイズであるカスタム用紙サイズの差異に基づいて、前記カスタム用紙サイズを前記定型用紙サイズに変更する変更処理を実行可能な印刷システムを備える情報処理装置において実行される制御方法であって、
    前記印刷システムにおいて前記変更処理が実行されない差異を示す第1の値と、前記印刷システムにおいて前記変更処理が実行される差異を示す前記第1の値よりも小さい第2の値を記録し、
    設定画面において入力された指示に基づいて第1カスタム用紙サイズを設定し、
    前記第1カスタム用紙サイズと前記定型用紙サイズとの差異が前記第2の値よりも小さい場合、前記第1カスタム用紙サイズを第2カスタム用紙サイズに変更し、
    前記第2カスタム用紙サイズを用いて印刷の実行を指示し、
    前記第2カスタム用紙サイズと前記定型用紙サイズとの差異は前記第1の値以上であることを特徴とする制御方法。
  14. 請求項1乃至12のいずれか1項に記載の情報処理装置としてコンピュータを機能させるためのプログラム。
JP2018094396A 2018-05-16 2018-05-16 情報処理装置、制御方法、およびプログラム Active JP7066513B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018094396A JP7066513B2 (ja) 2018-05-16 2018-05-16 情報処理装置、制御方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018094396A JP7066513B2 (ja) 2018-05-16 2018-05-16 情報処理装置、制御方法、およびプログラム

Publications (2)

Publication Number Publication Date
JP2019200571A true JP2019200571A (ja) 2019-11-21
JP7066513B2 JP7066513B2 (ja) 2022-05-13

Family

ID=68612159

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018094396A Active JP7066513B2 (ja) 2018-05-16 2018-05-16 情報処理装置、制御方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP7066513B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7467217B2 (ja) 2020-04-27 2024-04-15 キヤノン株式会社 プログラム及び情報処理装置の制御方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009163680A (ja) * 2008-01-10 2009-07-23 Canon Inc 情報処理装置、印刷設定方法、記憶媒体、プログラム
JP2016177694A (ja) * 2015-03-20 2016-10-06 株式会社リコー プログラム、情報処理装置、印刷データ生成方法及び画像形成システム
JP2017068652A (ja) * 2015-09-30 2017-04-06 キヤノン株式会社 印刷制御装置及びその制御方法
JP2017068727A (ja) * 2015-10-01 2017-04-06 コニカミノルタ株式会社 印刷クライアント装置、コンピュータプログラム、およびアプリケーションとプリンタドライバとの連携方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009163680A (ja) * 2008-01-10 2009-07-23 Canon Inc 情報処理装置、印刷設定方法、記憶媒体、プログラム
JP2016177694A (ja) * 2015-03-20 2016-10-06 株式会社リコー プログラム、情報処理装置、印刷データ生成方法及び画像形成システム
JP2017068652A (ja) * 2015-09-30 2017-04-06 キヤノン株式会社 印刷制御装置及びその制御方法
JP2017068727A (ja) * 2015-10-01 2017-04-06 コニカミノルタ株式会社 印刷クライアント装置、コンピュータプログラム、およびアプリケーションとプリンタドライバとの連携方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7467217B2 (ja) 2020-04-27 2024-04-15 キヤノン株式会社 プログラム及び情報処理装置の制御方法

Also Published As

Publication number Publication date
JP7066513B2 (ja) 2022-05-13

Similar Documents

Publication Publication Date Title
US7409169B2 (en) Image forming apparatus and image forming system
CN111251732B (zh) 控制方法和存储介质
JP2016026917A (ja) 印刷制御システム、印刷制御装置、印刷制御方法、及びプログラム
US11283954B2 (en) Print instructing device, printing system, and non-transitory computer readable medium
JP2007233591A (ja) プリンタドライバおよびそのテスト印刷方法、印刷装置
US9019553B2 (en) Printing control apparatus, printing control method, and storage medium
JP7066513B2 (ja) 情報処理装置、制御方法、およびプログラム
US11068211B2 (en) Print control apparatus capable of easily setting settings of adjustment items, method of controlling same, and storage medium
US10897546B2 (en) Print system system for displaying a preview for a job containing a plurality of different roll media
JP2010244230A (ja) 情報処理装置、印刷装置、ジョブ処理方法、及びプログラム
JP5404200B2 (ja) 印刷制御装置及びその制御方法並びにプログラム
CN114771115B (zh) 控制方法和打印控制设备
JP2015130072A (ja) 情報処理装置及び印刷制御方法、プログラム
US20150212764A1 (en) Print instruction assistance device, printing system, method, and non-transitory computer readable medium
JP4669815B2 (ja) 不定形用紙サイズを印刷する画像形成装置
US11243721B2 (en) Non-transitory storage medium storing plurality of instructions readable by computer of information processing apparatus and information processing apparatus
JP2011100196A (ja) 印刷制御方法
JP7152879B2 (ja) 情報処理装置及びその制御方法およびプログラム
JP7251228B2 (ja) 画像形成装置及びプログラム
US20200314252A1 (en) Image position setting apparatus capable of easily setting image position adjustment value, method of controlling same, and storage medium
JP6365038B2 (ja) 画像形成装置及び画像形成システム並びに画像形成制御方法
JP2016165851A (ja) メモリ制御装置、画像形成装置、メモリ制御装置のリソース管理方法
JP2024058153A (ja) 情報処理装置、制御方法およびプログラム
JP2020047095A (ja) 印刷制御装置及びプログラム
JP2020047094A (ja) 印刷指示装置及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210510

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220323

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220329

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220427

R151 Written notification of patent or utility model registration

Ref document number: 7066513

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151