JP4903388B2 - プリンタドライバ、印刷制御装置、印刷システムおよび印刷制御方法 - Google Patents

プリンタドライバ、印刷制御装置、印刷システムおよび印刷制御方法 Download PDF

Info

Publication number
JP4903388B2
JP4903388B2 JP2005025042A JP2005025042A JP4903388B2 JP 4903388 B2 JP4903388 B2 JP 4903388B2 JP 2005025042 A JP2005025042 A JP 2005025042A JP 2005025042 A JP2005025042 A JP 2005025042A JP 4903388 B2 JP4903388 B2 JP 4903388B2
Authority
JP
Japan
Prior art keywords
data
pdf
print
printer driver
language
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
JP2005025042A
Other languages
English (en)
Other versions
JP2005301987A (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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2005025042A priority Critical patent/JP4903388B2/ja
Priority to US11/084,038 priority patent/US7646497B2/en
Publication of JP2005301987A publication Critical patent/JP2005301987A/ja
Priority to US12/627,638 priority patent/US7933030B2/en
Application granted granted Critical
Publication of JP4903388B2 publication Critical patent/JP4903388B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1284Local printer device
    • 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/1211Improving printing performance
    • G06F3/1212Improving printing performance achieving reduced delay between job submission and print start
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Record Information Processing For Printing (AREA)

Description

本発明は、印刷処理の際のデータ変換に係り、特に、汎用の電子文書フォーマットの印刷データへの変換に関する。
コンピュータ上であつかうドキュメントを表示、印刷等する際に、どのような表示フォーマットを用いるかは、そのコンピュータで用いられるオペレーティングシステム(OS)に委ねられている。
例えば、アップルコンピュータ社のMacintosh(商標)用のOSとして開発されたMacOSX(商標)では、アドビシステムズ社が開発した汎用的な電子文書フォーマットであるPDF(Portable Document Format)(商標)を標準的な表示フォーマットの1つとして採用している。
一般に、PDFで記述されたドキュメントは、プリンタ単体では解釈することはできない。このため、このようなドキュメントを印刷する際には、図7に示したような処理が行なわれる。ここでは、コンピュータ60上のアプリケーション部620が生成したドキュメントをプリンタ70で印刷する場合を例に説明する。
すなわち、PDFで記述されたドキュメントは、OS部610が提供するPDF展開部611においてビットマップ形式に展開される。このビットマップ形式のデータを、プリンタドライバ部630が、プリンタ70で解釈可能な印刷データに変換してプリンタ70に出力する。
そして、プリンタ70が印刷イメージに基づく印刷を行なうことで、コンピュータ60のディスプレイに表示された通りの印刷結果を得ることができる。
上述のように、PDFの展開はOS部610が提供するPDF展開部611において行なわれるため、プリンタドライバ部630には、ビットマップ形式でデータが渡されることになる。
このため、プリンタドライバ部630からプリンタ70には、ビットマップイメージを示す印刷データが送られることになる。一般に、印刷データをビットマップで表わす場合は、ページ記述言語、中間言語等で表わした場合に比べてデータサイズが大きくなるため、このような方式は通信処理の負荷が比較的大きいといえる。
また、ビットマップ形式の展開はOS部610で行なわれるため、印刷速度はコンピュータ60の処理速度に大きく依存することになる。したがって、プリンタ70が高速な印刷処理エンジンを搭載していたとしても、その能力を十分発揮することができない場合がある。
さらに、プリンタドライバ部630によっては、プリンタ70で、より上質の印刷結果を得るために、文書データに含まれるオブジェクトに対応した画像処理を行なうものがある。例えば、グラフィックに対して最適な色補正を施したり、テキストに対して黒を強調する等である。
このようなプリンタドライバ部630では、ドキュメントを解析して、ドキュメントを構成するオブジェクトを認識した上で、それぞれのオブジェクトに応じた画像処理を行なうようにしている。
ところが、上記の方式では、プリンタドライバ部630は、OS部610がビットマップに展開したデータを受け取るため、オブジェクトを識別することができなくなってしまう。このため、オブジェクト毎ではなく、ページ全体に対して一律の画像処理を行なわざるを得なくなってしまう。
本発明の第1の目的は、電子文書フォーマットの印刷対象データに基づく印刷の際に、通信負荷を軽減することにある。
また、本発明の第2の目的は、電子文書フォーマットの印刷対象データに基づく印刷の際に、印刷装置の能力を発揮させることにある。
さらに、本発明の第3の目的は、電子文書フォーマットの印刷対象データに基づく印刷の際に、プリンタドライバにおいて、印刷対象データを構成するオブジェクト単位の画像処理を行なえるようにすることにある。
上記課題のいずれかを解決するため本発明の第1の態様によれば、
印刷装置を制御する処理をコンピュータに実行させるプリンタドライバであって、
電子文書フォーマットの印刷対象データを受け付ける処理と、
前記電子文書フォーマットの印刷対象データに基づいて、前記印刷装置が解釈可能なコマンド言語形式の印刷データを生成する処理と、
生成したコマンド言語形式の印刷データを前記印刷装置に出力する処理とをコンピュータに実行させることを特徴とするプリンタドライバが提供される。
コマンド言語形式の印刷データは、一般に、ビットマップ形式の印刷データよりもデータサイズが小さくなるため、通信負荷を軽減することができる。
また、コマンド言語形式の印刷データの解釈は印刷装置側で行なうため、印刷装置の能力を発揮させることができる。
また、上記課題のいずれかを解決するため本発明の第2の態様によれば、
電子文書フォーマットのデータをビットマップ形式のデータに展開する展開処理をコンピュータに実行させるオペレーティングシステム上で動作するプリンタドライバであって、
電子文書フォーマットの印刷対象データを前記オペレーティングシステムから受け付ける処理と、
前記電子文書フォーマットの印刷対象データに基づいて、制御対象の印刷装置が解釈可能なコマンド言語形式の印刷データを生成し、前記印刷装置に出力する第1の出力処理と、
前記電子文書フォーマットの印刷対象データのビットマップデータへの展開を前記オペレーティングシステムに依頼し、展開されたビットマップデータに基づく印刷データを前記印刷装置に出力する第2の出力処理とをコンピュータに実行させ、
前記第1の出力処理と、前記第2の出力処理とは選択的に行なわれることを特徴とするプリンタドライバが提供される。
本態様では、コマンド言語形式の印刷データを出力することにより、通信負荷を軽減し、印刷装置の能力を発揮させることができる。また、オペレーティングシステムにビットマップデータへの展開を依頼することにより、ディスプレイ装置等に表示された通りの印刷結果が保証される。
ここで、前記印刷装置は複数のコマンド言語形式を解釈可能であり、
前記第1の出力処理は、いずれかのコマンド言語形式の印刷データを選択的に生成することでき、具体的には、直接解釈可能な第1のコマンド言語形式と、第1のコマンド言語形式に変換して解釈される第2のコマンド言語形式とを含むことができる。第1のコマンド言語形式としては、中間言語が代表的であり、第2のコマンド言語形式としてはページ記述言語が代表的である。
また、前記第1の出力処理と前記第2の出力処理との選択、および、前記第1の出力処理が選択された場合のコマンド言語形式の選択は、ユーザからの指示に基づいて行なわれることが望ましい。これにより、ユーザが希望する印刷結果を得ることができる。
また、前記電子文書フォーマットが、印刷対象データをオブジェクト単位で表現するものである場合には、前記第1の出力処理において、前記電子文書フォーマットの印刷対象データを構成するオブジェクト単位で画像処理を施すことにより、プリンタドライバにおいて、印刷対象データを構成するオブジェクト単位の画像処理を行なえるようになる。
前記電子文書フォーマットは、代表的には、PDF(Portable Document Format)(商標)とすることができる。
また、前記印刷装置が解釈不能なページ記述言語の印刷対象データを前記オペレーティングシステムから受け付ける処理と、
前記ページ記述言語の印刷対象データを受け付けた場合に、当該印刷対象データを電子文書フォーマットのデータに変換する処理とを、さらに、コンピュータに実行させることにより、ページ記述言語への対応も容易に行なうことができる。
ここで、ページ記述言語は、ポストスクリプトが代表的である。
さらに、本発明の第3の態様によれば、印刷制御装置が提供され、本発明の第4の態様によれば、印刷システムが提供され、本発明の第5の態様によれば印刷制御方法が提供される。いずれの態様においても、コマンド言語形式の印刷データを出力することにより、通信負荷を軽減し、印刷装置の能力を発揮させることができる。
さらに、本発明の他の態様は、以下のとおりである。
PDFのデータをビットマップ形式のデータに展開する展開処理をコンピュータに実行させるオペレーティングシステム上で動作するプリンタドライバであって、PDFの印刷対象データを前記オペレーティングシステムから受け付ける処理と、制御対象の印刷装置が解釈不能なページ記述言語の印刷対象データを前記オペレーティングシステムから受け付ける処理と、前記印刷装置が解釈不能なページ記述言語の印刷対象データを受け付けた場合に、当該印刷対象データをPDFのデータに変換する処理と、前記受け付けたPDFの印刷対象データ、又は前記変換されたPDFの印刷対象データに基づいて、前記印刷装置が解釈可能なページ記述言語及び中間言語のいずれか一つのコマンド言語形式の印刷データを生成し、前記印刷装置に出力する第1の出力処理と、前記受け付けたPDFの印刷対象データ、又は前記変換されたPDFの印刷対象データのビットマップデータへの展開を前記オペレーティングシステムに依頼し、展開されたビットマップデータに基づく印刷データを前記印刷装置に出力する第2の出力処理と、前記第1の出力処理又は前記第2の出力処理の選択と、前記第1の出力処理が選択された場合のコマンド言語形式の選択とを、ユーザの指示に基づいて行う選択処理と、をコンピュータに実行させる、ことを特徴とする。
ここで、前記印刷装置が解釈可能な中間言語は、前記印刷装置が直接解釈可能なコマンド言語形式であり、前記印刷装置が解釈可能なページ記述言語は、前記印刷装置が前記中間言語に変換して解釈するコマンド言語形式である、ことを特徴としていてもよい。
また、前記第1の出力処理又は前記第2の出力処理の選択を、印刷対象データに基づいて行う処理を、さらにコンピュータに実行させることを特徴としていてもよい。
また、前記第1の出力処理が選択された場合のコマンド言語形式の選択を、印刷対象データに基づいて行う処理を、さらにコンピュータに実行させることを特徴としていてもよい。
また、前記印刷装置が解釈不能なページ記述言語は、ポストスクリプトであることを特徴としていてもよい。
さらに、本発明の他の態様は、以下のとおりである。
PDFのデータをビットマップ形式のデータに展開する展開処理をコンピュータに実行させるオペレーティングシステム上で動作するプリンタドライバであって、PDFは、印刷対象データをオブジェクト単位で表現するものであり、PDFの印刷対象データを前記オペレーティングシステムから受け付ける処理と、制御対象の印刷装置が解釈不能なページ記述言語の印刷対象データを前記オペレーティングシステムから受け付ける処理と、前記印刷装置が解釈不能なページ記述言語の印刷対象データを受け付けた場合に、当該印刷対象データをPDFのデータに変換する処理と、前記受け付けたPDFの印刷対象データ、又は前記変換されたPDFの印刷対象データに基づいて、オブジェクト単位で画像処理を施し、前記印刷装置が解釈可能なページ記述言語及び中間言語のいずれか一つのコマンド言語形式の印刷データを生成し、前記印刷装置に出力する第1の出力処理と、前記受け付けたPDFの印刷対象データ、又は前記変換されたPDFの印刷対象データのビットマップデータへの展開を前記オペレーティングシステムに依頼し、展開されたビットマップデータに基づく印刷データを前記印刷装置に出力する第2の出力処理と、をコンピュータに実行させ、前記第1の出力処理と、前記第2の出力処理とは、ユーザの指示により選択的に行われる、ことを特徴とする。
ここで、前記第1の出力処理において、オブジェクト単位で、オブジェクトに応じた所定の画像処理、又はユーザの指示に基づく画像処理を施す、ことを特徴としていてもよい。
また、前記印刷装置が解釈不能なページ記述言語は、ポストスクリプトであることを特徴としていてもよい。
本発明の実施の形態について図面を参照して説明する。
図1は、本発明を適用可能な印刷システムのハードウェア構成の概要を説明するためのブロック図である。
本図に示すように、印刷システムは、アプリケーションソフトウェアによる種々の処理、プリンタドライバによる印刷処理等を実現するためのコンピュータ10と、このコンピュータ10に接続されるプリンタ30とを備えて構成される。本実施形態において、コンピュータ10は、プリンタ30を制御する印刷制御装置として機能する。そして、プリンタ30は、コンピュータ10から送られたデータに基づいて印刷を行なう印刷装置として機能する。ただし、印刷システムの構成はこれに限られない。例えば、ネットワーク型の印刷システム、あるいは、プリンタ30にコンピュータ10の印刷制御装置機能を備えさせた印刷システムであってもよい。
コンピュータ10は、各種プログラムを実行するCPU(Central Processing Unit)11、データおよびプログラム等を一時的に記憶するRAM(Random Access Memory)12、コンピュータ10を制御するための各種データ、各種プログラム等があらかじめ不揮発的に記憶されているROM(Read Only Memory)13、および、接続されたプリンタ30等の周辺装置とのデータの送受信をつかさどるインタフェース14を備えている。
また、コンピュータ10には、カラーディスプレイ等の表示装置21、マウス、キーボード等の入力装置22、CD−ROM等の記録媒体からデータを読み取るメディア読取装置23および内蔵または外付けの補助記憶装置24が接続される。もちろん、コンピュータ10の構成はこれに限られない。例えば、インターネット等のコンピュータネットワークに接続するための通信制御装置を備えるようにしてもよい。
プリンタ30は、例えば、レーザ方式のページプリンタである。レーザ方式のページプリンタは、トナーを収容したカートリッジを備え、このトナーを印刷用紙等の印刷媒体に転写することで印刷を行なう。ただし、プリンタ30の印刷方式は、これに限られない。プリンタ30が後述する言語解釈機能等を備えている限り、例えば、インクジェット方式のカラープリンタ、その他の印刷方式を用いたプリンタであってもよい。
プリンタ30は、コンピュータ10とのデータの送受信をつかさどるインタフェース31、各種プログラムを実行するCPU32、印刷データ等を一時的に記憶するRAM33、プリンタ30を制御するための各種データ、各種プログラム等があらかじめ不揮発的に記憶されているROM34、トナーカートリッジ・感光体ドラム・レーザ光照射機構・紙送り機構・印刷媒体の給排紙処理を行なう給排紙機構等からなる印刷エンジン35を備えて構成される。もちろん、プリンタ30の構成はこれに限られない。
次に、上記印刷システムによりコンピュータ10およびプリンタ30に実現される機能構成について、図2のブロック図を参照して説明する。
本図に示すように、コンピュータ10上には、オペレーティングシステム(OS)部110と、アプリケーション部120と、プリンタドライバ部130とが構築される。
OS部110は、コンピュータ10のシステム管理と、基本的なユーザー操作環境を提供する、いわゆる、コンピュータ10の基本ソフトウェアである。本実施形態において、OS部110は、コンピュータ上で表示ドキュメントを表示、印刷する際に、アドビシステムズ社が開発した汎用的な電子文書フォーマットであるPDF(Portable Document Format)(商標)を標準的な表示フォーマットの1つとして採用している。
このようなOS部110は、例えば、アップルコンピュータ社のMacintosh(商標)用のオペレーティングシステムとして開発されたMacOSX(商標)が代表的である。
OS部110は、PDFで記述されたドキュメントを、表示装置21上で表示された通りに印刷できるように、PDFをビットマップ形式のデータに展開するためのPDF展開部111を備えている。
アプリケーション部120は、ドキュメントを作成・編集する処理をコンピュータ10に行なわせるための機能を有しており、RAM12が読み込んだワードプロセッサプログラム・グラフィックス処理プログラム等を、OS部110の管理下において、CPU11が実行することによりコンピュータ10上に仮想的に構築される。
アプリケーション部120が作成・編集するドキュメントは、表示フォーマットとしてPDFに基づいた仕様が用いられており、ドキュメントの印刷の際には、PDFデータとしてOS部110に渡される。
プリンタドライバ部130は、プリンタ30を制御して印刷を実行させるための処理を行なう。具体的には、ユーザからの印刷指示を受け付けると、アプリケーション部120が生成したドキュメントデータをOS部110を介して読み込んで、印刷設定にしたがってプリンタ30が解釈できる形式のデータに変換する。そして、このデータをインタフェース14を介してプリンタ30に送信する。
本実施形態において、プリンタドライバ部130は、その特徴的な機能構成として、ユーザインタフェース(U・I)部131、PDF解釈部132、画像処理部133を備えている。
ユーザインタフェース部131は、プリンタ30の状態等を表示したり、印刷指示・印刷設定等をユーザから受け付けるための処理を行なう。本実施形態については、特に、ユーザからPDFの解釈をどのように行なうかの指示を受け付ける。
PDF解釈部132は、PDFを解釈して、プリンタ30が解釈可能なコマンド言語形式の印刷データに変換する処理を行なう。具体的には、PDFデータは圧縮されているため、まず、PDFデータを所定のアルゴリズムで解凍する。この段階で、PDFデータは、イメージデータ・テキスト等のオブジェクトを示すコマンド群となる。そして、PDFデータを構成するコマンドをプリンタが解釈可能なコマンドに置き換える処理を行なう。ただし、PDFデータを構成するコマンドと、プリンタ30が解釈可能なコマンドは、一般に、1対1には対応していないため、PDF解釈部132では、PDFでの表示形態をなるべく忠実に再現できるような置き換えアルゴリズムを用いるものとする。
本実施形態において、プリンタ30が解釈可能なコマンド言語形式への変換は、ページ記述言語形式と中間言語形式とを選択できるものとする。ここで、ページ記述言語は、ページ構成する文字、グラフィックス等をオブジェクト単位で表現した高級言語である。また、中間言語は、ページ記述言語をよりプリンタ30が解釈しやすい形式に変換した言語体系である。
後述するように、プリンタ30は、中間言語を直接解釈して印刷を実行することができる。また、ページ記述言語を解釈する機能を備えており、ページ記述言語でデータが送られてきた場合には、プリンタ30内で中間言語に変換してから印刷を実行する。
このため、PDF解釈部132は、PDFをページ記述言語に変換する処理を行なうページ記述言語変換部132aと、PDFを中間言語に変換する処理を行なう中間言語変換部132bとを備えている。
図5は、ページ記述言語変換部132aが行なうPDFからページ記述言語への変換例を示す図である。本図では、ページ記述言語としてセイコーエプソン社のページプリンタ用ページ記述言語であるESC/Pageを例としている。ここで、図5(a)は、赤い線を描画するコマンド群の変換例を示し、図5(b)は、矩形領域を青色で塗りつぶすコマンド群の変換例を示している。
図2に戻って、PDF解釈部132は、従来のOS部110によるPDF展開を行なった印刷処理も行なえるようにイメージデータ処理部132cを備えている。これは、PDF解釈部132が用いるPDF変換アルゴリズムが、OS部110が提供するPDF展開部111が用いている展開アルゴリズムとは必ずしも一致しないため、ある種の印刷においては、PDF解釈部132が解釈して印刷した結果が、表示装置21に表示されたものとは異なる可能性があり、このような場合にも、表示された通りの印刷結果を得ることができるようにするためである。
画像処理部133は、印刷実行時に際し、プリンタ30で、より上質の印刷を実行できるように、プリンタ30の特性等に合わせた画像処理を行なう。画像処理は、印刷対象のドキュメントを構成するオブジェクト単位で行なえるようになっており、例えば、グラフィック部分に対しては最適な色補正を行なったり、テキスト部分に対しては、文字を読みやすくするために黒を強調したりすることができる。
また、画像処理部133における画像処理は、ユーザからの画像効果指示に基づいて行なわれる場合もある。例えば、画像をよりシャープあるいはソフトに印刷するための指示・特定の色を強調する指示等である。
プリンタドライバ部130は、RAM12にロードされたプリンタドライバプログラムを、CPU11が実行することによりコンピュータ10上に仮想的に構築される。このためのプリンタドライバプログラムは、プリンタ30のメーカ等により開発され、例えば、CD−ROM等の可搬型の記録媒体に記録することで流通させることができる。そして、この記録媒体を、メディア読取装置23で読み取ることにより、コンピュータ10にプリンタドライバプログラムをインストールすることができる。また、インターネット等のコンピュータネットワークを介してコンピュータ10にインストールすることもできる。
図2に示すように、プリンタ30上には、印刷制御部310と、ページ記述言語解釈部320と、印刷実行部330が構築される。
印刷制御部310は、プリンタ30における印刷処理の制御を行なう。具体的には、中間言語に基づいて、ビットマップデータの印刷イメージを生成し、印刷実行部330に印刷を実行させる。
ページ記述言語解釈部320は、ページ記述言語を解釈して中間言語に変換する。ページ記述言語解釈部320が解釈可能なページ記述言語はあらかじめ定められており、本印刷システムでは、例えば、プリンタ30のメーカが定める仕様に則ったページ記述言語、あるいは、汎用的なページ記述言語が用いられる。
印刷実行部330は、印刷制御部310が生成した印刷イメージに基づいて、印刷エンジン35による印刷を実行する。
つぎに、本実施形態の印刷処理についてさらに図2を参照して説明する。
印刷処理は、プリンタドライバ部130のユーザインタフェース部131が、ユーザからアプリケーション部120で処理中のドキュメントについての印刷命令を受け付けることで開始する。
印刷命令に際し、ユーザは、PDFの解釈をどのように行なわせるかを指示することができる。ユーザインタフェース部131、例えば、図3に示すようなPDF変換処理設定画面上でこの指示を受け付けるようにする。
本図において、PDF変換処理設定画面500には、PDF変換処理の選択を受け付けるPDF変換処理選択受け付け欄501と、ユーザに通知するコメントを表示するコメント表示欄502と、キャンセルボタン503と、OKボタン504とが配置されている。なお、PDF変換処理の選択は、すべてのユーザにとって必要というわけではないため、PDF変換処理設定画面500は、例えば、オプションの設定扱いとして、ユーザからオプション設定の指示を受け付けた場合に表示させるようにしてもよい。
例えば、図6は、オプション設定として詳細印刷設定を受け付けるための詳細設定画面520を示している。詳細設定画面520は、ユーザが、カラー調整等の詳細な印刷設定を行ないたい場合に表示させることができる画面である。
本例では、印刷モード521の設定により、間接的にPDF変換処理の選択を受け付けるようにしている。すなわち、印刷モードの選択肢として「高品質」と「CRT」とを用意しておき、ユーザが「高品質」を選択した場合には、「ページ記述言語に変換」が選択されたものとして印刷処理を行なう。また、ユーザが「CRT」を選択した場合には、「OSで変換」が選択されたものとして印刷処理を行なう。
ここで、「OSで変換」に対応する選択肢として「CRT(Cathode Ray Tube)」という語を用いているのは、コンピュータ10の表示装置21として代表的なディスプレイ装置に表示された通りの印刷結果が保証されるモードだからである。
一方、「ページ記述言語に変換」に対応する選択肢として「高品質」という語を用いているのは、ページに含まれるオブジェクトに応じた、最適な画像処理を施すことが可能であり、高品質が期待できるモードだからである。
図3に戻って、PDF変換処理選択受け付け欄501では、選択肢として「ページ記述言語に変換」「中間言語に変換」「OSで変換」が表示され、いずれかが選択されるようにしている。ここで、例えば、「ページ記述言語に変換」をデフォルトの設定値としておき、ユーザから指示を受け付けなかった場合には、「ページ記述言語に変換」が選択されているものと扱うことができる。さらには、PDF変換処理選択受け付け欄501で表示する選択肢は、「ページ記述言語に変換」「中間言語に変換」のいずれかと「OSで変換」とであってもよい。
また、本図の例においてコメント表示欄502には、コメントとして「ディスプレイの表示と印刷結果とが異なる場合は『OSで変換』を選択してください。」が表示されている。コメント表示欄502に表示するコメントは、この例に限られないが、選択の判断基準となる情報を表示することが望ましい。
なお、PDFの解釈をどのように行なうかについて、ユーザからの指示を受け付けることなく、PDF解釈部132が判断するようにしてもよい。例えば、PDFに、表示装置21における表示と異なる印刷結果が得られる可能性のあるコマンドが含まれている場合には「OSで変換」を選択するようにしたり、ページ記述言語に変換した場合と中間言語に変換した場合の、印刷システムにおける処理負荷、コンピュータ10およびプリンタ30処理能力等を勘案して「ページ記述言語に変換」および「中間言語に変換」のいずれかを選択するようにすることができる。もちろん、PDFの解釈をどのように行なうかについての判断基準はこれらに限られない。
さて、ユーザから印刷命令を受け付けると、アプリケーション部120は、処理中のドキュメントについてのPDFデータをOS部110に出力する(S101)。
そして、プリンタドライバ部130は、OS部110から、このPDFデータを取得する。この際、OS部110は、PDFデータの展開は行なわない。すなわち、プリンタドライバ部130は、アプリケーション部120が出力したPDFデータを、基本的にそのまま受け取ることになる。
プリンタドライバ部130のPDF解釈部132は、OS部110から取得したPDFデータについて、ユーザインタフェース部131がPDF変換処理設定画面500等で受け付けたユーザからの指示(S103)に応じて以下のような処理を行なう。
すなわち、「ページ記述言語に変換」が選択されていた場合には、ページ記述言語変換部132aがPDFをページ記述言語に変換してプリンタ30に出力する(S104)。具体的には、PDFデータを所定のアルゴリズムにより解凍し、あらかじめ定められた規則にしたがって、PDFコマンドをページ記述言語に変換する。
この際に、画像処理部133は、所定の、あるいは、ユーザの指示に基づく画像処理を行なうことができる。PDF解釈部132では、PDFデータを解析することにより、ドキュメントを構成するオブジェクトを認識できるため、この画像処理は、オブジェクト単位で行なうことができる。したがって、同一ページ内において、グラフィック、テキスト等のオブジェクトに応じた、それぞれに最適な画像処理を施すことが可能である。
また、プリンタドライバ部130が、PDFで記載されたドキュメントをオブジェクト単位で扱えるようになったことにより、例えば、テキストの属性として指定されているフォントデータをプリンタ30が備えていない場合に、プリンタ30の内蔵フォントに置き換えることも可能となる。
ここで、プリンタドライバ部130からプリンタ30に出力されるページ記述言語は、一般に、展開後のビットマップデータよりデータサイズが小さいため、通信の負荷を削減することができる。
ページ記述言語を受け取ったプリンタ30は、ページ記述言語解釈部320を用いて、ページ記述言語を中間言語に変換し、印刷制御部310に送信する(S109)。そして、印刷制御部310が中間言語に基づいて印刷イメージデータを生成し、印刷実行部330に印刷を実行させる(S110)。
また、「中間言語に変換」が選択されていた場合には、中間言語変換部132bがPDFを中間言語に変換してプリンタ30に出力する(S105)。具体的には、PDFを所定のアルゴリズムにより解凍し、あらかじめ定められた規則にしたがってPDFコマンドを中間言語に変換する。
この際に、ページ記述言語への変換処理と同様に、画像処理部133は、所定の、あるいは、ユーザの指示に基づく画像処理を行なうことができる。また、フォントの置き換えも可能である。
ここで、プリンタドライバ部130からプリンタ30に出力される中間言語は、一般に、展開後のビットマップデータよりデータサイズが小さいため、この場合においても通信の負荷を削減することができる。
中間言語を受け取ったプリンタ30は、印刷制御部310が中間言語に基づいて印刷イメージデータを生成し、印刷実行部330に印刷を実行させる(S110)。
また、「OSで変換」が選択されていた場合には、イメージデータ処理部132cが、OS部110のPDF展開部111にPDFのビットマップデータへの展開を依頼する(S106)。そして、PDF展開部111がPDFをビットマップデータに展開すると、イメージデータ処理部132cは、PDF展開部111から展開したビットマップデータを取得する(S107)。
イメージデータ処理部132cは、ビットマップデータを中間言語に変換し、プリンタ30に出力する(S108)。この変換は、ビットマップデータをプリンタ30が解釈可能な中間言語に形式的に変換するものである。ただし、ページ記述言語に形式的に変換してプリンタ30に出力するようにしてもよい。
このように、「OSで変換」が選択されていた場合には、OS部110が提供するPDF展開部111を用いてPDFのビットマップへの展開を行なうため、「ページ記述言語に変換」あるいは「中間言語に変換」が選択された場合に、表示装置21における表示と異なる印刷結果が得られたときであっても、表示装置21における表示通りの印刷結果を得ることができる。
さて、上記の実施形態では、オペレーティングシステムが採用する標準的な表示フォーマットとしてPDFを例にしたが、本発明はこれに限られるものではない。例えば、アドビシステムズ社が開発したポストスクリプト(PS)を用いている場合にも効果的に適用することができる。ポストスクリプトは、標準的なページ記述言語であるが、OS部110がプリンタドライバ部130に出力するフォーマットとしても用いることができる。
この場合、プリンタ30が解釈可能なページ記述言語がポストスクリプト以外であるとき、すなわち、プリンタ30がポストスクリプトを解釈できないときに、本発明は、特に効果的となる。
このときの印刷処理としてはいくつかの方法が考えられる。
第1の方法は、図2に示した構成および処理の流れの説明において、PDFをポストスクリプトと読み替えることで実現できる。すなわち、図2において、プリンタドライバ部130のPDF解釈部132は、PS解釈部として構成し、ポストスクリプトをページ記述言語、あるいは、中間言語に変換する機能を持たせるようにする。
ただし、この方法は、プリンタドライバ部130にPDFおよびポストスクリプトの双方を解釈可能とさせたり、あるいは、それぞれ向けのプリンタドライバ部130を提供するためには、PDF解釈部132およびPS解釈部を独立して開発する必要があり、開発コストの増大等を招くことになる。
そこで、図4に示すように、ポストスクリプトをPDFに変換するPS変換部135を備えたプリンタドライバ部130aを用いることにより、上述の実施形態で説明したプリンタドライバ部130に、多少の変更を加えるだけで、ポストスクリプトおよびPDFのいずれにも対応することができるようになる。
ここで、PS変換部135は、OS部110からポストスクリプト形式でドキュメントデータが送られてきた場合には、PDFに変換して出力し、OS部110からPDFでドキュメントデータが送られてきた場合には、そのままPDFを出力するものとする。プリンタドライバ部130aの他の機能部分については、上述のプリンタドライバ部130と同様とすることができる。
印刷システムのハードウェア構成を説明するためのブロック図。 印刷システムの機能構成を説明するためのブロック図。 PDF変換処理設定画面の一例を示す図。 印刷システムの機能構成の別例を説明するためのブロック図。 PDFからページ記述言語への変換の例を示す図。 詳細設定画面の一例を示す図。 従来の印刷システムの機能構成を説明するためのブロック図。
符号の説明
10…コンピュータ、11…CPU、12…RAM、13…ROM、14…インタフェース、21…表示装置、22…入力装置、23…メディア読取装置、24…補助記憶装置、30…プリンタ、31…インタフェース、32…CPU、33…RAM、34…ROM、35…印刷エンジン、60…コンピュータ、70…プリンタ、110…OS部、111…PDF展開部、120…アプリケーション部、130…プリンタドライバ部、131…ユーザインタフェース部、132…PDF解釈部、132a…ページ記述言語変換部、132b…中間言語変換部、132c…イメージデータ処理部、133…画像処理部、135…PS変換部、310…印刷制御部、320…ページ記述言語解釈部、330…印刷実行部、610…OS部、611…PDF展開部、620…アプリケーション部、630…プリンタドライバ部

Claims (7)

  1. PDFのデータをビットマップ形式のデータに展開する展開処理をコンピュータに実行させるオペレーティングシステム上で動作するプリンタドライバであって、
    PDFの印刷対象データを前記オペレーティングシステムから受け付ける処理と、
    制御対象の印刷装置が解釈不能なページ記述言語の印刷対象データを前記オペレーティングシステムから受け付ける処理と、
    前記印刷装置が解釈不能なページ記述言語の印刷対象データを受け付けた場合に、当該印刷対象データをPDFのデータに変換する処理と、
    前記受け付けたPDFの印刷対象データ、又は前記変換されたPDFの印刷対象データに基づいて、前記印刷装置が解釈可能なページ記述言語及び中間言語のいずれか一つのコマンド言語形式の印刷データを生成し、前記印刷装置に出力する第1の出力処理と、
    前記受け付けたPDFの印刷対象データ、又は前記変換されたPDFの印刷対象データのビットマップデータへの展開を前記オペレーティングシステムに依頼し、展開されたビットマップデータに基づく印刷データを前記印刷装置に出力する第2の出力処理と、
    前記第1の出力処理又は前記第2の出力処理の選択と、前記第1の出力処理が選択された場合のコマンド言語形式の選択とを、ユーザの指示に基づいて行う選択処理と、をコンピュータに実行させる、
    ことを特徴とするプリンタドライバ。
  2. PDFのデータをビットマップ形式のデータに展開する展開処理をコンピュータに実行させるオペレーティングシステム上で動作するプリンタドライバであって、
    PDFは、印刷対象データをオブジェクト単位で表現するものであり、
    PDFの印刷対象データを前記オペレーティングシステムから受け付ける処理と、
    制御対象の印刷装置が解釈不能なページ記述言語の印刷対象データを前記オペレーティングシステムから受け付ける処理と、
    前記印刷装置が解釈不能なページ記述言語の印刷対象データを受け付けた場合に、当該印刷対象データをPDFのデータに変換する処理と、
    前記受け付けたPDFの印刷対象データ、又は前記変換されたPDFの印刷対象データに基づいて、オブジェクト単位で画像処理を施し、前記印刷装置が解釈可能なページ記述言語及び中間言語のいずれか一つのコマンド言語形式の印刷データを生成し、前記印刷装置に出力する第1の出力処理と、
    前記受け付けたPDFの印刷対象データ、又は前記変換されたPDFの印刷対象データのビットマップデータへの展開を前記オペレーティングシステムに依頼し、展開されたビットマップデータに基づく印刷データを前記印刷装置に出力する第2の出力処理と、をコンピュータに実行させ、
    前記第1の出力処理と、前記第2の出力処理とは、ユーザ指示により選択的に行われる、
    ことを特徴とするプリンタドライバ。
  3. 請求項1に記載のプリンタドライバであって、
    前記印刷装置が解釈可能な中間言語は、前記印刷装置が直接解釈可能なコマンド言語形式であり、前記印刷装置が解釈可能なページ記述言語は、前記印刷装置が前記中間言語に変換して解釈するコマンド言語形式である、ことを特徴とするプリンタドライバ。
  4. 請求項1又は3に記載のプリンタドライバであって、
    前記第1の出力処理又は前記第2の出力処理の選択を、印刷対象データに基づいて行う処理を、さらにコンピュータに実行させることを特徴とするプリンタドライバ。
  5. 請求項1、3、又は4いずれか一項に記載のプリンタドライバであって、
    前記第1の出力処理が選択された場合のコマンド言語形式の選択を、印刷対象データに基づいて行う処理を、さらにコンピュータに実行させることを特徴とするプリンタドライバ。
  6. 請求項2に記載のプリンタドライバであって、
    前記第1の出力処理において、オブジェクト単位で、オブジェクトに応じた所定の画像処理、又はユーザの指示に基づく画像処理を施す、ことを特徴とするプリンタドライバ。
  7. 請求項1又は2に記載のプリンタドライバであって、
    前記印刷装置が解釈不能なページ記述言語は、ポストスクリプトであることを特徴とするプリンタドライバ。
JP2005025042A 2004-03-19 2005-02-01 プリンタドライバ、印刷制御装置、印刷システムおよび印刷制御方法 Expired - Fee Related JP4903388B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005025042A JP4903388B2 (ja) 2004-03-19 2005-02-01 プリンタドライバ、印刷制御装置、印刷システムおよび印刷制御方法
US11/084,038 US7646497B2 (en) 2004-03-19 2005-03-21 Printer driver product, print control unit, print system, and print control method
US12/627,638 US7933030B2 (en) 2004-03-19 2009-11-30 Printer driver product, print control unit, print system, and print control method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2004079486 2004-03-19
JP2004079486 2004-03-19
JP2005025042A JP4903388B2 (ja) 2004-03-19 2005-02-01 プリンタドライバ、印刷制御装置、印刷システムおよび印刷制御方法

Publications (2)

Publication Number Publication Date
JP2005301987A JP2005301987A (ja) 2005-10-27
JP4903388B2 true JP4903388B2 (ja) 2012-03-28

Family

ID=34985916

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005025042A Expired - Fee Related JP4903388B2 (ja) 2004-03-19 2005-02-01 プリンタドライバ、印刷制御装置、印刷システムおよび印刷制御方法

Country Status (2)

Country Link
US (2) US7646497B2 (ja)
JP (1) JP4903388B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008030221A (ja) * 2006-07-26 2008-02-14 Brother Ind Ltd 画像形成装置
US8823970B2 (en) * 2006-12-21 2014-09-02 Xerox Corporation PS to PDF conversion with embedded job ticketing preservation
US7773237B2 (en) * 2007-02-22 2010-08-10 Kabushiki Kaisha Toshiba Image forming apparatus, image forming method and image forming system
JP5304282B2 (ja) * 2009-01-30 2013-10-02 富士ゼロックス株式会社 印刷情報変換装置、印刷装置、印刷システム及びプログラム
JP5293232B2 (ja) * 2009-02-02 2013-09-18 富士ゼロックス株式会社 データ作成プログラム、データ作成装置、印刷装置及び印刷システム
JP2011165010A (ja) * 2010-02-10 2011-08-25 Canon Inc 情報処理方法および情報処理装置、プログラム
JP6752442B2 (ja) * 2016-03-28 2020-09-09 ブラザー工業株式会社 プログラム及び端末装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5390354A (en) * 1991-03-15 1995-02-14 Itt Corporation Computerized directory pagination system and method
IL134882A0 (en) * 1998-07-06 2001-05-20 Creoscitex Corp Ltd A system and method for efficient printing of variable information documents
JP2001020221A (ja) * 1999-07-02 2001-01-23 Nippon Kokan Light Steel Kk 橋梁用波形鋼板
JP2001219601A (ja) * 2000-02-09 2001-08-14 Canon Inc 印刷制御装置および印刷制御装置におけるデータ処理方法
JP2001222395A (ja) * 2000-02-10 2001-08-17 Canon Inc 情報処理装置および情報処理方法およびプリンタドライバプログラムが格納された記憶媒体
JP2002032207A (ja) * 2000-04-28 2002-01-31 Canon Inc 消耗品提供方法および消耗品提供システムおよび消耗品提供装置および消耗品提供プログラムおよび記憶媒体
JP2001344079A (ja) * 2000-05-31 2001-12-14 Canon Inc 印刷制御方法及び印刷システム
US6848048B1 (en) * 2000-10-13 2005-01-25 Litronic Inc. Method and apparatus for providing verifiable digital signatures
JP2002222070A (ja) 2000-11-21 2002-08-09 Canon Inc 印刷データ処理装置及び印刷制御方法及び印刷制御プログラム
US7466442B2 (en) * 2000-12-06 2008-12-16 Eastman Kodak Company Printing system and method for customization of a print job
US7084998B2 (en) * 2001-02-13 2006-08-01 Ariba, Inc. Method and system for processing files using a printer driver
JP4663140B2 (ja) * 2001-02-28 2011-03-30 キヤノン株式会社 データ処理装置および方法ならびに記憶媒体およびプログラム
JP4338905B2 (ja) * 2001-03-09 2009-10-07 インフォプリント ソリューションズ カンパニー,エルエルシー Pdf直接印刷機能付きプリンタの印刷指示用プログラムおよび印刷指示方法
JP4516233B2 (ja) * 2001-03-30 2010-08-04 株式会社リコー データ変換装置、データ変換方法、データ変換プログラム、およびデータ変換プログラムを記録したコンピュータ読み取り可能な記録媒体
US7180623B2 (en) * 2001-12-03 2007-02-20 Canon Kabushiki Kaisha Method and apparatus for print error recovery
JP3962606B2 (ja) * 2002-02-28 2007-08-22 キヤノン株式会社 印刷命令生成装置及び方法、印刷装置及びその制御方法、情報処理装置及び印刷システム
US20030231328A1 (en) * 2002-06-07 2003-12-18 Xerox Corporation Multiple printer driver
US7256901B2 (en) * 2002-10-10 2007-08-14 Sharp Laboratories Of America, Inc. Printer driver customization using incremental custom print processor

Also Published As

Publication number Publication date
US7933030B2 (en) 2011-04-26
US7646497B2 (en) 2010-01-12
US20100073702A1 (en) 2010-03-25
JP2005301987A (ja) 2005-10-27
US20050206941A1 (en) 2005-09-22

Similar Documents

Publication Publication Date Title
JP4903388B2 (ja) プリンタドライバ、印刷制御装置、印刷システムおよび印刷制御方法
US9013718B2 (en) Print control apparatus, control method thereof, and device driver for converting commands from one format to another
US20180253889A1 (en) Information processing apparatus, storage medium, and information processing method for processing clipping rendering instruction
JP4966533B2 (ja) 印刷システム、印刷方法、印刷プログラムおよび記録媒体
EP4040769A1 (en) Information processing apparatus, control method, and program
JP2001063155A (ja) プリンタホスト、印刷コマンド生成装置およびプログラムが記憶されている記憶媒体
US20220353386A1 (en) Control method for apparatus, printing apparatus, and storage medium
US20110273740A1 (en) Preview screen display control apparatus and preview screen display control program
US8614823B2 (en) Technique for processing print data in parallel using plural raster image processors in order to increase printing speed
JP2007331390A (ja) 画像形成装置およびその制御方法
JP2011000828A (ja) 画像形成装置、色変換制御方法、色変換制御プログラム、及びプリンタドライバを有する情報処理装置
JP2009053789A (ja) 情報処理装置とプログラムとコンピュータ読み取り可能な記録媒体
US20230102837A1 (en) Non-transitory computer-readable medium storing support program
KR101345342B1 (ko) 에뮬레이션 추가기능을 설정하는 화상형성장치 및 그화상처리방법
JP2007025845A (ja) プリンタの制御方法およびプログラム
JP2019098580A (ja) 画像形成装置
JP2006099220A (ja) 印刷システム、印刷制御装置、プリンタドライバおよび印刷装置
JP2005070957A (ja) 変換制御装置および変換制御プログラム
JP2006347065A (ja) 印刷装置
JP5526863B2 (ja) プリンタドライバ、及び印刷制御装置
US20050248796A1 (en) Print support program module, port monitor, recording medium, and print job issuing method
JP2006178622A (ja) 文書変換方法、文書変換装置、及びプログラム
US20200329173A1 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium
JP5853537B2 (ja) 印刷のための制御装置
JPH08249138A (ja) 出力制御方法及びその装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071015

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100223

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100423

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100706

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101005

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20101021

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20101112

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111117

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

R150 Certificate of patent or registration of utility model

Ref document number: 4903388

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150113

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees