JP4838662B2 - 情報処理装置、情報処理方法、記憶媒体、プログラム - Google Patents

情報処理装置、情報処理方法、記憶媒体、プログラム Download PDF

Info

Publication number
JP4838662B2
JP4838662B2 JP2006216556A JP2006216556A JP4838662B2 JP 4838662 B2 JP4838662 B2 JP 4838662B2 JP 2006216556 A JP2006216556 A JP 2006216556A JP 2006216556 A JP2006216556 A JP 2006216556A JP 4838662 B2 JP4838662 B2 JP 4838662B2
Authority
JP
Japan
Prior art keywords
paper
print
information processing
display
image
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.)
Expired - Fee Related
Application number
JP2006216556A
Other languages
English (en)
Other versions
JP2008040933A (ja
Inventor
雄輝 井上
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 JP2006216556A priority Critical patent/JP4838662B2/ja
Priority to US11/829,714 priority patent/US8711392B2/en
Publication of JP2008040933A publication Critical patent/JP2008040933A/ja
Application granted granted Critical
Publication of JP4838662B2 publication Critical patent/JP4838662B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/125Page layout or assigning input pages onto output media, e.g. imposition
    • G06F3/1252Page layout or assigning input pages onto output media, e.g. imposition for sheet based media
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/1219Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to consumables, e.g. ink, toner, paper
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)

Description

本発明は、印刷装置に印刷データを転送する情報処理装置のデータ処理に関するものである。
従来、情報処理装置のオペレーティングシステム(OS)が管理するプリンタドライバは、OSからの描画情報を印刷装置か印刷可能な印刷データを生成する。そして、プリンタドライバが生成した印刷データを印刷装置に送信する。この印刷データには、情報処理装置のユーザがプリンタドライバが提供するドライバUIを介して用紙のサイズ、印刷方向、上下左右の余白等の印刷設定を行う。そして、プリンタドライバは、印刷装置に転送する印刷データにドライバUIを介して設定された印刷する用紙のサイズ、印刷方向、上下左右の余白等の印刷指示情報を付加する。
そして、印刷装置は、プリンタドライバにより指示されたサイズの用紙を選択して印刷を行うのが通常であった。
しかしながら、印刷データ中の文書、画像等の印刷領域が印刷指示情報で指示された用紙サイズより極端に小さい場合、印刷されない余白部分を無駄にしてしまっていた。例えば1頁の文書量がB5サイズの用紙に収まる極端に少ない場合に、ユーザがA3サイズの用紙を選択して当該ページを出力すると、用紙上にB5サイズ以上が空白の出力を行うこととなる。
この問題の解決策として、従来の方法ではドライバUIで設定されている用紙サイズに応じて印刷領域を拡大・縮小することによって、無駄なく印刷する方法が一般的であった。
例えば下記特許文献1には、ページの区切りがない印刷データに対して最適な用紙を自動的に選定して印刷を行うようにした印刷装置が開示されている。
この中で、算出された最終用紙の印字文字数が最適印字文字数に最も近いもの、換言すれば印刷のされない空白部分が最も少ないサイズの用紙を印刷すべき用紙として選択することが開示されている。
また、下記特許文献2には、イメージデータや帳票データ等のプリント資源ファイルを用紙上に印刷する場合に、最適な用紙サイズを自動的に決定することができる印刷装置が開示されている。
この中で、少なくとも高さ及び幅の情報を含むサイズ情報を格納している、用紙フィーダにセットされた複数の用紙のサイズをそれぞれ検知する。また、イメージデータあるいは帳票データから成る資源ファイルデータを入力して記憶している。そして、資源ファイルデータをサイズ情報を基に印刷イメージデータに展開する場合に、検知されたセット済みの用紙の中から、印刷イメージデータのサイズより大きい用紙の内の最小のものを選択することが開示されている。
特開2004−268379号公報 特開平6−115208号公報
しかしながら、特許文献1によれば、文字データを扱う場合における用紙選択について記載されているが、画像データ等を扱えず、文字データと画像データとが混在するようなページについて適用できない。さらに、印刷装置にセットされている用紙のみでしか用紙選択を行うことができない。
また、特許文献2によれば、データ構造上、イメージデータ、帳票データとも高さと幅の情報をもつデータしか取り扱えず、用紙フィーダのみでしか用紙の選択が行えない。
また、上記用紙選択制御では、余白を限りなく少なくするため、印刷データを用紙サイズに合わせて拡大・縮小してしまうため、結果としてユーザの意図とは違う大きさの画像やテキストが印刷されてしまうという問題点があった。
また、ユーザが印刷処理を行う用紙の種別を印刷するファイルの目的に合わせて選択可能な場合がある。そして、印刷装置側において、現在では普通紙だけではなく、例えばフォト紙やCD-R等の特別なメディアも増えてきている。そして、印刷領域だけで選定すると、これらの特別なメディアでも印刷可能となり、ユーザの意図とは違うメディアで印刷されてしまうという問題も発生する。
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、プレビューを行う場合と行わない場合とで取得方法を切り替えるので処理速度を最適にすることができる仕組みを提供することである。
上記目的を達成する本発明の情報処理装置は以下に示す構成を備える。
画像の印刷領域を取得する取得手段と、印刷設定で設定されている用紙サイズよりも小さく、前記取得手段により取得された印刷領域の画像を印刷できる用紙候補を表示する表示手段と、前記表示手段に表示された用紙候補の中から選択された用紙で印刷されるように印刷設定を変更する変更手段とを有し、前記取得手段は、プレビュー表示する場合、画像のラスターイメージデータから印刷領域を取得し、プレビュー表示しない場合、スプールデータからのクリップ領域の座標を調べることで印刷領域を取得することを特徴とする。
本発明によれば、プレビューを行う場合と行わない場合とで取得方法を切り替えるので処理速度を最適にすることができる。
次に本発明を実施するための最良の形態について図面を参照して説明する。
<システム構成の説明>
〔第1実施形態〕
<コンピュータのハードウェア構成例>
図1は、本発明の第1実施形態を示す情報処理装置の構成を説明するブロック図である。なお、情報処理装置は、ネットワークインタフェースや、双方向インタフェースを介して、印刷装置と通信可能に構成されている。
また、印刷装置には、用紙サイズや用紙種別を検知するセンサを備えて、情報処理装置からの印刷資源情報の取得要求に応じて、検出された用紙の種別、サイズ等を情報処理装置に通知する機能を備えている。ここで、用紙の種別とは、フォトプリント、普通紙等のように、印刷目的に合わせて、ユーザがプリンタドライバがサポートする用紙として給紙可能な用紙の種別を意味する。なお、印刷装置のインク数によっては、サポートする用紙の種別は、2種類以上の場合もある。
図1において、100は装置全体の制御を行うCPUであり、システムバス108を介して各デバイスを制御する。CPU1は、ハードディスク(HD)105に格納されているアプリケーションプログラム、プリンタドライバプログラム、OSや、本実施の形態のネットワークプリンタ制御プログラム等を実行する。また、CPU100は、RAM102にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。
101は記憶手段としてのROMであり、内部には、基本I/Oプログラム等のプログラム、文書処理の際に使用するフォントデータ、テンプレート用データ等の各種データを記憶する。102は一時記憶手段としてのRAMであり、CPU100の主メモリ、ワークエリア等として機能する。なお、RAM102は、プリンタドライバが生成する印刷データから印刷領域を算出する場合に、その変数を記憶する領域も確保される。
103は記憶媒体読み込み手段としてのフレキシブルドライブであり、記憶媒体としてのフレキシブルディスク104に記憶されたプログラム等を本コンピュータにロードすることができる。104は記憶媒体であるフレキシブルディスク(FD)であり、コンピュータが読み取り可能にプログラムが格納された記憶媒体である。
なお、記憶媒体はフレキシブルディスクに限らず、CD−ROM、CDR、CDRW、PCカード、DVD、ICメモリカード、MO、メモリスティック等、任意である。
105は外部記憶手段の一つであり、大容量メモリとして機能するハードディスク(HD)であり、アプリケーションプログラム、プリンタドライバプログラム、OS、ネットワークプリンタ制御プログラム、関連プログラム等を格納している。
106は指示入力手段であるキーボードであり、ユーザがクライアントコンピュータに対して、また、オペレータや管理者がプリントサーバに対して、デバイスの制御コマンドの命令等を入力指示するものである。
107は表示手段であるディスプレイであり、キーボード106から入力したコマンドや、印刷装置の状態等を表示したりするものである。
108はシステムバスであり、コンピュータ内のデータの流れを司るものである。109は入出力手段であるインタフェースであり、該インタフェース109を介してコンピュータは外部装置とのデータのやり取りを行う。
<印刷システムの構成例>
図2は、図1に示した情報処理装置を適用する印刷システムの概略構成を示す図である。なお、情報処理装置は、例えば一般的に普及しているパーソナルコンピュータで構成される。そして、Microsoft社のWindows(登録商標)をオペレーティングシステム(以下、OSと呼ぶ)として使用する。さらに、印刷処理機能を有する任意のアプリケーション201をインストールし、更に、このコンピュータに印刷装置208を接続した形態が考えられる。なお、OSは、上記OSに限定されることはない。
アプリケーション201は、GDI202を介して、印刷装置208に対する印刷設定情報を設定することができる。ここで、印刷設定情報とは、印刷装置208においてアプリケーション201が生成したページを印刷する用紙の種類、用紙サイズ、給紙先の給紙口等の印刷するために必要な情報である。
ここで、ユーザインタフェースドライバ203は各印刷設定情報において設定可能な選択肢の一覧をGDI202を介してアプリケーション201に通知する他、各種印刷設定を設定可能なインタフェースを持つ。
アプリケーション201が印刷要求した描画データは、OSの描画モジュールであるグラフィックデバイス・インタフェース(Graphics Device Interface:以下、「GDI」)202経由でプリンタグラフィックドライバ(PGD)206に渡される。アプリケーション201が印刷要求した描画データとは、文書データ、画像データ等の印刷データである。
これによりPGD206により印刷ジョブが生成され、この生成された印刷ジョブは印刷装置208へ印刷要求として出力される。
GDI202は、通常、一旦、そのデータをEMF(Enhanced Meta File)データとしてスプールファイル204にスプール(OSのスプール処理)する。そして、そのスプール処理が終了すると、プリントプロセッサ205に印刷要求を発行する。
これによりプリントプロセッサ205は、スプールファイル204から印刷出力情報と描画データをページ単位で読み込み、1ページずつGDI202を介してプリンタグラフィックドライバ(PGD)206に出力して印刷するように要求する。
尚、このプリントプロセッサ205は、OSのモジュールとして用意されている。しかし、印刷装置208のメーカ等がカスタマイズしたプリントプロセッサ205をプリンタグラフィックドライバ206とともに供給し、それらをハードディスクにインストールすることも許容されている。
こうしてプリントプロセッサ205から印刷が要求されたPGD206は、以下のようなレンダリング処理を行う。つまり、GDI202が持つ描画機能であるGDIレンダリングエンジンを用いて、その描画データを印刷装置208の印刷解像度に合わせてラスタイメージデータにレンダリングする。
このラスタイメージデータは色を多段階の値として保持する多値データであり、これを元に色処理を行い、印刷装置208の保持するインク毎の色成分に分解したハーフトーンデータが生成される。
これらのラスタイメージデータ、及びハーフトーンデータを、ページ全体分一度に処理をしようとすると、一般的に非常に大きなメモリが必要になる。
よって、PGD206は、GDI202に対して、バンド単位での処理を要求することができる。その場合、そのバンドのサイズを指定することが可能である。あるバンドに対して処理が終わった後に、PGD206がバンドサイズの変更をGDI202に対して要求することも可能である。
また、PGD206は、バンド処理を行うバンドモードではなく、ページ単位で処理を行うアンバンディングモードをGDI202に対して要求し、全ての描画データを独自で保存する。その後バンド単位で出力を行うような形態も許容されている。
その後、印刷設定情報をプリンタコマンドに変換し、該変換したプリンタコマンドを印刷すべき印刷データに付加などを行った後、印刷装置208に送信する。
実際には、PGD206から出力されたデータは、ランゲージモニタ207に送信依頼という形で出力される。ランゲージモニタ207は印刷ジョブを特定サイズのパケットに区切り、印刷装置208へ逐一出力する。
なお、印刷装置208が多値データを受け取ることができるような多値印刷装置である場合、ラスタイメージデータを直接印刷装置208に送信したり、何らかの圧縮を施した上で印刷装置208に送信することなども許容される。
<処理の詳細>
図3は、本実施形態を示す情報処理装置における第1のデータ処理手順の一例を示すフローチャートである。本処理は、印刷システムに関する全体の処理の流れを示す処理手順に対応する。なお、S301〜S310は各ステップを示す。また、各ステップは、CPU100がROM101、HD105から読み出すネットワークプリンタ制御プログラムをRAM102にロードして実行することで実現される。
まず、印刷装置208にセットされている用紙の種類、用紙サイズを取得する。現在の印刷装置208では、オートシートフィーダやカセット等、複数の給紙口を持つ印刷装置が一般的であり、給紙口にどのような用紙がセットされているかが判断できるセンサが備えた印刷装置もある。
印刷装置208と情報処理装置とは、ネットワークインタフェース等を介して通信可能である。そして、例えばSNMP等のプロトコルで通信し、印刷装置208が管理するMIB(Management Information Base)から情報処理装置から取得要求に基づくステータスや資源情報を取得可能に構成されている。この資源情報には、印刷装置208が備える給紙手段、例えば給紙カセットに収容されている用紙サイズや、媒体種別等がふくまれている。なお、この時点で取得される用紙サイズは、RAM102上に保持される。
それらの方法でまず、CPU100は、印刷装置208にセットされている用紙の種類、用紙サイズ情報を印刷装置208との通信により取得する(S301)。
次に、CPU100は、S301で印刷装置208から取得した情報から、その用紙が変更を必要とする用紙の種類かを判断する(S302)。
本実施形態では、文書や画像を一般メディア(普通紙等)に印刷する際に用いると大きな効果がある発明である。これに対して、特別なメディア(フォトペーパーやCD-R等)の場合はユーザが特別な目的を持って印刷する場合が多いので効果が小さい。
例えば、ユーザが写真を印刷したいので、フォトペーパーを給紙口にセットする場合等が挙げられる。よって、特別なメディアだと判断した場合は、S310へ進み、本処理を行わずにそのまま印刷する。これにより、ユーザが特定の種別の用紙を給紙する場合には、選択された用紙による印刷処理を優先させ、本処理にような用紙変更処理を実行せず、写真画質の印刷結果等をユーザの意志通りに出力できるように構成されている。
一方、S302で、変更可能なメディアだと判断した場合は、S303の処理に進む。
CPU100がS303では、印刷される領域サイズを取得する。本実施形態では、領域サイズを取得する方法として2つある。以下、図4を参照して、印刷される領域サイズの取得処理について2つの例を説明する。
図4は、本実施形態を示す情報処理装置における第2のデータ処理手順の一例を示すフローチャートである。本例は、図3に示したS303の具体的な領域サイズの取得処理手順に対応する。なお、S400〜S415は各ステップを示す。また、各ステップは、CPU100がROM101、HD105から読み出すネットワークプリンタ制御プログラムをRAM102にロードして実行することで実現される。
まず、1つ目の方法はEMFスプールデータからのクリップ領域の座標で各ページの領域サイズを取得する方法であり、2つ目の方法はラスタデータに含まれるRGB値で各ページの領域サイズを取得する方法である。
1つ目の方法は、処理が速いことが特徴であるが、プレビューを表示しようとすればEMFスプールデータからラスタデータに変換する処理に手間がかかる。2つ目の方法は、処理速度が遅いが、1つの方法より正確に領域サイズを取得することができ、ラスタデータから領域サイズを取得するのでプレビューを表示するのに手間がかからない。
よって、ユーザが選択画面を介してプレビューを表示するかどうかを指示することを判断することで、この2つの処理を使い分ける。もし、プレビューを表示しない方を選択していると判断した場合は、クリップ領域の座標で各ページの領域サイズを取得する方法で各ページの領域サイズを取得する。一方、ユーザがプレビューを表示する方を選択していると判断した場合は、RGB値で各ページの領域サイズを取得する方法を使う。
よって、まず、CPU100は、プリンタドライバが提供するUI画面を介してプレビュー表示に対する要求がONになっているかOFFになっているかを調べる(S400)。プレビュー表示がONになっているかOFFになっているかは、ドライバUIにプレビューON/OFFの設定のボタンやチェックボックスが予め用意されている。そこで、CPU100はその設定内容をRAM102上に記憶しておき、その記憶された情報をCPU100が参照することで判断する。
もし、CPU100がプレビュー表示がOFFであり、プレビューを表示しないないと判断した場合は、EMFスプールデータからのクリップ領域の座標を調べることで、各ページの領域サイズを取得する方法を使用する(S401)。
図2に示したプリントプロセッサ205がPGD206にスプールファイル204から読み出したEMFスプールデータを送る。GDI202がそのEMFスプールデータを1つ1つ描画命令としてPGD206に送信する。その描画命令から描画する座標を取得していく。
最初に送られてきた描画命令の描画領域を取得する。その描画領域のX,Y座標のそれぞれの最小値Xmin,YminをRAM102に確保される変数XMIN、YMINに、最大値Xmax,YmaxをRAM102に確保される変数XMAX、変数YMAXに格納する(S402)。
そして、次に描画命令が終了かどうかを判断する(S403)。ここで、描画命令が終了していると判断した場合は、S405へ進み、描画命令が終了していないと判断した場合は、次の描画命令を取得する。そして、X,Y座標のそれぞれの最小値Xmin,変数Yminと変数XMIN、変数YMINを比較し、小さければ値を更新、変数Xmax,変数Ymaxと変数XMAX、変数YMAXを比較し、大きければ値を更新する(S404)。
これを描画命令が1つのページ内で終了するまで繰り返す(S403)。そして、描画命令が終了した時点での(XMIN,YMIN)、(XMAX,YMAX)がプリンタドライバが生成する印刷データの領域サイズとなる。以上のS402〜S404の処理を全ページ終了するまで繰り返す(S405)。これがクリップ領域による印刷領域サイズの取得処理に対応する。以下、具体的な例を図5に示す概念図を参照して説明する。
図5は、図4に示した描画領域取得処理例を説明する概念図である。本図のページでは、文字データ51、53と画像データ52とからページデータが構成されている例である。描画命令1は、文字データ51に対応し、描画命令2は、画像データ52に対応し、描画命令3は文字データ53に対応する。
まず、描画命令1がPGD206から送られてくる。この描画領域は、図5に示すように、(Xmin,Ymin)=(300、300)、(Xmax,Ymax)=(450、320)であったとする。そして、最初の描画命令なので領域サイズに設定し、(XMIN,YMIN)=(300,300)、(XMAX,YMAX)=(450、320)とする。
次に、描画命令2が送信される。描画命令2の描画領域は(Xmin,Ymin)=(50、80)、(Xmax,Ymax)=(250、450)である。
ここで、変数Xminと変数XMIN、変数Yminと変数YMINをそれぞれ比較し、小さい方をそれぞれ変数XMIN、変数YMINとするので(XMIN,YMIN)=(50,80)となる。そして、変数Xmaxと変数XMAX、変数Ymaxと変数YMAXをそれぞれ比較し、大きい方を変数XMAX、変数YMAXとするので (XMAX,YMAX)=(450、450)となる。
次に描画命令3が送信される。描画命令3の描画領域は(Xmin,Ymin)=(150、550)、(Xmax,Ymax)=(320、600)である。
先ほどと同じように比較すると、(XMIN,YMIN)=(50,80)、(XMAX,YMAX)=(450、600)となる。これで描画命令は終了である。
よって、最終的な領域サイズは(XMIN,YMIN)=(50,80)、(XMAX,YMAX)=(450、600)ということになる。
これを全ページに対して行い(S404)、各ページの印刷領域サイズをRAM102に保存しておく。以上が1つめの領域サイズ取得方法である。
一方、S401で、CPU100が後述するようなUI画面上でプレビュー表示を要求するラジオボタンがONとする指示があると判断した場合、2つ目の方法としてのRGB値で各ページの領域サイズを取得する方法を使用する(S406)。
各ページにおける各ピクセルのRGB値はラスタイメージデータから取得することができる。
ラスタイメージデータはプリンタドライバが受け取った描画命令をRAM102のワーク上に展開することで生成される。この生成されたラスタイメージデータを1行ずつライン走査し、各ピクセルのRGB値を調べることによって各ページの領域サイズを取得する。なお、ここでのラスタイメージデータは、プレビュー用のラスタイメージデータである。
まず、RAM102に確保される変数XMIN、YMIN、XMAX、YMAXに初期値を格納する(S407)。この初期値は、現在選択されている用紙サイズの印刷領域を変数xmin,ymin,xmax,ymaxとすると、(XMIN,YMIN)=(xmax,ymax)、(XMAX,YMAX)=(xmin、ymin)と設定する。
そして、ラスタイメージデータを1ライン走査し、各ピクセルのRGBを調べ,格納しておく(S408)。そして、格納したRGB値が(R,G,B)=(255,255,255)以外の値を調べていく(S409)。
ここで、(R,G,B)=(255,255,255)は白を一般的に表す色であり、白の場合はそのピクセルは描画領域でないと判断できる。
もし、(R,G,B)=(255,255,255)以外のピクセルが1ピクセルもなければ、そのラインでは印刷される領域は無いと判断する。もし、(R,G,B)=(255,255,255)以外のピクセルがあれば、以下の処理を行う。
まず、取得した1ラインを左(x=0)から右へ走査し、各RGB値を調べ、(R,G,B)=(255,255,255)以外の最初のピクセルの座標を変数Xmin、Yminとする(S410)。
そして、変数XminとXMIN、変数YminとYMINをそれぞれ比較し、小さい方をそれぞれ変数XMIN、YMINとする。
次に、右(x=xmax)から左に走査し、先ほどと同じように各RGB値を調べ、(R,G,B)=(255,255,255)以外の最初のピクセルの座標をXmax、Ymaxとする。
そして、変数Xmaxと変数XMAX、変数Ymaxと変数YMAXをそれぞれ比較し、大きい方をそれぞれXMAX、YMAXとする(S411)。そして、次のラインに進み、ラインがなくなるまで繰り返す(S412)。
ラインがなくなった時点での(XMIN,YMIN)、(XMAX,YMAX)が領域サイズとなる。もし、変数XMAX、変数YMAXが初期値のままであれば、そのページは白紙であるので、(XMIN,YMIN)=(0,0)、(XMAX,YMAX)=(0,0)とする(S413)。
そして、プレビュー表示するために、ラスタデータからビットマップを生成し保存しておく(S414)。
これを各ページに対して全ページ終了するまで行い(S415)、各ページの領域サイズを保存しておく。以上のS406〜S415の処理をわかりやすく示した例が図6である。
図6は、図1に示したRAM102に展開されたラスタデータの状態を説明する図である。なお、図中の黒色は、(R,G,B)=(255,255,255)以外のピクセルを示す。また、走査の基準位置は、左上であるものとする。
今回はわかりやすくするために余白がないと仮定し、印刷可能領域が20×20の用紙に、図6のような模様を印刷する例である。
この領域サイズを取得するには、まず、初期値を(XMIN,YMIN)=(19,19)、(XMAX,YMAX)=(0,0)を設定する。
次に、1行目をライン走査する。しかし、1行目は全ピクセル白であるので、領域サイズは(XMIN,YMIN)=(19,19)、(XMAX,YMAX)=(0,0)のままである。次に、2行目をライン走査する。
2行目には(9,1)に白以外のピクセルがある。白以外のピクセルがあるので、左から走査し、最初の白以外のピクセルの座標は(9,1)であるので(Xmin,Ymin)=(9、1)とする。そして、変数Xminと変数XMIN、変数Yminと変数YMINをそれぞれ比較し、小さい方をそれぞれ変数XMIN、変数YMINとするので、(XMIN,YMIN)=(9,1)となる。
次に右から走査し、最初の白以外のピクセルの座標は(9,1)であるので(Xmax,Ymax)=(9、1)とし、変数Xmaxと変数XMAX、変数Ymaxと変数YMAXをそれぞれ比較する。そして、大きい方をそれぞれ変数XMAX、変数YMAXとするので、(XMAX,YMAX)=(9,1)となる。
これで2行目は終了なので、3行目をライン走査する。3行目には(8,2)と(10,2)に白い以外のピクセルがある。
よって、(Xmin,Ymin)=(8,2)となるので(XMIN,YMIN)=(8,1)、(Xmax,Ymax)=(10,2)となるので(XMAX,YMAX)=(10,2)となる。これを20行目(図中の19ライン目)まで繰り返すと、(XMIN,YMIN)=(1,1)、(XMAX,YMAX)=(17,19)となり、これが領域サイズとなる。
以上が2つ目の領域サイズの取得方法である。以上で、領域サイズを取得できたので、図3に示す次の処理に移る。
次の処理は、CPU100が他の用紙に変更可能かどうかを判断する処理を行う(S304)。このときに、他の用紙が印刷装置にセットされているか、セットされていたならばその用紙の種類は変更しても問題がない用紙の種類なのかを判断しなければならない。
本実施形態において、変更できる用紙の種類は図3に示したS301の時と同様に、基本的に一般メディアを対象とする。
一般メディアが印刷装置208にセットされていたならば、その用紙の種類で変更可能かどうかを調べる。以下この用紙の種類を判断対象用紙と呼ぶことにする。
図3に示したS301で、CPU100は印刷装置にセットされている用紙の種類を取得しているので、1種類以上変更できる用紙があれば、各用紙の種類に対して用紙変更可能かどうかを調べる(S305)。
図7は、本実施形態を示す情報処理装置における第3のデータ処理手順の一例を示すフローチャートである。本例は、図3に示したS305の用紙変更可能判定処理の詳細手順に対応する。本処理は、各用紙の種類に対して用紙変更可能かどうかを調べる処理である。なお、S701〜S708は各ステップを示す。また、各ステップは、CPU100がROM101、HD105から読み出すネットワークプリンタ制御プログラムをRAM102にロードして実行することで実現される。
なお、用紙変更可能の条件は、判断対象用紙の印刷領域サイズが、S303でプリンタドライバが取得した印刷領域サイズより大きいことである。印刷装置208から給送可能に検出された判断対象用紙の印刷領域サイズは、幅と高さでその領域が特定される。そこで、判断対象用紙の印刷領域の幅Width高さHeightとS303で取得した領域サイズの幅(XMAX−XMIN)、領域サイズの高さ(YMAX−YMIN)を比較して用紙変更の可能性を決定する。
上記幅WidthがS303で取得した上記幅(XMAX−XMIN)より大きいこと、かつ上記高さHeightがS303で取得した上記高さ(YMAX−YMIN)より大きければ、判断対象用紙の印刷領域サイズが印刷領域サイズより大きいと判断できる。
よって、まず、判断対象用紙の印刷領域の幅Width、高さHeightを取得する(S701)。図3に示したS303で取得した領域サイズ(XMIN,YMIN)、(XMAX,YMAX)をRAM102のワークにロードする(S702)。
そして、CPU100が変数であるWidth>XMAX−XMIN(第1の条件)、Height>YMAX−YMIN(第2の条件)を調べ、領域サイズは判断対象用紙の印刷領域の大きさを比較することで判定する(S703)。
そして、第1,第2両方の条件が成立するとCPU100が判定した場合は、S303で取得した領域サイズは判断対象用紙の印刷領域より小さいと判断して用紙変更可能とする。
一方、S703で、第1、第2の条件の1つの条件でもでも満たさないとCPU100が判断した場合は、S303で取得した領域サイズは判断対象用紙の印刷領域より大きいと判断し、画像データを90度回転させて、もう1度比較を試みる(S704)。つまり、画像領域と判断対象の画像領域との関係において、画像の向きによって、例えばA3の上半分が印刷すべき画像領域である場合、画像の向きを90度回転すると、A4の用紙サイズに収まる場合があるからである。
そこで、図3で対象としている画像データを90度回転させて比較するために、RAM102上の変数Height>XMAX−XMIN(第3の条件)で、Width>YMAX−YMIN(第4の条件)を満たしているかどうかをCPU100が判断する(S704)。ここで、第3,第4の条件の両方が満たされていると判断した場合は、変更可能と判断し、用紙を90度回転させれば用紙変更可能という制御フラグをRAM102上に立てておく(S705)。
一方、S704で、第3,第4の条件の1つでも満たさないとCPU100が判断した場合は、用紙変更不可能と判断して、本処理を終了する。
そして、用紙変更可能であると判断された場合、全ページが終了なのかどうかを調べ(S706)、まだページがあれば次のページが用紙変更可能かどうかを調べる(S707)。これを全ページ終了するまで繰り返し、全てのページが変更可能であれば、その判断対象用紙を変更可能用紙候補に決定して(S708)、本処理を終了する。
以上が判断対象用紙に対して、用紙の変更が可能かどうかを判断する処理手順である。上述した処理手順では、1ページでも変更できない場合は判断対象用紙を変更可能用紙候補せず、1ページ以上が90度回転させると用紙変更可能でも変更可能用紙候補にするという方法を説明した。
しかし、例えば1ページでも用紙変更ができると判断された場合は、そのページだけを用紙変更するために、変更可能用紙候補とし、1ページ以上が90度回転させると用紙変更可能であっても、変更可能用紙候補としない等も本発明では含んでいることは言うまでもない。
これらの判断をユーザ側で自由に選択できるようにすることも可能である。例えば、上記設定の選択をユーザが操作するプリンタドライバた提供するUI画面のダイアログで設定可能としてもよい。
図8は、本実施形態を示す情報処理装置のプリンタドライバが提供するUI画面の一例を示す図である。本図は、図1に示したディスプレイ107にCPU100の制御で表示される。
図8において、本実施形態では、変更可能用紙候補とする条件を設定するためのチェックボックス801,804を備える。チェックボックス801は、全てのページが変更可能であり、印刷領域を90度回転させた時を含まないという条件を選択していることになる。
チェックボックス804は90度回転させた時も含むという条件を選択する場合にチェックされる。
本実施形態では、変更可能用紙候補とする条件がUI画面上に列挙表示され、チェックボックス801でユーザが選択する。図8に示す条件設定の例の場合は、全てのページが変更可能であり、印刷領域を90度回転させた時を含まないという条件を選択していることになる。
そして、チェックボックス801で選択された条件でよい場合は、OKボタン802をユーザが図示しないポインティングデバイス等を操作して押す。
一方、キャンセルボタン803を同様の操作で押した場合は、以前の条件を選択したことになる。
そして、CPU100は、図3に示したS305の処理を判断対象用紙に対して全て行う(S306)。そして、変更可能用紙候補があったならば、用紙変更画面の表示をディスプレイ107に行い(S307)、もしなければ、S310へ進み、そのまま、印刷装置208に印刷データを送信して印刷装置に印刷データを印刷させて、本処理を終了する。なお、S309〜S310への処理については後述する。
図9〜図11は、図1に示したディスプレイ107に表示される用紙変更画面の表示例を示す図である。
図9において、用紙選択のためのラジオボタン901A、901Bを備える。この表示は、変更可能な用紙があると判断された場合に表示される。しかも、この際、印刷すべき画像データに対して、何ら画像縮小処理、又は画像拡大処理等を行っていない場合である。なお、903はキャンセルボタンで、902はOKボタンである。
また、図9に示す用紙変更画面はプレビューを表示するか、表示しないかで画面の仕様が違う。まず、プレビューを表示しない場合の動作を説明する。
図9に示すように変更可能用紙候補を列挙し、ラジオボタン901A、901Bを付ける。これらのラジオボタン901A、901Bで用紙を選択する。そして、印刷ボタンとして機能させるOKボタン902を押すと、選択された印刷用紙の種類で印刷する。
一方、図9に示す用紙変更画面において、キャンセルボタン903を押した場合は、元々設定されていた用紙の種類で印刷する。
次に、プレビューを表示する場合の動作を図10,図11に示す変更画面を参照して説明する。
プレビュー表示をする場合は、プレビューと同じように、変更可能用紙候補を列挙し、図10に示すようにラジオボタン904A、904Bを付けた画面をCPU100の制御で表示する。このラジオボタン904Aをユーザが選択することによって、選択された用紙サイズでのプレビュー領域905にプレビューPV1を用紙サイズとともにCPU100の制御で表示する。現在ラジオボタン904Aを選択しているので、A3の用紙に対して、出力対象の画像データは、上半分で収まる領域サイズであるため、下半分が空白領域である状態を表示している。
そして、右矢印ボタン906R、左矢印ボタン906Lで、次のページのプレビュー、前のページのプレビューを表示することができる。そして、印刷ボタン907を押すと、選択された印刷用紙の種類で印刷装置208が印刷する。
一方、図10に示す画面において、キャンセルボタン908を押した場合は、元々設定されていた用紙の種類で印刷する。
一方、図10に示すような印刷データを90度回転させた場合に用紙変更可能であった変更可能用紙候補を選択した場合は、ラジオボタン904A、904Bが表示される。そこで、ラジオボタン904Bをユーザが選択することで、図11に示すように、変更後のプレビュー領域909にプレビューPV2をCPU100の制御で表示する。
なお、プレビュー表示を行うために、PGD206によってラスタイメージデータからビットマップを生成したデータをロードし(S414)、ビットマップの位置を計算してプレビュー領域905,909にプレビューPV1、2として表示する。
上記実施形態では、図1に示した情報処理装置が入力される描画情報をプリンタドライバを介して各ページのスプールファイルを生成する。そして、該スプールファイルを展開して印刷装置に印刷データを転送する構成を備えて、以下の特徴的機能処理を行う場合について説明した。
すなわち、情報処理装置は、GDI202が各ページのスプールファイル(Windows Meta File)から印刷領域を取得する印刷領域取得機能を備える。ここで、印刷領域取得機能処理は、図4に示した取得処理に対応する。
また、印刷領域取得機能により取得された印刷領域と、印刷装置208から取得される給送可能な判断対象用紙の印刷領域とを比較して、前記印刷データに指定されている用紙サイズよりも小さい用紙サイズに変更可能かどうかを判別する判別機能を有する。この判別機能の詳細は、図7に示した用紙変更可能かどうかを判別する処理に対応する。
そして、この判別機能により小さい用紙サイズに変更可能であると判断した場合、変更可能な用紙サイズ情報を示すサイズ変更画面(図9、図10、図11に示す変更画面例)を表示部に表示するサイズ変更画面表示機能を備える。これにより、ユーザは、アプリケーションで指定している用紙サイズよりも、小さいサイズで要求された印刷データを全て印刷できる候補があることを確認する。
そして、入力された描画情報に設定されていた用紙サイズをサイズ変更画面上で選択される用紙サイズに変更した印刷制御コマンドを前記印刷データに付加して印刷装置208に転送する。
また、上記実施形態では、ユーザが特殊な用紙、例えば写真画質用の用紙等のような用紙種別を選択している場合には、あえて用紙サイズの変更処理を行う必要ないものとする。そして、印刷データに対して指定されている用紙の種類が前記プリンタドライバでサポートしている用紙の種類で用紙サイズを変更可能な用紙の種類であるかを判別する種別判別機能を備える。これは、図3に示したS302に対応する。
そして、種別判別手段により用紙の種類を変更可能でない用紙の種類であると判別した場合、例えば写真画質用の用紙であると判別した場合は、図3に示すS302からS310へ進む。そして、印刷データに設定された用紙サイズを変更することなく印刷装置208にプリンタドライバが生成する各ページの印刷データを印刷装置に転送する。
さらに、上記印刷領域取得機能は、各ページのスプールファイルの展開命令を解析して印刷領域を取得する第1の領域取得機能を有する。さらに各ページのスプールファイルの展開命令に基づいてイメージ展開したイメージデータを走査して印刷領域を取得する第2の領域取得機能とを有する。これは、ユーザが用紙選択時に、プレビュー処理を要求するかどうかで処理速度が速い方を選択している場合に、有効な取得機能を切り替える必要があるからである。
そこで、印刷データに対するプレビュー設定状態を判別するプレビュー判別機能を有する。具体的には、図4に示したS400で、ユーザの要求がプレビュー表示要求しているかどうかを判定するに対応する。
そして、ここでプレビューする設定であると判別した場合、第2の領域取得機能(イメージデータの展開によるサイズ取得)を選択する。一方、プレビューする設定でないと判別した場合、第1の領域取得機能を選択する制御を行う。
また、判別機能は、印刷領域取得機能により取得された印刷領域と、前記印刷装置から取得される給送可能な判断対象用紙の印刷領域とを比較する。
そして、印刷データに指定されている用紙サイズよりも小さい用紙サイズに変更可能でないと判別した場合、さらに、前記取得された印刷領域を90度回転した回転印刷領域と前記判断対象用紙の印刷領域とを比較する。そして、印刷データに指定されている用紙サイズを小さい用紙サイズに変更可能かどうかを判別する。これは、取得した印刷領域を90度回転することで、より小さいサイズの用紙にその印刷領域が収束する場合があるからである。例えば印刷領域がA3領域の上半分の領域に対応する場合には、その印刷領域を90度回転させることで、A4サイズの用紙の印刷領域に収まるからである。
このため、判別機能による印刷領域判別処理に対して、前記印刷領域取得機能により取得された印刷領域と、該印刷領域を90度回転した回転印刷領域とを含めて判別するかどうかを示す領域判定条件を指定可能としてもよい。例えば、図8に示すように、複数のチェックボックスを備えて、それぞれのチェックボックスのチェック状態に基づき、領域判定条件を変更可能とすれば、より小さいサイズの用紙が選択される確率が高くなる。
また、サイズ変更画面表示機能では、図9〜図11に示すように、判別機能により小さい用紙サイズに変更可能であると判断した場合、変更可能な用紙サイズ候補と、前記印刷データに指定されている用紙サイズとを表示している。
これにより、ユーザがより小さいサイズの用紙を選択することも、さらには、敢えて、より大きいサイズの用紙(アプリケーションで指定している用紙サイズと同サイズとなる)を選択して印刷させることも可能となる。
〔第1実施形態の変形例〕
なお、図9〜図11に示す用紙選択画面において、画像変倍処理を要求するための新たなチェックボックスを設ける。
そして、このチェックボックスが選択された場合、選択されている用紙のサイズに、さらに、余白を埋めて、画像データの領域が用紙の印刷領域にフィットするように、画像データの領域サイズを拡大・縮小させて印刷を行う。
また、印刷する用紙が決定したら、印刷を実行するが、この時選択された用紙が元々アプリケーションで設定されていた用紙と同一の場合と、用紙が変更画面を介して変更された場合との2通りが存在する。
このような場合は、図3に示すように、S308からS310へ進み、元々設定されていた用紙が変更画面で選択されたならば、そのまま印刷を実行する。
一方、S309で変更画面を介して用紙が変更されたならば、アプリケーションで設定された印刷設定情報をプリントプロセッサ205により変更した用紙の種類、用紙サイズ、その用紙がセットされている給紙口を給紙先に設定し直す。そして、その設定し直した印刷設定情報を印刷装置208に送信し、S310で、印刷を実行するように制御してもよい。
上記実施形態によれば、印刷装置208から通信により、印刷装置208が備える給紙口にセットされた複数の用紙の種類、用紙のサイズを取得し、その用紙の種類に応じて、用紙変更が必要かどうかを判断する。そして、取得した用紙サイズとプリンタドライバが生成する印刷データの印刷領域を比較し、用紙変更可能な用紙ならば、用紙変更が可能となり、より最適な用紙で空白域が発生しないような印刷結果を得ることができる。
〔第2実施形態〕
なお、上記実施形態では、印刷装置208から、図3に示したS301で、印刷装置208にセットされている用紙の種類、サイズを取得して、S302で、変更可能な用紙の種類かどうかを判定する場合について説明した。また、同様に、判断対象用紙の印刷領域についても、図3に示したS301で、印刷装置208にセットされている用紙の種類、サイズを取得した、サイズに基づく印刷領域を幅と高さを特定する場合について説明した。
しかし、印刷開始前に、印刷装置208との通信であらかじめ取得して、RAM102、あるいはHD105に記憶しておく。そして、図3に示す用紙変更処理時に、印刷装置208からその都度取得するような制御を実行しないことで用紙サイズ変更処理の効率化を図っても良い。
〔第3実施形態〕
以下、図12に示すメモリマップを参照して本発明に係る情報処理装置で読み取り可能なデータ処理プログラムの構成について説明する。
図12は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
本実施形態における図3、図4、図7に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVDなどを用いることができる。
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバやftpサーバ等も本発明の請求項に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけではない。
例えばそのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行う。そして、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込ませる。
その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施形態の有機的な組合せを含む)が可能であり、それらを本発明の範囲から排除するものではない。
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
本発明の第1実施形態を示す情報処理装置の構成を説明するブロック図である。 図1に示した情報処理装置を適用する印刷システムの概略構成を示す図である。 本実施形態を示す情報処理装置における第1のデータ処理手順の一例を示すフローチャートである。 本実施形態を示す情報処理装置における第2のデータ処理手順の一例を示すフローチャートである。 図4に示した描画領域取得処理例を説明する概念図である。 図1に示したRAMに展開されたラスタデータの状態を説明する図である。 本実施形態を示す情報処理装置における第3のデータ処理手順の一例を示すフローチャートである。 本実施形態を示す情報処理装置のプリンタドライバが提供するUI画面の一例を示す図である。 図1に示したディスプレイに表示される用紙変更画面の表示例を示す図である。 図1に示したディスプレイに表示される用紙変更画面の表示例を示す図である。 図1に示したディスプレイに表示される用紙変更画面の表示例を示す図である。 本発明に係る画像処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
符号の説明
100 CPU
101 ROM
102 RAM
107 ディスプレイ

Claims (17)

  1. 画像の印刷領域を取得する取得手段と、
    印刷設定で設定されている用紙サイズよりも小さく、前記取得手段により取得された印刷領域の画像を印刷できる用紙候補を表示する表示手段と、
    前記表示手段に表示された用紙候補の中から選択された用紙で印刷されるように印刷設定を変更する変更手段とを有し、
    前記取得手段は、プレビュー表示する場合、画像のラスターイメージデータから印刷領域を取得し、プレビュー表示しない場合、スプールデータからのクリップ領域の座標を調べることで印刷領域を取得することを特徴とする情報処理装置。
  2. 前記プレビュー示は、印刷設定で設定されている用紙サイズよりも小さく、前記取得手段により取得された印刷される領域サイズの画像を印刷できる用紙候補がある場合に、用紙候補を表示することを特徴とする請求項1記載の情報処理装置。
  3. プリンタにセットされている用紙の情報を取得する用紙情報取得手段と、
    前記用紙情報取得手段により取得された用紙の情報に基づき、特別な用紙がセットされていないと判別された場合、前記取得手段は、画像の印刷領域を取得することを特徴とする請求項1記載の情報処理装置。
  4. 前記プレビュー示は、選択された用紙に応じたプレビュー画像を表示することを特徴とする請求項1記載の情報処理装置。
  5. 前記プレビュー示は、印刷設定で設定されている用紙サイズよりも小さく、前記取得手段により取得された印刷領域の画像を回転させた画像を印刷できる用紙候補を表示することを特徴とする請求項1記載の情報処理装置。
  6. 印刷設定で設定されている用紙サイズよりも小さく、前記取得手段により取得された印刷される領域サイズの画像を印刷できる用紙候補がない場合は、印刷設定で設定されている用紙サイズで印刷する印刷データをプリンタに送信する送信手段を有することを特徴とする請求項1記載の情報処理装置。
  7. 前記プレビュー表示を行うか否かの要求をユーザから受け付ける手段を備えることを特徴とする請求項1記載の情報処理装置。
  8. 前記プレビュー表示は、変更可能な用紙を候補とする条件を選択するため、前記条件が全てのページが変更可能な場合に候補とするボックスと、90度回転させて変更可能用紙候補とするボックスとを表示し、一方のボックス、または双方のボックスを選択可能とすることを特徴とする請求項1記載の情報処理装置。
  9. 前記プレビュー表示は、用紙変更の取り消しを指示するボタンを表示し、
    前記プレビュー表示で用紙変更の取り消すボタンの指示を受け付けた場合、印刷設定で設定されている用紙サイズで前記画像を印刷することをプリンタに指示することを特徴とする請求項1記載の情報処理装置。
  10. 前記表示手段は、プレビュー表示を行う場合と、およびプレビュー表示を行わない場合とで、前記取得手段により取得された印刷領域の画像を印刷できる用紙候補を選択するためのユーザインタフェースを異なる表示形式で表示することを特徴とする請求項1記載の情報処理装置。
  11. 情報処理装置の情報処理方法であって、
    画像の印刷領域を取得する取得ステップと、
    印刷設定で設定されている用紙サイズよりも小さく、前記取得ステップにより取得された印刷領域の画像を印刷できる用紙候補を表示する表示ステップと、
    前記表示ステップに表示された用紙候補の中から選択された用紙で印刷されるように印刷設定を変更する変更ステップとを有し、
    前記取得ステップは、プレビュー表示する場合、画像のラスターイメージデータから印刷領域を取得し、プレビュー表示しない場合、スプールデータからのクリップ領域の座標を調べることで印刷領域を取得することを特徴とする情報処理方法。
  12. 前記プレビュー表示を行うか否かの要求をユーザから受け付けるステップを備えることを特徴とする請求項11記載の情報処理方法。
  13. 前記プレビュー表示は、変更可能な用紙を候補とする条件を選択するため、前記条件が全てのページが変更可能な場合に候補とするボックスと、90度回転させて変更可能用紙候補とするボックスとを表示し、一方のボックス、または双方のボックスを選択可能とすることを特徴とする請求項11記載の情報処理方法。
  14. 前記プレビュー表示は、用紙変更の取り消しを指示するボタンを表示し、
    前記プレビュー表示で用紙変更の取り消すボタンの指示を受け付けた場合、印刷設定で設定されている用紙サイズで前記画像を印刷することをプリンタに指示することを特徴とする請求項11記載の情報処理方法。
  15. 前記表示ステップは、プレビュー表示を行う場合と、およびプレビュー表示を行わない場合とで、前記取得ステップにより取得された印刷領域の画像を印刷できる用紙候補を選択するためのユーザインタフェースを異なる表示形式で表示することを特徴とする請求項11記載の情報処理方法。
  16. 請求項11乃至15のいずれか1項に記載の情報処理方法をコンピュータに実行させることを特徴とするプログラム。
  17. 請求項1乃至15のいずれか1項記載の情報処理方法を実行させるためのプログラムを記録したコンピュータ読取可能な記憶媒体。
JP2006216556A 2006-08-09 2006-08-09 情報処理装置、情報処理方法、記憶媒体、プログラム Expired - Fee Related JP4838662B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006216556A JP4838662B2 (ja) 2006-08-09 2006-08-09 情報処理装置、情報処理方法、記憶媒体、プログラム
US11/829,714 US8711392B2 (en) 2006-08-09 2007-07-27 Information processing apparatus, information processing method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006216556A JP4838662B2 (ja) 2006-08-09 2006-08-09 情報処理装置、情報処理方法、記憶媒体、プログラム

Publications (2)

Publication Number Publication Date
JP2008040933A JP2008040933A (ja) 2008-02-21
JP4838662B2 true JP4838662B2 (ja) 2011-12-14

Family

ID=39050435

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006216556A Expired - Fee Related JP4838662B2 (ja) 2006-08-09 2006-08-09 情報処理装置、情報処理方法、記憶媒体、プログラム

Country Status (2)

Country Link
US (1) US8711392B2 (ja)
JP (1) JP4838662B2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008242950A (ja) * 2007-03-28 2008-10-09 Brother Ind Ltd 画像形成システム及び制御プログラム
JP5025318B2 (ja) * 2007-05-01 2012-09-12 キヤノン株式会社 画像処理装置、画像処理装置の制御方法、および画像処理装置の制御プログラム
JP5239356B2 (ja) * 2008-01-25 2013-07-17 株式会社リコー 白紙排紙抑制機能を有する画像形成装置、白紙排紙抑制方法、白紙排紙抑制プログラム
US8149442B2 (en) * 2008-10-22 2012-04-03 Xerox Corporation Knowledge-based content sub-setting method for variable information printing
JP5748551B2 (ja) * 2011-05-10 2015-07-15 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP2015003475A (ja) * 2013-06-21 2015-01-08 キヤノン株式会社 印刷装置及びその制御方法とプログラム
JP5815619B2 (ja) * 2013-09-09 2015-11-17 シャープ株式会社 画像形成装置及び画像形成方法
JP5932853B2 (ja) * 2014-01-20 2016-06-08 キヤノン株式会社 画像処理装置及び画像処理方法
JP2016001396A (ja) * 2014-06-11 2016-01-07 富士ゼロックス株式会社 画像処理装置、システム及びプログラム
US9819824B2 (en) * 2015-08-11 2017-11-14 Xerox Corporation Custom scan areas history and customization
US11341383B2 (en) * 2019-08-18 2022-05-24 Kyocera Document Solutions Inc. Methods and apparatus to detect effective tiling area and fill tiles efficiently
JP7363354B2 (ja) 2019-10-18 2023-10-18 セイコーエプソン株式会社 印刷システム、印刷方法、情報処理装置、及び、情報処理プログラム
JP7363353B2 (ja) 2019-10-18 2023-10-18 セイコーエプソン株式会社 印刷システム、印刷方法、情報処理装置、及び、情報処理プログラム
JP2022131426A (ja) * 2021-02-26 2022-09-07 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、およびプログラム

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5053885A (en) * 1989-11-30 1991-10-01 Eastman Kodak Company Copier with auto scaling, auto paper select, and window scaling
JP3206060B2 (ja) * 1991-12-26 2001-09-04 ミノルタ株式会社 画像編集装置
JPH06115208A (ja) 1992-10-05 1994-04-26 Fuji Xerox Co Ltd 用紙サイズ決定方式
US5424853A (en) * 1993-04-19 1995-06-13 Sharp Kabushiki Kaisha Image processing apparatus
JP3808923B2 (ja) * 1995-11-27 2006-08-16 株式会社東芝 情報処理装置
JPH09263012A (ja) * 1996-03-27 1997-10-07 Fuji Xerox Co Ltd 画像形成制御装置及び画像形成対象媒体の情報変更方法
EP0933221B1 (en) * 1998-02-02 2006-06-28 Canon Kabushiki Kaisha Recording apparatus, recording method, and storage medium
US5946527A (en) * 1998-04-13 1999-08-31 Xerox Corporation Image processing of different sizes of document sheets in an electronic imaging system
JP2000132367A (ja) * 1998-10-23 2000-05-12 Ricoh Co Ltd デジタル画像形成装置
US7065716B1 (en) * 2000-01-19 2006-06-20 Xerox Corporation Systems, methods and graphical user interfaces for previewing image capture device output results
JP2001325086A (ja) * 2000-05-12 2001-11-22 Canon Inc 印刷制御装置、データ格納方法、及び記憶媒体
JP2003150344A (ja) * 2001-11-15 2003-05-23 Ricoh Co Ltd プリンタドライバ
US7359084B2 (en) * 2002-02-06 2008-04-15 Canon Kabushiki Kaisha Preview display for multiple-sided printing
JP2003231323A (ja) * 2002-02-07 2003-08-19 Canon Inc 印刷装置、印刷方法、画像処理装置、画像処理方法、記憶媒体およびプログラム
JP4143336B2 (ja) * 2002-05-31 2008-09-03 キヤノン株式会社 情報処理装置および制御方法およびプログラム
JP4208670B2 (ja) * 2002-08-29 2009-01-14 キヤノン株式会社 画像処理方法、情報処理装置及びプログラム
JP2004268379A (ja) 2003-03-07 2004-09-30 Kyocera Mita Corp 印刷装置及びその方法
JP2004338189A (ja) * 2003-05-14 2004-12-02 Kyocera Mita Corp 画像形成装置、画像形成方法及び画像形成プログラム
US20070036588A1 (en) * 2003-05-16 2007-02-15 Seiko Epson Corporation Print-Result Display Method, Layout-Editing Method, And Print Control Device
JP2005017541A (ja) * 2003-06-24 2005-01-20 Canon Inc 画像形成方法及び画像形成装置
JP2005238838A (ja) * 2004-01-27 2005-09-08 Kyocera Mita Corp 画像形成装置及びそのプログラム
FR2870662B1 (fr) * 2004-05-24 2006-08-18 Alcatel Sa Dispositif de routage local de trafics locaux au sein d'un reseau de communication radio
US7679777B2 (en) * 2005-05-03 2010-03-16 Xerox Corporation Job supplement for electronic printing machines
US20060262336A1 (en) * 2005-05-23 2006-11-23 Sharp Laboratories Of America, Inc. Manual annotation document reformation
JP4135733B2 (ja) * 2005-06-30 2008-08-20 コニカミノルタビジネステクノロジーズ株式会社 ジョブチケット発行装置及びジョブ実行装置
US7424238B2 (en) * 2005-07-08 2008-09-09 Konica Minolta Business Technologies, Inc. Image forming apparatus with confirmation output function and controlling method thereof
US8502993B2 (en) * 2005-09-08 2013-08-06 Oki Data Corporation Print data generating apparatus
KR20070043263A (ko) * 2005-10-20 2007-04-25 삼성전자주식회사 인쇄 데이터의 누락을 방지하기 위한 인쇄 제어 방법 및장치

Also Published As

Publication number Publication date
US8711392B2 (en) 2014-04-29
US20080037059A1 (en) 2008-02-14
JP2008040933A (ja) 2008-02-21

Similar Documents

Publication Publication Date Title
JP4838662B2 (ja) 情報処理装置、情報処理方法、記憶媒体、プログラム
JP4298362B2 (ja) 情報処理装置及び印刷プレビュー表示方法
US20090009552A1 (en) Print control apparatus, information processing apparatus, print control method, control method of information processing apparatus, and programs
JP2007160922A (ja) 画像処理装置、プログラムおよび画像処理装置における仕上がりデータ移動方法
JP2002041261A (ja) 情報処理装置及び情報処理方法及びコンピュータ読み取り可能なプログラムを格納した記憶媒体
US20060103877A1 (en) Image forming system having a scanned-image preview function and method thereof
US8891129B2 (en) Image forming apparatus having real-size preview function, method of controlling the same, and storage medium
JP4971766B2 (ja) 情報処理装置およびその制御方法およびコンピュータプログラム
US20050094163A1 (en) Printer driver and method of forming user interface
JP2005316950A (ja) データ処理装置およびデータ処理方法およびプリンタドライバプログラムおよび印刷制御装置および印刷制御方法および印刷システム
JP5577766B2 (ja) 印刷制御装置および印刷制御プログラム
JP6917285B2 (ja) 画像形成装置
US20120162702A1 (en) Image forming apparatus, control method of the image forming apparatus, and recording medium
JP5269168B2 (ja) 情報処理装置および制御方法およびプログラム
US6851875B2 (en) Printer and print image reference system
US8804141B2 (en) Character output device, character output method and computer readable medium
JP2010020545A (ja) 情報処理機器、画像形成装置、画像形成システム、画像処理プログラム
JP4801489B2 (ja) 画像形成装置及び画像形成プログラム
JP2005348205A (ja) 情報処理装置およびデータ処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
JP2005161819A (ja) 印刷装置および印刷制御方法
US8437046B2 (en) Image processing apparatus and method for outputting an image subjected to pseudo-halftone processing
JPH11232001A (ja) プリンタ制御装置
US20240111467A1 (en) Information processing apparatus, method, and non-transitory computer-readable storage medium storing program
JP7255277B2 (ja) 画像処理装置および画像処理システム
KR100571788B1 (ko) 문서의 지정영역을 확대 출력하는 방법

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20080108

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080220

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090730

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110519

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110524

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110725

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: 20110927

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110930

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141007

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141007

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees