Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4785580B2 - 画像形成装置及びその制御方法、プログラム - Google Patents
[go: Go Back, main page]

JP4785580B2 - 画像形成装置及びその制御方法、プログラム - Google Patents

画像形成装置及びその制御方法、プログラム Download PDF

Info

Publication number
JP4785580B2
JP4785580B2 JP2006075550A JP2006075550A JP4785580B2 JP 4785580 B2 JP4785580 B2 JP 4785580B2 JP 2006075550 A JP2006075550 A JP 2006075550A JP 2006075550 A JP2006075550 A JP 2006075550A JP 4785580 B2 JP4785580 B2 JP 4785580B2
Authority
JP
Japan
Prior art keywords
printer driver
print
print data
application
printer
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
JP2006075550A
Other languages
English (en)
Other versions
JP2007249859A (ja
JP2007249859A5 (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 JP2006075550A priority Critical patent/JP4785580B2/ja
Priority to US11/687,194 priority patent/US8094332B2/en
Publication of JP2007249859A publication Critical patent/JP2007249859A/ja
Publication of JP2007249859A5 publication Critical patent/JP2007249859A5/ja
Application granted granted Critical
Publication of JP4785580B2 publication Critical patent/JP4785580B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/126Job scheduling, e.g. queuing, determine appropriate device
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • G06F21/608Secure printing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/1222Increasing security of the print job
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1238Secure printing, e.g. user identification, user rights for device usage, unallowed content, blanking portions or fields of a page, releasing held jobs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1239Restricting the usage of resources, e.g. usage or user levels, credit limit, consumables, special fonts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)

Description

本発明は、印刷データを受信して、印刷を行う画像形成装置及びその制御方法、プログラムに関するものである。
ホストコンピュータ上のアプリケーションから画像やテキストを印刷装置にて印刷する際には、図1に示すような構成が一般的である。
即ち、ホストコンピュータ3000上のアプリケーション101は、グラフィクスエンジン103に対して描画データを渡し、その描画データはグラフィクスエンジン103にて加工されてからプリンタドライバ104に渡される。次に、プリンタドライバ104にて、プリンタ1500に対する印刷データ(例えば、PDL:Page Description Language)を生成し、その印刷データはスプーラ105に格納された後、プリンタ1500に送られるという構成である。
特に、グラフィクスエンジン103は、アプリケーション101で作成された描画データの解像度を変換したり、プリンタドライバ104の処理能力に合わせてシミュレート処理等の描画データの加工を行う。これによって、アプリケーション101とプリンタドライバ104が互いに非依存な関係で動作することができる。このグラフィクスエンジン103は、通常、OS(Operating System)102の一部として提供される。
一方、このグラフィクスエンジンは必ずしも一つであるとは限らず、二つ以上のグラフィクスエンジンが共存する構成が存在する。
例えば、2005年米国シアトルにてWinHEC 2005というハードウェアエンジニアリングカンファレンスがMicrosoft社によって開催された。この場にて、Microsoft社の新しいOS(Windows(登録商標) Vista)が図2に示すような2つのグラフィクスエンジン(GDI202、WPF212)が共存する構成になることが紹介されている(非特許文献1)。尚、WPFとは、Windows(登録商標) Presentation Foundationの略称である。
従来のMicrosoft社の印刷処理システムは、Win32 APIというAPIを使用するアプリケーションからGDIと呼ばれるグラフィクスエンジンを活用して、GDIから呼び出されるプリンタドライバにて描画データから印刷データを作成する。この印刷処理フローを、GDIプリントパスと称している。
ここで、APIは、Application Programming Interfaceの略称である。また、GDIは、Graphic Device Interfaceの略称である。また、以下では、Win32 APIを使用するアプリケーションを、Win32アプリケーション201と略称する。また、GDIから呼び出されるプリンタドライバを、GDIプリンタドライバ203と略称する。
一方、Windows(登録商標) Vistaでは、従来のGDIプリントパスに加え、XPSプリントパスという新しい印刷処理フローが追加される。XPSプリントパスとは、WinFx APIを使用するアプリケーションからWPFと呼ばれるグラフィクスエンジンを活用して、XPS形式の描画データをプリンタドライバにて印刷データに変換する印刷処理フローである。
ここで、XPSは、XML Paper Specificationの略称である。また、以下では、WinFx APIを使用するアプリケーションを、WinFxアプリケーション211と略称する。また、XPS形式の描画データをプリンタドライバを、XPSプリンタドライバ213と略称する。
このように、Windows(登録商標) VISTAにおいて、アプリケーションは、Win32アプリケーション201とWinFxアプリケーション211の2種類に区別される。また、グラフィクスエンジンはGDI202とWPF212の2つがOS102上に存在する。
ここで、Win32アプリケーション201はGDI202に対して描画データを渡し、WinFXアプリケーション211はWPF212に対して描画データを渡す。また、プリンタドライバは、GDIプリンタドライバ203とXPSプリンタドライバ213の2種類に区別される。GDIプリンタドライバ203は、GDI202から描画データを受け取りプリンタ1500に対する印刷データに変更する。また、XPSプリンタドライバ213は、WPF212から描画データを受け取りプリンタ1500に対する印刷データに変更する。そして、プリンタドライバで作成された印刷データはスプーラ105を経てプリンタ1500に送信される。
更に、このGDI202とWPF212といったグラフィクスエンジンは、互いに連携することができる。そして、この連携により、Win32アプリケーション201からXPSプリンタドライバ213に描画データを渡すことができる。一方で、WinFxアプリケーション211からGDIプリンタドライバ203に描画データを渡すことができる。
図3にて、Windows(登録商標) VISTAにおける2つのグラフィクスエンジンの連携の仕組みを説明する。
印刷処理フロー(1)は、従来のGDIプリントパスを示している。Win32アプリケーション201から渡される描画データは、GDI202にてEMF(Enhanced Metafile)形式でEMFスプールファイル301として格納される。その後、GDIプリンタドライバ203にて印刷データへの変換が行われる。
印刷処理フロー(4)は、Windows(登録商標) Vistaで追加されるXPSプリントパスを示している。WinFxアプリケーション211から渡される描画データは、WPF212にてXPSスプールファイル311として格納される。その後、XPSプリンタドライバ213にて印刷データへの変換が行われる。
印刷処理フロー(3)は、WinFxアプリケーション211からGDIプリンタドライバ203で印刷する場合の印刷処理フローを示している。WinFxアプリケーション211から渡される描画データは、WPF212を経由してXPS→GDI変換モジュール312にて、EMF形式の描画データに変換され、EMFスプールファイル301として格納される。その後、GDIプリンタドライバ203にて印刷データへの変換が行われる。
印刷処理フロー(2)は、Win32アプリケーション201からXPSプリンタドライバ213で印刷する場合の処理フローを示している。Win32アプリケーション201から渡される描画データは、GDI202を経由してGDI→XPS変換モジュール302にてXPS形式の描画データに変換され、XPSスプールファイル311として格納される。その後、XPSプリンタドライバ213にて印刷データへの変換が行われる。
このように、Windows(登録商標) Vistaにおいては、4つの印刷処理フローが用意されている。また、プリンタに対するプリンタドライバは、GDIプリンタドライバ203あるいはXPSプリンタドライバ213の一方を用意することで、Win32アプリケーション201及びWinFxアプリケーション211の両方からの印刷処理に対応できる。
一方、XPS形式そのものに注目すると、その特徴の一つとして、セキュリティ機能を持たせられる点があげられる。一例として、XPS形式の文書データに電子署名を付加し、文書データの改ざんを検知することが可能である。この電子署名付加機能を利用すると、プリンタと連携したセキュリティソリューションが考えられる。
例えば、プリンタに電子署名検証機能を持たせ、プリンタが受信したXPS文書に付加された電子署名を検証し、文書が改ざんされていないと判定された場合のみ印刷を実行するような印刷システムを構築することが可能となる。
尚、プリンタが実際に印刷を行うかどうかを受信した印刷データを解析して判定する技術は、例えば、特許文献1で提案されている。この特許文献1においては、その判定方法として、印刷データにより指定されたジョブ属性が処理可能かどうかという基準を採用している。
http://www.microsoft.com/whdc/device/print/default.mspx (Advances in Windows (登録商標)Printing : TWPR05001_WinHEC05.ppt) 特開2003−226061号公報
しかしながら、XPS形式とEMF形式は異なるため、図3の印刷処理フロー(2)及び印刷処理フロー(3)のように、描画データの変換が発生してしまう恐れのある印刷処理フローに対して印刷品質や機能面、印刷速度への課題が存在する。
印刷品質面では、例えば、印刷処理フロー(2)において、EMF形式でサポートされているROP演算(ラスターオペレーション処理演算)のような論理演算を含む描画データは、XPS形式ではサポートされていない。そのため、米国マイクロソフト社が決定する仕様によっては、そのような論理演算を含む描画データに対しては、GDI→XPS変換モジュール302で変換する際に論理演算情報が欠落してしまう恐れがある。XPSプリンタドライバ213には論理演算情報が削除された描画データが渡される場合、Win32アプリケーション201において意図された出力結果をXPSプリンタドライバ213で作成することができなくなる可能性がある。
また、逆に、印刷処理フロー(3)において、XPS形式においてサポートされている高度なグラフィクス描画データは、EMF形式においてサポートされていない。そのため、そのような描画データに対してはXPS→GDI変換モジュール312で変換する際に、Flatteringと呼ばれる局所的なBitmap化が行われる。その場合、グラフィクスデータがBitmapデータに変換されてしまうことにより、GDIプリンタドライバ203では元のオブジェクト属性が判断できなくなってしまい、最適な出力結果を作成することはできなくなる恐れがある。
そのため、印刷処理フロー(2)や(3)が使用された場合、プリンタから出力された印刷結果はユーザの意図したものから品質的に劣ってしまう恐れがある。
セキュリティ面においては、例えば、印刷処理フロー(3)において、XPS形式においてサポートされる電子署名情報は、EMF形式においてはサポートされていない。そのため、XPS形式の文書を印刷処理フロー(3)を経由することにより、文書に付加されていた電子署名情報は失われ、プリンタは従来の系で印刷せざるを得ない。この場合、悪意あるユーザが意図的にセキュリティ制限を回避して印刷を行うことを阻止できなくなる恐れがある。
本発明は上記の課題を解決するためになされたものであり、不正な印刷または印刷品質の低下を防止することができる画像形成装置及びその制御方法、プログラムを提供することを第1の目的とする。
また、本発明は、劣化した印刷品質での出力を極力減らすことができる画像形成装置及びその制御方法、プログラムを提供することを第2の目的とする。
上記の目的を達成するための本発明による画像形成装置は以下の構成を備える。即ち、
第1アプリケーションからの印刷指示に応じて、第1プリンタドライバが処理可能な第1描画データを生成する第1描画部と、第2アプリケーションからの印刷指示に応じて、第2プリンタドライバが処理可能な第2描画データを生成する第2描画部とが動作する情報処理装置で生成された印刷データを受信して、印刷を行う画像形成装置であって、
前記情報処理装置より印刷データを受信する受信手段と、
前記受信手段で受信した印刷データ、前記第1アプリケーションと第1プリンタドライバの組み合わせによる処理経路を介して生成された印刷データ、または、前記第2アプリケーションと第2プリンタドライバの組み合わせによる処理経路を介して生成された印刷データでないと解析された場合、前記受信手段によって受信された印刷データの印刷を禁止するように制御する制御手段と
を備える。
上記の目的を達成するための本発明による画像形成装置は以下の構成を備える。即ち、
第1アプリケーションからの印刷指示に応じて、第1プリンタドライバが処理可能な第1描画データを生成する第1描画部と、第2アプリケーションからの印刷指示に応じて、第2プリンタドライバが処理可能な第2描画データを生成する第2描画部とが動作する情報処理装置で生成された印刷データを受信して、印刷を行う画像形成装置であって、
前記情報処理装置より印刷データを受信する受信手段と、
前記受信手段で受信した印刷データ、前記第1アプリケーションと第2プリンタドライバの組み合わせによる描画変換を伴う処理経路を介して生成された印刷データ、または、前記第2アプリケーションと第1プリンタドライバの組み合わせによる描画変換を伴う処理経路を介して生成された印刷データであると解析された場合、前記描画変換を伴わない種類のプリンタドライバを特定する特定手段と、
前記特定手段によって特定された種類のプリンタドライバを含むデバイス情報を前記情報処理装置に対して通知する通知手段
を備える。
本発明によれば、不正な印刷または印刷品質の低下を防止することができる画像形成装置及びその制御方法、プログラムを提供できる。
また、本発明によれば、劣化した印刷品質での出力を極力減らすことができる画像形成装置及びその制御方法、プログラムを提供できる。
以下、本発明の実施の形態について図面を用いて詳細に説明する。
図3は、Windows(登録商標) VISTAにおける2つのグラフィクスエンジンの連携の仕組みを説明する。
印刷処理フロー(1)は、従来のGDIプリントパスを示している。Win32アプリケーション201から渡される描画データは、GDI202にてEMF形式でEMFスプールファイル301として格納される。その後、GDIプリンタドライバ203にて印刷データへの変換が行われる。
印刷処理フロー(4)は、Windows(登録商標) Vistaで追加されるXPSプリントパスを示している。WinFxアプリケーション211から渡される描画データは、WPF212にてXPSスプールファイル311として格納される。その後、XPSプリンタドライバ213にて印刷データへの変換が行われる。
印刷処理フロー(3)は、WinFxアプリケーション211からGDIプリンタドライバ203で印刷する場合の印刷処理フローを示している。WinFxアプリケーション211から渡される描画データは、WPF212を経由してXPS→GDI変換モジュール312にて、EMF形式の描画データに変換され、EMFスプールファイル301として格納される。その後、GDIプリンタドライバ203にて印刷データへの変換が行われる。
印刷処理フロー(2)は、Win32アプリケーション201からXPSプリンタドライバ213で印刷する場合の処理フローを示している。Win32アプリケーション201から渡される描画データは、GDI202を経由してGDI→XPS変換モジュール302にてXPS形式の描画データに変換され、XPSスプールファイル311として格納される。その後、XPSプリンタドライバ213にて印刷データへの変換が行われる。
このように、Windows(登録商標) Vistaにおいては、4つの印刷処理フローが用意されている。また、プリンタに対するプリンタドライバは、GDIプリンタドライバ203あるいはXPSプリンタドライバ213の一方を用意することで、Win32アプリケーション201及びWinFxアプリケーション211の両方からの印刷処理に対応できる。
図2、図3では、情報処理装置は、第1アプリケーションであるWin32アプリケーション201と第1プリンタドライバであるGDIプリンタドライバ203を備える。また、情報処理装置は、第2アプリケーションであるWinFXアプリケーション211と第2プリンタドライバであるXPSプリンタドライバ213を備える。
また、グラフィクスエンジンは、第1描画変換部であるGDI202と第2描画変換部であるWPF212の2つがOS102上に存在する。Win32アプリケーションは、GDI202に対して第1描画データであるGDI関数を渡し、WinFxアプリケーション211はWPF212に対して第2描画データであるWPF API形式データを渡す。
GDIプリンタドライバ203はGDI202から描画データを受け取り印刷装置1500に対する印刷データに変換する。XPSプリンタドライバ213はWPF212から描画データを受け取り印刷装置1500に対する印刷データに変換する。プリンタドライバで作成された印刷データは、スプーラ105を経て印刷装置1500に送信される。
尚、本実施形態では、変換モジュールを用いた描画変換を伴う印刷処理経路(2)及び(3)をクロスパスと総称する。一方、変換モジュールを用いた描画変換を伴わない印刷処理経路(1)及び(4)をストレートパスと総称する。
図4は本発明の実施形態のコンピュータを含むプリンタ制御システムの構成を説明するブロック図である。
尚、特に断らない限り、本発明の機能が実行されるのであれば、単体の機能であっても、複数の機器からなるシステムであっても本発明を適用できることは言うまでもない。更には、LAN、WAN等のネットワークを介して接続がなされ処理が行われるシステムであっても、本発明を適用できることは言うまでもない。
図4において、3000はホストコンピュータであり、CPU1を備える。CPU1は、ROM3のプログラム用ROM3bあるいは外部メモリ11に記憶された文書処理プログラム(アプリケーションプログラム)等のプログラムに基づいて、図形、イメージ、文字、表(表計算等を含む)等の構成要素が混在した文書処理を実行する。更に、CPU1は、ホストコンピュータ本体2000内のシステムバス4に接続される各デバイスを総括的に制御する。
また、このROM3のプログラム用ROM3bあるいは外部メモリ11には、CPU1の制御プログラムであるオペレーティングシステムプログラム(以下、OS)等のプログラムも記憶している。また、ROM3のフォント用ROM3aあるいは外部メモリ11には、上記文書処理の際に使用するフォントデータ等のデータを記憶している。また、ROM3のデータ用ROM3cあるいは外部メモリ11には、上記文書処理等の各種処理を行う際に使用する各種データを記憶する。
2はRAMであり、CPU1の主メモリ、ワークエリア等として機能する。5はキーボードコントローラ(KBC)であり、キーボード(KB)9やポインティングデバイス(不図示)からのキー入力を制御する。6はCRTコントローラ(CRTC)であり、CRTディスプレイ(CRT)10の表示を制御する。尚、CRTコントローラ6及びCRTディスプレイ10の代りに、LCDコントローラ及びLCDを用いても良い。
7はディスクコントローラ(DKC)であり、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル等の外部メモリ11とのアクセスを制御する。さらに、DKC7は、印刷制御コマンド生成プログラム(以下、プリンタドライバ)等の各種データを記憶する、ハードディスク(HD)、フロッピー(登録商標)ディスク(FD)等の外部メモリ11とのアクセスも制御する。
8はプリンタコントローラ(PRTC)であり、所定の双方向性インタフェース21を介してプリンタ1500に接続されて、プリンタ1500との通信制御処理を実行する。双方向性インタフェースの例には、USBインタフェース、IEEE1394インタフェース、無線LANインタフェース等がある。
尚、CPU1は、例えば、RAM2上に設定された表示情報RAMへのアウトラインフォントの展開(ラスタライズ)処理を実行してGUIを提供することで、CRT10上でのWYSIWYGを可能としている。また、CPU1は、CRT10上のマウスカーソル(不図示)等で指示されたコマンドに基づいて、登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは、印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷方法の設定を行える。
プリンタ1500において、12はプリンタCPUであり、プリンタCPU12は、プリンタ制御部1000内のシステムバス15に接続される各デバイスを総括的に制御する。また、プリンタCPU12は、ROM13のプログラム用ROM13bあるいは外部メモリ14に記憶された制御プログラム等のプログラムに基づいて、システムバス15に接続される印刷部(プリンタエンジン)17に出力情報としての画像信号を出力する。
また、このROM13のプログラム用ROM13bには、プリンタCPU12の制御プログラム等のプログラムを記憶している。また、ROM13のフォント用ROM13aには、上記出力情報を生成する際に使用するフォントデータ等のデータを記憶している。また、ハードディスク(HD)、ICカード等の外部メモリ14がないプリンタの場合には、ROM13のデータ用ROM13cには、ホストコンピュータ3000上で利用される情報等を記憶している。
プリンタCPU12は、入力部18を介してホストコンピュータ3000との通信処理が可能となっており、プリンタ1500内のステータス情報等の各種情報をホストコンピュータ3000に通知可能に構成されている。19はCPU12の主メモリ、ワークエリア等として機能するRAMである。このRAM19は、増設ポート(不図示)に接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。
尚、RAM19は、出力情報展開領域、環境データ格納領域、NVRAM等に用いられる。外部メモリ14は、メモリコントローラ(MC)20によりアクセスが制御される。外部メモリ14は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等のデータを記憶する。また、1501は操作部であり、プリンタ1500に対する各種操作を実現するための操作パネルやスイッチ、LED表示器等が構成されている。
また、外部メモリ14は1個に限らず、少なくとも1個以上備え、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていても良い。さらに、NVRAM(不図示)を有し、操作部1501からのプリンタモード設定情報を記憶するようにしてもよい。
また、プリンタ1500には、1個以上のPDL装置(PDLボード)を接続し、CPU12からPDL装置を制御可能とする。PDL装置は、ホストコンピュータ3000から受信した印刷データ(PDL)を解釈し、印刷部17が印刷可能なビットマップデータに変換する機能を有する画像形成部である。このPDL装置は、標準として1個以上接続されているが、後から追加することも可能である。また、プラグアンドプレイで使用されるIEEE1284規定のデバイス情報は、このPDL装置が保持している。
尚、本実施形態の情報処理装置は、プリンタドライバを介して、プリンタが解釈可能な印刷データ(印刷ジョブ)を生成できる。
また、通常、プリンタ1500は、標準PDL装置としてPDL1を備えており、オプションPDL装置としてPDL2等の他の種類のPDLを追加拡張可能であるものとする。
この拡張は、専用のPDL装置を搭載する拡張ボードを物理的にプリンタ1500に追加する構成であっても良い。あるいは、PDL装置がプログラムによって実現される場合には、プログラム用ROM13bに対応するプログラムを追加する構成であっても良い。更には、予め複数種類のPDL装置それぞれに対応するプログラムをプログラム用ROM13bに記憶しておき、それらから必要なPDL装置を、ユーザ操作によって入力されたライセンスキーによって有効にすることで追加する構成であっても良い。
また、PDLの一例としては、LIPS、PostScript、PCL等がある。
また、本実施形態に適用するプリンタ1500には、レーザビームプリンタ及びインクジェットプリンタ等の他の各種印刷方式の印刷装置(画像形成装置)を使用することが可能である。また、複数種類の機能を有するMFP(Multi Function Peripheral:マルチファンクション周辺機器)であっても良い。
ここで、MFPは、自装置内部に複数のジョブを記憶可能なハードディスク等の記憶装置を具備している。また、例えば、スキャナ部から出力されたジョブに対し、その記憶装置を介してプリンタ部でプリント可能にするコピー機能を具備している。また、PC(パーソナルコンピュータ)等の外部装置から出力されたジョブに対し記憶装置を介してプリンタ部でプリント可能にするプリント機能を具備している。このように、MFPは、これらの機能を含む複数の機能を具備している。
MFPには、フルカラー機器とモノクロ機器があり、色処理機能や内部データ等を除いて、基本的な部分においては、フルカラー機器がモノクロ機器の構成を包含することが多い。そのため、ここでは、フルカラー機器に絞って説明し、必要に応じて随時モノクロ機器の説明を加えることとする。
また、本実施形態で説明するシステムは、複数の機能を具備した複合機能型の画像形成装置(印刷装置)でも、プリント機能のみを具備した単一機能型の画像形成装置(印刷装置)であるSFPを具備する構成でも良い。いずれにしても、本実施形態の制御が実現可能な構成であればよい。
尚、SFPとは、Single Function Peripheral:単一機能周辺機器の略称である。
次に、プリンタ1500のCPU12によって実行される機能構成について、図5を用いて説明する。
図5は本発明の実施形態のプリンタの機能構成を示すブロック図である。
ジョブ受信部501は、ホストコンピュータ3000から印刷ジョブを受信し、受信した印刷ジョブをジョブ解析部502に送信する。ジョブ解析部502は、印刷ジョブを解析し、後述の識別方法により印刷ジョブが生成された印刷処理フロー(印刷ジョブ生成経路)を識別する。尚、印刷ジョブと印刷データは同義である。
ジョブ解析部502の処理結果、及びモード設定部503により設定されたモードに従い印刷ジョブの処理方法が決定され、印刷ジョブを印刷する場合は、印刷ジョブは印刷部504に送信され、印刷が行われる。ジョブ削除部505は、ジョブ解析部502の処理結果に従い、印刷ジョブをキャンセルする処理を行う。通知部506は、ジョブ解析部502の処理結果に従い、ホストコンピュータ3000に通知を行う。
次に、本実施形態のホストコンピュータ3000上とプリンタ間のデータ処理例について、図6を用いて説明する。
図6は本発明の実施形態のホストコンピュータ上とプリンタ間のデータ処理例を示す図である。
WinFXアプリケーション211からプリンタ1500へデータが渡る際にGDIプリンタドライバ203またはXPSプリンタドライバ213を経由する2種類のプリントパスが存在することは前述のとおりである。
ここで、WinFXアプリケーション211において、電子署名情報が付加された印刷ジョブを発行する状況を想定する。
XPSプリンタドライバ213を経由するプリントパスでは電子署名情報付きの描画データ323は、XPSプリンタドライバ213によって処理される。そして、XPSプリンタドライバ213により変換されたPDLデータと共に電子署名情報325がプリンタ1500へ送信される。ここでのフォーマットについては後述する。
一方、GDIプリンタドライバ203経由のプリントパスでは、XPS→GDI変換モジュール312によってGDIに変換される際に電子署名情報を失い、電子署名情報なしの描画データ322が生成される。そして、この電子署名情報なしの描画データ322は、GDIプリンタドライバ203によって処理される。その結果、電子署名情報のないPDLデータ324となってプリンタ1500へ送信される。
このように、本実施形態では、この電子署名情報が失われる可能性がある印刷環境において、その印刷処理の禁止/実行を適応的に制御するためのセキュリティ機能を実現する。
このセキュリティ機能を実現するにあたり、本実施形態では、ホストコンピュータ上で生成された印刷ジョブが生成された経路に基づいて、印刷処理の禁止/実行を設定するためのモード設定部503を構成している。そこで、このモード設定部503が生成するモード設定画面について、図7を用いて説明する。
図7は本発明の実施形態における画像形成装置のモード設定画面の一例を示す図である。
このモード設定画面700は、操作部1501上に表示され、プリンタの管理者が設定を行う。
各設定項目には、それぞれON/OFFを切り替えるボタンが存在し、どちらかのボタンを選択すると、ボタンは選択状態を示す黒色表示となる。
701は、セキュリティ設定の有効/無効を切り替えるためのボタンである。ボタン701がOFFの場合、ボタン702〜706は、グレーアウトされ各設定項目への設定は禁止となり、設定はすべて無効となる。
702は、GDI経由での印刷を禁止するか否かを設定するためのボタンである。ボタン702が、ONの場合は印刷処理フロー(1)及び(3)で処理された印刷ジョブはキャンセルされ、印刷を禁止する。但し、ボタン702がONであっても、ボタン703がONの場合は、印刷処理フロー(1)で処理された印刷ジョブは印刷する。つまり、ボタン703がONの場合は、Win32アプリケーションからの印刷ジョブについては、その印刷を許可することになる。
よって、図3の印刷処理フロー(1)のプリントパスを介して生成された印刷データは印刷されるが、図3の印刷処理フロー(3)のプリントパスを介して生成された印刷データは印刷されなくなる。また、図7の設定画面にて「クロスパス経由の印刷禁止」ボタンを設けることにより、図3の印刷処理フロー(2)及び(3)のプリントパスを介して生成された印刷データの印刷を禁止することもできる。
このように、本実施形態のプリンタは、印刷処理経路毎に印刷データの処理に係る設定を行える。例えば、図7の画面が、Win32アプリケーションとXPSドライバの組み合わせによる処理経路(2)、またはWinFXアプリケーションとGDIドライバの組み合わせによる処理経路(3)を介して生成された印刷データの印刷を禁止するか否かの設定項目を備えることができる。
704は、GDI経由での印刷ジョブを受信した場合に管理者にメールで通知を行うか否かを設定するためのボタンである。尚、通知先となる管理者のメールアドレスは、管理者情報を設定する別の画面において設定済であるものとする。
705は、GDI経由での印刷ジョブを受信した場合にユーザに通知するか否かを設定するためのボタンである。後述するように、この通知は、印刷ジョブを送信してきたホストコンピュータのIPアドレスに対してユニキャストで行われる。
また、ボタン704及び705による通知の通知方法は一例であり、メッセージダイアログによって指定されたホストコンピュータに通知したり、通知内容を指定のプリンタに出力する構成としても良い。
そして、この状態でOKボタン706を操作すると、図7中の設定状態(モード設定情報)として、例えば、RAM19上に記憶されるとともに、モード設定画面700の表示が消去される。一方、キャンセル(Cancel)ボタン707を操作すると、図7中の設定状態がキャンセルされて、このモード設定画面700の表示が消去される。
尚、図7に示すモード設定画面700の設定項目は一例であり、用途や目的に応じて様々な設定項目を構成することが可能である。本実施形態の主眼とするところは、印刷データを生成するための複数種類の印刷処理フローが存在していて、その使用される印刷処理フローによっては、印刷不具合や不正な印刷が発生し得る状況を事前に回避したり、禁止することにある。そのため、この目的を達成するための設定項目であれば、様々な設定項目を構成できることは言うまでもない。
次に、プリンタ1500が実行する処理について、図8を用いて説明する。
図8は本発明の実施形態のプリンタが実行する処理を示すフローチャートである。尚、図8の各ステップの処理は、プリンタのCPU12によって実行される。
図8は、特に、プリンタ1500がホストコンピュータ3000から印刷ジョブを受信した際の処理を示すフローチャートである。
ステップS801で、ジョブ受信部501は、印刷ジョブを受信する。ステップS802で、ジョブ解析部502は、印刷ジョブを解析し、印刷ジョブが生成された経路(印刷処理フロー(印刷ジョブ生成経路))を識別する。尚、ジョブ生成経路の識別方法については図18にて後述する。次に、ステップS803で、モード設定部503は、RAM19上のモード設定情報を参照して、セキュリティ設定として、ボタン701の設定値がONであるか否かを判定する。
セキュリティ設定がOFFである場合(ステップS803でNO)、ステップS809に進み、印刷ジョブを印刷して処理を終了する。一方、セキュリティ設定がONである場合(ステップS803でYES)、ステップS804に進み、ジョブ解析部502は、印刷ジョブ生成経路が印刷処理フロー(3)であるか否かを判定する。
印刷処理フロー(3)である場合(ステップS804でYES)、プリンタ1500は、後述するサブルーチンSRを実行する。その後、ステップS805で、モード設定部503は、RAM19上のモード設定情報を参照して、セキュリティ設定(GDI経由の印刷禁止)として、ボタン702の設定値がONであるか否かを判定する。
GDI経由の印刷禁止がONである場合(ステップS805でYES)、ステップS806に進み、印刷部504は、印刷ジョブをキャンセルした後、処理を終了する。一方、GDI経由の印刷禁止がOFFである場合(ステップS805でNO)、ステップS809に進み、印刷部504は、印刷ジョブを印刷して処理を終了する。
一方、ステップS804において、印刷処理フロー(3)でない場合(ステップS804でNO)、ステップS807に進み、ジョブ解析部502は、印刷ジョブ生成経路が印刷処理フロー(1)であるか否かを判定する。
印刷処理フロー(1)である場合(ステップS807でYES)、後述するサブルーチサブルーチンSRを実行する。その後、ステップS808で、モード設定部503は、RAM19上のモード設定情報を参照して、セキュリティ設定(Win32アプリケーションからの印刷許可)として、ボタン703の設定値がONであるか否かを判定する。
Win32アプリケーションからの印刷許可がOFFである場合(ステップS808でNO)、ステップS806に進み、プリンタ1500は、印刷ジョブをキャンセルした後、処理を終了する。一方、Win32アプリケーションからの印刷許可がONである場合(ステップS808でYES)、印刷部504は、印刷ジョブを印刷して処理を終了する。このように、プリンタ1500は、ステップS802の解析結果と図7の設定内容に基づいて、受信した印刷データの処理を制御する。
図8の処理より、プリンタ1500のCPU12は、ステップS802の解析の結果、アプリケーションとプリンタドライバの組み合わせが特定の組み合わせであり、かつ特定の組み合わせの場合に印刷を禁止することが設定される場合、印刷データの印刷を禁止するように制御する。その結果、プリンタ1500は、機密性の低下または印刷品質の劣化等を防止することが可能となる。
次に、図8のサブルーチンSRの詳細について、図9を用いて説明する。
図9は本発明の実施形態のサブルーチンSRの処理の詳細を示すフローチャートである。
ステップS901で、モード設定部503は、RAM19上のモード設定情報を参照して、セキュリティ設定(管理者通知)として、ボタン704の設定値がONであるか否かを判定する。
管理者通知がOFFである場合(ステップS901でNO)、ステップS904に進む。一方、管理者通知がONである場合(ステップS901でYES)、ステップS902に進み、通知部506は、予め設定された管理者のメールアドレスを取得する。次に、ステップS903で、通知部506は、管理者宛にメールを送信する。その後、ステップS904に進む。ここで、メールの一例を図10に示す。
例えば、ユーザがWinFXアプリケーションにて、電子署名情報付きのデータを生成した場合を想定する。ここで、ユーザがWinFXアプリケーションを介してGDIプリンタドライバを選択した場合、WinFXアプリケーションにて生成された電子署名付きのデータの電子署名は削除されてしまい、セキュリティを保つことができなくなる恐れがある。
プリンタは、受信した印刷データから印刷処理フロー(3)であることを解析した場合、上述したように電子署名情報が欠落した恐れがあると判定する。そして、プリンタは、適切ではないプリンタドライバを使用して印刷データが生成されたことを通知するため、図10のようなメールを生成して管理者へ送信する。
ステップS904で、モード設定部503は、RAM19上のモード設定情報を参照して、セキュリティ設定(ユーザ通知)として、ボタン705の設定値がONであるか否かを判定する。
ユーザ通知がOFFである場合(ステップS904でNO)、処理を終了する。一方、ユーザ通知がONである場合(ステップS904でYES)、ステップS905に進み、通知部506は、印刷ジョブを送信してきたホストコンピュータ3000にユニキャストで通知メッセージを送信し、処理を終了する。
ここで、通知メッセージの一例を図11に示す。図11において、1101はプリンタの構成情報が変化したり、印刷ジョブのキャンセルが発生するたびに1ずつ増加していく整数である。ホストコンピュータ3000は、この値を取得することにより、プリンタ1500で上記事象が発生したことを検知することができる。
このようにセキュリティ設定として、ボタン701、702及び705の設定値がONに設定されている状態でホストコンピュータ3000からGDI経由での印刷ジョブを受信すると、プリンタ1500は図11の通知メッセージを送信する。これにより、例えば、ホストコンピュータ3000上のGDIプリンタドライバがアンインストールされ、それ以降GDI経由での印刷を行わせないようにする(禁止)することが可能となる。
このGDIプリンタドライバのアンインストールの処理について、図12を用いて説明する。
図12は本発明の実施形態のGDIプリンタドライバのアンインストールのシーケンスを示す図である。
1201で、プリンタ1500はホストコンピュータ3000に通知メッセージを送信する。
次に、ホストコンピュータ3000は、1202で、プリンタ1500に対してデバイス情報要求を送信する。デバイス情報要求を受信したプリンタ1500は、1203で、後述する方法でデバイス情報を生成し、生成したデバイス情報を、1204で、ホストコンピュータ3000に送信する。
このデバイス情報の一例を図13に示す。図13に示すように、デバイス情報には、デバイスが有するサービス(機能(画像形成部(PDL装置)の種類等))のリストを含んでいる。また、図13中の<ServiceId>要素の値は、各サービスを識別するための固有のID、つまり、識別子であり、後でサービスを特定する際に使用される。
次に、ホストコンピュータ3000は、1205で、受信したデバイス情報から、必要なサービスIDを指定してサービス情報要求を送信する。サービス情報要求を受信したプリンタ1500は、1206で、指定されたサービスIDに対応するIEEE1284規定のデバイス情報の値を含むサービス情報をホストコンピュータ3000に送信する。このサービス情報の一例を図14に示す。
尚、1204で、プリンタ1500が複数のサービスリストを含むデバイス情報をホストコンピュータ3000に送信した場合、1205〜1206のシーケンスが繰り返されることになる。
ホストコンピュータ3000は、1207で、プリンタ1500から受信したサービス情報を参照し、プリンタが返さなかったDeviceIDに対応するプリンタドライバをアンインストールする。
次に、図12の1203において、デバイス情報要求を受信したプリンタ1500がデバイス情報を生成する際の処理について、図15を用いて説明する。
図15は本発明の実施形態のデバイス情報要求を受信したプリンタがデバイス情報を生成する際の処理を示すフローチャートである。
ステップS1501で、プリンタ1500は、デバイス情報要求を受信する。ステップS1502で、プリンタがサポートしているPDL装置のPDLリストから、プリンタ1500で印刷可能なPDLを1個取得する。次に、ステップS1503で、取得したPDL装置に対応するXPS対応ドライバ用のDeviceIDを有するサービスに対応するサービスエントリをデバイス情報に追加する。つまり、ステップS1503において、プリンタ1500は、取得したPDLに対応するXPSプリンタドライバは有効なプリンタドライバであるとの情報を追加する。
次に、ステップS1504で、プリンタ1500は、RAM19上のモード設定情報を参照して、セキュリティ設定として、ボタン701及び702の設定値を取得し、GDI印刷が受付可能であるか否かを判定する。受付可能でない場合(ステップS1504でNO)、ステップS1506に進む。
一方、受付可能である場合(ステップS1504でYES)、ステップS1505に進み、取得したPDLに対応するGDI対応ドライバ用のDeviceIDを有するサービスに対応するサービスエントリをデバイス情報に追加する。つまり、ステップS1505において、プリンタ1500は、取得したPDLに対応するGDIプリンタドライバは有効であるとの情報をデバイス情報に追加する。
ステップS1506で、プリンタ1500は、PDLリスト中のすべてのPDL装置に対して処理が終了したか否かを判定する。終了していない場合(ステップS1506でNO)、ステップS1502に戻り、未処理のPDL装置を取得して、上述の処理を実行する。一方、終了している場合(ステップS1506でYES)、ステップS1507に進み、生成したデバイス情報をホストコンピュータ3000に送信して、処理を終了する。
以上の処理により、プリンタ1500は、自ら処理可能な印刷データを生成するプリンタドライバを指定することが可能となる。例えば、ステップS1504においてGDI印刷が不可能と判定した場合(ステップS1504でNO)、GDIプリンタドライバは有効なプリンタドライバとしてデバイス情報に追加されない。
このデバイス情報を取得したホストコンピュータは、デバイス情報にGDIプリンタドライバが含まれていないため、GDIプリンタドライバを介して印刷データを生成してはいけないと判定することができる。その結果、例えば。WinFXアプリケーションを用いて作成した電子署名付きのデータにおける、電子署名情報が削除された印刷データがプリンタに送信されるという恐れが解消できる。
つまり、ホストコンピュータは、デバイスから通知されるデバイス情報に従ってプリンタドライバを制御することができる。例えば、ホストコンピュータは、自ら保持しているプリンタドライバの内、通知されたデバイス情報に含まれていないプリンタドライバを特定して、そのプリンタドライバをアンインストールすることも可能である。このように、プリンタは、印刷可能な印刷データを生成できるプリンタドライバを示す識別情報を、ホストコンピュータへ通知することができる。
また、図12の処理を用いることにより、クロスパスを介して生成された印刷データを受信した際に、プリンタが適切なプリンタドライバを推奨する処理について、図19を用いて説明する。尚、この場合、図12に記述されているアンインストール処理は、実行されなくて良い。
プリンタ1500は、印刷データを受信したか否かを判定し(ステップS1901)、受信した場合、印刷データがクロスパスを介して生成された印刷データか否かを判定する(ステップS1902)。尚、クロスパスを介して生成されたか否かの解析方法は、図18にて後述する。
ステップS1902により、ジョブ解析部502が、クロスパスを介して生成された印刷データであると解析した場合に、描画モジュールの変換を伴わずに印刷データを生成できるプリンタドライバの種類を特定する(ステップS1903)。詳細には、ジョブ解析手段は、図18の処理を用いることにより、印刷要求元のアプリケーションの種類を判定できる。
具体的には、要求元のアプリケーションが、WinFXアプリであるかWin32アプリであるかを判定する。その結果に基づいて、プリンタは、描画変換を伴わないプリンタドライバの種類を特定する。具体的には、印刷要求元がWinFXアプリケーションである場合、プリンタは、XPSプリンタドライバを特定する。一方、印刷要求元がWin32アプリケーションである場合、プリンタは、GDIプリンタドライバを特定する。
ステップS1903によって、プリンタは、特定されたプリンタドライバを含んだデバイス情報を作成する(ステップS1904)。そして、そのデバイス情報をホストコンピュータへ送信する(ステップS1905)。
ステップS1903の処理を具体例を用いて説明する。例えば、プリンタAが、GDIプリンタドライバAによって印刷データがクロスパスを介して生成されていると判定した場合、適切なプリンタドライバとしてXPSプリンタドライバAを特定する。そして、特定されたXPSプリンタドライバAを含むデバイス情報をホストコンピュータへ送信するため、ユーザはプリンタから推奨された適切なドライバに切り替えることができる。その結果、印刷品質の劣化、または、不正な印刷を極力防止することが可能となる。
尚、プリンタは、デバイス探索メッセージ(図12の1202)に含まれるメッセージ送信元情報に対してS1904にて作成したデバイス情報を通知する。
次に、プリンタ1500が印刷ジョブ受信時に、ジョブが生成された経路を識別する識別方法について説明する。
この識別方法を説明するにあたり、まず、XPSプリンタドライバ213の構成について、図16Aを用いて説明する。
図16Aは本発明の実施形態のXPSプリンタドライバの構成を示す図である。
図2に示す環境において、GDIプリントパスではDEVMODE構造体と呼ばれるデータ構造で印刷設定データを持っている。一方、XPSプリントパスではPrintTicketと呼ばれるXML形式のデータ構造になる。ここで、GDIからXPSもしくはXPSからGDIに変換する際にDEVMODEからPrintTicketへ、PrintTicketからDEVMODEに変換する処理が必要となる。
そして、描画データ同様に、DEVMODEで表現できる範囲とPrintTicketで表現できる範囲も異なる。そこで、この処理は、オペレーティングシステムが自動で行うのではなく、プリンタドライバ自身が拡張されたアーキテクチャを用いて行うようになっている。
XPSプリンタドライバ213は、プリントチケットプロバイダ213a、UIドライバモジュール(XPS)213bを保持している。UIドライバモジュール(XPS)213bは、DEVMODEベースであり、アプリケーションから呼び出されることによって印刷設定情報を設定するためのUIを表示する。また、プリントチケットプロバイダ213aは、PrintTicket(プリントチケット)からDEVMODE、または、DEVMODEからプリントチケットへの変換処理を行う。
図16Aでは、Win32アプリケーション201が、印刷設定を行うためにDEVMODEを要求する場合、XPSプリンタドライバ213は、DEVMODEベースのため変換処理の必要が生じない。よって、Win32アプリケーション201が、XPSプリンタドライバ213を用いて印刷処理を行う場合、プリントチケットプロバイダ213aは、変換処理を行う必要がない。
一方、WinFxアプリケーション211は、印刷設定を行うためプリントチケットを要求する。XPSプリンタドライバ213は、プリントチケットを保持していないため、プリントチケットプロバイダ213aは、プリントチケットからDEVMODEへの変換処理を実行する。
ここで、XPSプリンタドライバ213は、プリントチケットプロバイダ213aの変換処理を認識することができる。そのため、印刷対象のデータを受け付けた時に、プリントチケットプロバイダ213aによる、プリントチケットからDEVMODEへの変換処理が行われた場合には、印刷設定の要求元がWinFXアプリケーション211であると判定することができる。一方、印刷対象のデータを受け付けた時に、プリントチケットプロバイダ213aによる変換処理が行われていない場合には、印刷設定の要求元をWin32アプリケーション201と判定することができる。
尚、GDIプリンタドライバ203の構造は、XPSプリンタドライバ213と同様であるが、UIドライバモジュール(XPS)213bに相当するものとして、UIドライバモジュール(GDI)が構成されることになる。
そして、GDIプリンタドライバ203と、XPSプリンタドライバ213と同様に、プリントチケットプロバイダ213aの変換処理を認識することができる。そのため、印刷対象のデータの処理経路及び、印刷設定の要求元のアプリケーションを判定することができる。
図3において、WinFXアプリケーション211からGDIプリンタドライバ203に渡される印刷ジョブの内、描画データに関してはOS102によってXPS→GDI変換モジュール312が自動で変換を行う。そのため、GDIプリンタドライバ203は変換が行われたことを検知することができない。
一方、ステイプル処理等の印刷設定データに対しては、OS102が自動で変換を行うことができない。そのため、WinFXアプリケーション211から渡されるPrintTicketを、GDIプリンタドライバ203の理解できる表現であるDEVMODEに変換する作業をXPSプリンタドライバ213のUIドライバモジュール213bが行う。
まず、OS102は描画データを自動で変換する際に、印刷設定の変換をGDIプリンタドライバ203に依頼するためにPrintTicketをGDIプリンタドライバ213が有するUIドライバモジュール213bに対して引き渡す。OS102からPrintTicketを取得したUIドライバモジュール213bは与えられたXML形式のPrintTicket情報をDEVMODEに変換する。この際に、UIドライバモジュール213bがXPS→GDI変換モジュール312の変換が行われたということを示す変換フラグをDEVMODEの内部に設定する。
この処理結果の具体例について、図16Bを用いて説明する。
図16Bは本発明の実施形態のPrintTicketからDEVMODEへの変換の際に変換が行われたことを示す変換フラグを立てる様子を説明するための図である。
1601は、OSからXPSプリンタドライバ213のUIドライバモジュール213bに渡されるPrintTicketを示している。PrintTicket1601は、XML形式で表現され、用紙サイズや両面印刷の有無等の印刷設定に関わる情報を保持している。
一方、PrintTicket1601の変換後の情報が、DEVMODE1602である。DEVMODE1602は、GDIプリンタドライバ203で使用される印刷設定であり、PrintTicket1601と同様に用紙サイズや両面印刷の有無等が示されている。
XPS→GDI変換モジュール312の変換フラグが、dmConvertFlag1603である。GDIプリンタドライバ変換時にDM_CNV_PTTODEVMODEを指定することで、プリントチケットプロバイダは、XPS→GDI変換が行われたものであることを記録している。尚、XPS→GDI変換の行われていないDEVMODEは、DM_CNV_NONEが指定されることになる。
次に、GDIプリンタドライバが、DEVMODE及び描画データから生成する印刷データのフォーマットについて、図17を用いて説明する。
図17は本発明の実施形態のGDIプリンタドライバが生成する印刷データのフォーマットを示す図である。
印刷データは、ジョブ印刷設定部1701及び描画データ部1702から構成されている。ジョブ印刷設定部1701には、部数や両面印刷等の印刷設定に関する情報に加え、XPS→GDI変換の有無(あり/なし)を示す変換フラグ、及び自身のドライバタイプ(GDIあるいはXPS)情報を含んでいる。プリンタ1500は、この印刷データ(例えば、PDLデータ)を解析して、変換フラグ及びドライバタイプ情報を抽出することにより、この印刷ジョブが生成された印刷処理フロー(印刷ジョブ生成経路)を判別することができる。
GDIプリンタドライバは、プリントチケットからDevmodeへの変換が起こっていると判定した場合、印刷要求元はWinFXアプリケーションと判定できる。よって、GDIプリンタドライバは、図17に示すようにXPStoGDI変換あり、及び、自身のドライバタイプGDIと記述した印刷データを生成する。一方、プリントチケットからDevmodeへの変換がないと判定した場合、印刷要求元はWin32アプリケーションと判定できる。この場合、GDIプリンタドライバは、XPStoGDI変換なし、及び、自身のドライバタイプGDIと記述した印刷データを生成する。
一方、XPSプリンタドライバが生成する印刷データについても説明する。
上述したようにXPSプリンタドライバは、WinFXアプリケーションからの印刷要求を受信した場合、印刷機能の低下や描画結果を劣化させることなく正常に印刷できる。図16Aにて上述した通り、XPSプリンタドライバは、プリントチケットからDevmodeへの変換が起こっていると判定した場合、印刷要求元はWinFXアプリケーションと判定できる。
この場合、印刷データは、GDI→XPS変換なし、及び、自身のドライバタイプXPSと記述した印刷データを生成する。一方、XPSプリンタドライバは、プリントチケットからDevmodeへの変換がないと判定した場合、印刷要求元はWin32アプリケーションと判定できる。この場合、印刷データは、GDI→XPS変換あり、及び、自身のドライバタイプXPSと記述した印刷データを生成する。
このように、プリンタが受信する印刷データには、描画データの変換処理の有無を示す情報と、指定されているプリンタドライバのドライバタイプが含まれている。よって、ジョブ解析部502は、受信した印刷データに基づいて印刷データの生成に使用されたアプリケーションとプリンタドライバの組み合わせを解析する。
次に、図8のステップS802の処理の詳細について、図18を用いて説明する。
図18は本発明の実施形態のステップS802の処理の詳細を示すフローチャートである。
ここでは、特に、プリンタ1500が、受信した印刷ジョブのジョブ生成経路(印刷処理フロー)を判別する処理について説明する。
ステップS1801で、ジョブ解析部502は、印刷データ中のジョブ印刷設定部1701に含まれるドライバタイプを識別する。図17に示すとおり、プリンタが受信する印刷データにはドライバタイプが記述されている。ドライバタイプがXPSである場合、ステップS1802に進む。
ステップS1802において、ジョブ解析部503は、変換フラグが立っているか否かを判定する。ここで、変換フラグが立っている場合(ステップS1802でYES)、つまり、「GDI→XPS変換があり」と判定される場合、ステップS1807に進み、印刷処理フロー(4)であると判定する。一方、変換フラグが立っていない場合(ステップS1802でNO)、ステップS1806に進み、印刷処理フロー(2)であると判定する。
一方、ドライバタイプがGDIである場合、ステップS1803に進み、ジョブ解析部503は、変換フラグが立っているか否かを判定する。ここで、変換フラグが立っている場合(ステップS1803でYES)、つまり、「XPS→GDI変換があり」と判定される場合、ステップS1805に進み、印刷処理フロー(3)であると判定する。
一方、変換フラグが立っていない場合(ステップS1803でNO)、ステップS1804に進み、印刷処理フロー(1)であると判定する。このように、プリンタは印刷データに含まれるドライバタイプと描画データの変換フラグに基づいて、印刷処理の要求もとのアプリケーションを特定できる。その特定の結果、プリンタが、ストレートパスを介して生成された印刷データでないと解析した場合、印刷データを禁止するように制御する。
尚、本実施形態においては、XPS→GDI変換により失われる情報として、電子署名情報を使用したセキュリティ設定を代表例としてあげて説明している。しかしながら、本発明は、セキュリティのための印刷制限だけでなく、印刷品質に対する課題に対しても、同様の構成で対応させることが可能である。
以上説明したように、本発明によれば、プリンタにおいて、印刷ジョブが生成された経路情報を識別して、その処理内容を適応的に変更することが可能である。そのため、例えば、図7にてGDI経由での印刷を禁止(702がON)であり、かつ、Win32からの印刷を許可(703がON)の場合、印刷処理フロー(3)であると識別された時点で印刷処理がキャンセル(禁止)される。
また、図7においてセキュリティ設定を有効(701がON)であり、かつ、703及び704がOFFの場合、プリンタは、印刷処理フロー(2)を経由した印刷処理をキャンセルしても良い。この場合、ジョブ解析部は、受信した印刷データからドライバタイプがXPSであり、かつ、GDItoXPS変換ありと解析した場合に、印刷処理フロー(2)と判定できるので、印刷処理をキャンセルする。
このように、プリンタは、受信した印刷データに基づいて、Win32アプリケーションとGDIプリンタドライバの組み合わせによる処理経路を介して生成された印刷データであるかを解析できる。また、プリンタは、受信した印刷データに基づいて、WinFXアプリケーションとXPSプリンタドライバの組み合わせによる処理経路を介して生成された印刷データであるかを解析できる。
つまり、セキュリティが確保されない恐れがある印刷ジョブや印刷品質が悪くなる可能性がある印刷ジョブについては、プリンタとして、その印刷ジョブの印刷を禁止することができる。これにより、セキュリティ制限を回避する印刷を防止したり、印刷品質が低いがためにユーザが望まない結果となってしまい用紙を無駄にしてしまうことを防止する印刷システムを構成することができる。
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(実施形態では図に示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であっても良い。
プログラムを供給するための記録媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスクがある。また、更に、記録媒体としては、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM、DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、その接続先のホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるWWWサーバも、本発明に含まれるものである。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。また、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
一般的な印刷処理フロー及び印刷処理に対するコンポーネントを示す図である。 複数のグラフィクスエンジンが共存する、Windows(登録商標) VISTAにおける印刷処理フロー及び印刷処理に対するコンポーネントを示す図である。 Windows(登録商標) VISTAにおける、2つのグラフィクスエンジン共存の仕組みを示す図である。 本発明の実施形態のコンピュータを含むプリンタ制御システムの構成を説明するブロック図である。 本発明の実施形態のプリンタの機能構成を示すブロック図である。 本発明の実施形態のホストコンピュータ上とプリンタ間のデータ処理例を示す図である。 本発明の実施形態のモード設定画面の一例を示す図である。 本発明の実施形態のプリンタが実行する処理を示すフローチャートである。 本発明の実施形態のサブルーチンSRの処理の詳細を示すフローチャートである。 本発明の実施形態のプリンタが管理者に送信する電子メールの一例を示す図である。 本発明の実施形態のプリンタがホストコンピュータに送信する通知メッセージの一例を示す図である。 本発明の実施形態のGDIプリンタドライバのアンインストールのシーケンスを示す図である。 本発明の実施形態のプリンタから送信されるデバイス情報の一例を示す図である。 本発明の実施形態のプリンタから送信されるサービス情報の一例を示す図である。 本発明の実施形態のデバイス情報要求を受信したプリンタがデバイス情報を生成する際の処理を示すフローチャートである。 本発明の実施形態1のXPSプリンタドライバの構成を示す図である。 本発明の実施形態のPrintTicketからDEVMODEへの変換の際に変換が行われたことを示す変換フラグを立てる様子を説明するための図である。 本発明の実施形態のGDIプリンタドライバが生成する印刷データのフォーマットを示す図である。 本発明の実施形態のステップS802の処理の詳細を示すフローチャートである。 本発明の実施形態のプリンタの処理を示すフローチャートである。
符号の説明
501 ジョブ受信部
502 ジョブ解析部
503 モード設定部
504 印刷部
505 ジョブ削除部
506 通知部

Claims (8)

  1. 第1アプリケーションからの印刷指示に応じて、第1プリンタドライバが処理可能な第1描画データを生成する第1描画部と、第2アプリケーションからの印刷指示に応じて、第2プリンタドライバが処理可能な第2描画データを生成する第2描画部とが動作する情報処理装置で生成された印刷データを受信して、印刷を行う画像形成装置であって、
    前記情報処理装置より印刷データを受信する受信手段と、
    前記受信手段で受信した印刷データ、前記第1アプリケーションと第1プリンタドライバの組み合わせによる処理経路を介して生成された印刷データ、または、前記第2アプリケーションと第2プリンタドライバの組み合わせによる処理経路を介して生成された印刷データでないと解析された場合、前記受信手段によって受信された印刷データの印刷を禁止するように制御する制御手段と
    を備えることを特徴とする画像形成装置。
  2. 第1アプリケーションからの印刷指示に応じて、第1プリンタドライバが処理可能な第1描画データを生成する第1描画部と、第2アプリケーションからの印刷指示に応じて、第2プリンタドライバが処理可能な第2描画データを生成する第2描画部とが動作する情報処理装置で生成された印刷データを受信して、印刷を行う画像形成装置であって、
    前記情報処理装置より印刷データを受信する受信手段と、
    前記受信手段で受信した印刷データ、前記第1アプリケーションと第2プリンタドライバの組み合わせによる描画変換を伴う処理経路を介して生成された印刷データ、または、前記第2アプリケーションと第1プリンタドライバの組み合わせによる描画変換を伴う処理経路を介して生成された印刷データであると解析された場合、前記描画変換を伴わない種類のプリンタドライバを特定する特定手段と、
    前記特定手段によって特定された種類のプリンタドライバを含むデバイス情報を前記情報処理装置に対して通知する通知手段
    を備えることを特徴とする画像形成装置。
  3. 前記通知手段は、デバイス探索メッセージに含まれるメッセージ送信元情報に対して前記デバイス情報を通知する
    ことを特徴とする請求項に記載の画像形成装置。
  4. 第1アプリケーションからの印刷指示に応じて、第1プリンタドライバが処理可能な第1描画データを生成する第1描画部と、第2アプリケーションからの印刷指示に応じて、第2プリンタドライバが処理可能な第2描画データを生成する第2描画部とが動作する情報処理装置で生成された印刷データを受信して、印刷を行う画像形成装置の制御方法であって、
    前記情報処理装置より印刷データを受信する受信工程と、
    前記受信工程で受信した印刷データ、前記第1アプリケーションと第1プリンタドライバの組み合わせによる処理経路を介して生成された印刷データ、または、前記第2アプリケーションと第2プリンタドライバの組み合わせによる処理経路を介して生成された印刷データでないと解析された場合、前記受信工程によって受信された印刷データの印刷を禁止するように制御する制御工程と
    を備えることを特徴とする画像形成装置の制御方法。
  5. 第1アプリケーションからの印刷指示に応じて、第1プリンタドライバが処理可能な第1描画データを生成する第1描画部と、第2アプリケーションからの印刷指示に応じて、第2プリンタドライバが処理可能な第2描画データを生成する第2描画部とが動作する情報処理装置で生成された印刷データを受信して、印刷を行う画像形成装置の制御方法であって、
    前記情報処理装置より印刷データを受信する受信工程と、
    前記受信工程で受信した印刷データ、前記第1アプリケーションと第2プリンタドライバの組み合わせによる描画変換を伴う処理経路を介して生成された印刷データ、または、前記第2アプリケーションと第1プリンタドライバの組み合わせによる描画変換を伴う処理経路を介して生成された印刷データであると解析された場合、前記描画変換を伴わない種類のプリンタドライバを特定する特定工程と、
    前記特定工程によって特定された種類のプリンタドライバを含むデバイス情報を前記情報処理装置に対して通知する通知工程
    を備えることを特徴とする画像形成装置の制御方法。
  6. 第1アプリケーションからの印刷指示に応じて、第1プリンタドライバが処理可能な第1描画データを生成する第1描画部と、第2アプリケーションからの印刷指示に応じて、第2プリンタドライバが処理可能な第2描画データを生成する第2描画部とが動作する情報処理装置で生成された印刷データを受信して、印刷を行う画像形成装置の制御をコンピュータに実行させるためのプログラムであって、
    前記情報処理装置より印刷データを受信する受信工程と、
    前記受信工程で受信した印刷データ、前記第1アプリケーションと第1プリンタドライバの組み合わせによる処理経路を介して生成された印刷データ、または、前記第2アプリケーションと第2プリンタドライバの組み合わせによる処理経路を介して生成された印刷データでないと解析された場合、前記受信工程によって受信された印刷データの印刷を禁止するように制御する制御工程と
    をコンピュータに実行させることを特徴とするプログラム。
  7. 第1アプリケーションからの印刷指示に応じて、第1プリンタドライバが処理可能な第1描画データを生成する第1描画部と、第2アプリケーションからの印刷指示に応じて、第2プリンタドライバが処理可能な第2描画データを生成する第2描画部とが動作する情報処理装置で生成された印刷データを受信して、印刷を行う画像形成装置の制御をコンピュータに実行させるためのプログラムであって、
    前記情報処理装置より印刷データを受信する受信工程と、
    前記受信工程で受信した印刷データ、前記第1アプリケーションと第2プリンタドライバの組み合わせによる描画変換を伴う処理経路を介して生成された印刷データ、または、前記第2アプリケーションと第1プリンタドライバの組み合わせによる描画変換を伴う処理経路を介して生成された印刷データであると解析された場合、前記描画変換を伴わない種類のプリンタドライバを特定する特定工程と、
    前記特定工程によって特定された種類のプリンタドライバを含むデバイス情報を前記情報処理装置に対して通知する通知工程
    をコンピュータに実行させることを特徴とするプログラム。
  8. 前記通知工程は、デバイス探索メッセージに含まれるメッセージ送信元情報に対して前記デバイス情報を通知する
    ことを特徴とする請求項に記載のプログラム。
JP2006075550A 2006-03-17 2006-03-17 画像形成装置及びその制御方法、プログラム Expired - Fee Related JP4785580B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006075550A JP4785580B2 (ja) 2006-03-17 2006-03-17 画像形成装置及びその制御方法、プログラム
US11/687,194 US8094332B2 (en) 2006-03-17 2007-03-16 Print processing utilizing multiple printer drivers

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006075550A JP4785580B2 (ja) 2006-03-17 2006-03-17 画像形成装置及びその制御方法、プログラム

Publications (3)

Publication Number Publication Date
JP2007249859A JP2007249859A (ja) 2007-09-27
JP2007249859A5 JP2007249859A5 (ja) 2009-04-30
JP4785580B2 true JP4785580B2 (ja) 2011-10-05

Family

ID=38517444

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006075550A Expired - Fee Related JP4785580B2 (ja) 2006-03-17 2006-03-17 画像形成装置及びその制御方法、プログラム

Country Status (2)

Country Link
US (1) US8094332B2 (ja)
JP (1) JP4785580B2 (ja)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4667280B2 (ja) * 2006-03-17 2011-04-06 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
JP4976971B2 (ja) 2007-09-28 2012-07-18 コニカミノルタビジネステクノロジーズ株式会社 画像形成システム、画像形成装置及びプログラム
JP2009086989A (ja) * 2007-09-28 2009-04-23 Konica Minolta Business Technologies Inc 画像形成システム、画像形成装置及びプログラム
JP5366388B2 (ja) * 2007-11-05 2013-12-11 キヤノン株式会社 印刷制御装置、印刷制御方法、及び、プログラム
JP4524317B2 (ja) 2008-02-21 2010-08-18 株式会社沖データ 印刷システム及び情報処理装置
JP4501120B2 (ja) * 2008-03-10 2010-07-14 コニカミノルタビジネステクノロジーズ株式会社 ファイル編集装置及びファイル編集方法並びにファイル編集プログラム
JP5063504B2 (ja) * 2008-06-20 2012-10-31 キヤノン株式会社 情報処理装置、情報処理方法、制御プログラム
JP5214349B2 (ja) * 2008-06-27 2013-06-19 京セラドキュメントソリューションズ株式会社 電子機器の操作表示装置および画像形成装置
JP2010036501A (ja) * 2008-08-06 2010-02-18 Fuji Xerox Co Ltd 画像形成装置、画像形成システムおよびインストールプログラム
US8587610B2 (en) * 2008-12-12 2013-11-19 Microsoft Corporation Rendering source content for display
KR101612757B1 (ko) * 2009-12-17 2016-04-26 삼성전자주식회사 인쇄 제어 단말장치 및 xps 파일 인쇄방법
JP5602424B2 (ja) 2009-12-24 2014-10-08 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP5581793B2 (ja) * 2010-04-30 2014-09-03 株式会社リコー 情報処理装置、プログラムおよび記憶媒体
JP2012048582A (ja) 2010-08-27 2012-03-08 Canon Inc 印刷ジョブ管理システムおよびその制御方法、情報処理装置、印刷サーバ
JP2012118733A (ja) * 2010-11-30 2012-06-21 Canon Inc 印刷システム、印刷方法、およびプログラム
JP5983094B2 (ja) * 2012-06-27 2016-08-31 ブラザー工業株式会社 ドライバ管理プログラム、及び、情報処理装置
KR101373495B1 (ko) * 2013-02-12 2014-03-12 허윤 윈도우즈 어플리케이션의 프린팅 데이터를 추출하는 방법, 이를 위한 전자계산장치 및 시스템
JP6129255B2 (ja) * 2015-08-25 2017-05-17 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
JP6958187B2 (ja) 2017-09-28 2021-11-02 ブラザー工業株式会社 プログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3946397B2 (ja) * 1999-12-24 2007-07-18 三菱電機株式会社 車載情報処理装置
JP2003108331A (ja) * 2001-09-27 2003-04-11 Fujitsu Ltd データ変換方法、プログラム及び記録媒体
JP3951114B2 (ja) * 2002-03-08 2007-08-01 リコープリンティングシステムズ株式会社 計算機,プリントサーバ,プリンタ及びそれらを用いた印刷システム。
US20030234950A1 (en) * 2002-06-19 2003-12-25 Daniel Travis Lay Notification and adjustment of non-matching printers and printer drivers
JP4368589B2 (ja) * 2003-01-17 2009-11-18 シャープ株式会社 印刷制御システム及び印刷制御方法
US20050094193A1 (en) * 2003-11-04 2005-05-05 Sharp Laboratories Of America, Inc. Print driver system and method for print job notification
KR20050045193A (ko) * 2003-11-10 2005-05-17 삼성전자주식회사 프린터 드라이버를 이용하여 보안 출력하는 방법 및 시스템
US20060146353A1 (en) * 2004-12-30 2006-07-06 Microsoft Corporation Strategies for rendering job information using a multi-personality driver device
JP4522290B2 (ja) * 2005-03-01 2010-08-11 キヤノン株式会社 印刷制御装置及びその制御方法とプログラム
JP2006285870A (ja) * 2005-04-04 2006-10-19 Canon Inc 印刷制御装置、印刷制御方法、及びプログラム
JP4579799B2 (ja) 2005-09-02 2010-11-10 キヤノン株式会社 画像形成装置及びその制御方法、プログラム、画像形成システム
JP4785579B2 (ja) * 2006-03-17 2011-10-05 キヤノン株式会社 情報処理装置および情報処理装置における印刷設定反映方法とプログラム
JP4785578B2 (ja) * 2006-03-17 2011-10-05 キヤノン株式会社 情報処理装置およびその方法
JP4667280B2 (ja) * 2006-03-17 2011-04-06 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
JP4785577B2 (ja) * 2006-03-17 2011-10-05 キヤノン株式会社 情報処理装置及びその制御方法、プログラム
JP4651112B2 (ja) * 2006-03-17 2011-03-16 キヤノン株式会社 情報処理装置及びその制御方法とプログラム
US8233162B2 (en) * 2007-04-02 2012-07-31 Seiko Epson Corporation Printer controller and method of printing print document which scale down a print image so that an entire area of a print sheet fits into a printable area

Also Published As

Publication number Publication date
US8094332B2 (en) 2012-01-10
US20070216925A1 (en) 2007-09-20
JP2007249859A (ja) 2007-09-27

Similar Documents

Publication Publication Date Title
US8094332B2 (en) Print processing utilizing multiple printer drivers
US8537438B2 (en) Information processing apparatus in which a plurality of types of print drivers and plurality of graphics units run, control method therefor, and program
US8390842B2 (en) Port monitor apparatus, method, and program for performing printing restriction by monitoring printer driver
US20250013397A1 (en) Information processing apparatus, control method, and storage medium
JP4847212B2 (ja) 情報処理装置、印刷制御方法、プログラム及びコンピュータ可読の記憶媒体
JP4942198B2 (ja) 印刷システム、クライアント端末装置及び印刷制御方法
CN112352218A (zh) 信息处理装置、控制方法及程序
US20200004473A1 (en) Information apparatus, controlling method for information apparatus, and storage medium
JP5235695B2 (ja) 印刷制御装置とその制御方法
JP6184212B2 (ja) 情報処理装置および制御方法およびプログラム
JP2007283562A (ja) 印刷システム
US8363283B2 (en) Print setting apparatus and printer for adding ground pattern to image and resolving conflicting settings
US7826083B2 (en) Management of multiple page description languages
JP4168991B2 (ja) 印刷制御装置、印刷システム、プログラム及び印刷制御方法
JP2006146814A (ja) 情報漏洩抑止方法及びそれを実現する情報処理装置とドライバプログラム
JP2007069359A (ja) 画像形成装置及びその制御方法、プログラム、画像形成システム
JP2008139912A (ja) 情報処理装置、画像形成装置及びそれらの制御方法、コンピュータプログラム
US20110038001A1 (en) Printing control method, a computer readable storage medium storing instructions of a computer program thereof, and an image formation device
JP4449766B2 (ja) 印刷モード管理システム、方法および装置、並びにプリンタドライバ
JP4143598B2 (ja) 情報処理装置における管理方法、情報処理装置、プログラム及び記憶媒体
JP2004295357A (ja) 部門管理を伴う印刷処理を行う印刷処理プログラム及び情報処理装置及び情報処理方法並びに記憶媒体
US9256913B2 (en) Information processing apparatus, control method thereof, and program
JP2008305346A (ja) ネットワーク管理システム、情報処理方法、プログラム及び記憶媒体
JP2007079743A (ja) 情報処理装置及びその制御方法、プログラム
JP2006244278A (ja) データ処理装置および印刷制御方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090316

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090316

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110215

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

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

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

Free format text: PAYMENT UNTIL: 20140722

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees