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

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

Info

Publication number
JP2013058088A
JP2013058088A JP2011196124A JP2011196124A JP2013058088A JP 2013058088 A JP2013058088 A JP 2013058088A JP 2011196124 A JP2011196124 A JP 2011196124A JP 2011196124 A JP2011196124 A JP 2011196124A JP 2013058088 A JP2013058088 A JP 2013058088A
Authority
JP
Japan
Prior art keywords
application
print
specific application
information
preview
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
JP2011196124A
Other languages
English (en)
Other versions
JP5807460B2 (ja
Inventor
Akikazu Ono
晃和 小野
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2011196124A priority Critical patent/JP5807460B2/ja
Priority to US13/590,589 priority patent/US8928933B2/en
Priority to CN201210323713.2A priority patent/CN102999303B/zh
Publication of JP2013058088A publication Critical patent/JP2013058088A/ja
Application granted granted Critical
Publication of JP5807460B2 publication Critical patent/JP5807460B2/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/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • 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
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • 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/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1255Settings incompatibility, e.g. constraints, user requirements vs. device capabilities
    • 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

Abstract

【課題】呼び出したアプリケーションによって異なる処理を行うことができる情報処理装置を提供すること。
【解決手段】アプリケーションから呼び出され、受け付けた印刷設定から設定情報を生成する印刷設定受け付け手段34と、アプリケーションから取得した文書データを設定情報に基づきプリンタの印刷データに変換する画像処理手段301と、画像処理手段を呼び出したアプリケーションが、特定アプリケーションか否かを、設定情報に特定アプリ情報があるか否か、画像処理手段を呼び出す関数の引数に特定アプリ情報が含まれるか否か、の少なくともいずれかにより判別するアプリケーション判別手段301と、を有し、アプリケーション判別手段が、特定アプリケーションにより呼び出されたと判別した場合、画像処理手段は、特定アプリケーション以外のアプリケーションにより呼び出された場合と異なる方法で印刷データを生成する、を有する情報処理装置を提供する。
【選択図】図4

Description

本発明は、アプリケーションの文書データを変換してプリンタに送信する情報処理装置等に関する。
ユーザが、アプリケーション等によって作成した文書データを印刷する際、アプリケーション、プリンタドライバ及びOSが連携してプリンタに印刷データが送信される。アプリケーションが動作するPC(Personal Computer)のOS(Operating System)がWindows(登録商標)の場合、印刷処理には、
・RAWスプールのWindowsプリンティングシナリオ
・EMFスプールのWindowsプリンティングシナリオ
の2種類がある。
図1は、RAWスプールのWindowsプリンティングシナリオの概略を説明する図の一例である。PCは、アプリケーション、OSの機能としてGDI(Graphics Device Interface)、プリンタドライバ、スプーラ、プリンタプロセッサ及びポートモニタ等を有する。
プリンタドライバは、UI(User Interface)部、及び、グラフィックス部を有する。ユーザが、アプリケーションに対して文書の印刷指示を入力すると、アプリケーションは、プリンタドライバのUI部にDEVMODE構造体(以下、DEVMODEという)を送出する。DEVMODEはOS上で動作する各種のプリンタドライバに対して印刷条件を共通に設定するためのメンバ変数が定義されたデータ構造である。UI部はDEVMODEを受け取ると、まず、印刷設定画面(印刷ダイアログと呼ばれることがある)をディスプレイに表示する。
ユーザは、用紙サイズや部数、両面印刷などの印刷条件を設定し印刷を指示する。UI部はユーザが設定した印刷条件を受け付け、アプリケーションに印刷設定が含まれるDEVMODEを送出する。
図示するアプリケーションは、例えば文書作成プログラムなどのアプリケーション(例えば、MS−Word:登録商標)である。アプリケーションは、UI部からDEVMODEを取得すると、GDIコールによりGDIを呼び出すと共に、DEVMODE及び文書データをGDIに送出する。
GDIは、アプリケーションからDEVMODEと文書データを取得すると、DDIコールによりプリンタドライバのグラフィックス部を呼び出して、DEVMODEと文書データを送出する。
グラフィックス部は、GDIから取得したDEVMODEを参照して、アプリケーションによって印刷指示された文書データから、印刷設定を反映した印刷データを作成し、その作成した印刷データをスプーラに送出する。なお、印刷データには描画データ(例えばPDLのデータ)と制御データ(例えばPJLの印刷コマンド)が含まれる。
スプーラは、グラフィックス部から取得した印刷データをスプールファイルとして記憶する。プリントプロセッサは、印刷データをスプーラに送出する。スプーラは、印刷データをポートモニタに送出する。ポートモニタは、PCが有するポートの監視を行っており、プリンタが接続されているポートに印刷データを送出する。そして、プリンタは印刷データを印刷する。
図2は、EMFスプールのWindowsプリンティングシナリオの概略を説明する図の一例である。EMFスプールで行うWindowsプリンティングシナリオでは、DGIが呼び出されるまでの手順は図1と同じである。
GDIはEMFデータを生成しスプーラに送出する。アプリケーションの文書データが一通りスプールされると、スプーラがプリントプロセッサにデスプールすることを伝え、プリントプロセッサがスプールデータ(EMFデータ)を取得する。プリントプロセッサは、EMFデータをページ毎に集約・逆順・製本等の処理を施す編集処理の後、GDIコールしてGDIに送出する。
GDIは、DDIコールによりプリンタドライバのグラフィックス部を呼び出し、DEVMODEとEMFデータを送出する。グラフィクス部はEMFデータとDEVMODEから印刷データ(RAWデータ)を作成し、スプーラに送出する。スプーラは印刷データが一通り送出されるとポートモニタに送出する。
ところで、DEVMODEには、Public領域とPrivate領域とがある。Public領域はプリンタやプリンタドライバに関係なく共通の領域であり、OS上で動作する各プリンタドライバに対して共通のメンバ変数が定義されている。Private領域は、そのメンバ変数をプリンタドライバごとに定義可能ないわゆる拡張領域である。したがって、Private領域では、各プリンタドライバ(プリンタ)に固有の機能に関する印刷条件等を管理するためのメンバ変数を定義することができる。
このようにDEVMODEのPrivate領域はメンバ変数が追加されたり更新されたりする可能性があるため、その管理を容易にする技術が提案されている(例えば、特許文献1参照。)。特許文献1には、Private領域のサイズのみを固定し、メンバ変数を不定にしておき、情報配置ファイルによりメンバ変数とその位置を確定するプリンタドライバが開示されている。こうすることで、プリンタドライバ毎に別の情報配置ファイルを用意すれば、プリンタドライバの再コンパイル等が不要になる。
特許文献1に記載されたプリンタドライバは、Private領域を柔軟に構成できるが、一般的にプリンタドライバはプリンタが同じであれば、これを呼び出すアプリケーションが異なっても同じである。
しかしながら、プリンタドライバが、特定のアプリケーションに呼び出された場合にだけ、特定の処理を行うことが好ましい場合がある。例えば、グラフィック部はDEVMODEから制御データを作成するが、アプリケーションが保持する文書データの情報やDEVEMODEに含まれない情報からも制御データを作成している。ところが、特定のアプリケーションは、一般のアプリケーションが保持する文書データの情報などを保持していない場合があり、この場合、プリンタドライバは誤った制御データを作成するおそれがある。
仮に、プリンタドライバが、特定のアプリケーションから読み出されたことを検出できれば、通常のアプリケーションから呼び出されたグラフィック部が作成した制御データを利用したり、制御データを作成しないことが可能になる。しかし、プリンタドライバには特定のアプリケーションにより呼び出されたことを検知する仕組みが搭載されていないことが一般的である。
本発明は、上記課題に鑑み、呼び出したアプリケーションによって異なる処理を行うことができる情報処理装置を提供することを目的とする。
本発明は、アプリケーションからの印刷要求時に、受け付けた印刷設定から設定情報を生成する印刷設定受け付け手段と、アプリケーションから取得した文書データを前記設定情報に基づきプリンタの印刷データに変換する画像処理手段と、前記画像処理手段を呼び出したアプリケーションが、特定アプリケーションか否かを、前記設定情報に前記特定アプリケーションにより記述された特定アプリ情報があるか否か、前記画像処理手段を呼び出す関数の引数に特定アプリ情報が含まれるか否か、の少なくともいずれかにより判別するアプリケーション判別手段と、を有し、前記アプリケーション判別手段が、前記特定アプリケーションにより呼び出されたと判別した場合、前記画像処理手段は、前記特定アプリケーション以外のアプリケーションにより呼び出された場合と異なる方法で前記印刷データを生成する、を有する情報処理装置を提供する。
呼び出したアプリケーションによって異なる処理を行うことができる情報処理装置を提供することができる。
RAWスプールで行うWindowsプリンティングシナリオの概略を説明する図の一例である。 EMFスプールで行うWindowsプリンティングシナリオの概略を説明する図の一例である。 比較のための従来のプリンタドライバが印刷データ等を生成する手順を模式的に説明する図の一例である。 プリンタドライバが印刷データ等を生成する手順を模式的に説明する図の一例である。 印刷システムの概略構成図、PCのハードウェア構成図の一例である。 プリンタドライバ、Preview.exeの機能ブロック図の一例である。 PCの機能ブロック図の一例である。 印刷設定画面に表示されるプレビュー表示のための設定例を示す図の一例である。 DEVMODEの一例を説明するための図の一例である。 描画部が行う描画処理の処理手順を示すフローチャート図の一例である。 前処理と後処理の印刷データを説明する図の一例である。 Job int制御データの一例、Page int制御データの一例を示す図である。 PCの処理を模式的に説明する図の一例である。 Preview.exeがプリンタドライバに送信するint印刷データを模式的に説明する図の一例である。 PCの処理を模式的に説明する図の一例である。 PCの動作手順を説明するシーケンス図の一例を示す。 Public領域の他のメンバ変数に登録されるプレビュー設定の一例を示す図である。 DOCINFO構造体の書式の一例を示す図である。 Preview.exeが付与する文書名の一例を示す図である。 PCの動作手順を説明するシーケンス図の一例である。
以下、本発明を実施するための形態について実施例を挙げて説明する。
図3は、比較のための従来のプリンタドライバが印刷データ等を生成する手順を模式的に説明する図の一例である。なお、本実施形態の印刷手順は、RAWスプール及びEMFスプールのいずれに対しても適用できるため、以下では区別しない。
上記のように、UI部はユーザから印刷設定を受け付けてDEVMODE構造体(以下、単にDEVMODEという)に格納し、アプリケーションに送出する。このアプリケーションは、文書作成ソフトやブラウザソフトのように印刷対象となる文書データを作成するソフトウェアの総称である。
アプリケーションはグラフィック部にDEVMODE及び文書データを送出する。ここで、文書データには、文書の内容だけでなく、原稿サイズ、原稿の向きなどの書誌的事項が含まれている。
プリンタドライバのグラフィック部は、DEVMODE及び文書データから、描画データ(RAWデータ)、Job用制御データ及びPage用制御データを作成し、プリンタに送出する。Job用制御データとPage用制御データについては後述する。プリンタはJob用制御データ及びPage用制御データを解釈して描画データ(RAWデータ)を印刷することができる。
図4は、本実施例のプリンタドライバが印刷データ等を生成する手順を模式的に説明する図の一例である。図4において、グラフィック部が描画データ、Job用制御データ及びPage用制御データを作成するまでの手順は図3と同様である。ただし、これらには後に"int"という識別用の接頭語が付与される。
ユーザはアプリケーションに対し印刷指示の操作を行う場合、印刷開始前にPCが「印刷プレビュー画面を表示」するように設定しておく。このプレビュー表示のためのアプリケーションが上記の特定のアプリケーションに相当し、以下、Preview.exeという。
(i)グラフィック部が描画データ、Job用制御データ及びPage用制御データを作成するとアプリケーションに通知する。アプリケーションは印刷を終了する。グラフィック部は「印刷プレビュー画面を表示」の設定に基づき、いったん印刷を終了させる。
(ii) また、UI部は、アプリケーションから印刷終了の通知により、「印刷プレビュー画面を表示」の設定に基づき、Preview.exeを起動させる(kickする)。
(iii)Preview.exeはすでに作成されている描画データ、Job用制御データ及びPage用制御データを利用してプレビュー表示する。ユーザは、プレビュー表示を目視して印刷の仕上がりを確認すると共に、設定を忘れていた集約、ステープル、パンチ、製本などの印刷設定を新たに設定したり修正したりすることができる。
(iv) ユーザが印刷を指示すると、Preview.exeは、Preview.exeがプリンタドライバを呼び出すことを記録するため、DEVMODEに「プレビュー設定」を書き込む。プレビュー設定については後述する。Preview.exeはユーザによる新たな印刷設定を反映したDEVMODE´をUI部に送出する。
(v)次にPreview.exeはグラフィック部に印刷指示する。このため、Preview.exeはグラフィック部に、描画データ、Job用制御データ及びPage用制御データを送出する。グラフィック部はUI部を介してDEVMODE´を参照するので、DEVMODE´のプレビュー設定によりPreview.exeから呼び出されたことを検出できる。
(vi)グラフィック部は、まず、DEVMODE´を参照して、特定のアプリケーション(この場合はPreview.exe)から呼び出されたか否かを判定する。そして、特定のアプリケーションから読み出されたと判定すると、以下のように動作する。
a.DEVMODE´から新たにJob用印刷設定を作成する。これにより、プレビュー表示でユーザが設定した印刷設定を反映できる。
b.Preview.exeから取得したPage用制御データをそのまま転用する(新たに作成しない)。Page用制御データに必要な全ての情報がDEVMODE´に含まれていないので、Preview.exeから呼び出された場合はPage用制御データを生成しない。
c.描画データについてPreview.exeから取得した描画データをそのまま転用する。グラフィック部がすでに作成した描画データは、Preview.exeが表示しても変更がないので、グラフィック部が再度、描画データを作成する必要はない。したがって、この段階ではグラフィック部は描画データに何もしない。
(vii) グラフィック部は、描画データ、Job用制御データ及びPage用制御データをプリンタに送出する。
以上のように、本実施形態のプリンタドライバは、DEVMODEのプレビュー設定により特定のアプリケーションから呼び出されたことを検出して、特殊な処理を行うことが可能になる。
〔構成例〕
図5(a)は印刷システム400の概略構成図の一例を、図5(b)はPC100のハードウェア構成図の一例をそれぞれ示す。PC(Personal Computer)100とプリンタ200がネットワーク300を介して接続されている。PC100がユーザの操作を受け付け、文書作成ソフトなどのアプリケーションが、GDI、DDI及びプリンタドライバ等を利用して印刷を要求する。プリンタドライバは、後述する手順で印刷データを作成してプリンタ200に送信する。プリンタ200は画像形成機能を有していれば、コピー機、複写機、FAX装置などその呼称は問われない。また、プリンタ200は電子写真方式の画像形成機能又はインクジェット方式の画像形成機能のどちらの機能を有していてもよい。また、PC(Personal Computer)100とプリンタ200はUSBケーブルなどで直接接続されていてもよい。
PC100は、それぞれバスで相互に接続されているCPU11、ROM12、RAM13、外部I/F14、通信装置15、入力装置16、表示制御部17及び記憶装置18を有する。CPU11は、OS(Operating System)10、アプリケーション31、プリンタドライバ30、及び、Preview.exe32を記憶装置18から読み出して、RAM103を作業メモリにして実行する。
アプリケーション31は、プリンタ200に印刷要求するものであればよく、例えば、文書作成ソフト、ブラウザソフト、プレゼン資料作成ソフト等、種々のものがある。印刷対象となる文書データを、作成、編集、表示、管理などして、印刷可能なアプリケーションであればどのようなものでもよい。なお、文書データは、文字や記号、数値だけを含むものではなく、画像、写真など種々の印刷対象物を含む。
RAM13は必要なデータを一時保管する作業メモリ(主記憶メモリ)になり、ROM12にはBIOSや初期設定されたデータ、スタートプログラム等が記憶されている。
外部I/F14はUSBケーブル等のケーブルや、可搬型の記憶媒体20を装着するインタフェースである。通信装置15は、LANカードやイーサネット(登録商標)カードであり、CPU11からの指示によりプリンタ200にパケットデータ(本実施形態では主に印刷データ)を送信する。
入力装置16は、キーボード、マウスなど、ユーザの様々な操作指示を受け付けるユーザインターフェイスである。タッチパネルや音声入力装置を入力装置とすることもできる。表示制御部17は、アプリケーション31が指示する画面情報に基づき所定の解像度や色数等でディスプレイ19の描画を制御する。ディスプレイ19は、液晶や有機ELなどのFPD(Flat Panel Display)である。
記憶装置18は、HDD(Hard Disk Drive)やフラッシュメモリなどの不揮発メモリを実体とし、OS10、プリンタドライバ30、アプリケーション31、及び、Preview.exe32を記憶している。
記憶媒体20は、例えば、SDカードやUSBメモリなど不揮発性のメモリである。OS10、アプリケーション31、Preview.exe32、及び、プリンタドライバ30は、記憶媒体20に記録された状態又は不図示のサーバからダウンロードされる態様で配布される。
図6(a)はプリンタドライバ30の機能ブロック図の一例を示す。プリンタドライバ30は、UI部34、描画部301、及び、連携部35を有する。また、グラフィック部33は描画部301及び印刷確認部302を有する。なお、本実施形態の説明に必要でない機能は省略している。
・UI部34は、DEVMODEとすでに格納されている印刷設定に基づき印刷設定画面(印刷ダイアログ)をディスプレイに表示し、ユーザが設定した印刷設定を受け付ける。UI部34は印刷設定をDEVMODEに格納し、アプリケーションに送出する。
・印刷確認部302は、DEVMODEを参照して、呼び出し元のアプリケーションが特定のアプリケーションか否かを判定する。
・連携部35は、Preview.exe32との通信を行う。例えば、描画部301が生成した印刷データをPreview.exe32に送出し、Preview.exe32からDEVMODE´を取得してUI部34に送出する。
図6(b)はPreview.exe32の機能ブロック図の一例を示す。Preview.exe32はUI部36を有する。このUI部36はプリンタドライバ30のUI部34と同じクラスから生成された別のインスタンスである。Preview.exe32のUI部36はプリンタドライバ30が生成した印刷を用いてプレビュー表示を行うことができる。
図7は、PC100の機能ブロック図の一例を示す。PC100は、アプリケーション31、GDI(Graphics Device Interface)38、プリンタドライバ30、Preview.exe32、及び、スプーラ37を有する。
GDI38はWindows(登録商標)系のOS10のプログラムとして提供される。GDI38は、GDIコールをDDIコールに変換してグラフィック部33に送出する。スプーラ37は、印刷データをスプールしてプリンタ200に送出する。
<プレビュー表示>
本実施例ではユーザが印刷設定画面で「印刷プレビュー画面を表示」を選択することで、Preview.exe32が動作する。
図8(a)は、印刷設定画面に表示されるプレビュー表示のための設定例を示す図の一例である。例えば、いくつかのタブのうちの1つの「ユーティリティ」タブに「印刷プレビュー画面を表示」というチェックボックス501が設けられている。ユーザがチェックボックス501をチェックすると、UI部34はDEVMODEに「印刷プレビュー画面を表示」が選択されたことを登録しておく。
図8(b)は、印刷開始後に表示されるプレビュー表示画面500の一例を示す図である。プレビュー欄502にアプリケーション31が表示する文書データがプレビュー表示されている。
また、プレビュー表示画面500でユーザは、
・印刷用紙サイズ503
・印刷部数504
・カラー/白黒505
・両面/製本506
・集約507
・ソート508
・ステープル509
の各設定を編集することができる。
また、プレビュー表示画面500でユーザは、ジョブの編集を行うことができる。ジョブの編集では、複数のジョブの印刷順を変えたり、複数のジョブを同じ設定で印刷したり、複数のジョブを1つのジョブとして印刷することができる。ジョブの編集により、いくつかのジョブの印刷直前の状態にしておき、まとめて印刷したり同じ設定で印刷することができる。
印刷設定画面で一度、ユーザが設定した「印刷プレビュー画面を表示」はDEVMODEに登録されているので、ユーザが印刷設定を確認せずに印刷開始の操作を行っても、プレビュー表示画面500が表示される。このため、ユーザは印刷設定を確認でき、誤った印刷設定で印刷してしまい用紙を無駄にする状況を回避できる。
<1〜4>
以下、図7の各ブロックの動作について順に説明する。まず、図7の1〜4までの処理は、ほぼ従来の印刷手順となる。
1:アプリケーション31はDEVMODEをUI部34に送出することで印刷設定する。
2:アプリケーション31はGDIコールにより、GDI38に印刷命令を送出する。
3:GDI38はGDIコールをDDIコールへ変換し、グラフィック部33へ印刷データの生成を要求する。
4: 印刷確認部302は、DEVMODEを参照して、呼び出し元のアプリケーション31が特定のアプリケーションか否かを判定する。
図9(a)は、DEVMODEの一例を説明するための図の一例である。DEVMODEは、Public領域とPrivate領域の2つの領域を有する。Public領域はプリンタ200やプリンタドライバ30に関係なく共通の領域であり、OS上で動作する各プリンタドライバ30に対して共通のメンバ変数が定義されている。Private領域は、そのメンバ変数をプリンタドライバ30ごとに定義可能ないわゆる拡張領域である。図ではPublic領域にメンバ変数の一部として、dmDuplex、dmReserved1及びdmReserved2が、Private領域にmysetting01が図示されている。
Private領域のメンバ変数はそれぞれに設定される値により意味が規定されている。dmDuplex に"DMDUP_SIMPLEX"と設定されると「両面印刷しない」を意味し、"DMDUP_HORIZONTAL"が設定されると「水平方向に裏返して両面印刷する」を意味し、"DMDUP_VERTICAL"が設定されると「垂直方向に裏返して両面印刷する」を意味する。また、Private領域のメンバ変数にはプリンタドライバ30が独自の意味を持たせることができるので、例えばmysetting01に"Yes"と設定されると「白紙節約する」を意味し、"No"と設定されると「白紙節約しない」を意味する。
一方、dmReserved1、2はPublic領域においてプリンタドライバ30が参照しないメンバ変数(現在は使用されない予約領域)であり、通常は"0x00000000"が設定される。
後述するように、本実施形態では、Preview.exe32がdmReserved1、2の少なくともどちらかに"0x00000000"以外の値を設定する。よって、印刷確認部302はdmReserved1,2を参照して、"0x00000000"が設定されていると一般のアプリケーション31がグラフィック部33を呼び出したと判定し、"0x00000000"以外が設定されていると特定のアプリケーションがグラフィック部33を呼び出したと判定する。
描画部301は、一般のアプリケーション31がグラフィック部33を呼び出したと判定すると、次の描画処理を行う。
図10は、描画部301が行う描画処理の処理手順を示すフローチャート図の一例である。上述したように、描画部301は印刷データとして描画データ及び制御データを生成する。しかし、プリンタ200が解釈する描画データ及び制御データと、Preview.exe32が解釈する描画データ及び制御データは若干、フォーマットが異なっている。Preview.exe32が解釈する描画データ及び制御データは、プリンタドライバ30が内部的に使用するフォーマットであり中間データとなる。PC100がプレビュー表示するか否かにより描画部301の内部処理を切り換えるよりも、処理を2段階に分ける方が実装が容易である。このため、描画部301は、ユーザが「印刷プレビュー画面を表示」をしたか否かに関係なくPreview.exe32に対応するため、前処理と後処理の2段階で印刷データを生成する。前処理と後処理で得られる印刷データを区別するため、前処理で得られる印刷データに"int(Internal)"を付加した。
そして、ユーザが「印刷プレビュー画面を表示」を設定したか否かに応じて以下のタイミングで、描画部301は前処理と後処理をそれぞれ実行する。
ユーザが「印刷プレビュー画面を表示」をした場合:描画部301は前処理を行った段階で処理を停止する。Preview.exe32は、1度目の前処理により作成された描画データ及び制御データを用いてプレビュー表示する。プレビュー表示後、描画部301はPreview.exe32からint印刷データを取得して、2度目の前処理を行い、次いで後処理を行う。
ユーザが「印刷プレビュー画面を表示」をしない場合:描画部301は前処理を行い、次いで後処理を実行する。
すなわちいずれの場合も前処理が行われるが、後述するように、ユーザが「印刷プレビュー画面を表示」を設定した場合の1度目の前処理と2度目の前処理は処理内容が異なっている。ユーザが「印刷プレビュー画面を表示」を設定した場合の1度目の前処理と、ユーザが「印刷プレビュー画面を表示」を設定しない場合の前処理は同じである。また、後処理の内容はユーザが「印刷プレビュー画面を表示」を設定してもしなくても同様である。
図11は、前処理と後処理により得られる印刷データを説明する図の一例である。制御データはプリンタ200にジョブ全体及びページ単位の制御を通知するPJLなどで記述された印刷コマンドであるので、それぞれJob 制御データ、Page 制御データと称することとする。描画データはアプリケーション31が生成した文書データがプリンタ200のPDLによるRAWデータに変換されたものである。図11の印刷データは文書データが2ページのものである。Job int制御データは、1つのジョブに1つあればよいため、1つの印刷データに1つしか存在しない。これに対し、Page int制御データとint描画データはページ毎に生成されるので、1つの印刷データにページ数分だけ含まれる。
図11に示すように、描画部301は、一般のアプリケーション31から呼び出された場合、前処理において以下のデータを生成する。
(a)一般:DEVMODEからJob int制御データを作成する。
(b)一般:DEVMODEからPage int制御データを作成する。
(c)一般:文書データをint描画データに変換する。
また、描画部301は、後処理において以下のデータを生成する。
(d): Job int制御データからJob 制御データを作成する。
(e): Page int制御データからPage 制御データを作成する。
(f): int描画データから描画データを作成する。
図12(a)はJob int制御データの一例を、図12(b)はPage int制御データの一例をそれぞれ示す。Job int制御データには、印刷解像度、用紙サイズ、余白、部数、用紙トレイ、用紙種別、集約など、ジョブ全体の印刷の制御データが登録されている。
これに対し、Page int制御データには、原稿サイズ、原稿向き、原稿解像度、カラーモード、イメージ印刷の有無、などのページ単位の印刷の制御データが登録されている。原稿サイズ等の情報はDEVMODEやPreview.exe32に保持されていない情報である。
<5〜8>
図7に戻り、5〜8について説明する。5〜8はプレビュー表示するまでの処理である。描画部301は前処理を完了すると、アプリケーション31に通知する。DEVMODEに「印刷プレビュー画面を表示」が登録されているので、グラフィック部33はジョブを終了する。また、アプリケーション31はUI部に印刷終了を通知する。
5:プリンタドライバ30のUI部34は、DEVMODEを参照してPreview.exe32を立ち上げる。
6:Preview.exe32のUI部36は、プレビュー画面に表示するため、int印刷データ及びDEVMODEを連携部35へ要求する。
7:連携部35はプリンタドライバ30のグラフィック部33からint印刷データ及びDEVMODEを取得して、Preview.exe32のUI部36に送出する。
8:Preview.exe32のUI部36はint印刷データにより図8(b)のようなプレビュー表示を行う。
図13は、5〜8の処理を模式的に説明する図の一例である。図13では2つのプリンタドライバ30の処理の間に、Preview.exe32が介在している。プリンタドライバ30は上記の前処理と後処理を行うが、前処理の内容だけがPreview.exe32の前後で異なっている。図7の1〜4により左側のプリンタドライバ30の前処理が終了している。アプリケーション31はこの段階で、印刷処理から解放されている(JoBEndでファイルを保存する)。
Preview.exe32のUI部36は、int印刷データ及びDEVMODEを取得するので、以下の処理を行う。
(P1) プリンタドライバAPIにint印刷データを渡し、プレビュー表示を依頼する。
(P2) DEVMODE編集部にDEVMODEを渡し、ユーザが設定した印刷設定の受け付けとDEVMODEの編集を依頼する。
なお、プリンタドライバAPIやDEVMODE編集部は、ソフトウェア実装上の表現に過ぎず、Preview.exe32がプレビュー表示し、印刷設定を受け付けDEVMODEを編集してもよい。
ここで、DEVMODE編集部は、ユーザの印刷設定を変更したか否かに関わりなく、DEVMODEのメンバ変数のdmReserved1及びdmReserved2に所定の値を設定する。所定の値は、"0x00000000"以外であればよいが、ここでは"SA(0x53、0x41)"とする。
図9(b)はPreview.exe32が編集したDEVMODEを説明する図の一例である。dmReserved1及びdmReserved2に"SA"を意味する16進数の文字コードが設定されている。2つのメンバ変数に分ける必要はなく、dmReserved1又はdmReserved2のいずれかに"0x00000000"以外の所定の値を設定すればよい。これが上記のプレビュー設定である。
dmReserved1:0x53
dmReserved2:0x41
Public領域のメンバ変数はアプリケーションが設定することも可能な値であるため、アプリケーション(Preview.exe32)からdmReserved1、2に値を設定することができる。Private領域のメンバ変数に値を設定することは不可能ではないが、通常、アプリケーションはPrivate領域の中身を知ることはできない。このため、UI部やDEVMODEにアクセスするためのAPI等を使用せずに、プリンタのメーカ独自機能を使うことは困難であるが、本実施形態の手法では、アプリケーションが簡単にメーカ独自機能(プレビュー設定のこと)を設定することができる。
ユーザがプレビュー表示画面500から印刷設定やジョブ編集を行い、図8(b)の印刷ボタン510を押下すると、右側のプリンタドライバ30の処理が始まる。すなわち、Preview.exe32は、Escape()関数でint印刷データをGDI38に送信する。Escape()関数はGDI38で処理しきれない印刷指示をそのまま、プリンタドライバ30に送信するためのAPIである。
図14は、Preview.exe32がプリンタドライバ30に送信するint印刷データを模式的に説明する図の一例である。図14(a)は変更前のint印刷データを示し、図14(b)は変更後のint印刷データをそれぞれ示す。ここで、変更には、ユーザによる変更もdmReserved1及びdmReserved2による変更も含まれる。ユーザ又はPreview.exe32による変更を現すため、図14(b)ではDEVMODEがDEVMODE´になっている。図13の右側のプリンタドライバ30は、図14(b)のint印刷データに対し前処理及び後処理を行う。
<9〜14>
図7に戻り、9〜14について説明する。9〜14はPreview.exe32から受け取ったint印刷データをプリンタドライバ30がプリンタ200に送出するまでの処理である。
9:Preview.exe32のUI部36は、プリンタドライバ30のUI部34にDEVMODE´を送出する。例えば、CreateDC()の引数にDEVMODE´を指定する。
10:Preview.exe32のUI部36は、プリンタドライバ30のグラフィック部33にint印刷データを送出する。例えば、Escape()でDEVMODE´が含まれないint印刷データを送信する。
11:GDI38は2回目のGDIコールをDDIコールへ変換し、グラフィック部33に印刷データの生成を要求する。
12:グラフィック部33の印刷確認部302は、UI部34が取得したDEVMODE´を参照して、呼び出し元のアプリケーションが特定のアプリケーションか否かを判定する。今回は、DEVMODE´に図9(b)のプレビュー設定が登録されているので、印刷確認部302は特定のアプリケーション(Preview.exe32)から呼び出されたと判定する。
13:描画部301は、印刷確認部302の判定結果に応じて前処理を行い、次いで後処理を行う。描画部301は、印刷データをスプーラ37に送出する。
14:スプーラ37はプリンタ200へ印刷データを渡し、印刷指示を行う。
図15は、9〜14までの処理を模式的に説明する図の一例である。上記のように、Preview.exe32はDEVMODE´をUI部34に、int印刷データをグラフィック部33にそれぞれ送出している。描画部301はDEVMODE´が必要なので、UI部36はDEVMODE´を描画部301に送出する。なお、描画部301はOS10のシステム権限で動作し、UI部36はユーザ権限で動作するので、描画部301とUI部36は直接の通信はできないが、DEVMODE(又はDEVMODE´)には共通にアクセスできる。
この後、図13の右側のプリンタドライバ30の処理が開始される。上記のように、描画部301は、印刷確認部302が特定のアプリケーションから呼び出されたという判定結果に基づき、前処理において以下のデータを生成する。
(a)特定:DEVMODE´からJob int制御データを作成する。
(b)特定:Preview.exe32から取得したPage int制御データを転用する(DEVMODE´からPage int制御データを作成しない)。
(c)特定: int描画データを後処理に渡す。
すなわち、描画部301は特定のアプリケーション(Preview.exe32)から呼び出された場合、すでに作成されているint印刷データを取得し、処理が不要なデータに対しては処理をスキップする。
描画部301は、後処理において以下のデータを生成する。
(d): Job int制御データ(新たに作成されたもの)からJob 制御データを作成する。
(e): Page int制御データ(元のまま)からPage 制御データを作成する。
(f): int描画データ(元のまま)から描画データを作成する。
後処理により得られた印刷データにより、プリンタ200は従来どおり印刷することができる。
〔動作手順〕
図16は、PC100の動作手順を説明するシーケンス図の一例を示す。なお、図ではGDI38などを省略した。
S1:ユーザが操作することでアプリケーション31がUI部34を起動させ、ユーザは印刷設定を行う。アプリケーション31はUI部34に印刷設定する(DEVMODEを作成)。
S2:アプリケーション31はGDI38を介してグラフィック部33を呼び出し、印刷を開始する。
S2.1:グラフィック部33の描画部301は、DEVMODEを参照して、一般のアプリケーション31から呼び出された際の前処理(a)一般〜(c)一般を行う。DEVMODEと作成したint印刷データをファイルとして保存する。
S3:アプリケーション31はint印刷データが生成されるとUI部34に印刷終了を指示する。
S3.1:UI部34は、DEVMODEに「印刷プレビュー画面を表示」が設定されているので、Preview.exe32を起動する。
S.3.1.1:Preview.exe32はint印刷データ及びDEVMODEを取得する。
S3.1.2:Preview.exe32は、取得したint印刷データ及びDEVMODEを削除しておく。これは、すでにPreview.exe32がint印刷データ及びDEVMODEを確保したので、2つのint印刷データ及びDEVMODEが存在することを回避するためである。なお、削除はこのタイミングでなくプレビュー表示後でもよい。
S3.1.3:Preview.exe32はプレビュー表示する。
S3.1.4:Preview.exe32はDEVMODEのdmReserved1及びdmReserved2にプレビュー設定を行う。
S4:Preview.exe32は、UI部34に印刷開始を要求する。
S5:Preview.exe32は、Escape()関数でGDI38をコールして印刷を開始する。これにより、描画部301はDEVMODE´を参照して、(a)特定〜(c)特定及び後処理を行う。
以上のように、本実施形態のプリンタドライバ30は、特定のアプリケーションがDEVMODEにプレビュー設定することで、グラフィック部33は特定のアプリケーションから呼び出されたことを検出して、特殊な処理を行うことができる。
〔変形例〕
本実施例では、Preview.exe32がDEVMODEのdmReserved1及びdmReserved2にプレビュー設定したが、Public領域の他のメンバ変数にプレビュー設定することも可能である。
図17は、Public領域の他のメンバ変数に登録されるプレビュー設定の一例を示す図である。dmDisplayFrequencyは、ディスプレイの周波数をHz単位で指定するメンバ変数である。プリンタ200の印刷時にはこのメンバ変数は作用しない(印刷データの作成のためには参照されない)ので、Preview.exe32がプレビュー設定に利用することができる。dmDisplayFrequencyにはどのような値を設定してもよいが、通常は数値が設定されるので、Preview.exe32は数値以外の文字コード(例えば、Prev)などを設定すればよい。
このように、本実施例のプリンタドライバ30は、デバイスによっては使用しないDEVMODEのメンバ変数を使用して、グラフィック部33の処理内容を制御できる。
本実施例では、DEVMODEを使用しないで、グラフィック部33が呼び出したアプリケーションを判別するプリンタドライバ30について説明する。
アプケーションは文書データの印刷時、GDI38をStartDoc()関数でコールする。StartDoc()関数の書式は例えば、以下のようになる。
「int StartDoc(
HDC hdc, // デバイスコンテキストのハンドル
CONST DOCINFO *lpdi // ファイル名を指定する
); 」
なお、"hdc"は、すでにアプリケーション31がコールしたCreateDC() 関数の戻り値に含まれている。"DOCINFO"はDOCINFO構造体と呼ばれ、文書データの文書名と出力ファイルの文書名が指定される。"*lpdi"は、DOCINFO構造体へのポインタである。
図18(a)は、DOCINFO構造体の書式の一例を示す図である。
"cbSize"にはDOCINFO構造体のサイズが指定される。
"lpszDocName"には、文書データの名前が指定される。
"lpszOutput"には、出力ファイルの名前を表す文字列へのポインタが指定されるが、NULL としておくこともできる。
"lpszDataType"には、印刷ジョブを記録するためのデータ型を表す文字列が指定される。"fwType"は、印刷ジョブの追加情報が指定される。
アプリケーション31は、文書データの文書名を管理しているので、文書名は既知である。したがって、StartDoc()関数でGDIコールする際に、DOCINFO構造体の"lpszDocName"に文書名を設定しておくことで、GDI38に文書データの文書名を通知できる。
そして、GDI38はDDIコールでグラフィック部33を呼び出す際、DrvStartDoc()関数を使用する。
図18(b)は、DrvStartDoc()関数の書式の一例を示す図である。
"*pso"にはSURFOBJ構造体へのポインタが格納される。
"pwszDocName"には、印刷される文書データの文書名へのポインタが格納される。
"dwJobId"には、ジョブを一意に識別するためのJOBIDが格納される。
したがって、グラフィック部33は、DrvStartDoc()関数の引数pwszDocNameにより文書データの文書名を取得することができる。
そこで、特定のアプリケーション(Preview.exe32)がStartDoc()関数を呼び出す際、lpszDocNameに設定する文書データの文書名に特定の名前を付与することで、グラフィック部33は特定のアプリケーション(Preview.exe32)から呼び出されたと判定できる。
図19は、Preview.exe32が付与する文書名の一例を示す。Preview.exe32は、例えば「メモ帳−無題−」という文書データの文書名に対し、「_PREVIEW」のような接尾語を付加して、lpszDocNameに設定する。なお、文書作成ソフトなどのアプリケーション31が管理する文書名は、Job int制御データに含まれている。
なお、図19では、文書名に接尾語を付与したが、接頭語を付与してもよい。この場合、Preview.exe32は、例えば「メモ帳−無題」という文書データの文書名に対し、「PREVIEW−」のような接頭語を付与する。よって、lpszDocNameには「PREVIEW−メモ帳−無題」という文書名が付与される。
また、「PREVIEW」は一例であって、およそ、文書名の先頭や末尾にユーザが付けることない単語や用語であればよい。例えば、「Special_Application」などである。また、このような意味のある単語や用語である必要はなく、所定文字数以上の不作為の文字、記号、アルファベット、及び、数字の組み合わせなどでもよい。
図20は、PC100の動作手順を説明するシーケンス図の一例を示す。図20の処理はS3.1.4までは図16と同様である。
S1:ユーザが操作することでアプリケーション31がUI部34を起動させ、ユーザは印刷設定を行う。アプリケーション31はUI部34に印刷設定する(DEVMODEを作成)。
S2:アプリケーション31はGDI38を介してグラフィック部33を呼び出し、印刷を開始する。
S2.1:グラフィック部33の描画部301は、DEVMODEを参照して、一般のアプリケーション31から呼び出された際の前処理(a)一般〜(c)一般を行う。DEVMODEと作成したint印刷データをファイルとして保存する。
S3:アプリケーション31はint印刷データが生成されるとUI部34に印刷終了を指示する。
S3.1:UI部34は、DEVMODEに「印刷プレビュー画面を表示」が設定されているので、Preview.exe32を起動する。
S.3.1.1:Preview.exe32はint印刷データ及びDEVMODEを取得する。
S3.1.2:Preview.exe32は、取得したint印刷データ及びDEVMODEを削除しておく。これは、すでにPreview.exe32がint印刷データ及びDEVMODEを確保したので、2つのint印刷データ及びDEVMODEが存在することを回避するためである。なお、削除はこのタイミングでなくプレビュー表示後でもよい。
S3.1.3:Preview.exe32はプレビュー表示する。
S3.2:Preview.exe32は、GDI38をコールするまでに、lpszDocNameに「PREVIEW−」を付加した文書名を設定する。
S4:Preview.exe32はUI部34を起動させ、印刷設定する。本実施例ではユーザが印刷設定を変更しなければUI部34にはDEVMODEが送出される。
S5:Preview.exe32は、GDI38に対しStartDoc()関数をコールすることで印刷開始する。
S5.1:GDI38は、DrvStartDoc()関数によりグラフィック部33をDDIコールする。
これにより、描画部301はpwszDocNameを参照して、(a)特定〜(c)特定の処理及び後処理を行う。
以上のように、本実施形態のプリンタドライバ30では、特定のアプリケーションが文書データに特定の文書名を設定することで、グラフィック部33が特定のアプリケーションから呼び出されたことを検出して、特殊な処理を行うことができる。
30 プリンタドライバ
31 アプリケーション
32 Preview.exe
33 グラフィック部
34、36 UI部
35 連携部
37 スプーラ
38 GDI
100 PC
200 プリンタ
301 描画部
302 印刷確認部
400 印刷システム
特開2009‐230426号公報

Claims (12)

  1. アプリケーションからの印刷要求時に、印刷設定から設定情報を生成する印刷設定受け付け手段と、
    アプリケーションから取得した文書データを前記設定情報に基づきプリンタの印刷データに変換する画像処理手段と、
    前記画像処理手段を呼び出したアプリケーションが、特定アプリケーションか否かを、
    前記設定情報に前記特定アプリケーションにより記述された特定アプリ情報があるか否か、又は、
    前記画像処理手段を呼び出す関数の引数に特定アプリ情報が含まれるか否か、
    の少なくともいずれかにより判別するアプリケーション判別手段と、を有し、
    前記アプリケーション判別手段が、前記特定アプリケーションにより呼び出されたと判別した場合、前記画像処理手段は、前記特定アプリケーション以外のアプリケーションにより呼び出された場合と異なる方法で前記印刷データを生成する、
    を有する情報処理装置。
  2. 前記特定アプリケーションは、前記印刷設定受け付け手段から呼び出されて起動し、文書データを生成しないアプリケーションである、
    ことを特徴とする請求項1記載の情報処理装置。
  3. 前記アプリケーションは、前記画像処理手段が前記印刷データを生成した段階で印刷終了を前記印刷設定受け付け手段に通知し、前記印刷設定受け付け手段は前記特定アプリケーションを起動させる、
    ことを特徴とする請求項2記載の情報処理装置。
  4. 前記特定アプリケーションは、前記画像処理手段が生成した前記印刷データを表示装置に表示するプレビュー用のアプリケーションである、
    ことを特徴とする請求項1〜3いずれか1項記載の情報処理装置。
  5. 前記設定情報の前記特定アプリ情報は、所定のOS(Operating System)上で動作する複数のプリンタドライバに対して共通の印刷条件を提供するDEVMODEのメンバ変数として記述されている、
    ことを特徴とする請求項1〜4いずれか1項記載の情報処理装置。
  6. 前記設定情報の前記特定アプリ情報は、前記DEVMODEの前記メンバ変数のうちdmReserved1又はdmReserved2に記述されている、
    ことを特徴とする請求項5項記載の情報処理装置。
  7. 前記設定情報の前記特定アプリ情報は、前記DEVMODEの前記メンバ変数のうち、印刷時に使用されないDisplay専用変数に記述されている、
    ことを特徴とする請求項5項記載の情報処理装置。
  8. 前記画像処理手段を呼び出す関数の引数に書き込まれる前記特定アプリ情報は、前記特定アプリケーションがOSを呼び出す第1関数、及び、OSが前記画像処理手段を呼び出す第2関数に記述されている、
    ことを特徴とする請求項1項記載の情報処理装置。
  9. 前記特定アプリ情報は、文書データの文書名の先頭又は末尾に記述されている、ことを特徴とする請求項8項記載の情報処理装置。
  10. 前記画像処理手段は、前記特定アプリケーションにより呼び出されたと判別しない場合、前記設定情報及び文書データから印刷データを生成し、
    前記特定アプリケーションにより呼び出されたと判別した場合、前記特定アプリケーションにより呼び出される前に生成した印刷データの一部を転用して印刷データを生成する、ことを特徴とする請求項1〜9いずれか1項記載の情報処理装置。
  11. コンピュータに、
    アプリケーションからの印刷要求時に、受け付けた印刷設定から設定情報を生成する印刷設定受け付けステップと、
    画像処理手段を呼び出して、アプリケーションから取得した文書データを前記設定情報に基づきプリンタの印刷データに変換する画像処理ステップと、
    前記画像処理手段を呼び出したアプリケーションが、特定アプリケーションか否かを、
    前記設定情報に前記特定アプリケーションにより記述された特定アプリ情報があるか否か、又は
    前記画像処理手段を呼び出す関数の引数に特定アプリ情報が含まれるか否か、
    の少なくともいずれかにより判別するアプリケーション判別ステップと、
    前記アプリケーション判別ステップにより、前記画像処理手段が前記特定アプリケーションにより呼び出されたと判別された場合、前記特定アプリケーション以外のアプリケーションにより呼び出された場合と異なる方法で前記印刷データを生成するステップと、
    を実行させるプログラム。
  12. 請求項11記載のプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
JP2011196124A 2011-09-08 2011-09-08 情報処理装置、プログラム、記憶媒体 Expired - Fee Related JP5807460B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011196124A JP5807460B2 (ja) 2011-09-08 2011-09-08 情報処理装置、プログラム、記憶媒体
US13/590,589 US8928933B2 (en) 2011-09-08 2012-08-21 Information processing apparatus for generating printing data by different methods, computer readable recording medium and method of controlling the information processing apparatus
CN201210323713.2A CN102999303B (zh) 2011-09-08 2012-09-04 信息处理装置以及控制信息处理装置的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011196124A JP5807460B2 (ja) 2011-09-08 2011-09-08 情報処理装置、プログラム、記憶媒体

Publications (2)

Publication Number Publication Date
JP2013058088A true JP2013058088A (ja) 2013-03-28
JP5807460B2 JP5807460B2 (ja) 2015-11-10

Family

ID=47829597

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011196124A Expired - Fee Related JP5807460B2 (ja) 2011-09-08 2011-09-08 情報処理装置、プログラム、記憶媒体

Country Status (3)

Country Link
US (1) US8928933B2 (ja)
JP (1) JP5807460B2 (ja)
CN (1) CN102999303B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015041268A (ja) * 2013-08-22 2015-03-02 株式会社リコー プログラム、情報処理装置および画像処理システム
JP2017168884A (ja) * 2016-03-14 2017-09-21 株式会社リコー 情報処理装置、プログラム、システムおよび情報処理方法
JP2020120390A (ja) * 2020-04-02 2020-08-06 株式会社リコー 情報処理装置、プログラム、システムおよび情報処理方法
JP2021093170A (ja) * 2021-02-04 2021-06-17 株式会社リコー プログラム、情報処理方法、情報処理装置および情報処理システム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005173913A (ja) * 2003-12-10 2005-06-30 Seiko Epson Corp 印刷システム、プリンタドライバ及びプリンタ
JP2007122381A (ja) * 2005-10-27 2007-05-17 Sharp Corp 画像形成制御装置、制御プログラムおよびコンピュータ読取可能な記録媒体

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3984890B2 (ja) * 2001-09-14 2007-10-03 キヤノン株式会社 印刷制御装置および方法、コンピュータプログラム、記憶媒体
US20030184781A1 (en) * 2002-03-27 2003-10-02 Laughlin John D. Adjusting printer driver settings
JP4886437B2 (ja) * 2006-09-08 2012-02-29 キヤノン株式会社 画像処理装置、ジョブ処理方法、記憶媒体、プログラム
JP5063101B2 (ja) * 2006-12-19 2012-10-31 キヤノン株式会社 情報処理装置、情報処理方法、プログラム
US8159701B2 (en) * 2007-07-17 2012-04-17 Xerox Corporation Printer driver, apparatus and methods for conrolling a printer from a devmode data structure
JP2009151702A (ja) * 2007-12-21 2009-07-09 Canon Inc 情報処理装置、情報処理方法、及びプログラム
JP2010140459A (ja) 2008-02-22 2010-06-24 Ricoh Co Ltd プログラムと印刷データ変換装置とコンピュータ読み取り可能な記録媒体
JP2009230426A (ja) 2008-03-21 2009-10-08 Ricoh Co Ltd 情報処理装置、情報処理方法、及びプログラム
JP5760441B2 (ja) 2011-01-06 2015-08-12 株式会社リコー 印刷制御プログラム、情報処理装置、印刷システム及び印刷装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005173913A (ja) * 2003-12-10 2005-06-30 Seiko Epson Corp 印刷システム、プリンタドライバ及びプリンタ
JP2007122381A (ja) * 2005-10-27 2007-05-17 Sharp Corp 画像形成制御装置、制御プログラムおよびコンピュータ読取可能な記録媒体

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015041268A (ja) * 2013-08-22 2015-03-02 株式会社リコー プログラム、情報処理装置および画像処理システム
JP2017168884A (ja) * 2016-03-14 2017-09-21 株式会社リコー 情報処理装置、プログラム、システムおよび情報処理方法
JP2020120390A (ja) * 2020-04-02 2020-08-06 株式会社リコー 情報処理装置、プログラム、システムおよび情報処理方法
JP2021093170A (ja) * 2021-02-04 2021-06-17 株式会社リコー プログラム、情報処理方法、情報処理装置および情報処理システム
JP7238914B2 (ja) 2021-02-04 2023-03-14 株式会社リコー プログラム、情報処理方法、情報処理装置および情報処理システム

Also Published As

Publication number Publication date
US20130063737A1 (en) 2013-03-14
JP5807460B2 (ja) 2015-11-10
CN102999303B (zh) 2015-10-28
CN102999303A (zh) 2013-03-27
US8928933B2 (en) 2015-01-06

Similar Documents

Publication Publication Date Title
US7839531B2 (en) Printing control method
KR101064065B1 (ko) 정보 처리 장치, 제어 방법, 및 기억 매체
US9361056B2 (en) Information processing apparatus and method for generating a conflict confirmation print job
US8842338B2 (en) Printer driver
US9135528B2 (en) Information processing apparatus, job processing method in information processing apparatus, and storage medium
EP2388685B1 (en) Information processing apparatus and control method thereof, and storage medium
JP5807460B2 (ja) 情報処理装置、プログラム、記憶媒体
JP4174381B2 (ja) 情報処理装置、分散印刷制御方法及び分散印刷制御プログラム
JP6575270B2 (ja) 印刷設定支援装置及びプログラム
JP3884876B2 (ja) 情報処理装置、情報処理方法及びコンピュータ読み取り可能なプログラムが格納された記憶媒体
JP2007026054A (ja) 情報処理装置及び情報処理装置を制御するプログラム及び記憶媒体
JP6827738B2 (ja) 制御方法、プログラム及び情報処理装置
JP6234417B2 (ja) 情報処理装置及びその制御方法とプログラム
JP2002251268A (ja) 情報処理装置および該装置のデータ処理方法およびデータ処理プログラムおよび該プログラムを格納した記憶媒体
JP4054544B2 (ja) 情報処理装置、情報処理方法、印刷制御プログラム、印刷処理装置、印刷処理方法及び印刷処理プログラム
JP6437076B2 (ja) 情報処理装置及びその制御方法とプログラム
JP7171227B2 (ja) 情報処理装置、その制御方法およびアプリケーション
US8160469B2 (en) Information processing apparatus, method for controlling the information processing apparatus, and storage medium
JP2004240850A (ja) 印刷制御装置、印刷制御方法及び実行プログラムを格納した媒体
JP2007079743A (ja) 情報処理装置及びその制御方法、プログラム
JP5440254B2 (ja) 情報処理装置,印刷装置,印刷システム,印刷制御プログラム,および記録媒体
JP2006338166A (ja) 情報処理装置及びその制御方法、プログラム
JP2008123345A (ja) 情報処理装置、情報処理方法およびプログラム、並びにそのプログラムを格納した記憶媒体
JP2005159764A (ja) 記録方法及び装置及びプログラム及び記憶媒体
JP2007115026A (ja) 印刷制御装置、印刷制御方法、印刷制御プログラム及び記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140711

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150512

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150707

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150824

R151 Written notification of patent or utility model registration

Ref document number: 5807460

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees