JP6234417B2 - 情報処理装置及びその制御方法とプログラム - Google Patents
情報処理装置及びその制御方法とプログラム Download PDFInfo
- Publication number
- JP6234417B2 JP6234417B2 JP2015209846A JP2015209846A JP6234417B2 JP 6234417 B2 JP6234417 B2 JP 6234417B2 JP 2015209846 A JP2015209846 A JP 2015209846A JP 2015209846 A JP2015209846 A JP 2015209846A JP 6234417 B2 JP6234417 B2 JP 6234417B2
- Authority
- JP
- Japan
- Prior art keywords
- xps
- data
- format
- gdi
- drawing data
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1835—Transforming generic data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1205—Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1206—Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1224—Client or server resources management
- G06F3/1225—Software update, e.g. print driver, modules, plug-ins, fonts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1244—Job translation or job parsing, e.g. page banding
- G06F3/1247—Job translation or job parsing, e.g. page banding by conversion to printer ready format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1244—Job translation or job parsing, e.g. page banding
- G06F3/1248—Job translation or job parsing, e.g. page banding by printer language recognition, e.g. PDL, PCL, PDF
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1253—Configuration of print job parameters, e.g. using UI at the client
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1279—Controller construction, e.g. aspects of the interface hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1278—Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
- G06F3/1285—Remote printer device, e.g. being remote from client or server
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1801—Input data handling means
- G06K15/1803—Receiving particular commands
- G06K15/1806—Receiving job control commands
- G06K15/1809—Receiving job control commands relating to the printing process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1801—Input data handling means
- G06K15/181—Receiving print data characterized by its formatting, e.g. particular page description languages
- G06K15/1811—Receiving print data characterized by its formatting, e.g. particular page description languages including high level document description only
- G06K15/1813—Page description language recognition
Description
本発明は、プリンタドライバの描画制御技術に関するものである。
マイクロソフト社のプリンティングシステムでは、従来よりGDI(Graphic Device Interface)と呼ばれるグラフィックスエンジンが使用されてきた。GDIを用いた従来の印刷処理フローは、以下のとおりである。
1)ユーザからの印刷指示に応じて、GDIアプリケーション(以下「GDIアプリ」と呼ぶ。)がGDIのサービス関数群を呼び出してGDI描画命令を発行する。
2)発行されたGDI描画命令はEMF(Enhanced Metafile)と呼ばれるデータ形式でスプールされ、GDI用のプリンタドライバ(以下「GDIドライバ」と呼ぶ)に渡される。
3)GDIドライバでは、GDI描画命令で構成される描画データ(以下、「GDI形式の描画データ」と呼ぶ。)を印刷装置が解釈可能な印刷データ(いわゆるPDLデータ)に変換し、印刷装置に出力する。
1)ユーザからの印刷指示に応じて、GDIアプリケーション(以下「GDIアプリ」と呼ぶ。)がGDIのサービス関数群を呼び出してGDI描画命令を発行する。
2)発行されたGDI描画命令はEMF(Enhanced Metafile)と呼ばれるデータ形式でスプールされ、GDI用のプリンタドライバ(以下「GDIドライバ」と呼ぶ)に渡される。
3)GDIドライバでは、GDI描画命令で構成される描画データ(以下、「GDI形式の描画データ」と呼ぶ。)を印刷装置が解釈可能な印刷データ(いわゆるPDLデータ)に変換し、印刷装置に出力する。
このような、GDIアプリからGDIドライバを介して印刷を行う処理フローを「GDIプリントパス」と呼ぶこととする。近年、このGDIプリントパスに、XPSプリントパスと呼ばれる新しい印刷処理フローが追加された。XPSは、XMLベースの電子文書フォーマットで、XML Paper Specificationの略である。XPSプリントパスでは、XPSを扱うアプリケーション(以下「XPSアプリ」と呼ぶ。)でXPS形式の描画データを生成し、XPS用のプリンタドライバ(以下、「XPSドライバ」と呼ぶ。)にて印刷データに変換され、印刷装置に出力される。
GDIプリントパスとXPSプリントパスとは排他的な関係にあるわけではなく、例えばGDIアプリがGDIを使って生成したGDI形式の描画データをXPS形式の描画データに変換してXPSドライバで印刷データにすることが可能である。また、逆にXPSアプリによるXPS形式の描画データをGDI形式の描画データに変換してGDIドライバで印刷データにすることも可能である。すなわち、GDIアプリからXPSドライバを介して印刷を行う印刷処理フローや、XPSアプリからGDIドライバを介して印刷を行う印刷処理フローも存在する。例えば、GDIアプリからXPSドライバを用いて印刷を行う場合、GDI形式の描画データが変換モジュールによってXPS形式の描画データに変換される。この変換モジュールはMXDW(Microsoft XPS Document Writer)と呼ばれる。XPS形式に変換された描画データは、XPSスプールファイルに格納された後、XPSドライバにて印刷データへ変換される。
このようにWindows(登録商標)VISTA以降のOSにおいては4つの印刷処理フローが利用可能になっている。これにより、GDIドライバあるいはXPSドライバのどちらか一方を用意すれば、GDIアプリおよびXPSアプリの両方で生成された描画データの印刷処理に対応することが出来る。
しかしながら、XPS形式とGDI形式とでは仕様が異なることから、描画データの形式変換には様々な問題が存在する。その一例として、印刷可能領域からはみ出した部分に印刷画像を割り当てた印刷要求が、GDIアプリからXPSドライバに対して発行されてしまうという問題が挙げられる。この問題に対しては、XPSドライバに入力されるXPS形式の描画データが、GDIアプリ由来のものか、XPSアプリ由来のものかを判断して印刷可能領域内に印刷されるように制御する技術が提案されている(特許文献1)。
そして、描画データの形式変換における問題として、上述の問題の他に、グラフィックオブジェクトの描画に関する問題の存在が明らかとなった。これは、グラフィックオブジェクトの描画命令でオブジェクト幅=0を指定した場合、プリンタドライバによってオブジェクト(例えば、線)が描画されたりされなかったりするという問題である。この問題は、GDI形式におけるオブジェクト幅=0はデバイスで表示できる最小の幅を意味するのに対し、XPS形式におけるオブジェクト幅=0は当該オブジェクトをまったく描画しないことを意味することに起因している。つまり、GDIアプリがGDIを介して生成した描画データにオブジェクト幅=0の線の描画を指定する描画命令が含まれる場合に、GDIドライバで印刷を行えば線が描画されるのに対し、XPSドライバでの印刷では線が描画されないことになる。同じアプリからなされた同じ描画命令であるにも関わらず、利用するプリンタドライバの種類によって印刷結果に違いが出るのでは、印刷品質に大きな影響を及ぼすことになる。
本発明に係る情報処理装置は、GDI形式の描画データをXPS形式の描画データに変換する変換モジュールと、入力されたXPS形式の描画データから、印刷装置に対応した印刷データを生成するプリンタドライバと、を備えた情報処理装置であって、前記プリンタドライバは、前記入力されたXPS形式の描画データが、GDIアプリケーションの印刷処理に基づき生成されるGDI形式の描画データを前記変換モジュールによって変換したXPS形式の描画データであり、且つ、当該XPS形式の描画データ内にオブジェクト幅が0のグラフィック描画命令を含む場合、当該グラフィック描画命令を前記印刷装置で表現可能な最小のオブジェクト幅での描画を指定するグラフィック描画命令に変更し、当該変更後のグラフィック描画命令を含む描画データに基づいて前記印刷データを生成する、ことを特徴とする。
本発明によれば、オブジェクト幅=0のグラフィック描画命令を含む印刷データをXPSドライバで生成する際に、当該描画命令がGDIアプリに由来する場合はデバイスにおける最小幅での描画を指定する描画命令に変更する。これによりGDIアプリからの同じ描画命令でありながら、使用するプリンタドライバによって印刷結果に差が生じてしまうのを防ぐことができる。
以下、図面を参照して本発明の実施の形態を詳しく説明する。なお、以下の実施の形態は特許請求の範囲に係る発明を限定するものでなく、また実施の形態で説明されている特徴の組み合わせの全てが発明の解決手段に必須のものとは限らない。
[実施例1]
図1は、本実施例に係る、印刷データを生成する情報処理装置の構成の一例を示す機能ブロック図である。情報処理装置100には、不図示のオペレーティングシステム(以下、OS)がインストールされている。本実施例では、OSとしてWindows(登録商標)を前提としている。そして、情報処理装置100には描画データを生成するソフトウェアとして、GDIアプリケーション110とXPSアプリケーション120の2種類の描画用ソフトウェアがOS上で動作する。GDIアプリ110は、ユーザからの印刷指示を受けてGDI関数を呼び出して、オブジェクトの属性(文字、グラフィック、イメージなど)に応じたGDI形式の描画データを、GDI111を用いて生成する。GDI111は、一般にグラフィックスエンジンと呼ばれる。GDI形式の描画データは、そのままではXPSドライバ130で入力が受け付けられないので、MXDW112に送られる。MXDW112は、GDI−XPS変換手段であって、GDI形式の描画データをXPS形式の描画データに変換するモジュールでありOSによって提供される。MXDW112によってXPS形式に変換された描画データが、XPSドライバ130に入力される。XPSアプリ120は、XPS形式の描画データを直接生成する。なお、XPS形式の描画データは、WPF(Windows Presentation Foundation)と呼ばれるグラフィックエンジンを介して生成される場合もあるが、本発明の特徴とは無関係であるので説明を省く。XPSアプリ120で生成されたXPS形式の描画データは、そのままXPSドライバ130に入力される。
図1は、本実施例に係る、印刷データを生成する情報処理装置の構成の一例を示す機能ブロック図である。情報処理装置100には、不図示のオペレーティングシステム(以下、OS)がインストールされている。本実施例では、OSとしてWindows(登録商標)を前提としている。そして、情報処理装置100には描画データを生成するソフトウェアとして、GDIアプリケーション110とXPSアプリケーション120の2種類の描画用ソフトウェアがOS上で動作する。GDIアプリ110は、ユーザからの印刷指示を受けてGDI関数を呼び出して、オブジェクトの属性(文字、グラフィック、イメージなど)に応じたGDI形式の描画データを、GDI111を用いて生成する。GDI111は、一般にグラフィックスエンジンと呼ばれる。GDI形式の描画データは、そのままではXPSドライバ130で入力が受け付けられないので、MXDW112に送られる。MXDW112は、GDI−XPS変換手段であって、GDI形式の描画データをXPS形式の描画データに変換するモジュールでありOSによって提供される。MXDW112によってXPS形式に変換された描画データが、XPSドライバ130に入力される。XPSアプリ120は、XPS形式の描画データを直接生成する。なお、XPS形式の描画データは、WPF(Windows Presentation Foundation)と呼ばれるグラフィックエンジンを介して生成される場合もあるが、本発明の特徴とは無関係であるので説明を省く。XPSアプリ120で生成されたXPS形式の描画データは、そのままXPSドライバ130に入力される。
XPSドライバ130は、入力描画データとしてXPS形式の描画データのみを受け付けるプリンタドライバである。XPSドライバ130は、印刷部数や用紙サイズといった印刷設定を管理し、入力された描画データから印刷装置が解釈可能な印刷データ(PDLデータ)を生成する。XPSドライバ130で生成された印刷データは、スプーラ140を経て印刷装置に送信される。XPSドライバ130は、UIドライバ131、グラフィックスドライバ132、設定データ保持部133から構成される。UIドライバ131は、XPSドライバ130のユーザインタフェース画面(以下、UI画面)の表示や、ユーザから入力された印刷設定に関する情報の保存を行う。グラフィックスドライバ132は、UIドライバ131でユーザが設定した印刷設定情報に基づいて、XPS形式の描画データから印刷データを生成する。UIドライバ131及びグラフィックスドライバ132の詳細については後述する。設定データ保持部133は、XPSドライバ130が印刷データ生成時に参照する、印刷に関連する各種設定データを保持する。この設定データはXML形式で記述され、UIドライバ131及びグラフィックスドライバ132の動作設定に関する情報が含まれる。本実施例では、アプリケーションの種類を判定するための探索文字列に関する情報が設定データの一部として保持されており、印刷データ生成時に参照される。
図2は、情報処理装置100のハードウェア構成の一例を示すブロック図である。なお図2に示す構成は一例であって、情報処理装置100は単体の機器であっても、LANやWAN等のネットワークを介して接続がされた複数の機器からなるシステムであってもよい。情報処理装置100は、ROM206やハードディスク203に記憶された処理プログラムをCPU201が実行することで様々な処理を実現し、システムバス210に接続された各部を総括的に制御する。また、CPU201は、マウスカーソル等で指示されたコマンドに基づいて、予め登録されたウインドウを開くといった種々の処理を実行する。例えばユーザが印刷の実行を指示する際は、印刷設定のウインドウを開き、XPSドライバ130に対する各種設定を行う。RAM202は、CPU201の主メモリ、ワークエリア等として機能する。ハードディスク203には、OS、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル等が記憶される。XPSドライバ130もハードディスク203に保存される。ディスプレイコントローラ204は、不図示のディスプレイの表示を制御する。プリンタコントローラ205は、所定の双方向性インタフェース(不図示)を介して印刷装置に接続され、印刷装置との通信制御を担う。なお、CPU201は、例えばRAM202上に設定された表示情報RAMへのアウトラインフォントの展開(ラスタライズ)処理を実行し、ディスプレイ上でのWYSIWYG(ウィジウィグ)を可能としている。外部記憶ドライブ207は、CDやDVDといった記憶媒体とのアクセスを制御する。キーボードコントローラ209は、キーボードやポインティングデバイスからのキー入力を制御する。
続いて、UIドライバ131の詳細について説明する。図3は、UIドライバ131の内部構成の一例を示す図である。UIドライバ131は、UI表示部301、UI設定部302、ドライバ初期化部303、ドライバハンドル返却部304から構成される。
UI表示部301は、ユーザが印刷設定を行うためのUI画面をディスプレイ上に表示する。UI設定部302は、UI表示部301を介してユーザが設定または変更した印刷設定を保存する。ドライバ初期化部303は、UIドライバ131の初期化を行う。アプリケーションやGDI111からドライバ初期化指示を受けると、初期化処理で生成したドライバハンドルをアプリケーションまたはGDI111に渡す。ドライバハンドルとは、ドライバを固有に識別するための識別名である。初期化処理で生成したドライバハンドルはドライバハンドル返却部304にて初期化指示を出したアプリケーションに返却する。ドライバハンドルを受け取ったアプリケーションは、ユーザに対して印刷設定入力の許可や、XPSドライバ130に対して描画データの出力を行う。なお、ユーザが印刷設定を行うために、ドライバの初期化指示と共にUI画面の表示指示がUIドライバ131に渡される場合がある。その場合には、UI表示部301にてUIダイアログを表示する。
続いて、グラフィックスドライバ132の詳細について説明する。図4は、グラフィックスドライバ132の内部構成の一例を示す図である。前述したように、グラフィックスドライバ132はXPS形式の描画データ(以下、「XPSデータ」と呼ぶ。)を受け取って、印刷設定情報に応じた印刷データを生成し、スプーラ140を介して印刷装置に送信する機能を有する。グラフィックスドライバ132は、XPS解析部401と印刷データ生成部402とで構成される。
MXDW112又はXPSアプリ120から入力されるXPSデータは、ドキュメント情報の全てがXMLで記述されており、記述内容ごとの複数ファイルをZIP圧縮により1つにまとめている。入力されたXPSデータは、XPS解析部401において解凍された後に解析される。解析の内容としては、例えば、入力されたXPSデータがGDIアプリ110に由来するものかどうかの判定処理がある。解析処理の詳細については後述する。また、XPS解析部401は、印刷データの前段階のデータである中間データの生成も行なう。印刷データ生成部402は、中間データと印刷設定情報を基に印刷データ(PDLデータ)を生成する。生成された印刷データはスプーラ140に出力される。
次に、本実施例に係る、XPSドライバ130における印刷データ生成処理について詳しく説明する。図5は、印刷データ生成処理の流れを示すフローチャートである。この印刷データ生成処理は、XPSドライバ130に対する印刷指示に応答して開始する。具体的には、ユーザの印刷指示に応じてROM206に格納された所定のプログラムがRAM202に展開され、これをCPU201が実行することで実現される。
ステップ501において、XPSドライバ130に、MXDW112或いはXPSアプリ120からXPSデータが入力される。入力されたXPSデータは、グラフィックスドライバ132内のXPS解析部401に送られる。この時点でXPSデータはZIP形式の状態である。XPSドライバ130がXPSデータの入力を受け付けた時点では、それがXPSアプリ120から直接に入力されたものか、当初はGDI形式であった描画データがMXDW112でXPS形式に変換された後に入力されたものかは分からない。そこで、入力されたXPSデータが、GDIアプリ110に由来するものか、XPSアプリ120に由来するものかを識別するために後述のステップ503にてアプリ判定処理を行なう。
ステップ502において、XPS解析部402は、ZIP形式のXPSデータを解凍する。図6は、XPSデータのデータ構造を示す図である。XPSデータはツリー構造になっており、rootフォルダの下の第一階層に「Metadata」「_rels」、「Documents」といった複数のフォルダが存在する。
ステップ503において、XPS解析部402は、アプリ判定処理を行う。このアプリ判定処理は、入力されたXPSデータの生成元のアプリケーションが、GDIアプリ110であるのかXPSアプリ120であるのかを判定する処理である。アプリ判定処理の詳細については後述する。判定の結果、生成元のアプリがGDIアプリ110であれば、ステップ505に進む。一方、生成元のアプリがXPSアプリ120であれば、描画命令に手を加えることなくそのまま中間データを生成し、ステップ507に進む。
ステップ505において、XPS解析部401は、解凍して得られた「Documents」フォルダ内のページ単位のファイル内に、グラフィック属性のオブジェクトの幅として0が指定された描画命令が存在するかどうかを判定する。図6に示す“1.fpage”や“2.fpage”がページ単位のファイルであり、その中には、例えば、以下に示す「Path」の描画命令が含まれている。
<Path Data="F1 M 19.2,19.2 L 96,19.2" Stroke="#ffff0000" StrokeThickness="0" StrokeLineJoin="Round" StrokeStartLineCap="Round" StrokeEndLineCap="Round" Clip="M 0,0 L 0,1083.84 755.2,1083.84 755.2,0 z" />
<Path Data="F1 M 19.2,19.2 L 96,19.2" Stroke="#ffff0000" StrokeThickness="0" StrokeLineJoin="Round" StrokeStartLineCap="Round" StrokeEndLineCap="Round" Clip="M 0,0 L 0,1083.84 755.2,1083.84 755.2,0 z" />
上記「Path」は線の描画を指定する命令であり、各要素は線描画の設定内容を表している。例えばData要素は、(19.2, 19.2)の座標に移動(M)し、線(L)を(96, 19.2)に対して描画することを表している。そして、オブジェクト幅としての線幅に関する要素は“StrokeThickness”であり、その要素値が“0”であること、すなわちXPSの仕様では線を描画しないことを意味している。
判定の結果、オブジェクト幅が0のグラフィック描画命令が存在する場合は、ステップ506に進む。一方、オブジェクト幅が0のグラフィック描画命令が存在しない場合は、ファイル内の描画命令に手を加えることなく中間データを生成してステップ507に進む。
ステップ506において、XPS解析部401は、オブジェクト幅が0のグラフィック描画命令を、最小幅でのオブジェクト(例えば、線オブジェクト)の描画を指定するグラフィック描画命令に変更する処理を行なう。例えば、上述の「Path」の描画命令の場合、以下のように変更される。
<Path Data="F1 M 19.2,19.2 L 96,19.2" Stroke="#ffff0000" StrokeThickness="0.16" StrokeLineJoin="Round" StrokeStartLineCap="Round" StrokeEndLineCap="Round" Clip="M 0,0 L 0,1083.84 755.2,1083.84 755.2,0 z" />
<Path Data="F1 M 19.2,19.2 L 96,19.2" Stroke="#ffff0000" StrokeThickness="0.16" StrokeLineJoin="Round" StrokeStartLineCap="Round" StrokeEndLineCap="Round" Clip="M 0,0 L 0,1083.84 755.2,1083.84 755.2,0 z" />
上記具体例の場合、“StrokeThickness”の要素値“0”が、“0.16”に変更されており、これは0.16の幅(単位はpoint)で線を描画することを意味している。
このように、オブジェクト幅が0のグラフィック描画命令をXPSの仕様に従ってそのまま描画しないと解釈するのではなく、GDIの仕様に従ってデバイスの最小単位で描画するという内容に解釈し直し、描画命令の内容が変更される。この描画命令変更処理の具体的な流れについては後述する。そして、この描画命令変更処理の結果を踏まえて或いは描画命令変更処理の過程において中間データが生成され、印刷データ生成部402に送られる。
このように、オブジェクト幅が0のグラフィック描画命令をXPSの仕様に従ってそのまま描画しないと解釈するのではなく、GDIの仕様に従ってデバイスの最小単位で描画するという内容に解釈し直し、描画命令の内容が変更される。この描画命令変更処理の具体的な流れについては後述する。そして、この描画命令変更処理の結果を踏まえて或いは描画命令変更処理の過程において中間データが生成され、印刷データ生成部402に送られる。
ステップ507において、印刷データ生成部402は、中間データと印刷設定情報に基づいて印刷データを生成する。生成された印刷データはスプーラに送られる。
以上が、XPSドライバ130における印刷データ生成処理の内容である。上述のとおり、GDIとXPSとでは仕様が異なる、オブジェクト幅=0のグラフィック描画に関して生成元アプリケーションの種類に応じた印刷データの生成を行うことで、各アプリケーションで想定している仕様で印刷を行うことが可能となる。
続いて、上述した図5のフローチャートにおけるアプリ判定処理(ステップ503)の詳細について説明する。本実施例のアプリ判定処理では、予め設定された探索条件の情報に従って、XPS形式の描画データ内の所定のファイルから特定の文字列を探索することで、XPSドライバに入力されたXPSデータの生成元のアプリを特定する。図7は、本実施例に係るアプリ判定処理の詳細を示すフローチャートである。
ステップ701では、生成元アプリを特定するための探索文字列に関する設定情報が設定データ保持部133から取得される。図8(a)は、本ステップで取得する探索文字列設定情報の一例を示しており、XPSデータ内のどの部分(ファイル)を対象に如何なる文字列を探索するかが指定されている。図8(a)に示す探索文字列設定情報において、探索条件の単位であるSetting要素801は、「SearchString」、「SearchPath」、「Mode」の3つの要素をさらに有している。「SearchString」は探索する文字列を指定してする要素であり、ここではMXDW112を表す文字列である“microsoftxpsdocumentwriter”がその値として設定されている。MXDW112を指すこの文字列は、GDI形式からXPS形式に変換する際にMXDW112において、ジョブレベルのプリントチケットに記述されるものである。そのため、この文字列を含むプリントチケットを持つXPSデータはGDIアプリ110が生成元であると判断することができる。なお、MXDW112を表す文字列であればよいので“microsoftxpsdocumentwriter”に限定されるわけではない。
「SearchPath」は、XPSデータの中のどのファイルから文字列を探索するかを特定するためのパスを指定する要素である。ここではその値として“/MeaData/*_PT.xml”が設定されている。前述のとおりXPSデータは複数のファイルがZIP圧縮されたデータ形式であるため、「SearchPath」で探索先のパスを指定することによりどのファイルを探索するかを特定する。本実施例のように、正規表現を用いることで複数のファイル(例えば“A_PT.xml”や“B_PT.xml”といったファイル名のファイル)を探索対象にすることができる。ジョブレベルのプリントチケットのファイル名は“JOB_PT.xml”であるので、正規表現を用いることなく“JOB_PT.xml”の文字列を設定値としてもよい。「Mode」は、「SearchPath」で指定されたパスに対応するファイル内に「SearchString」で指定された探索文字列が存在した場合に、どの種類のアプリケーションに由来するXPSデータであるとするかを特定する要素である。ここではその値として“cpk:GDI”が設定されている。つまり、この場合、メタデータフォルダ内の“_PT.xml”をファイル名に含むファイル内に“microsoftxpsdocumentwriter”の文字列があれば、GDIアプリ110由来のXPSデータと判定されることになる。もし「Mode」要素の設定値として“cpk:XPS”が入っていれば、XPSアプリ120に由来すると判定されることになる。なお、図8(a)の例では探索条件は1つ(Setting要素が1つのみ)しか設定されていないが、複数の探索条件を設定し、いずれかの探索条件(Setting要素)を満たした場合に、アプリケーションの種類が特定されるようにしてもよい。このように設定情報において、XPSデータのどのファイルからどの文字列を探索し、見つかった場合にどの種類のアプリケーションと判定するか、という内容を定義している。これにより、プログラム自体はそのままで設定情報における定義変更によって探索条件を変更することができる。
ステップ702では、探索文字列の設定情報に従って、「SearchPath」で指定されたパスが示すファイル内に、「SearchString」で指定された探索文字列が存在するかどうかが判定される。図8(b)は、探索の対象ファイルとしてのプリントチケットの一例を示す図である。図8(b)に示す例では、“psf:PrintTicket”要素の“xmlns:ns0000”要素の中に上記探索文字列“microsoftxpsdocumentwriter”が含まれている。判定の結果、対象ファイル内に探索文字列が存在する場合はステップ703に進む。一方、対象ファイル内に探索文字列が存在しない場合はステップ704に進む。
ステップ703では、入力XPSデータについて、MXDW112を経由したGDIアプリ110が生成元であると決定され、本処理を終える。
ステップ704では、入力XPSデータについて、XPSアプリ120が生成元であると決定され、本処理を終える。
以上が、本実施例に係るアプリ判定処理の内容である。
以上が、本実施例に係るアプリ判定処理の内容である。
続いて、上述した図5のフローチャートにおける描画命令変更処理(ステップ506)の詳細について説明する。図9は、描画命令変更処理の詳細を示すフローチャートである。
ステップ901では、ユーザが設定した印刷設定情報から印刷解像度と印刷用紙サイズの情報が取得される。この印刷設定情報はXPSデータ内の上述のプリントチケットと呼ばれる部分に記述されている。XPS解析部401は、プリントチケットを解析して、印刷解像度と印刷用紙サイズの情報を取得する。図8(b)の例では、印刷解像度は“psk:PageResolution”要素にて100(dpi)が、印刷用紙サイズは“psk:PageMediaSize”要素にてA4に相当するサイズ(縦210mm×横297mm)がそれぞれ設定されている。
ステップ902では、取得した印刷解像度及び印刷用紙サイズの情報から、デバイスで表現可能な最小の幅である1ピクセル(pixel)の幅が導出される。例えば、上述のように印刷解像度が100(dpi)、印刷用紙サイズがA4に設定されていた場合、画像の画素数は縦827pixel×横1169pixelとなる。この場合、1ピクセルの幅として、約0.25mmが導出されることとなる。
ステップ903では、オブジェクト幅=0(XPS形式では「描画しない」を意味)を指定するグラフィック描画命令を、1ピクセル幅に相当するオブジェクト幅(ここでは0.25mm)でオブジェクトの描画を指定するグラフィック描画命令に変更する。
以上が、描画命令変更処理の内容である。この変更処理により、入力されたXPSデータの生成元アプリがGDIアプリであった場合、そのままでは何も描画されない内容の描画命令が、GDIの仕様と同様、最小のオブジェクト幅で描画する描画命令に変更される。
なお、上述の例では、1ピクセル幅を計算によって求めているが、印刷装置や生成する印刷データの仕様によっては、線などのグラフィック属性のオブジェクトを最小幅で描画する専用の描画命令が予め用意されている場合もある。このような場合は、上述のステップ902における導出処理を省略し、図5のフローにおける印刷データの生成(ステップ507)にて、オブジェクト幅が0のグラフィック描画命令については、上記専用の描画命令に変更した上で印刷データを生成すればよい。この場合、印刷装置側でオブジェクト幅の計算が行われることになる。
また、本実施例では、情報処理装置にインストールされているプリンタドライバがXPSドライバのみの構成であったが、さらにGDIドライバがインストールされていてもよい。本実施例を適用することで、GDIアプリ生成した描画データについていずれのプリンタドライバを用いても同じ印刷結果を得ることができる。
本実施例によれば、XPSドライバに入力されたXPSデータがGDIアプリに由来する場合は、オブジェクト幅=0のグラフィック描画命令が、GDIアプリの仕様に則ってオブジェクトの最小幅での描画を指定するグラフィック描画命令に変更される。これにより、GDIアプリでユーザが意図した内容の印刷結果を、XPSドライバを介した印刷によって得ることができる。
[実施例2]
実施例1では、予め設定された探索条件の情報に従って、XPSデータ内の所定のファイルから特定の文字列を探索することで、XPSドライバに入力されたXPSデータの生成元のアプリを特定し、必要に応じて描画命令を変更する態様であった。次に、印刷時に使用するXPSドライバのユーザインタフェース画面でユーザが行なった設定内容に基づいて、XPSデータの生成元のアプリを特定する態様について、実施例2として説明する。なお、実施例1と基本的な構成は共通であり、以下では実施例1との差異点であるアプリ判定処理を中心に説明するものとする。
実施例1では、予め設定された探索条件の情報に従って、XPSデータ内の所定のファイルから特定の文字列を探索することで、XPSドライバに入力されたXPSデータの生成元のアプリを特定し、必要に応じて描画命令を変更する態様であった。次に、印刷時に使用するXPSドライバのユーザインタフェース画面でユーザが行なった設定内容に基づいて、XPSデータの生成元のアプリを特定する態様について、実施例2として説明する。なお、実施例1と基本的な構成は共通であり、以下では実施例1との差異点であるアプリ判定処理を中心に説明するものとする。
最初に、ユーザが印刷時に使用する、XPSドライバ130のユーザインタフェース画面(以下、UI画面)について説明する。図10は、XPSドライバ130のUI画面の一例を示す図である。このUI画面1000は、UIドライバ131のUI表示部301によって情報処理装置100のディスプレイ上に表示される。ユーザは印刷時、文書等の作成アプリケーションから図10に示すようなUI画面1000を使用して、出力用紙サイズや印刷の向きといった各種印刷設定を行う。このUI画面1000では、右上部にある「出力方式」の項目1001において、出力モードとして「印刷(GDI−XPS互換)」を選択できるようになっている。この「印刷(GDI−XPS互換)」は、GDIアプリによって生成した描画データを印刷出力するユーザが、GDIドライバで印刷する時と同様の印刷結果を、XPSドライバを介した印刷で得たい場合に選択するモードである。なお、ユーザが、「印刷(GDI−XPS互換)」を選択しなかった場合(例えば、通常の印刷を示す「印刷(通常)」を選択した場合)は、すべてXPSの仕様に従うことになる。すなわち、GDIアプリによって生成した描画データであったとしても、XPSの仕様に従って、オブジェクト幅=0のグラフィック描画命令はオブジェクトの描画を行なわない描画命令として扱われることになる。
図11は、本実施例に係るアプリ判定処理の詳細を示すフローチャートである。
ステップ1201では、受信したXPSデータの中から、印刷設定情報が記述されたファイルであるプリントチケットが取得され、内容の解析がなされる。この際、ユーザが印刷設定時に上述のUI画面1000の項目1001で選択した、出力モードの設定値を取得する。図12は、本実施例に係るXPSデータのプリントチケットの一例である。ここで、UI画面1000における出力方式の項目1001は、XPSデータのプリントチケット上では、「psk:OutputMode」要素で記載される。図12の例では、「psk:OutputMode」の要素値として“GDI”が設定されており、これは出力方式として「印刷(GDI−XPS互換)」が選択されたことを意味している。XPS解析部401はプリントチケット上の「psk:OutputMode」要素の設定値を読み取ることで、生成元のアプリケーションの種類を特定することが可能となる。
ステップ1201では、受信したXPSデータの中から、印刷設定情報が記述されたファイルであるプリントチケットが取得され、内容の解析がなされる。この際、ユーザが印刷設定時に上述のUI画面1000の項目1001で選択した、出力モードの設定値を取得する。図12は、本実施例に係るXPSデータのプリントチケットの一例である。ここで、UI画面1000における出力方式の項目1001は、XPSデータのプリントチケット上では、「psk:OutputMode」要素で記載される。図12の例では、「psk:OutputMode」の要素値として“GDI”が設定されており、これは出力方式として「印刷(GDI−XPS互換)」が選択されたことを意味している。XPS解析部401はプリントチケット上の「psk:OutputMode」要素の設定値を読み取ることで、生成元のアプリケーションの種類を特定することが可能となる。
ステップ1102では、取得した出力モードの設定値(「psk:OutputMode」の要素値)が“GDI”であるかどうかが判定される。判定の結果、“GDI”である場合は、ステップ1103に進む。一方、“GDI”でない場合は、ステップ1104に進む。
ステップ1103では、入力されたXPSデータはMXDW112を経由したGDIアプリ110が生成元のXPSデータであると決定され、本処理を終える。
ステップ1104では、入力されたXPSデータは、XPSアプリ4が生成元のXPSデータであると決定され、本処理を終える。
以上が、本実施例に係るアプリ判定処理の内容である。
以上が、本実施例に係るアプリ判定処理の内容である。
本実施例によっても、実施例1と同様、GDIアプリでユーザが意図した内容の印刷結果を、XPSドライバを介した印刷によって得ることができる。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
Claims (10)
- GDI形式の描画データをXPS形式の描画データに変換する変換モジュールと、
入力されたXPS形式の描画データから、印刷装置に対応した印刷データを生成するプリンタドライバと、
を備えた情報処理装置であって、
前記プリンタドライバは、前記入力されたXPS形式の描画データが、GDIアプリケーションの印刷処理に基づき生成されるGDI形式の描画データを前記変換モジュールによって変換したXPS形式の描画データであり、且つ、当該XPS形式の描画データ内にオブジェクト幅が0のグラフィック描画命令を含む場合、当該グラフィック描画命令を前記印刷装置で表現可能な最小のオブジェクト幅での描画を指定するグラフィック描画命令に変更し、当該変更後のグラフィック描画命令を含む描画データに基づいて前記印刷データを生成する、
ことを特徴とする情報処理装置。 - 前記プリンタドライバは、前記入力されたXPS形式の描画データが、GDIアプリケーションからの印刷処理に基づき生成されるGDI形式の描画データを前記変換モジュールによって変換したXPS形式の描画データであるかどうかを判定する判定手段をさらに備えたことを特徴とする請求項1に記載の情報処理装置。
- 前記判定手段は、予め設定された探索条件の情報に従って、前記入力されたXPS形式の描画データ内の所定のファイルから特定の文字列を探索することで、前記XPS形式の描画データが、GDIアプリケーションからの印刷処理に基づき生成されるGDI形式の描画データを前記変換モジュールによって変換したXPS形式の描画データであるかどうかを判定することを特徴とする請求項2に記載の情報処理装置。
- 前記判定手段は、前記プリンタドライバのユーザインタフェース画面でユーザが行なった出力方式に関する設定内容に基づいて、前記入力されたXPS形式の描画データが、GDIアプリケーションからの印刷処理に基づき生成されるGDI形式の描画データを前記変換モジュールによって変換したXPS形式の描画データであるかどうかを判定することを特徴とする請求項2に記載の情報処理装置。
- 前記プリンタドライバは、前記入力されたXPS形式の描画データ内のプリントチケットから印刷解像度と印刷用紙サイズの情報を取得して前記最小のオブジェクト幅を導出する手段を有し、前記オブジェクト幅が0のグラフィック描画命令を、当該導出したオブジェクト幅での描画を指定するグラフィック描画命令に変更することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
- 前記プリンタドライバは、前記オブジェクト幅が0のグラフィック描画命令を、前記印刷装置で表現可能な最小のオブジェクト幅での描画を指定する予め定められた専用のグラフィック描画命令に変更することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
- 前記オブジェクト幅が0のグラフィック描画命令は、線オブジェクトのグラフィック描画命令であることを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
- 前記プリンタドライバは、前記入力されたXPS形式の描画データが、XPSアプリケーションの印刷処理に基づき生成されるXPS形式の描画データである場合、当該XPS形式の描画命令に含まれるオブジェクト幅が0のグラフィック描画命令を変更しないことを特徴とする請求項1に記載の情報処理装置。
- 入力されたXPS形式の描画データから、印刷装置に対応した印刷データを生成するプリンタドライバによって実行される、印刷データ生成方法であって、
前記印刷データ生成方法は、
前記入力されたXPS形式の描画データが、GDIアプリケーションの印刷処理に基づき生成されるGDI形式の描画データを変換モジュールによって変換したXPS形式の描画データであるか判定する判定ステップと、
前記判定ステップにおいて前記入力されたXPS形式の描画データが、GDIアプリケーションの印刷処理に基づき生成されるGDI形式の描画データを変換モジュールによって変換したXPS形式の描画データであると判定され、且つ、当該XPS形式の描画データ内にオブジェクト幅が0のグラフィック描画命令を含む場合、当該グラフィック描画命令を前記印刷装置で表現可能な最小のオブジェクト幅での描画を指定するグラフィック描画命令に変更する変更ステップと、
当該変更後のグラフィック描画命令を含む描画データに基づいて前記印刷データを生成する生成ステップと、
を含むことを特徴とする印刷データ生成方法。 - コンピュータに請求項9に記載の印刷データ生成方法を実行させるためのプログラム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015209846A JP6234417B2 (ja) | 2015-10-26 | 2015-10-26 | 情報処理装置及びその制御方法とプログラム |
US15/295,416 US9754197B2 (en) | 2015-10-26 | 2016-10-17 | Information processing apparatus, print data generation method, and storage medium |
CN201610944864.8A CN107015770B (zh) | 2015-10-26 | 2016-10-26 | 信息处理设备和打印数据生成方法 |
US15/654,121 US9990572B2 (en) | 2015-10-26 | 2017-07-19 | Information processing apparatus, print data generation method, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015209846A JP6234417B2 (ja) | 2015-10-26 | 2015-10-26 | 情報処理装置及びその制御方法とプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017207215A Division JP6437076B2 (ja) | 2017-10-26 | 2017-10-26 | 情報処理装置及びその制御方法とプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017083996A JP2017083996A (ja) | 2017-05-18 |
JP6234417B2 true JP6234417B2 (ja) | 2017-11-22 |
Family
ID=58559028
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015209846A Active JP6234417B2 (ja) | 2015-10-26 | 2015-10-26 | 情報処理装置及びその制御方法とプログラム |
Country Status (3)
Country | Link |
---|---|
US (2) | US9754197B2 (ja) |
JP (1) | JP6234417B2 (ja) |
CN (1) | CN107015770B (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6938204B2 (ja) * | 2017-05-02 | 2021-09-22 | キヤノン株式会社 | 情報処理装置、プログラム |
JP7158871B2 (ja) | 2018-03-15 | 2022-10-24 | キヤノン株式会社 | プログラム及び情報処理装置 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1289766A4 (en) * | 2000-05-24 | 2005-12-21 | Silverbrook Res Pty Ltd | MOTOR / PRINT CONTROLLER AND PRINT HEAD INTERFACE INCORPORATING THIS MOTOR / CONTROLLER |
JP4624087B2 (ja) * | 2004-12-06 | 2011-02-02 | 京セラミタ株式会社 | 描画処理装置及びプログラム |
JP4667280B2 (ja) * | 2006-03-17 | 2011-04-06 | キヤノン株式会社 | 情報処理装置及びその制御方法、プログラム |
JP4785577B2 (ja) * | 2006-03-17 | 2011-10-05 | キヤノン株式会社 | 情報処理装置及びその制御方法、プログラム |
JP4630847B2 (ja) * | 2006-06-09 | 2011-02-09 | キヤノン株式会社 | 情報処理装置、情報処理方法およびプログラム |
JP4367561B2 (ja) | 2007-04-02 | 2009-11-18 | セイコーエプソン株式会社 | 印刷制御装置及び印刷文書の印刷方法 |
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 |
JP4375459B2 (ja) * | 2007-08-03 | 2009-12-02 | ブラザー工業株式会社 | 印刷制御装置およびプリンタドライバのプログラム |
JP2011165010A (ja) * | 2010-02-10 | 2011-08-25 | Canon Inc | 情報処理方法および情報処理装置、プログラム |
-
2015
- 2015-10-26 JP JP2015209846A patent/JP6234417B2/ja active Active
-
2016
- 2016-10-17 US US15/295,416 patent/US9754197B2/en not_active Expired - Fee Related
- 2016-10-26 CN CN201610944864.8A patent/CN107015770B/zh active Active
-
2017
- 2017-07-19 US US15/654,121 patent/US9990572B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN107015770A (zh) | 2017-08-04 |
US20170316290A1 (en) | 2017-11-02 |
US9990572B2 (en) | 2018-06-05 |
CN107015770B (zh) | 2020-03-03 |
US9754197B2 (en) | 2017-09-05 |
JP2017083996A (ja) | 2017-05-18 |
US20170116501A1 (en) | 2017-04-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8917405B2 (en) | Information processing for generating graphics data processible by a printer | |
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 | |
US8850302B2 (en) | Information processing apparatus and method thereof for generating drawing data of a moving image object in a raster format for printing an image based on a web page by a printing apparatus if it is determined that the web page contains the moving image object and drawing data of the moving image object cannot be created in the vector format | |
JP2005228243A (ja) | 情報処理装置及びその制御方法、プログラム | |
US8325368B2 (en) | Print information conversion apparatus, printing apparatus, printing system, and computer readable medium | |
JP5235695B2 (ja) | 印刷制御装置とその制御方法 | |
US9507544B2 (en) | Information processing apparatus, recording medium, and control method to process print data using filters | |
US9928018B2 (en) | Information processing apparatus and control method thereof, for a drawing control technique of a printer driver | |
US8320001B2 (en) | Information processing method and apparatus for banner printing | |
JP2009187553A (ja) | Pdf文書のテキストのみのコンテンツを印刷するための方法 | |
JP2009245433A (ja) | ページ記述言語を処理するシステム、方法及びコンピュータ可読媒体 | |
JP6234417B2 (ja) | 情報処理装置及びその制御方法とプログラム | |
JP2017151820A (ja) | 情報処理装置、プログラム及び制御方法 | |
JP6437076B2 (ja) | 情報処理装置及びその制御方法とプログラム | |
JP5807460B2 (ja) | 情報処理装置、プログラム、記憶媒体 | |
US20140126013A1 (en) | Printing control apparatus and method | |
US10310788B2 (en) | Control method for generating data used for printing and information processing apparatus | |
US8908227B2 (en) | Image forming apparatus, image forming system, image data processing method, program, and storage medium | |
US20100142001A1 (en) | Information processing apparatus, method for controlling the information processing apparatus, and storage medium | |
JP2019144814A (ja) | 情報処理装置、情報処理装置の制御方法およびプログラム | |
JP2011039960A (ja) | 情報処理装置とプログラムとコンピュータ読み取り可能な記録媒体 | |
JP5953727B2 (ja) | 画像処理装置及びプログラム | |
JP2020177298A (ja) | 画像処理装置、画像処理方法、およびプログラム | |
JP2007115026A (ja) | 印刷制御装置、印刷制御方法、印刷制御プログラム及び記録媒体 | |
JP2012120099A (ja) | 印刷制御装置、印刷制御方法、制御プログラム及び記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170908 |
|
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: 20170926 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171024 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6234417 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |