JP2015215654A - プリンタドライバ及びプリンタドライバの禁則処理方法 - Google Patents

プリンタドライバ及びプリンタドライバの禁則処理方法 Download PDF

Info

Publication number
JP2015215654A
JP2015215654A JP2014096483A JP2014096483A JP2015215654A JP 2015215654 A JP2015215654 A JP 2015215654A JP 2014096483 A JP2014096483 A JP 2014096483A JP 2014096483 A JP2014096483 A JP 2014096483A JP 2015215654 A JP2015215654 A JP 2015215654A
Authority
JP
Japan
Prior art keywords
prohibition
printer driver
setting
printticket
processing
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
JP2014096483A
Other languages
English (en)
Other versions
JP6115515B2 (ja
Inventor
義之 原田
Yoshiyuki Harada
義之 原田
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.)
Konica Minolta Inc
Original Assignee
Konica Minolta 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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2014096483A priority Critical patent/JP6115515B2/ja
Priority to US14/705,757 priority patent/US9652189B2/en
Publication of JP2015215654A publication Critical patent/JP2015215654A/ja
Application granted granted Critical
Publication of JP6115515B2 publication Critical patent/JP6115515B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1275Print workflow management, e.g. defining or changing a workflow, cross publishing
    • G06F3/1276Print workflow management, e.g. defining or changing a workflow, cross publishing within a printer driver, e.g. driver resides either on a server or on a client
    • 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/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/121Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted
    • 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/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/1258Configuration of print job parameters, e.g. using UI at the client by updating job settings at the printer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Abstract

【課題】印刷機能の設定の競合を判断する禁則処理を効率的に実施する。
【解決手段】印刷装置に印刷を指示するコンピュータ装置で動作し、印刷機能の設定が競合する禁則を検証/解決する禁則処理をスクリプト言語で行うプリンタドライバであって、前記コンピュータ装置に、PrintTicketに対する禁則処理に際し、前記PrintTicketから印刷機能の設定項目及び設定値を取得してテーブルに設定する第1処理、前記テーブルを参照して禁則の検証を行う第2処理、前記PrintTicketの設定項目の内、禁則が発生している設定項目の設定値を禁則が発生しない設定値に書き替える第3処理、をこの順に実行させる。
【選択図】図6

Description

本発明は、プリンタドライバ及びプリンタドライバの禁則処理方法に関し、特に、Windows(登録商標、以下省略)のオペレーティングシステム(OS:Operating System)上で動作するプリンタドライバ及び当該プリンタドライバの禁則処理方法に関する。
WindowsOS上で動作するプリンタドライバに関して、Microsoft(登録商標、以下省略)社からハードウェアメーカー向けのガイドラインが示されており、ハードウェアメーカーでは、このガイドラインに従って、Windows2000〜Windows7を想定したVersion3のプリンタドライバを提供している。
その後、WindowsOSとしてWindows8やServer2012が登場しており、特にWindows8では、UI(User Interface)がタイル状のユーザーインタフェースであるMetroスタイルに変更されたことから、ハードウェアメーカーでは、新しいプリンタドライバアーキテクチャを採用したVersion4のプリンタドライバの開発を進めている。
このVersion4のプリンタドライバモデルは、大別するとPrinter Driver core部と印刷設定UI(User Interface)部の2つのレイヤーで構成される。これら2つのレイヤーはプロセス分離が図られており、個別に提供することができるようになっている。
Printer Driver core部は、印刷機能を提供するアプリケーションであり、各印刷機能を定義するGPD(Generic Printer Description)などのデータファイルを元に、PrintCapabilitiesと呼ばれる印刷機能情報とPrintTicketと呼ばれる印刷設定情報とを生成すると共に、印刷機能の設定の競合を処理する。また、印刷設定UI部は、Printer Driver core部から独立したアプリケーションであり、Printer Driver core部から提供されるPrintCapabilitiesとPrintTicketとを元にして印刷設定画面の提供を行う。
これらのプリンタドライバでは、印刷処理が正しく実行されるように、印刷機能の設定の競合を判断する(禁則処理と呼ぶ。)が、禁則処理の時間が長くなると、印刷開始が遅れる。この問題に対して、例えば、下記特許文献1では、印刷装置の印刷処理に関する情報処理を実行する印刷ドライバーであって、印刷に関する禁則設定が構造化言語で記述されている構造化データから多次元配列したバイナリデータである禁則設定データへ変換し、該変換した禁則設定データを記憶手段に保存させる変換記憶モジュールと、前記保存した禁則設定データを利用して禁則条件を判定し該判定結果を出力する出力モジュールと、を備えた印刷ドライバーを開示しており、構造化データをバイナリデータである禁則設定データに変換することで禁則処理の高速化を図っている。
特開2012−226696号公報
上記禁則処理に関し、Version3のプリンタドライバでは、C/C++などの言語で処理を行うため、処理時間は短い。しかしながら、Version4のプリンタドライバでは、JavaScript(登録商標、以下省略)のようなスクリプト言語で処理を行うため、処理に時間がかかる。
具体的には、Version4のプリンタドライバでは、アプリケーションやOSからの禁則処理の指示に対し、JavaScriptで定義されたvalidatePrintTicket()と呼ばれる関数を呼び出し、PrintTicketに設定されている現在の設定値に禁則が発生しないかを検証し、検証の結果、禁則がある場合には禁則の解決を行い、禁則の解決を行ったか否かを戻り値としてアプリケーションやOSに返す処理を実行するため、処理に時間がかかる。
更に、このvalidatePrintTicket()関数が呼び出される回数はアプリケーションやOSに依存しており、一回の印刷実行時に複数回呼び出され、同一のPrintTicketに対して何度も禁則処理の指示が出る場合があるため、禁則処理時間は更に長くなり、C/C++などの言語で同等の処理を行った場合に比べて、5〜10倍程度にもなる。この問題はVersion4のプリンタドライバで顕在化した問題であり、禁則処理時間が長くなることによって印刷開始が遅れ、ユーザの利便性を著しく損なうことになる。
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、印刷機能の設定の競合を判断する禁則処理を効率的に実施することができるプリンタドライバ及びプリンタドライバの禁則処理方法を提供することにある。
本発明の一側面は、印刷装置に印刷を指示するコンピュータ装置で動作し、印刷機能の設定が競合する禁則を検証/解決する禁則処理をスクリプト言語で行うプリンタドライバであって、前記コンピュータ装置に、PrintTicketに対する禁則処理に際し、前記PrintTicketから印刷機能の設定項目及び設定値を取得してチェック用データを生成する第1処理、前記チェック用データを参照して禁則の検証を行う第2処理、前記PrintTicketの設定項目の内、禁則が発生している設定項目の設定値を禁則が発生しない設定値に書き替える第3処理、をこの順に実行させることを特徴とする。
本発明の一側面は、印刷装置に印刷を指示するコンピュータ装置で動作し、印刷機能の設定が競合する禁則を検証/解決する禁則処理をスクリプト言語で行うプリンタドライバの禁則処理方法であって、PrintTicketから印刷機能の設定項目及び設定値を取得してチェック用データを生成する第1処理と、前記チェック用データを参照して禁則の検証を行う第2処理と、前記PrintTicketの設定項目の内、禁則が発生している設定項目の設定値を禁則が発生しない設定値に書き替える第3処理と、をこの順に実行することを特徴とする。
本発明のプリンタドライバ及びプリンタドライバの禁則処理方法によれば、印刷機能の設定の競合を判断する禁則処理を効率的に実施することができる。
その理由は、プリンタドライバ(禁則JavaScript部)は、禁則処理に際して、検証対象のPrintTicketから印刷機能の設定項目及び設定値を読み出してチェック用データを生成し、当該チェック用データを参照して禁則の検証を行い、禁則が発生している設定項目に対して、チェック用データの設定値を禁則が発生しない設定値に書き換えると共に設定値を書き替えたことを示す情報を付加し、チェック用データに付加した情報を参照して、PrintTicketの設定値を書き替える制御を行うからである。
これにより、禁則条件式毎にデータサイズの大きいPrintTicketを読み込む必要がなくなるため、JavaScriptのようなスクリプト言語で禁則処理を行う場合であっても、禁則処理時間を短縮して印刷開始までの時間を短くすることができる。
本発明の一実施例に係る印刷システムの構成を模式的に示す図である。 本発明の一実施例に係るコンピュータ装置の構成を示すブロック図である。 本発明の一実施例に係るコンピュータ装置の機能を示すブロック図である。 本発明の一実施例に係るGPDファイルの一例である。 本発明の一実施例に係るコンピュータ装置の禁則処理を示すフローチャート図である。 本発明の一実施例に係るコンピュータ装置の禁則処理(禁則の検証処理)を示すフローチャート図である。 本発明の一実施例に係るPrintTicketの一例(検証対象となるPrintTicket(1))である。 本発明の一実施例に係るPrintTicketの一例(PrintTicket(1)に対して禁則処理を行った後のPrintTicket(2))である。 本発明の一実施例に係る禁則処理で利用するハッシュコードテーブルの一例である。 本発明の一実施例に係る禁則処理で利用するハッシュ値が付加されたPrintTicketの一例である。 本発明の一実施例に係る禁則処理で利用する設定項目リストの一例である。 本発明の一実施例に係る設定状態テーブル(図11の設定項目に対して禁則処理前の設定値を記述した状態)の一例である。 本発明の一実施例に係る設定状態テーブル(図11の設定項目に対して禁則処理後の設定値を記述した状態)の一例である。 本発明の一実施例に係る禁則処理で利用する禁則条件式の一例である。 本発明の一実施例に係る禁則処理制御の効果を説明する図であり、(a)はハッシュ値の比較処理を行った場合の効果、(b)は、設定状態テーブルを利用して禁則処理を行った場合の効果、(c)は両方の処理を行った場合の効果を示している。 本発明の一実施例に係る禁則処理を模式的に示す概念図である。 本発明の禁則処理と従来の禁則処理とを比較する図である。
背景技術で示したように、ハードウェアメーカーにより、WindowsOSに応じたプリンタドライバが提供されており、新たなWindowsOSであるWindows8やServer2012向けに、Version4のプリンタドライバの開発が行われている。
このVersion4のプリンタドライバでは、JavaScriptなどのスクリプト言語で禁則処理を行う必要があるため、C/C++などの言語で同等の処理を行った場合に比べて禁則処理に時間がかかる。特に、禁則の検証を行う関数であるvalidatePrintTicket()は、一回の印刷実行時に複数回呼び出され、同一のPrintTicketに対して何度も禁則の検証を行うため、禁則処理の時間が長くなることによって印刷開始が遅れるという問題が発生する。
この問題について、実測したデータを元に説明する。表1は、印刷設定画面で印刷ボタンを押してから印刷データの作成完了までに要する時間を、禁則処理を行った場合と行わなかった場合の双方で5回計測した時の平均値を示している。なお、計測対象のテストデータである”SP03P_AC.pdf”は1ページ、”J9.doc”は5ページである。また、測定環境は、OS:Windows8 Pro、CPU:Intel(R) Core(TM)i5-2400@3.10GHz、Memory:8.00GB、HDD:400GB(Remaining:100GB)、Application:Adobe reader 11.0.3、Application:Microsoft Word 2010である。
Figure 2015215654
表1に示すように、計測対象のテストデータでは、禁則処理に要する時間(禁則処理を行った場合と行わなかった場合の計測時間を差分)が、禁則処理を行った場合の印刷データ作成完了までに要する時間の約45〜70%の範囲となっており、印刷処理に際して禁則処理時間が占める割合は非常に大きい。従って、迅速に印刷処理を実施するためには、禁則処理時間を短くすることが重要である。
この点に関し、従来のVersion3のプリンタドライバはC/C++で処理を行うため、禁則処理時間は1秒かからない程度であり、禁則処理は問題とはなっていなかった。これに対して、Version4のプリンタドライバでは、JavaScriptなどのスクリプト言語で処理を行うため、禁則処理時間が長くなり、禁則処理の問題が顕在化している。特に、OSやアプリケーションから同一のPrintTicketに対して何度も禁則処理の指示が出ていることが判明しており、同一のPrintTicketに対して禁則処理を何度も繰り返すことによって禁則処理時間が更に長くなり、禁則処理時間の短縮が求められている。
そこで、本発明の一実施の形態では、禁則の検証に際して、禁則条件式毎に、データサイズの大きいPrintTicketを読み込むことが禁則処理の時間を長くする大きな要因になっていることに着目し、JavaScriptなどのスクリプト言語で禁則処理を行うプリンタドライバにおいて、XML(Extensible Markup Language)などの構造化言語で記述されたPrintTicketから印刷機能の設定項目及び設定値を読み込んでデータサイズの小さいチェック用データを生成し、そのチェック用データを用いて禁則の検証を行うようにする。具体的には、禁則条件式毎にチェック用データを読み込んで禁則の検証を行い、禁則が発生している設定項目に対して、チェック用データの設定値を禁則が発生しない設定値に書き替えると共に、設定値を書き替えたことを示す情報を付加する。そして、禁則の検証が終了したら、チェック用データに付加した情報を参照して、禁則が発生している設定項目を特定し、PrintTicketの当該設定項目の設定値をチェック用データの設定値に書き替えるようにする。
このような制御を行った場合の効果について説明する。図17は、PrintTicketを読み込む従来の手法とテーブルを読み込む本願の手法とを比較する図である。図17(a)に示す従来の手法では、XMLなどの構造化言語で記述された、データサイズの大きいPrintTicketから設定項目及び設定値を読み取る必要があり、また、禁則の検証に必要がない部分も読み込む必要があり、この処理を禁則条件式毎に行うために処理時間が長くなる。一方、図17(b)に示す本願の手法では、PrintTicketに比べてデータサイズの小さいチェック用データ(ここではテーブル)から禁則の検証に必要な設定項目及び設定値のみを読み取ることができるため、処理時間を大幅に削減することができる。特に、チェック用データをXML形式ではなくテキスト形式などにすることにより、チェック用データのデータサイズをより小さくすることができると共に読み取り処理が簡単になるため、処理時間を更に削減することができる。
この効果を計測値に基づいて説明する。表2は、印刷設定画面で印刷ボタンを押してから印刷データの作成完了までに要する時間を、上記禁則処理制御を適用しない場合と適用した場合の双方で5回計測した時の平均値を示している。
Figure 2015215654
表2より、印刷データの作成完了までに要する時間に関しては、上記禁則処理を適用することによって20〜30%程度、禁則処理時間に関しては、上記禁則処理を適用することによって40%程度削減することができ、印刷データ作成完了までの時間を短縮することによってパフォーマンスの改善を図ることができる。
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係るプリンタドライバ及びプリンタドライバの禁則処理方法について、図1乃至図16を参照して説明する。図1は、本実施例の印刷システムの構成を模式的に示す図であり、図2は、本実施例のコンピュータ装置の構成を示すブロック図、図3は、コンピュータ装置の機能を示すブロック図である。また、図4は、GPDファイルの一例であり、図5及び図6は、本実施例のコンピュータ装置の禁則処理を示すフローチャート図である。また、図7及び図8は、本実施例のPrintTicketの一例であり、図9は、ハッシュコードテーブルの一例、図10は、ハッシュ値が付加されたPrintTicketの一例である。また、図11は、設定項目リストの一例であり、図12及び図13は、設定状態テーブルの一例である。また、図14は、禁則条件式の一例であり、図15は、本実施例の禁則処理制御の効果を説明する図、図16は、本実施例の禁則処理を模式的に示す概念図である。
図1に示すように、本実施例の印刷システムは、印刷指示に従って印刷処理を実行する印刷装置10と、印刷指示を行う印刷指示装置(コンピュータ装置20と呼ぶ。)とで構成され、これらはLAN(Local Area Network)などの無線ネットワーク、若しくはUSB(Universal Serial Bus)などを介した有線ネットワークにより接続される。
印刷装置10は、一般的なプリンタやMFP(Multi Function Peripheral)などであり、コンピュータ装置20から送信される印刷データを解析し、印刷データの各ページをラスタライズしてページ毎の画像データを生成し、電子写真方式や静電記録方式等の作像プロセスを利用して画像データに基づく画像を用紙に印刷する機能を備えている。
コンピュータ装置20は、パーソナルコンピュータやWindowsOS上で動作するモバイル機器(スマートフォンやタブレット端末)などであり、図2に示すように、制御部21と、記憶部22と、通信I/F部23と、表示部24と、操作部25などで構成される。
制御部21は、CPU(Central Processing Unit)21aと、ROM(Read Only Memory)21bやRAM(Random Access Memory)21cなどのメモリとで構成される。CPU21aは、コンピュータ装置20の動作を制御するためのプログラム、OS(本実施例では、Version4のプリンタドライバが動作可能なWindowsOS)、アプリケーション、印刷装置10を制御するプリンタドライバ(本実施例では、JavaScriptなどのスクリプト言語で禁則処理を行うVersion4のプリンタドライバなど)をROM21b又は記憶部22から読み出してRAM21cに展開し実行する。なお、アプリケーション、Printer Driver core部、印刷設定UI部については後述する。
記憶部22は、HDD(Hard Disk Drive)やSSD(Solid State Drive)などで構成され、プログラムや文書データ、印刷データなどを記憶する。
通信I/F部23は、NIC(Network Interface Card)やモデムなどで構成され、無線ネットワーク、若しくは、有線ネットワークを介して、印刷装置10とのデータ通信を行う。
表示部24は、LCD(Liquid Crystal Display)などで構成され、アプリケーションの画面や印刷設定UI部で生成された印刷設定画面などを表示する。
操作部25は、マウスやキーボード、表示部24上に形成されたタッチセンサなどで構成され、文書の作成や印刷装置10の印刷機能の設定等の操作を可能にする。
図3は、コンピュータ装置20の制御部21の機能を示すブロック図である。コンピュータ装置20の制御部21は、CPU21aがプログラムを実行することにより、アプリケーション30、Printer Driver core部40、印刷設定UI部50などとして機能する。
アプリケーション30は、OS上で動作するプログラム(例えば、WindowsOS上で動作するMicrosoft Officeなど)であり、印刷対象となる文書データを作成する。また、OSやアプリケーション30は、印刷処理の各段階で、Printer Driver core部40に印刷機能の設定の競合を判断する禁則処理を指示する。
Printer Driver core部40は、OS上で動作するプログラムであり、アプリケーション30、印刷設定UI部50と連動して、印刷装置10に印刷指示を行う。このPrinter Driver core部40は、GPDファイル41、UserPropertybag42、構成処理部43、禁則JavaScript部44、レンダリング処理部45、印刷フィルタ46などで構成される。
GPDファイル41は、構成ファイルの一つであり、印刷装置10の各印刷機能を定義する。UserPropertybag42は、データ保存領域であり、後述するハッシュコードテーブルや設定項目リスト、設定設定状態テーブル、禁則条件式などを保存する。構成処理部43は、GPDファイル41を元に、XMLなどの構造化言語で記述したユーザが設定可能な印刷機能の設定項目と設定可能な設定値とが記述されたPrintCapabilities(印刷機能情報)の生成、PrintCapabilitiesに記述されている設定値の中からユーザが選択した設定値をXMLなどの構造化言語で記述したPrintTicket(印刷設定情報)の生成、及び禁則JavaScript部44の呼び出しを行う。
禁則JavaScript部44は、PrintTicket/PrintCapabilitiesに対して、印刷機能の設定の競合を処理する。例えば、第1の機能(面付け機能など)の設定と第2の機能(パンチの機能など)の設定とが両立しない場合に、一方の機能の設定を他方の機能の設定と両立するように変更する。また、禁則JavaScript部44は、JavaScriptを用いたPrintTicket/PrintCapabilitiesの編集を可能にする。レンダリング処理部45は、アプリケーション30からの印刷命令を印刷装置10にて解釈可能な言語(PDL:Page Description Languageなど)に変換する。印刷フィルタ46は、レンダリング時に描画命令や印刷制御コマンドの編集を行う。
印刷設定UI部50は、OS上で動作するプログラムであり、PT/PC処理部51、UI処理部52などで構成される。
PT/PC処理部51は、Printer Driver core部40から取得したPrintTicket/PrintCapabilitiesを処理(解釈)する。UI処理部52は、PT/PC処理部51が解釈した、PrintTicket/PrintCapabilitiesの内容を元に印刷設定画面60の生成及び表示を行う。
図4は、GPDファイル41の一例である。図中の「*Feature:」にて、印刷機能の定義を行う。また、「*Feature:」の下位要素の「*Option:」にて、各印刷機能の設定値の定義を行う。この例では、Orientation、PaperSize、Stapleの印刷機能の定義を行っている。
なお、本実施例では、印刷機能を定義する構成ファイルとしてGPDファイル41を使用する場合について説明するが、PPD(PostScript Printer Description)ファイルを使用する場合に対しても、本実施例の禁則処理方法を同様に適用することができる。
以下、本実施例のプリンタドライバの動作(禁則処理制御)について説明する。CPU21aは、ROM21bに記憶したプリンタドライバを読み出し、RAM21cに展開して実行することにより、図5及び図6のフローチャート図の各ステップの処理を実現する。ここでは、構成処理部43に呼び出される禁則JavaScript部44内の関数であるvalidatePrintTicket()が行う処理を記載する。このvalidatePrintTicket()は、OSやアプリケーション30がPrintTicketの検証が必要と判断した場合に呼び出される関数である。呼び出されるタイミングは印刷設定の変更時や印刷実行時である。そして印刷実行時には複数回この関数が呼び出される。
禁則処理にあたって、直ちに禁則の検証を行ってもよいが、印刷機能の設定が変わっていなければ禁則の検証を行う必要がないことから、本実施例では、必要に応じて、禁則が発生していない状態のPrintTicketに対してハッシュ値(元のデータから一定の計算手順により求められた、そのデータの特徴を表す固定長の擬似乱数)やチェックサム(データを分割し、それぞれのブロック内のデータを数値とみなして合計を取ったもの)などの情報(これらを総称して同一性判断情報と言う。)を算出して保存し、PrintTicketに対する禁則処理の開始時に当該PrintTicketから同一性判断情報を算出し、同一性判断情報に差異が無い場合は禁則の検証をスキップして、禁則処理の更なる時間短縮を図る。
具体的には、まず、禁則JavaScript部44は、検証対象のPrintTicketから同一性判断情報(本実施例ではハッシュ値とする。)を算出する(S101)。図7は、検証対象のPrintTicketの一例であり、PrintTicket(1)では、印刷設定として”JobCopiesAllDocuments”が”1”(すなわち、コピー枚数が1部)、”PageMediaSize”が”ISOA3”(すなわち、用紙サイズがA3)、”PageInputBin”が”Tray4”(すなわち、給紙トレイがトレイ4)、”DocumentStaple”が”StapleDualLeft”(すなわち、ステープルが左2箇所綴じ)に設定されている。
次に、禁則JavaScript部44は、UserPropertybag42などに予め記憶したハッシュコードテーブルより、以前に検証を行った時に算出したハッシュ値の一覧を取得する(S102)。図9(a)は、ハッシュコードテーブルの一例であり、禁則が発生していない状態でのPrintTicketから算出されたハッシュコード(ハッシュ値)が保持されている。この例では、”1d43fe3c”と”4f3d274d”の2つのハッシュ値が記憶されている。なお、ハッシュコードテーブルには、検証対象のPrintTicketから算出したハッシュ値のみを記述してもよいが、印刷機能の設定項目と設定値の組み合わせは限られており、他のPrintTicketから算出したハッシュ値と一致する場合であっても、検証対象のPrintTicketの印刷機能の設定に競合が発生する蓋然性は低いと考えられることから、検証済みの全てのPrintTicketから算出したハッシュ値を記述してもよい。
次に、禁則JavaScript部44は、S102にて取得したハッシュ値の一覧の中に、S101にて算出したハッシュ値が存在するかを判断する(S103)。ハッシュ値の一覧の中に、PrintTicket(1)から算出したハッシュ値が存在する場合(S103のYes)、このPrintTicket(1)の印刷機能の設定には競合が発生せず、禁則の検証処理を実施する必要がないため、禁則JavaScript部44は、禁則処理を終了させる。
一方、ハッシュ値の一覧の中に、PrintTicket(1)から算出したハッシュ値が存在しない場合(S103のNo)、PrintTicket(1)の印刷機能の設定で競合が発生するか否かが分からないため、禁則JavaScript部44は、禁則の検証処理を行う(S104)。このステップは本実施例の特徴部分であり、その詳細は後述する。
次に、禁則JavaScript部44は、禁則の解決を行った検証済みのPrintTicketからハッシュ値を算出する(S105)。図8は、検証済みのPrintTicketの一例である。図8のPrintTicket(2)では、禁則の解決のために、”PageInputBin”に対するValueノードのname属性が”AutoSelect”に、”DocumentStaple”に対するValueノードのname属性が”None”に変更されている(図の破線の枠内参照)。
次に、禁則JavaScript部44は、S105で算出したハッシュ値をハッシュコードテーブルに保存する(S106)。図9(b)は、ハッシュコードテーブルの例であり、検証済みのPrintTicket(2)から算出されたハッシュ値(ここでは”6a5b341f”)がテーブルに追加されている(図の破線の枠内参照)。
このように、検証対象のPrintTicketから算出したハッシュ値が、ハッシュコードテーブルに記述されている、以前に検証を行った時に算出したハッシュ値のいずれかと一致する場合に禁則の検証処理を省略することにより、禁則処理時間を短縮し、印刷開始までの時間を短くすることができる。
なお、上記では、検証対象のPrintTicketから算出したハッシュ値をハッシュコードテーブルに保存する場合について説明したが、検証対象のPrintTicketから算出したハッシュ値をそのPrintTicket自身に保存することも可能である。例えば、図10(a)に示すように、検証対象のPrintTicketからハッシュ値(ここでは”1d43fe3c”)を算出した後、このハッシュ値をPrintTicketの所定の場所(例えば末尾)にXML形式で記述する。次に、検証対象のPrintTicketに対して再度、禁則処理が要求された場合は、当該PrintTicketのハッシュ値以外の部分について再度ハッシュ値を算出し、算出したハッシュ値とPrintTicketに付加したハッシュ値とを比較する。ハッシュ値が一致する場合(図10(b)参照)は、PrintTicketの印刷機能の設定に競合が発生しないことから禁則の検証処理をスキップする。一方、ハッシュ値が一致しない場合(図10(c)参照)は、算出したハッシュ値(ここでは”4f3d274d”)をPrintTicketの所定の場所に付加する。その後、検証対象のPrintTicketに対して再度、禁則処理が要求された場合は、当該PrintTicketのハッシュ値以外の部分のハッシュ値とPrintTicketに付加した複数のハッシュ値とを比較し、算出したハッシュ値が複数のハッシュ値のいずれかと一致する場合は禁則の検証処理をスキップする。このように、ハッシュ値をPrintTicketに付加することによっても、上記と同様に禁則処理時間を短縮し、印刷開始までの時間を短くすることができる。
次に、本実施例の特徴部分であるS104の禁則の検証処理について説明する。前述したように、従来は、禁則の検証の都度、PrintTicketを読み込んでいたが、この方法では、データサイズの大きいPrintTicketを読み込む必要があり、かつ、禁則の検証処理に必要のない部分も読み込まなければならず、更に、後述する禁則条件式の1つ1つに対してPrintTicketを読み込む必要があるため、処理に時間がかかってしまう。そこで、本実施例では、PrintTicketから禁則の検証に必要な設定項目及び設定値を抽出してデータサイズの小さいチェック用データを作成し、作成したチェック用データを参照して禁則の検証処理を行うようにする。以下、図6のフローチャート図及び図16の概念図を参照して説明する。
まず、禁則JavaScript部44は、検証対象のPrintTicket(図7のPrintTicket(1))を解析し、PrintTicketに記述された「設定項目」及び「設定値」を読み込む(S201)。
次に、禁則JavaScript部44は、予め作成した設定項目リストを元にして、チェック用データ(本実施例では設定状態テーブルとする。)を作成する(S202及び図16の(1))。図11は、設定項目リストの一例であり、禁則条件式にて使用する設定項目名が列挙されている。この設定項目リストを元にして、PrintTicketから読み込んだ1又は複数の「設定項目」、「設定値」を設定状態テーブルに設定する。図12は、設定状態テーブルの一例であり、図7に示すPrintTicket(1)および図11に示す設定項目リストを元に生成される。「設定項目」は、PrintTicketのFeatureノードまたはParameterInitノードのname属性に相当する。「設定値」は、PrintTicketのValueノードの値またはOptionノードのname属性に相当する。また、「Changed」は本テーブルの設定値を変更した際にtrueとなる変更状態フラグである。なお、ここでは、設定項目リストを予め作成したが、後述する禁則条件式が使用する1又は複数の設定項目を特定し、特定した設定項目のみをPrintTicketから読み込むようにしてもよい。また、本実施例ではチェック用データとして設定状態テーブルを例示するが、チェック用データはテーブルの構造を有していなくてもよい。また、チェック用データのデータ形式は任意であり、PrintTicketと同様のxml形式としてもよいし、テキスト形式などとしてもよい。テキスト形式とした場合は、チェック用データのデータサイズをより小さくすることができると共に読み取り処理が簡単になるため、処理時間を更に短縮することが可能である。
次に、禁則JavaScript部44は、印刷機能の設定の競合を判断するための禁則条件式を1行ずつ読み込む(S203)。図14は、禁則条件式の一例である。具体的には、1行目は、「用紙サイズ=A3」かつ「給紙トレイ=トレイ4」の場合には、「給紙トレイ=自動」に変更することを表している。2行目は、「用紙サイズ=A3」かつ「ステープル=左2箇所綴じ」の場合には、「ステープル=なし」に変更することを表している。
次に、禁則JavaScript部44は、図12に示す設定状態テーブル(1)とS203にて読み込んだ禁則条件式とを用いて禁則の検証を実施する(S204及び図16の(2))。具体的には、図12の設定状態テーブル(1)に記述した設定項目及び設定値の組み合わせが、禁則条件式で規定された組み合わせに該当するかを判断する。ここで、従来の方法では、データサイズの大きいPrintTicket(1)と禁則条件式とを用いて禁則の検証を実施するために、禁則の検証に時間がかかっていたが、本実施例では、データサイズの小さい設定状態テーブル(1)と禁則条件式とを用いて禁則の検証を実施するため、禁則の検証に要する時間を大幅に短縮することができる。
S204の禁則の検証の結果、禁則が発生した場合(S205のYes)には、禁則JavaScript部44は、禁則条件式に従って設定値の変更を行い、禁則の解決を行い、設定状態テーブルの設定項目の内、禁則が発生している設定項目の設定値を禁則が発生しない設定値に書き替える(S206及び図16の(3))。図13は、禁則の検証が完了した後の設定状態テーブルの一例である。この例では、設定項目”psk:PageInputBin”の設定値が”psk:AutoSelect”に変更され、変更状態フラグ”Changed”が”true”になっている。また、設定項目”psk:DocumentStaple”の設定値が”psk:None”に変更され、変更状態フラグ”Changed”が”true”になっている(図の破線の枠内参照)。なお、禁則が発生しない場合(S205のNo)は、禁則JavaScript部44は何もせずにS207にスキップする。
次に、禁則JavaScript部44は、次の禁則条件式が存在するかを判断し(S207)、次の禁則条件式が存在する場合はS203に戻り、図14に示す禁則条件式が無くなるまで同様の処理を繰り返す。禁則条件式を全て判断したら、禁則の解決を行った後の設定値をPrintTicketに書き込む(S208及び図16の(4))。具体的には、図13に示す設定状態テーブル(2)を用いて、変更状態フラグ”Changed”が”true”になっている「設定項目」の「設定値」をPrintTicketに書き込む。図8は、設定値書き込み後のPrintTicketの一例であり、設定状態テーブル(2)と同様に、設定項目”psk:PageInputBin”の設定値が”psk:AutoSelect”に変更され、設定項目”psk:DocumentStaple”の設定値が”psk:None”に変更されている。
このように、予め作成した設定項目リストの設定項目及び設定値をPrintTicketから読み込んでデータサイズの小さい設定状態テーブルを作成し、この設定状態テーブルを用いて禁則の検証処理を実施することにより、データサイズが大きく、かつ、禁則の検証に必要がない部分を含むPrintTicketの全部を禁則条件式毎に読み取る従来の方法に比べて、禁則の検証に要する時間を大幅に短縮することができる。
以下、図5のフローチャート図に示したハッシュ値を比較して禁則の検証を省略する制御(必要に応じて実施する制御)と、図6のフローチャート図に示した設定状態テーブルを利用して禁則の検証を行う制御(本実施例の特徴となる制御)を実施した場合の禁則処理時間の削減効果について説明する。図15は、上記制御の適用前と適用後の処理時間の測定結果(5回の計測値の平均)を比較する図である。なお、計測条件は、表1と同様であり、計測対象のデータである”SP03P_AC.pdf”は1ページ、”J9.doc”は5ページである。また、測定環境は、OS:Windows8 Pro、CPU:Intel(R) Core(TM)i5-2400@3.10GHz、Memory:8.00GB、HDD:400GB(Remaining:100GB)、Application:Adobe reader 11.0.3、Application:Microsoft Word 2010である。
図15(a)は、ハッシュ値を比較して禁則の検証を省略する制御のみを適用した時の処理時間であり、設定状態テーブルを利用して禁則の検証を行う制御は含まれていない(すなわち、禁則条件式毎にPrintTicketを読み込んで禁則の検証を行っている)。図15(a)から分かるように、ハッシュ値を比較して禁則の検証を省略する制御を適用することにより、適用しなかった場合に比べて、禁則処理時間を30〜40%程度削減することができ、印刷データ作成完了までの時間も、17〜20%程度削減することができる。
図15(b)は、設定状態テーブルを利用して禁則の検証を行う制御のみを適用した時の処理時間であり、ハッシュ値を比較して禁則の検証を省略する制御は含まれていない(すなわち、禁則処理の要求に対して必ず禁則の検証を行っている)。図15(b)から分かるように、設定状態テーブルを利用して禁則の検証を行う制御を適用することにより、適用しなかった場合に比べて、禁則処理時間を40%程度削減することができ、印刷データ作成完了までの時間も、20〜22%程度削減することができ、ハッシュ値を比較して禁則の検証を省略する制御のみを適用した場合よりも削減効果が大きいことが分かる。
図15(c)は、ハッシュ値を比較して禁則の検証を省略する制御と設定状態テーブルを利用して禁則の検証を行う制御の双方を適用した時の処理時間である。図15(c)から分かるように、両方の制御を適用することにより、適用しなかった場合に比べて、禁則処理時間を60%程度削減することができ、印刷データ作成完了までの時間も、30〜40%程度削減することができ、双方の制御を組み合わせることにより顕著な削減効果が得られることが分かる。
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、プリンタドライバの構成やその禁則処理方法は適宜変更可能である。
例えば、上記実施例では、Version4のプリンタドライバについて説明したが、JavaScriptなどのスクリプト言語で禁則処理を行う任意のプリンタドライバに対して、本発明を同様に適用することができる。
本発明は、JavaScriptなどのスクリプト言語で禁則処理を行うプリンタドライバ、特に、Version4のプリンタドライバ及び当該プリンタドライバを記録した記録媒体に利用可能である。
10 印刷装置
20 コンピュータ装置
21 制御部
21a CPU
21b ROM
21c RAM
22 記憶部
23 通信I/F部
24 表示部
25 操作部
30 アプリケーション
40 Printer Driver core部
41 GPDファイル
42 UserPropertybag
43 構成処理部
44 禁則JavaScript部
45 レンダリング処理部
46 印刷フィルタ
50 印刷設定UI部
51 PT/PC処理部
52 UI処理部
60 印刷設定画面

Claims (11)

  1. 印刷装置に印刷を指示するコンピュータ装置で動作するプリンタドライバであって、
    前記コンピュータ装置に、
    PrintTicketに対する禁則処理に際し、
    前記PrintTicketから印刷機能の設定項目及び設定値を取得してチェック用データを生成する第1処理、
    前記チェック用データを参照して禁則の検証を行う第2処理、
    前記PrintTicketの設定項目の内、禁則が発生している設定項目の設定値を禁則が発生しない設定値に書き替える第3処理、をこの順に実行させる、
    ことを特徴とするプリンタドライバ。
  2. 前記第2処理では、前記チェック用データの設定項目の内、禁則が発生している設定項目の設定値を禁則が発生しない設定値に書き替えると共に、設定値を書き替えたことを示す情報を付加し、
    前記第3処理では、前記チェック用データに付加した前記情報を参照して、前記PrintTicketの設定値を前記チェック用データの設定値に書き替える、
    ことを特徴とする請求項1に記載のプリンタドライバ。
  3. 前記第1処理では、前記PrintTicketの設定項目の内、予め定めた1又は複数の設定項目と当該設定項目の設定値のみを取得する、
    ことを特徴とする請求項1又は2に記載のプリンタドライバ。
  4. 前記第1処理では、前記PrintTicketの設定項目の内、前記禁則の検証を行う禁則条件式が参照する1又は複数の設定項目と当該設定項目の設定値のみを取得する、
    ことを特徴とする請求項1又は2に記載のプリンタドライバ。
  5. 前記禁則条件式は複数であり、
    前記第2処理では、前記禁則条件式毎に前記禁則の検証を行う、
    ことを特徴とする請求項4に記載のプリンタドライバ。
  6. 前記PrintTicketはXML(Extensible Markup Language)形式であり、前記チェック用データはテキスト形式である、
    ことを特徴とする請求項1乃至5のいずれか一に記載のプリンタドライバ。
  7. 前記プリンタドライバは、Windows(登録商標)のオペレーティングシステム上で動作するversion4のプリンタドライバである、
    ことを特徴とする請求項1乃至6のいずれか一に記載のプリンタドライバ。
  8. 前記設定項目は、Featureエレメント又はParameterInitエレメントであり、前記設定値は、Optionエレメント又はValueエレメントである、
    ことを特徴とする請求項7に記載のプリンタドライバ。
  9. 予め、禁則が発生していない状態のPrintTicketから同一性判断情報を算出して保存しておき、前記第1処理の前に、前記PrintTicketから同一性判断情報を算出し、前記保存した同一性判断情報と前記算出した同一性判断情報とが一致する場合は、前記第1乃至第3の処理を行わず、前記保存した同一性判断情報と前記算出した同一性判断情報とが異なる場合は、前記第1乃至第3の処理を行う、
    ことを特徴とする請求項1乃至9のいずれか一に記載のプリンタドライバ。
  10. 前記同一性判断情報は、ハッシュ値又はチェックサムである、
    ことを特徴とする請求項9に記載のプリンタドライバ。
  11. 印刷装置に印刷を指示するコンピュータ装置で動作するプリンタドライバの禁則処理方法であって、
    PrintTicketから印刷機能の設定項目及び設定値を取得してチェック用データを生成する第1処理と、
    前記チェック用データを参照して禁則の検証を行う第2処理と、
    前記PrintTicketの設定項目の内、禁則が発生している設定項目の設定値を禁則が発生しない設定値に書き替える第3処理と、をこの順に実行する、
    ことを特徴とするプリンタドライバの禁則処理方法。
JP2014096483A 2014-05-08 2014-05-08 プリンタドライバ及びプリンタドライバの禁則処理方法 Active JP6115515B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014096483A JP6115515B2 (ja) 2014-05-08 2014-05-08 プリンタドライバ及びプリンタドライバの禁則処理方法
US14/705,757 US9652189B2 (en) 2014-05-08 2015-05-06 Non-transitory computer-readable storage medium storing printer driver causing computing device to perform prohibition processing, and print control method of the printer driver

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014096483A JP6115515B2 (ja) 2014-05-08 2014-05-08 プリンタドライバ及びプリンタドライバの禁則処理方法

Publications (2)

Publication Number Publication Date
JP2015215654A true JP2015215654A (ja) 2015-12-03
JP6115515B2 JP6115515B2 (ja) 2017-04-19

Family

ID=54367902

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014096483A Active JP6115515B2 (ja) 2014-05-08 2014-05-08 プリンタドライバ及びプリンタドライバの禁則処理方法

Country Status (2)

Country Link
US (1) US9652189B2 (ja)
JP (1) JP6115515B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107038000A (zh) * 2015-12-04 2017-08-11 佳能株式会社 信息处理设备及其控制方法和存储介质
JP2018010354A (ja) * 2016-07-11 2018-01-18 コニカミノルタ株式会社 禁則関係検出装置および禁則関係検出装置の制御プログラム
EP3296856A1 (en) 2016-09-16 2018-03-21 Canon Kabushiki Kaisha Information processing apparatus, method, and program

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015215653A (ja) * 2014-05-08 2015-12-03 コニカミノルタ株式会社 プリンタドライバ及びプリンタドライバの禁則処理制御方法
CN109101247B (zh) * 2018-07-25 2022-02-11 新华三信息技术有限公司 安装驱动程序的方法、装置和服务器
US10831850B2 (en) * 2018-08-14 2020-11-10 International Business Machines Corporation Secure URL shortening
JP7230387B2 (ja) * 2018-09-19 2023-03-01 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
JP7352422B2 (ja) * 2019-09-18 2023-09-28 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006110861A (ja) * 2004-10-14 2006-04-27 Canon Inc 画像形成装置、画像形成方法及びそのプログラム
JP2006164240A (ja) * 2004-11-15 2006-06-22 Canon Inc データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能な制御プログラムを格納した記憶媒体および制御プログラム
JP2009271929A (ja) * 2008-05-09 2009-11-19 Ricoh Co Ltd 印刷制御装置並びに方法及びプログラム
JP2010113623A (ja) * 2008-11-07 2010-05-20 Canon Inc 情報処理装置及び印刷制御方法
JP2012030449A (ja) * 2010-07-29 2012-02-16 Canon Inc 画像処理装置、処理方法、及びそのプログラム
JP2012181777A (ja) * 2011-03-02 2012-09-20 Ricoh Co Ltd 印刷管理プログラム、印刷管理装置、印刷管理方法及び印刷システム
JP2012194966A (ja) * 2011-03-02 2012-10-11 Ricoh Co Ltd 印刷ジョブ編集プログラム、印刷ジョブ編集装置、印刷ジョブ編集方法及び印刷システム
JP2013219415A (ja) * 2012-04-04 2013-10-24 Canon Inc 画像形成装置
JP2014071573A (ja) * 2012-09-28 2014-04-21 Casio Electronics Co Ltd 印刷制御装置、印刷制御方法、及び、プログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040021905A1 (en) * 2002-08-01 2004-02-05 Holmstead Stanley Bruce System and method for managing printable assets
US20060106775A1 (en) * 2004-11-18 2006-05-18 Microsoft Corporation Multilevel device capabilities hierarchy
US8368920B2 (en) * 2007-07-18 2013-02-05 Konica Minolta Business Technologies, Inc. Image forming system, recording medium having image forming program recorded thereon and image forming apparatus for quickly avoiding duplication
US8144346B2 (en) * 2007-08-16 2012-03-27 Ricoh Company, Ltd. Apparatus and method for controlling a device with a device driver
JP5094627B2 (ja) * 2008-08-08 2012-12-12 キヤノン株式会社 情報処理装置、方法、制御プログラム
US20110222107A1 (en) * 2010-03-10 2011-09-15 Williams David A Methods and structure for improved jdf ticket processing in a printing system using automatically generated translation tables
US8767256B2 (en) * 2010-09-30 2014-07-01 Konica Minolta Laboratory U.S.A., Inc. Print shop management method for customizing color or black and white printing
US20120188575A1 (en) * 2011-01-20 2012-07-26 Canon Kabushiki Kaisha Systems and methods for updating printing device capabilities
JP2012226696A (ja) 2011-04-22 2012-11-15 Seiko Epson Corp 印刷ドライバー及び印刷指令装置
JP5924992B2 (ja) * 2012-03-09 2016-05-25 キヤノン株式会社 情報処理装置、情報処理方法とプログラム
US20130293924A1 (en) * 2012-05-04 2013-11-07 Canon Kabushiki Kaisha Systems and methods for embedding constraint logic of print settings in print capabilities
JP5729652B2 (ja) * 2013-03-29 2015-06-03 コニカミノルタ株式会社 プリンタドライバ及びプリンタドライバのローカライズ方法
US9292234B2 (en) * 2013-11-04 2016-03-22 Ricoh Company, Ltd. Print job correction mechanism
JP5825565B2 (ja) * 2013-11-07 2015-12-02 コニカミノルタ株式会社 プリンタドライバ及びプリンタドライバの印刷機能の追加方法
JP2015215653A (ja) * 2014-05-08 2015-12-03 コニカミノルタ株式会社 プリンタドライバ及びプリンタドライバの禁則処理制御方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006110861A (ja) * 2004-10-14 2006-04-27 Canon Inc 画像形成装置、画像形成方法及びそのプログラム
JP2006164240A (ja) * 2004-11-15 2006-06-22 Canon Inc データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能な制御プログラムを格納した記憶媒体および制御プログラム
JP2009271929A (ja) * 2008-05-09 2009-11-19 Ricoh Co Ltd 印刷制御装置並びに方法及びプログラム
JP2010113623A (ja) * 2008-11-07 2010-05-20 Canon Inc 情報処理装置及び印刷制御方法
JP2012030449A (ja) * 2010-07-29 2012-02-16 Canon Inc 画像処理装置、処理方法、及びそのプログラム
JP2012181777A (ja) * 2011-03-02 2012-09-20 Ricoh Co Ltd 印刷管理プログラム、印刷管理装置、印刷管理方法及び印刷システム
JP2012194966A (ja) * 2011-03-02 2012-10-11 Ricoh Co Ltd 印刷ジョブ編集プログラム、印刷ジョブ編集装置、印刷ジョブ編集方法及び印刷システム
JP2013219415A (ja) * 2012-04-04 2013-10-24 Canon Inc 画像形成装置
JP2014071573A (ja) * 2012-09-28 2014-04-21 Casio Electronics Co Ltd 印刷制御装置、印刷制御方法、及び、プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107038000A (zh) * 2015-12-04 2017-08-11 佳能株式会社 信息处理设备及其控制方法和存储介质
JP2018010354A (ja) * 2016-07-11 2018-01-18 コニカミノルタ株式会社 禁則関係検出装置および禁則関係検出装置の制御プログラム
EP3296856A1 (en) 2016-09-16 2018-03-21 Canon Kabushiki Kaisha Information processing apparatus, method, and program

Also Published As

Publication number Publication date
US20150324158A1 (en) 2015-11-12
US9652189B2 (en) 2017-05-16
JP6115515B2 (ja) 2017-04-19

Similar Documents

Publication Publication Date Title
JP6115515B2 (ja) プリンタドライバ及びプリンタドライバの禁則処理方法
JP6008657B2 (ja) 情報処理装置およびその制御方法、並びに情報処理プログラム
US20110242565A1 (en) Printer control system, printing method, and storage medium
KR101219428B1 (ko) 필터를 동적으로 호출 가능한 인쇄방법, 상기 인쇄방법을수행할 수 있는 프로그램이 수록된 기록매체 및 호스트장치
US10558411B2 (en) Server apparatus, method of controlling the server apparatus, storage medium, and printing system that determine whether to perform, in the server apparatus, rendering processing on a page of a print job
US20200272394A1 (en) Image formation apparatus, control method therefor, and computer readable storage medium
US8767253B2 (en) Information processing apparatus and computer program product
US20180260181A1 (en) Information processing apparatus, control method, and storage medium storing program
US9507544B2 (en) Information processing apparatus, recording medium, and control method to process print data using filters
JP6032567B2 (ja) プリンタドライバ及び印刷システム並びにプリンタドライバの画面表示方法
JP2015215653A (ja) プリンタドライバ及びプリンタドライバの禁則処理制御方法
US20130033725A1 (en) Information processing apparatus, control method, and storage medium
US20110242564A1 (en) Printer control system, printing method, and storage medium
US20130263279A1 (en) Information processing apparatus, storage medium, and control method therefor
US20130258377A1 (en) Printer control system, printing method, and storage medium
JP6202081B2 (ja) 情報処理装置、プログラム、画像処理システム
JP2010105388A (ja) 画像形成装置
US20180060003A1 (en) Control method and information processing apparatus
US20110242582A1 (en) Printer control system, printing method, and storage medium
US10649705B2 (en) Memory control apparatus and resource management method for memory control apparatus to process PDL data
US20140362405A1 (en) Information processing apparatus, recording medium, and control method
US11216228B2 (en) Information processing device, information processing method, and storage medium
JP2015204056A (ja) 印刷制御装置、印刷制御装置のデータ処理方法、及びプログラム、プリンタドライバ
US9001339B2 (en) Printing apparatus, printing system, printing control method, and storage medium for reducing print time and memory by sending control data via network
EP2293180B1 (en) PDL data processing device and PDL data creating device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151021

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160830

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161027

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170306

R150 Certificate of patent or registration of utility model

Ref document number: 6115515

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150