JP5455587B2 - 情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム - Google Patents

情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム Download PDF

Info

Publication number
JP5455587B2
JP5455587B2 JP2009274634A JP2009274634A JP5455587B2 JP 5455587 B2 JP5455587 B2 JP 5455587B2 JP 2009274634 A JP2009274634 A JP 2009274634A JP 2009274634 A JP2009274634 A JP 2009274634A JP 5455587 B2 JP5455587 B2 JP 5455587B2
Authority
JP
Japan
Prior art keywords
job
print
information
print job
unit
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
JP2009274634A
Other languages
English (en)
Other versions
JP2011054147A (ja
Inventor
南陽 母里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2009274634A priority Critical patent/JP5455587B2/ja
Publication of JP2011054147A publication Critical patent/JP2011054147A/ja
Application granted granted Critical
Publication of JP5455587B2 publication Critical patent/JP5455587B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1241Dividing a job according to job requirements, e.g. black/white and colour pages, covers and body of books, tabs
    • 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/1242Image or content composition onto a page
    • G06F3/1243Variable data printing, e.g. document forms, templates, labels, coupons, advertisements, logos, watermarks, transactional printing, fixed content versioning
    • 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/1218Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources
    • G06F3/122Reducing or saving of used resources, e.g. avoiding waste of consumables or improving usage of hardware resources with regard to computing resources, e.g. memory, CPU
    • 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

Description

本発明は、電子文書データを処理する情報処理装置、情報処理装置の制御方法、及びコンピュータプログラムに関する。
公知の電子文書として、アドビシステムズのPDF(Portable Document Format)フォーマットで作成されたPDFデータが提案されている。PDFフォーマットは、印刷すべきデータの構造を解釈するために必要な構造記述が電子文書の最後に記述されるフォーマットである。従って、PDFファイルを解釈する際には、該PDFファイルを最後までダウンロードして、上記構造記述を参照する必要がある。PDFファイルを、VDP(Variable Data Printing)やトランザクション印刷などの、膨大なレコードを処理する分野で使用する場合に、PDFファイルを分割するという方法が考えられる。この方法に従って、分割したPDFファイルを順次印刷装置に転送することによって、ファイルの転送とファイルの出力(印刷)とを並行して行うことができる。
特許文献1は、印刷すべきPDFデータを複数のデータブロックに分割し、最後尾のデータブロックを印刷装置に転送した後、最前部のデータブロックから順に印刷装置に転送する電子文書印刷システムを提案している。
特開2004−348194号公報
しかし、従来技術は、単なるデータのブロック分割の技術である。PDFデータの印刷ジョブとしての分割については考慮しておらず、それゆえにプリンタコントローラやプリンタ等では、PDFデータ全体を受信し、メモリに展開してから面付けなど印刷属性に関わる処理を進める必要があった。また、印刷属性が、分割前のデータの途中で変更される場合などは、印刷エンジンを効率よく動作させることはできなかった。印刷属性は、例えば電子文書データの所定の印刷単位や電子文書データの印刷設定を示す。従って、従来技術では、印刷システムの環境やユースケースに合わせて電子文書データを分割して印刷装置に転送することができない。その結果、電子文書データの印刷装置への転送と印刷装置における電子文書データの出力とを並行に行い、かつ、印刷装置による印刷処理を効率よく制御することはできない。
本発明は、電子文書データの印刷装置への転送と印刷装置における電子文書データの出力とを並行に行い、かつ、印刷装置による印刷処理を効率よく制御することができる情報処理装置、情報処理装置の制御方法、及びコンピュータプログラムの提供を目的とする。
本発明の一実施形態の情報処理装置は、ページに配置されるオブジェクトを含む印刷ジョブであって、その印刷ジョブの末尾において、前記オブジェクトの印刷ジョブにおける位置情報が定義された印刷ジョブを処理する情報処理装置において、該印刷ジョブに含まれる印刷属性情報に基づいて、該印刷ジョブの分割単位を決定するジョブ分割単位決定手段と、前記決定された分割単位に基づいて、前記オブジェクトの位置情報を導出し、導出された位置情報を含む複数の分割印刷ジョブを生成するジョブ生成手段と、前記生成された分割印刷ジョブを印刷装置に対して送信するジョブ送信手段とを備える。前記印刷属性情報が、印刷媒体の設定に関する情報であり、前記ジョブ分割単位決定手段が、前記印刷媒体の設定に関する情報に基づいて、同一種類の印刷媒体の設定が行われている単位を前記印刷ジョブの分割単位として決定する。
本発明の情報処理装置によれば、電子文書データの印刷装置への転送と印刷装置における電子文書データの出力とを並行に行い、かつ、印刷装置による印刷処理を効率よく制御することが可能となる。本発明の別の側面によれば、印刷属性が、分割前の印刷ジョブの途中で変更される場合であっても、印刷装置を効率よく動作させることができる。
本実施形態のシステム構成の一例を示す図である。 PDFファイルとジョブチケットの一例を示す図である 本実施形態の情報処理装置の動作処理フローの一例を示す図である。 実施例1に係る印刷ジョブの分割単位の決定処理フローを示す図である。 印刷ジョブの一例を示す図(1)である。 実施例2に係る印刷ジョブの分割単位の決定処理フローを示す図である。 印刷ジョブの一例を示す図(2)である。 実施例3に係る印刷ジョブの分割単位の決定処理フローを示す図である。 印刷ジョブの一例を示す図(3)である。 印刷ジョブに含まれるPDFファイルの他の例を示す図である。 分割によって生成されたPDFファイルの例を示す図(1)である。 分割によって生成されたPDFファイルの例を示す図(2)である。
図1は、本実施形態のシステム構成の一例を示す図である。図1(A)は、本実施形態の印刷システムを示す。図1(A)に示す印刷システムは、情報処理装置1とプリンタ2とを備える。情報処理装置1とプリンタ2とは、有線又は無線の通信インタフェースによって接続されている。
情報処理装置1は、印刷ジョブを処理する情報処理装置である。具体的には、情報処理装置1は、電子文書データを含む印刷ジョブを生成し、生成した印刷ジョブをプリンタ2に対して送信する。印刷ジョブは、電子文書データと該電子文書データに対応付けられたジョブチケットとを含む。より詳細には、印刷ジョブは、ページに配置されるオブジェクトを含み、その印刷ジョブの末尾において、上記オブジェクトの印刷ジョブにおける位置情報が定義されている。本実施形態においては、電子文書データは、例えばPDFファイルである。ジョブチケットは、電子文書データの印刷設定を示す印刷設定情報を有するファイルである。図2(A)を参照して後述するように、本実施形態において、PDFファイルはメタデータを有しており、該メタデータ、又は、該メタデータとジョブチケットが有する印刷設定情報とが、印刷ジョブの印刷属性を示す印刷属性情報を構成する。情報処理装置1は、例えばホストコンピュータである。情報処理装置1は、外部I/F(Interface )11、ジョブ解析部12、ジョブ分割単位決定部13、ジョブ生成部14、プリンタI/F15、ジョブデータ記憶部16を備える。
外部I/F11は、情報処理装置1とは異なる他の情報処理装置から情報処理装置1に対して送信された印刷ジョブを、ネットワーク8を介して受信するインタフェースである。ジョブ解析部12は、外部I/F12を介して受信した印刷ジョブ、又は、情報処理装置1が備えるジョブ生成部14が生成した印刷ジョブを解析するジョブ解析手段としての機能を有する。ジョブ解析部12は、PDF解析部121とジョブチケット解析部122とを備える。PDF解析部121は、印刷ジョブに含まれるPDFファイルの構造を解析する。ジョブチケット解析部122は、印刷ジョブに含まれるジョブチケットの解析を行う。具体的には、ジョブチケット解析部122は、上記解析されるPDFファイルに対応付けられたジョブチケットが示す印刷設定情報を解析する。ジョブ解析部12は、解析したPDFファイルの構造を示すファイル構造情報とジョブチケットが示す印刷設定情報とをジョブデータとしてジョブデータ記憶部16に記憶する。
ジョブ分割単位決定部13は、プリンタI/F15を介して、プリンタ2に対してプリンタ情報の取得要求を出し、該プリンタ情報の取得要求に応じたプリンタ2からプリンタ情報を取得する。プリンタ情報は、プリンタ2の特性を示す情報である。プリンタ情報には、例えば、プリンタ2が印刷処理できる情報量に関する情報、プリンタ2に装着されている給紙/排紙トレイに関する情報、フィニッシャに関する情報等が含まれる。すなわち、ジョブ分割単位決定部13とプリンタI/F15とは、PDFファイルの印刷処理を行う印刷装置(プリンタ2)の情報を取得する印刷装置情報取得手段としての機能を有する。
また、ジョブ分割単位決定部13は、ジョブデータ記憶部16からジョブデータを抽出する。ジョブ分割単位決定部13は、取得したプリンタ情報に基づいて、上記抽出されたジョブデータに対応する印刷ジョブを分割するかを判断する分割判断手段として機能する。プリンタ情報が、プリンタ2が印刷処理できる情報量(例えば、ファイル容量)に関する情報であってもよい。そして、ジョブ分割単位決定部13が、印刷ジョブの情報量が上記印刷処理できる情報量を超えるかを判断し、印刷ジョブの情報量が印刷できる情報量を超えると判断した場合に、印刷ジョブを分割すると判断するようにしてもよい。
また、ジョブ分割単位決定部13は、印刷ジョブを分割すると判断した場合に、該印刷ジョブの印刷属性情報に基づいて、該印刷ジョブの分割単位を決定するジョブ分割単位決定手段としての機能を有する。具体的には、ジョブ分割単位決定部13は、ジョブデータ内のファイル構造情報を参照して、PDFファイルに含まれるメタデータを取得し、該メタデータに基づいて、印刷ジョブの分割単位を決定する。ジョブ分割単位決定部13が、メタデータと、ジョブデータに含まれるジョブチケットが示す印刷設定情報とに基づいて、印刷ジョブの分割単位を決定するようにしてもよい。
他の実施形態によれば、印刷属性情報が、印刷媒体の設定に関する情報であり、ジョブ分割単位決定部13が、印刷媒体の設定に関する情報に基づいて、同一種類の印刷媒体の設定が行われている単位を印刷ジョブの分割単位として決定する。また、他の実施形態によれば、印刷属性情報が、PDFファイルの所定の印刷単位であるレコードの設定に関する情報であり、ジョブ分割単位決定部13が、レコードの設定に関する情報に基づいて、該印刷単位を印刷ジョブの分割単位として決定する。
ジョブ生成部14は、情報処理装置1のユーザの操作入力に従って、印刷ジョブを生成し、生成した印刷ジョブをジョブ解析部12に渡す。また、ジョブ生成部14は、ジョブ分割単位決定部13が決定した印刷ジョブの分割単位に基づいて、印刷ジョブに含まれるオブジェクトの位置情報を導出し、導出された位置情報を含む複数の分割印刷ジョブを生成するジョブ生成手段としての機能を有する。分割印刷ジョブは、印刷ジョブの分割によって得られる、上記分割単位毎の印刷ジョブである。ジョブ生成部14は、ジョブ分割単位決定部13が印刷ジョブを分割すると判断した場合に、分割印刷ジョブを生成する。ジョブ生成部14は、生成した分割印刷ジョブをプリンタI/F15に渡す。
ジョブ生成部14は、PDF生成部141とジョブチケット生成部142とを備える。PDF生成部141は、印刷ジョブの分割単位と該印刷ジョブに含まれるPDFファイルとに基づいて、該PDFファイルを分割して、該分割単位毎の新たなPDFファイルを生成する。具体的には、PDF生成部141は、PDFファイルから印刷ジョブの分割単位に対応するオブジェクトを取得し、取得したオブジェクトに対応する新たなPDFファイルを生成する。ジョブチケット生成部142は、PDF生成部141が生成したPDFファイルに対応するジョブチケットを生成する。PDF生成部141によって生成された分割単位毎の新たなPDFファイルと、ジョブチケット生成部142によって生成された、該PDFファイルに対応するジョブチケットとが、上述した分割印刷ジョブを構成する。プリンタI/F15は、情報処理装置1とプリンタ2との間の通信を媒介するインタフェースである。プリンタI/F15は、例えば、プリンタ2からプリンタ情報を取得し、取得したプリンタ情報をジョブ分割単位決定部13に渡す。また、プリンタI/F15は、例えば、プリンタ2に対して、ジョブ生成部14が生成した分割印刷ジョブを送信するジョブ送信手段としての機能を有する。
プリンタ2は、情報処理装置1から送信された印刷ジョブを受信し、受信した印刷ジョブに含まれるPDFデータの印刷処理を行う装置である。プリンタ2は、送受信部21、ジョブ解析部22、出力部23を備える。送受信部21は、情報処理装置1のプリンタI/F15からプリンタ情報の取得要求を受けて、プリンタ2に対応するプリンタ情報を情報処理装置1に対して送信する。また、送受信部21は、情報処理装置1のプリンタI/F15から印刷ジョブを受信する。
ジョブ解析部22は、送受信部21が受信した印刷ジョブを解析して、ラスタライズ処理を行って、ページ画像を生成する。ラスタライズ処理は、印刷ジョブに含まれるPDFデータをビットマップ化する処理である。ページ画像は、印刷対象のページの画像である。具体的には、ジョブ解析部22は、印刷ジョブに含まれるPDFデータが有するオブジェクトを検索し、検索されたオブジェクトを用いてラスタライズ処理を実行する。ジョブ解析部22は、印刷ジョブに含まれるジョブチケットが示す印刷設定情報を参照して、印刷対象となる各々のページ画像に対応する印刷設定を認識する。そして、ジョブ解析部22は、上記生成したページ画像を該ページ画像に対応する印刷設定で印刷するように出力部23に指示する。出力部23は、ジョブ解析部22から受けた指示に従って、ページ画像を印刷出力する。本実施形態の情報処理装置の制御方法は、図1(A)を参照して前述した情報処理装置1の各処理部によって実現される。また、本実施形態のコンピュータプログラムは、上記情報処理装置の制御方法をコンピュータに実行させることを特徴とする。
図1(B)は、図1(A)に示す情報処理装置1のハードウェア構成の一例を示す図である。CPU(Central Processing Unit )21は、ROM(Read Only Memory)26内部のプログラム領域に記憶されたプログラムを実行する。また、CPU21は、ハードディスク23からRAM(Random Access Memory)22にロードされたOS(Operating System)、汎用アプリケーション等のプログラムを実行する。CPU21は、内部バス2aを介して、情報処理装置1が備える各々のハードウェアと接続されている。RAM22は、CPU21の主メモリ、ワークエリア等として機能する。RAM22は、情報処理装置1が備えるジョブデータ記憶部16を含む。ハードディスク23は、ブートプログラム、種々のアプリケーション、フォントデータ、ユーザファイル、電子原稿ファイル等を記憶する。また、情報処理装置1が受信する印刷ジョブ、又は情報処理装置1が生成する印刷ジョブは、全てハードディスク23に記憶される。ディスプレイコントローラ24は、ディスプレイによる各種情報の表示制御を行う。ネットワークコントローラ25は、ネットワーク8に接続された他の情報処理装置との通信制御処理を実行する。ROM26のプログラム領域には、情報処理装置1の動作処理に必要なプログラムが予め記憶されている。外部記憶ドライブ27は、外部記憶ドライブ27に投入されるメディア28に電子原稿ファイル等を記憶する。キーボードコントローラ29は、キーボードやポインティングデバイスからのキー入力を制御する。
図2は、印刷ジョブに含まれるPDFファイルとジョブチケットの一例を示す図である。図2(A)は、情報処理装置1のジョブ解析部12が解析対象とする印刷ジョブを示す。この印刷ジョブは、PDFファイル30とジョブチケット40とを含む。PDFファイル30は、ヘッダ、ボディ、メタデータ、相互参照テーブル、トレーラを備える。ヘッダは、PDFファイル30の先頭行に記述される情報である。ヘッダの持つ情報として、例えばPDFのバージョン番号などが挙げられる。ボディは、文書の内容を表現するオブジェクトを有する。オブジェクトは、文書を構成するフォント、ページ、イメージ等である。図2(A)に示す例では、ボディには、Page(ページ)1からページ9までの非共用オブジェクトが記述されている。また、ボディには、全てのページで使用される共用のオブジェクトである共用オブジェクトや特別オブジェクトが記述されている。
メタデータは、任意のページに関するキーを表す辞書オブジェクトである。キーは、印刷ジョブの印刷属性を示す。すなわち、メタデータは、印刷ジョブの印刷属性情報である。キーは参照情報を有しており、参照情報は、例えば、キーが示す印刷属性に対応する、ボディ内のオブジェクトを示す。また、参照情報は、例えば、キーが示す印刷属性に対応する印刷設定情報を有するジョブチケット40を示す。参照情報がジョブチケット40を示す場合、メタデータと、ジョブチケット40が有する印刷設定情報とが印刷ジョブの印刷属性情報である。相互参照テーブルには、PDFファイル30内のオブジェクトと該オブジェクトの位置との対応情報が予め記憶されている。また、相互参照テーブルには、メタデータ、オブジェクトのファイル先頭からのバイトオフセット(位置情報の一例である。)が予め記憶されている。この相互参照テーブルを検索することによって、PDFファイル30内のオブジェクトに対してランダムにアクセスすることができる。トレーラは、PDFファイル30の末尾に記述される情報である。トレーラは、例えば、相互参照テーブル95の位置情報や、PDFファイル30のルートオブジェクトへの参照情報を有する。アプリケーションは、最初にトレーラにアクセスするように実装される。トレーラ内にある相互参照テーブルの位置情報を参照し、次に、相互参照テーブルへアクセスする。そして、相互参照テーブルを元に、オブジェクトのオフセットを確認し、オブジェクトへのランダムアクセスを可能とする。
ジョブチケット40は、印刷ジョブの印刷設定情報を有する。ジョブチケット40は、例えば、メタデータが表すキーが示す各々の印刷属性に対応する印刷設定情報を有する。図2(A)に示す例では、ジョブチケット40が、ページ1乃至3というページ群に対応する印刷設定情報A、ページ4乃至6というページ群に対応する印刷設定情報B、ページ7乃至9というページ群に対応する印刷設定情報Cを有するものとする。
ジョブ解析部12のPDF解析部121は、トレーラを参照して、相互参照テーブルの位置情報を取得する。そして、PDF解析部121が、相互参照テーブルを用いて、PDFファイル30内のオブジェクトの位置情報、メタデータ内の情報を参照して、各ページのデータを解析する。これによってPDFファイル30が解析される。また、ジョブ解析部12のジョブチケット解析部122は、ジョブチケット40が有する印刷属性情報を解析する。これによってジョブチケット40が解析される。
また、ジョブ分割単位決定部13は、例えば、メタデータと、ジョブチケット40が有する印刷設定情報とからなる印刷ジョブの印刷属性情報に基づいて、印刷ジョブの分割単位を決定する。この例では、ジョブ分割単位決定部13は、ページ1乃至3、ページ4乃至6、ページ7乃至9という3つのページ群を分割単位として決定する。ジョブ生成部14のPDF生成部141は、決定された分割単位に従ってPDFファイル30を分割して、例えば、ページ1乃至3、ページ4乃至6、ページ7乃至9という3つのページ群の各々に対応するPDFファイルを生成する。また、ジョブ生成部14のジョブチケット生成部142は、例えば、PDF生成部141が生成した各々のPDFファイルに対応するジョブチケットを生成する。上記のようにして生成されたPDFファイルと該PDFファイルに対応するジョブチケットとが、図2(A)に示す印刷ジョブが分割された各々の印刷ジョブを構成する。
図2(B)、図2(C)、図2(D)は、図2(A)に示す印刷ジョブが分割された印刷ジョブを示す。図2(B)は、ページ1乃至3というページ群に対応する印刷ジョブを示し、図2(C)は、ページ4乃至6というページ群に対応する印刷ジョブを示し、図2(D)は、ページ7乃至9というページ群に対応する印刷ジョブを示す。
図3は、本実施形態の情報処理装置の動作処理フローの一例を示す図である。ジョブ解析部12が、印刷ジョブを解析し(ステップS1)、解析結果をジョブデータとしてジョブデータ記憶部16に記憶する。次に、ジョブ分割単位決定部13が、プリンタI/F15を介して、プリンタ2からプリンタ2のプリンタ情報を取得する(ステップS2)。ステップS2において取得されたプリンタ情報には、プリンタ2が印刷処理できるファイル容量の情報が含まれるものとする。続いて、ジョブ分割単位決定部13が、印刷ジョブのファイル容量が、ステップS2において取得したプリンタ2が印刷処理できるファイル容量を超えているかを判断する(ステップS3)。ジョブ分割単位決定部13が、印刷ジョブのファイル容量がプリンタ2が印刷処理できるファイル容量を超えていないと判断した場合は、ステップS4に進む。ジョブ分割単位決定部13が、印刷ジョブのファイル容量がプリンタ2が印刷処理できるファイル容量を超えていると判断した場合は、ステップS6に進む。
ステップS4において、ジョブ分割単位決定部13が、キーボードコントローラ29(図1(B)を参照)を介したユーザの操作入力に従って、印刷ジョブの分割を行うかを判断する。ジョブ分割単位決定部13が、予め決められた、印刷ジョブの分割を行うか否かに関する設定に従って、印刷ジョブの分割を行うかを判断するようにしてもよい。ジョブ分割単位決定部13が、印刷ジョブの分割を行うと判断した場合はステップS6に進む。ジョブ分割単位決定部13が、印刷ジョブの分割を行わないと判断した場合は、プリンタI/F15が、プリンタ2に対して印刷ジョブを送信する(ステップS5)。
ステップS6において、ジョブ分割単位決定部13が印刷ジョブの分割単位を決定する。そして、ジョブ生成部14が、印刷ジョブの分割単位に従って印刷ジョブを分割し、分割単位に対応する新たな印刷ジョブである分割印刷ジョブを生成する(ステップS7)。ここでは、分割後の印刷ジョブの相互参照テーブルを導出する。具体的には、分割後の印刷ジョブに含まれるべきオブジェクトの分割後の印刷ジョブ内におけるオフセット値を決定し、オブジェクトの個数に基づく情報と共に、分割後の印刷ジョブの相互参照テーブルに格納する。また、共用オブジェクトは、分割前の印刷ジョブから、分割後の複数の印刷ジョブに対してそれぞれコピーされる。分割後の印刷ジョブの相互参照テーブルには、共用オブジェクトのオフセットも追記される。続いて、プリンタI/F15が、生成した印刷ジョブのファイル容量が、ステップS2において取得したプリンタ2が印刷処理できるファイル容量を超えているかを判断する(ステップS8)。プリンタI/F15が、生成した印刷ジョブのファイル容量が、プリンタ2が印刷処理できるファイル容量を超えていると判断した場合は、上記ステップS6に戻る。プリンタI/F15が、生成した印刷ジョブのファイル容量が、プリンタ2が印刷処理できるファイル容量を超えていないと判断した場合は、ステップS9に進む。
ステップS9において、プリンタI/F15が、ユーザの操作入力に従って、生成された各々の分割印刷ジョブを別ジョブとして送信するかを判断する(ステップS9)。プリンタI/F15が、各々の分割印刷ジョブを別ジョブとして送信すると判断した場合、プリンタI/F15が、各々の分割印刷ジョブを別ジョブとして送信する(ステップS10)。分割印刷ジョブを別ジョブとして送信することによって、分割印刷ジョブの送信中における他の処理の割込みが可能となる。プリンタI/F15が、各々の分割印刷ジョブを別ジョブとして送信しないと判断した場合、プリンタI/F15が、各々の印刷ジョブをパッケージングして、1つのジョブとして送信(チャンク送信)する(ステップS11)。チャンク送信をすることによって、ジョブの送信中における他の処理の割込みを防止することができる。続いて、ジョブ生成部14が、次に分割対象となる印刷ジョブがあるかを判断する(ステップS12)。ジョブ生成部14が、次に分割対象となる印刷ジョブがあると判断した場合は、上記ステップS7に戻る。ジョブ生成部14が、次に分割対象となる印刷ジョブがないと判断した場合は、処理を終了する。
図4は、本発明の実施例1に係る印刷ジョブの分割単位の決定処理フローを示す図である。図4に示す処理フローは、図3のステップS6における印刷ジョブの分割単位の決定処理を示す。この例では、ジョブデータ記憶部16内のジョブデータが示す印刷ジョブは、図5(A)に示すような構造を有するものとする。図5(A)に示す印刷ジョブに含まれるPDFファイル50内のボディには、9ページ分のオブジェクトが設定されている。また、PDFファイル50のメタデータ内のキーには、フィニッシングの設定を示す情報として、“Folding”が設定されている。“Folding”は、ページの折り処理を示す。メタデータには、属性値として、折りの設定(折りあり、又は折りなし)が設定されており、それぞれの折りの設定に対応する参照情報としてジョブチケットが設定されている。また、図5(A)に示す印刷ジョブに含まれるジョブチケット60は、ページ1からページ6までは折り処理を行い、ページ7からページ9までは折り処理を行わないという印刷設定を示す印刷設定情報を有する。なお、図5(A)に示す例では、ジョブチケット60は、JDF(Job Definition Format)のフォーマットを有する。
図4のステップS21において、ジョブ分割単位決定部13が、ジョブデータ記憶部16からジョブデータを抽出し、抽出したジョブデータからPDFファイルのメタデータ内のキーを取得する。続いて、ジョブ分割単位決定部13が、取得したキーがフィニッシングの設定を示すかを判断する(ステップS22)。ジョブ分割単位決定部13が、取得したキーがフィニッシングの設定を示さないと判断した場合は処理を終了する。ジョブ分割単位決定部13が、キーがフィニッシングの設定を示すと判断した場合は、ジョブ分割単位決定部13が、印刷ジョブの分割単位を決定する(ステップS23)。例えば、ジョブ分割単位決定部13は、図5(A)に示すPDFファイル50のメタデータにおいて設定されている属性値と、参照情報とを取得するとともに、該参照情報が示すジョブチケット60内の印刷設定情報を取得する。そして、ジョブ分割単位決定部13は、上記属性値と印刷設定情報とに基づいて、同一種類のフィニッシング設定がされている単位を印刷ジョブの分割単位として決定する。具体的には、ジョブ分割単位決定部13は、折り処理を行うページ1からページ6までのページ群を、一つの分割単位として決定する。続いて、ジョブ分割単位決定部13が、次の参照情報があるかを判断する。ジョブ分割単位決定部13が、次の参照情報があると判断した場合は、ステップS23に戻り、ジョブ分割単位決定部13が、印刷ジョブの次の分割単位を決定する。これにより、例えば、折り処理を行わないページ7からページ9までのページ群が、分割単位として決定される。
ジョブ分割単位決定部13が、次の参照情報がないと判断した場合、ジョブ分割単位決定部13は、次のキーがあるかを判断する(ステップS25)。ジョブ分割単位決定部13が、次のキーがあると判断した場合は、上記ステップS21に戻る。ジョブ分割単位決定部13が、次のキーがないと判断した場合は、処理を終了する。ジョブ分割単位決定部13が、図4に示す処理フローに従って図5(A)に示す印刷ジョブの分割単位を決定すると、ページ1からページ6までのページ群と、ページ7からページ9までのページ群が、分割単位として決定される。この分割単位に従ってジョブ生成部14が印刷ジョブを分割すると、例えば、図5(B)、(C)に示すような印刷ジョブが生成される。図5(B)に示す印刷ジョブは、ページ1からページ6までのページ群に対応するPDFファイルとジョブチケットAとを備える。また、図5(C)に示す印刷ジョブは、ページ7からページ9までのページ群に対応するPDFファイルとジョブチケットBとを備える。
実施例1に係る情報処理装置1によれば、同一種類のフィニッシング設定が行われているページ群の単位で印刷ジョブを分割し、同一種類のフィニッシング設定が行われているページ群毎に一つのPDFファイルを生成することができる。例えばページ1とページ5について折りの設定、ページ2からページ4について、他のフィニッシング設定がされている場合、折りの設定がされているページ1及びページ5に対応する一つのPDFファイルを生成することができる。その結果、プリンタ2における印刷処理を、同一種類のフィニッシング設定の単位で実行することが可能となり、印刷効率が向上する。
他の例として、印刷属性として、カラーモノクロなどの印刷モードや、メディア種、用紙サイズなども考慮される。すなわち、印刷属性が、分割前の印刷ジョブの途中で変更される場合であっても、プリンタ2を効率よく動作させることができる。また、印刷メディア種(例えば、厚紙、上質紙、普通紙など)や用紙サイズ、印刷モード(例えば、カラーモノクロ)が、ジョブの途中で変更される場合もある。このように、各種印刷属性が印刷ジョブの途中で変更される場合は、プリントエンジン側で切り換え処理が必要となる場合もある。このような場合は、本実施形態のように印刷属性の変更された単位でジョブを分割して送信側が送信することでパフォーマンスが向上する。例えば、分割された第一の印刷属性が設定された最初のジョブを受信し、印刷を終了し、第二の分割された印刷ジョブの第二の印刷属性だけを先取り受信し、設定の切り換え処理をする。この処理の間はプリントエンジンは印刷処理が出来ないが、その間に、第二の印刷属性が設定された分割された印刷ジョブを受信する。このようにすることで、プリントエンジンの切り換え時間と分割ジョブの受信を並行させることで、システム全体のパフォーマンスを向上することが出来る。更に、情報処理装置1は、分割した印刷ジョブ毎に別ファイルでプリンタ2に送信するので、プリンタ2は、印刷ジョブを受け取る度に該印刷ジョブの解析と印刷処理の実行を行うことができる。その結果、情報処理装置1からの印刷ジョブの送信処理と、プリンタ2における印刷処理とを並行して行うことができる。
図6は、本発明の実施例2に係る印刷ジョブの分割単位の決定処理フローを示す図である。図6に示す処理のうち、ステップS31、S33、S34、S35は、それぞれ、図4に示すステップ21、S23、S24、S25と同様であるので、これらについての詳細な説明は省略する。実施例2においては、ジョブデータ記憶部16内のジョブデータが示す印刷ジョブは、図7(A)に示すような構造を有する。図7(A)に示す印刷ジョブに含まれるPDFファイル70のメタデータ内のキーには、“Media Type”が設定されている。“Media Type”は、使用する印刷媒体を示す。メタデータの属性値には、普通紙又は厚紙といった印刷媒体の種類が設定されており、それぞれの印刷媒体の種類の設定に対応する参照情報としてジョブチケットが設定されている。また、図7(A)に示す印刷ジョブに含まれるジョブチケット80には、ページ1からページ3まで、ページ7からページ9までについて普通紙を使用する設定が、ページ4からページ6までについて厚紙を使用する設定が行われている。
実施例2においては、図6のステップS32において、ジョブ分割単位決定部13が、取得したキーが印刷媒体の設定を示すかを判断する。ジョブ分割単位決定部13が、キーが印刷媒体の設定を示さないと判断した場合は処理を終了する。ジョブ分割単位決定部13が、キーが印刷媒体の設定を示すと判断した場合は、ジョブ分割単位決定部13が、印刷ジョブの分割単位を決定する(ステップS33)。例えば、ジョブ分割単位決定部13は、図7(A)に示すPDFファイル70のメタデータにおいて設定されている属性値と参照情報とを取得するとともに、該参照情報が示すジョブチケット80内の印刷設定情報を取得する。そして、ジョブ分割単位決定部13は、属性値と印刷設定情報とに基づいて、同一種類の印刷媒体の設定がされている単位を印刷ジョブの分割単位として決定する。具体的には、ジョブ分割単位決定部13は、普通紙を使用する設定に対応するページ1からページ3、ページ7からページ9までのページ群を、印刷ジョブの一つの分割単位として決定する。また、ジョブ分割単位決定部13は、厚紙を使用する設定に対応するページ4からページ6までのページ群を、他の分割単位として決定する。
上記決定された分割単位に従ってジョブ生成部14が印刷ジョブを分割すると、例えば、図7(B)、(C)に示すような印刷ジョブが生成される。図7(B)に示す印刷ジョブは、ページ1からページ3、ページ7からページ9までのページ群に対応するPDFファイルとジョブチケットCとを備える。また、図7(C)に示す印刷ジョブは、ページ7からページ9までのページ群に対応するPDFファイルとジョブチケットDとを備える。実施例2に係る情報処理装置1によれば、同一種類の印刷媒体の設定が行われているページ群の単位で印刷ジョブを分割し、同一種類の印刷媒体の設定が行われているページ群毎に一つのPDFファイルを生成することができる。その結果、例えば、プリンタ2における印刷処理を、使用する用紙の種類が同一である単位で実行することが可能となり、印刷時の用紙切り替え時に発生するダウンタイムを抑えることができる。
図8は、本発明の実施例3に係る印刷ジョブの分割単位の決定処理フローを示す図である。実施例3においては、ジョブ分割単位決定部13は、PDFファイルのメタデータ内のキーが示すレコードの情報に基づいて、各々のレコードの単位を印刷ジョブの分割単位として決定する。実施例3においては、情報処理装置1が備える所定の記憶部であるレコードデータベース内にレコードの属性に関する情報が予め記憶されているものとする。
実施例3においては、ジョブデータ記憶部16内のジョブデータに対応する印刷ジョブは、図9(A)に示すような構造を有する。図9(A)に示すPDFファイル90は、この印刷ジョブに含まれるPDFファイルの例である。PDFファイル90のメタデータ内のキーには、「レコード」が設定されている。レコードは、PDFファイル90に含まれるデータの所定の印刷単位である。例えば、実施例3に係る印刷システムが顧客単位でバリアブル印刷を実行する場合、レコードは、1顧客分のバリアブルデータの印刷単位である。メタデータには、レコードの属性として、顧客に対応するレコードが設定されており、各々のレコードの属性に対応する参照情報として、レコードの属性に対応するページが設定されている。図9(A)に示す例では、レコードA、レコードB、レコードCという属性に対応するページとして、それぞれ、ページ1からページ3、ページ4からページ6、ページ7からページ9が設定されている。なお、実施例3においては、ジョブチケット100には、各々の属性に共通する所定の印刷設定情報が含まれているものとする。
図8のステップS41において、ジョブ分割単位決定部13が、ジョブデータ記憶部16からジョブデータを抽出し、抽出したジョブデータからPDFファイル90のメタデータ内のキーを取得する。続いて、ジョブ分割単位決定部13が、取得したキーがレコードの情報を示すかを判断する(ステップS42)。ジョブ分割単位決定部13が、取得したキーがレコードの情報を示さないと判断した場合は処理を終了する。ジョブ分割単位決定部13が、キーがレコードの情報を示すと判断した場合は、レコードデータベースを検索して(ステップS43)、レコードデータベース内に、メタデータ内のレコードの属性があるかを判断する(ステップS44)。ジョブ分割単位決定部13が、レコードデータベース内に、メタデータ内のレコードの属性がないと判断した場合は処理を終了する。ジョブ分割単位決定部13が、レコードデータベース内に、メタデータ内のレコードの属性があると判断した場合は、ジョブ分割単位決定部13は、該レコードの属性に対応する参照情報に基づいて、該レコードの属性に対応するページ群を認識する。そして、認識したページ群を印刷ジョブの分割単位として決定する(ステップS45)。続いて、ジョブ分割単位決定部13が、次の属性があるかを判断する。ジョブ分割単位決定部13が、次の属性がないと判断した場合は、処理を終了する。ジョブ分割単位決定部13が、次の属性があると判断した場合は、ステップS45に戻り、ジョブ分割単位決定部13が、印刷ジョブの次の分割単位を決定する。
図8に示す処理フローに従って図9(A)に示す印刷ジョブの分割単位を決定すると、ページ1からページ3までのページ群と、ページ4からページ6までのページ群と、ページ7からページ9までのページ群とが、分割単位として決定される。この分割単位に従ってジョブ生成部14が印刷ジョブを分割すると、例えば、図9(B)乃至(D)に示すような分割印刷ジョブが生成される。
図10は、実施例3において分割対象となる印刷ジョブに含まれるPDFファイルの他の例を示す。図10に示すPDFファイル91は、バリアブル印刷向けに作成されたPDFファイルである。ヘッダ92は、PDFファイル91の先頭に記述されている。ヘッダ92には、PDFのバージョン番号が記述されている。この例では、PDFのバージョンは1.6である。ボディ93には、文書の内容を表現するオブジェクトの階層構造が記述されている。ボディ93は、文書カタログ110、ページツリー111、ページ112、コンテントストリーム113、外部オブジェクト114を有する。メタデータ94は、任意のページに関するキーを示す辞書オブジェクトである。メタデータ94は、アウトライン階層構造115、アウトラインエントリ116を有する。
文書カタログ110は、文書のオブジェクト階層構造のルートを示す。文書カタログ110には、ページツリー111とメタデータ94のアウトライン階層構造115への間接参照情報が記述されている。この例では、文書カタログ110は、Type属性に“Catalog”が設定されている。Pages属性にページツリー111のオブジェクト(20obj)への参照情報“20R”が設定されている。また、Outlines属性にメタデータ94のアウトライン階層構造(110obj)への参照情報“110R”が設定されている。ページツリー111は、文書内におけるページの順序を定義する。情報処理装置1が備えるジョブ分割単位決定部13、ジョブ生成部14は、ページツリー111における定義内容に基づいて、文書の各ページにアクセスすることができる。ページツリー111におけるType属性に“Pages”が設定されている。また、Kids属性にページ112のオブジェクトである30obj乃至60objへの参照の配列“[30R40R50R60R]”が設定されている。
ページ112は、PDFファイル91が有するページのオブジェクトを示す。この例では、PDFファイル91は、4つのページを有する。30obj,40obj,50obj,60objが、それぞれ、1ページ目、2ページ目、3ページ目、4ページ目のオブジェクトである。30objと40objがレコードAのページのオブジェクトである。また、50objと60objがレコードBのページのオブジェクトである。ページ112には、コンテンツ情報、描画領域、リソース、親オブジェクト等が記述されている。ページ112におけるType属性に“Page”が設定されており、Contents属性にコンテントストリーム113や外部オブジェクト114への参照情報が設定されている。
コンテントストリーム113は、PDFのストリームオブジェクトを示す。文書の各ページは、1又は複数のコンテントストリーム113によって表現される。この例では、コンテントストリーム113は、レコードA用のページコンテンツである70objと、レコードB用のページコンテンツである80objといった、文書内で可変となる可変コンテンツを含む。
外部オブジェクト114は、コンテントストリーム113によって内容が定義されるグラフィックスオブジェクトである。外部オブジェクト114は、例えばXObjectである。この例では、各レコードで再利用するコンテンツが外部オブジェクト114として定義されている。アウトライン階層構造115は、文書のアウトラインの階層構造のルートを示す。アウトライン階層構造115には、アウトラインエントリ116への間接参照情報が記述されている。アウトライン階層構造115におけるType属性に“Outlines”が設定されている。また、First属性、Last属性にアウトラインエントリ116への参照情報の範囲が設定されている。
アウトラインエントリ116は、文書のアウトラインを示すオブジェクトである。アウトラインエントリ116におけるPXM属性に任意ページのキー情報を設定することができる。この例では、キー情報として、レコードA、Bの情報(ページ数、名前、性別)が記述されている。ジョブ分割単位決定部13は、アウトラインエントリ116内のキー情報に基づいて、PDFファイル91の分割単位を決定する。この例では、ジョブ分割単位決定部13は、レコードA,レコードBのそれぞれを分割単位として決定する。そして、ジョブ生成部14が、ジョブ分割単位決定部13によって決定された分割単位でPDFファイル91を分割する。具体的には、ジョブ生成部14は、PDFファイル91のデータをレコード単位で再構成する。これにより、レコードAに対応するPDFファイルと、レコードBに対応するPDFファイルとが生成される。
相互参照テーブル95は、ファイル内のオブジェクトの位置を指定するテーブルである。相互参照テーブル95は、“xref”というキーワードから始まる。相互参照テーブル95には、キーワード“xref”に続いて、オブジェクト数と各オブジェクトのファイル先頭からのバイトオフセットが記述されている。例えば、000000012というバイトオフセットは、ファイルの先頭から数えて12バイト目にオブジェクトの情報が記述されていることを示す。
トレーラ96は、PDFファイル91の末尾に記述される情報である。トレーラ96は、相互参照テーブル95の位置情報や、PDFファイル91のルートオブジェクトへの参照情報を有する。ジョブ生成部14は、トレーラ96を参照することによって、相互参照テーブル95やオブジェクトを迅速に見つけることができる。トレーラ96は、“trailer”というキーワードから始まる。トレーラ96には、キーワード“trailer”に続いて、PDFファイル91のオブジェクトエントリ数や文書カタログ110への参照が記述されている。また、“startxref“というキーワードの後には、相互参照テーブル95のファイル先頭からのバイトオフセットが記述されている。
図11及び図12は、実施例3において図10に示すPDFファイルの分割によって生成されたPDFファイルの例を示す図である。図11に示すPDFファイル120は、レコードAに対応するPDFファイルである。図12に示すPDFファイル121は、レコードBに対応するPDFファイルである。
PDFファイル120と、PDFファイル121とは、図10に示す分割元のPDFファイル91と同様に、ヘッダ92、ボディ93、メタデータ94、相互参照テーブル95、トレーラ96を有する。PDFファイル120、121のボディ93は、PDFファイル91のボディ93と同様に、文書カタログ110、ページツリー111、ページ112、コンテントストリーム113、外部オブジェクト114を有する。また、PDFファイル120、121のメタデータ94は、PDFファイル91のメタデータ94と同様に、アウトライン階層構造115とアウトラインエントリ116とを有する。
図11において、PDFファイル120の文書カタログ110が含むオブジェクトである10objは、図10のPDFファイル91の文書カタログ110が含む10objに対応する。すなわち、ジョブ生成部14は、PDFファイル120を生成する際に、PDFファイル91の文書カタログ110内の10objにおけるOutlines属性を更新する。具体的には、ジョブ生成部14は、PDFファイル120内の10objにおけるOutline属性に、図11中に示すアウトライン階層構造115への参照情報“80R”を設定する。
PDFファイル120のボディ93内のページツリー111が含むオブジェクトである20objは、PDFファイル91内のページツリー111が含む20objに対応する。すなわち、ジョブ生成部14は、PDFファイル91のページツリー111内の20objを更新する。具体的には、ジョブ生成部14は、PDFファイル120内の20objにおけるKids属性に、図11中に示す30objと40objへの参照情報“[30R40R]”を設定する。
PDFファイル120のボディ93内のページ112が含むオブジェクトである30objと40objとは、PDFファイル91が有する30objと40objとに対応する。すなわち、ジョブ生成部14は、PDFファイル120を生成する際に、PDFファイル91のページ112が含む30objと40objとを更新する。具体的には、ジョブ生成部14は、30objのContents属性に図11中のコンテントストリーム113や外部オブジェクト114への参照情報“50R60R”を設定する。同様に、ジョブ生成部14は、40objのContents属性に図11中のコンテントストリーム113や外部オブジェクト114への参照情報“50R70R”を設定する。
PDFファイル120のボディ93内のコンテントストリーム113が含むオブジェクトである50objは、PDFファイル91が有する70objに対応する。また、PDFファイル120のボディ93内の外部オブジェクト114が含むオブジェクトである60obj、70objは、それぞれ、PDFファイル91が有する90obj、100objに対応する。また、PDFファイル120のメタデータ94内のアウトライン階層構造115が含むオブジェクトである80objは、PDFファイル121が含む110objに対応する。すなわち、ジョブ生成部14は、PDFファイル120を生成する際に、PDFファイル91のアウトライン階層構造115内の110objにおける、アウトラインエントリ116への参照情報の範囲を更新する。具体的には、ジョブ生成部14は、PDFファイル120内の80objにおけるFirst属性とLast属性とに、図11中の90objへの参照情報である“90R”を設定する。また、PDFファイル120のメタデータ94内のアウトラインエントリ116が含むオブジェクトである90objは、PDFファイル91内のアウトラインエントリ116が含む120objに対応する。
PDFファイル120の相互参照テーブル95は、PDFファイル91の相互参照テーブル95に対応する。ジョブ生成部14は、PDFファイル120が有するオブジェクトの数と、各オブジェクトのファイル先頭からのバイトオフセットとに基づいてPDFファイル120の相互参照テーブル95を更新して、図11に示す相互参照テーブル95を生成する。また、PDFファイル120のトレーラ96は、PDFファイル91のトレーラ96に対応する。ジョブ生成部14は、PDFファイル120が有するオブジェクトの数と、相互参照テーブル95の位置とに基づいてPDFファイル120のトレーラ96を更新して、図11に示すトレーラ96を生成する。ジョブ生成部14がPDFファイル120を生成する際にPDFファイル91の所定のオブジェクトにおける他のオブジェクトへの参照情報を更新するのは、PDFファイルの分割に伴ってオブジェクトの数とバイトオフセット等が変更されるからである。すなわち、ジョブ生成部14は、分割によって決まるPDFファイル120のオブジェクトの数と、このオブジェクトのPDFファイル120におけるバイトオフセットとに基づいてPDFファイル91のオブジェクトを更新して、PDFファイル120を生成する。
一方、図12に示すPDFファイル121が含む10objは、PDFファイル91が含む10objに対応する。PDFファイル121が含む20objは、PDFファイル91が含む20objに対応する。PDFファイル121が含む30obj、40objは、それぞれ、PDFファイル91が含む50obj、60objに対応する。PDFファイル121が含む50objは、PDFファイル91が含む80objに対応する。PDFファイル121が含む60obj、70objは、それぞれ、PDFファイル91が含む90obj、100objに対応する。PDFファイル121が含む80objは、PDFファイル91が含む110objに対応する。PDFファイル121が含む90objは、PDFファイル91が含む130objに対応する。PDFファイル121が含む相互参照テーブル95は、PDFファイル91が含む相互参照テーブル95に対応する。PDFファイル121が含むトレーラ96は、PDFファイル91が含むトレーラ96に対応する。ジョブ生成部14は、分割によって決まるPDFファイル121のオブジェクトの数と、このオブジェクトのPDFファイル121におけるバイトオフセットとに基づいてPDFファイル91のオブジェクトを更新して、PDFファイル121を生成する。
実施例3に係る情報処理装置1によれば、同一の属性のレコードに対応するページ群の単位で印刷ジョブを分割し、同一の属性のレコードに対応するページ群毎に一つのPDFファイルを生成することができる。その結果、例えば、ジャム時のリカバリ処理やジョブの中断処理等の、印刷中の処理を、同一の属性のレコード単位で行うことが可能となる。
以上説明したようにページに配置されるオブジェクトを含む印刷ジョブであって、その印刷ジョブの末尾において、前記オブジェクトの印刷ジョブにおける位置情報の一例である相互参照テーブルが定義された印刷ジョブを処理する情報処理装置を説明した。ここで、情報処理装置は、図1(A)に示すとおり、コンピュータ機能を有する。図1のようにプリンタコントローラ機能を持つワークステーションであって、プリントエンジンに接続されるワークステーションであっても良い。また、情報処理装置は、1、2が一体化した装置であってもよい。すなわち、プリントエンジンが組み込まれた、画像処理機能を有する印刷装置であってもよい。ここで印刷ジョブの末尾とは、印刷ジョブの真ん中以降の、所定のアドレス以降のことであり、最終尾に限るものではない。そして、ジョブ分割単位決定部13が、印刷ジョブに含まれる印刷属性情報に基づいて、印刷ジョブの分割単位を決定することを説明した。さらに、決定された分割単位に基づいて、前記オブジェクトの位置情報を導出し、導出された位置情報を含む複数の分割印刷ジョブを生成することを説明した。例えば、分割印刷ジョブは、図2の(B),(C),(D)などである。また、生成された印刷ジョブをプリンタに対してプリンタI/F15が送信することも説明した。プリンタI/F15はジョブ送信部の一例である。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
1 情報処理装置
2 プリンタ
11 外部I/F
12 ジョブ解析部
13 ジョブ分割単位決定部
14 ジョブ生成部
15 プリンタI/F
16 ジョブデータ記憶部

Claims (8)

  1. ページに配置されるオブジェクトを含む印刷ジョブであって、その印刷ジョブの末尾において、前記オブジェクトの印刷ジョブにおける位置情報が定義された印刷ジョブを処理する情報処理装置において、
    該印刷ジョブに含まれる印刷属性情報に基づいて、該印刷ジョブの分割単位を決定するジョブ分割単位決定手段と、
    前記決定された分割単位に基づいて、前記オブジェクトの位置情報を導出し、導出された位置情報を含む複数の分割印刷ジョブを生成するジョブ生成手段と、
    前記生成された分割印刷ジョブを印刷装置に対して送信するジョブ送信手段とを備え
    前記印刷属性情報が、印刷媒体の設定に関する情報であり、
    前記ジョブ分割単位決定手段が、前記印刷媒体の設定に関する情報に基づいて、同一種類の印刷媒体の設定が行われている単位を前記印刷ジョブの分割単位として決定する
    ことを特徴とする情報処理装置。
  2. 電子文書データの印刷処理を行う印刷装置の情報を取得する印刷装置情報取得手段と、
    前記取得された印刷装置の情報に基づいて、前記印刷ジョブを分割するかを判断する分割判断手段とを備え、
    前記分割判断手段が該印刷ジョブを分割すると判断した場合に、前記ジョブ生成手段が前記分割印刷ジョブを生成する
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記印刷装置の情報が、該印刷装置が印刷処理できる情報量に関する情報であり、
    前記分割判断手段が、前記印刷ジョブの情報量が前記印刷処理できる情報量を超えるかを判断し、該印刷ジョブの情報量が前記印刷できる情報量を超えると判断した場合に、該印刷ジョブを分割すると判断する
    ことを特徴とする請求項2に記載の情報処理装置。
  4. ページに配置されるオブジェクトを含む印刷ジョブであって、その印刷ジョブの末尾において、前記オブジェクトの印刷ジョブにおける位置情報が定義された印刷ジョブを処理する情報処理装置において、
    該印刷ジョブに含まれる印刷属性情報に基づいて、該印刷ジョブの分割単位を決定するジョブ分割単位決定手段と、
    前記決定された分割単位に基づいて、前記オブジェクトの位置情報を導出し、導出された位置情報を含む複数の分割印刷ジョブを生成するジョブ生成手段と、
    前記生成された分割印刷ジョブを印刷装置に対して送信するジョブ送信手段とを備え、
    前記印刷属性情報が、フィニッシング設定に関する情報であり、
    前記ジョブ分割単位決定手段が、前記フィニッシング設定に関する情報に基づいて、同一種類のフィニッシング設定が行われている単位を前記印刷ジョブの分割単位として決定する
    ことを特徴とする情報処理装置。
  5. 前記ジョブ送信手段が、前記ジョブ生成手段によって生成された各々の分割印刷ジョブを別ジョブとして送信する
    ことを特徴とする請求項1に記載の情報処理装置。
  6. 前記ジョブ送信手段が、前記ジョブ生成手段によって生成された複数の分割印刷ジョブを1つのジョブとして送信する
    ことを特徴とする請求項1に記載の情報処理装置。
  7. ページに配置されるオブジェクトを含む印刷ジョブであって、その印刷ジョブの末尾において、前記オブジェクトの印刷ジョブにおける位置情報が定義された印刷ジョブを処理する情報処理装置の制御方法であって、
    該印刷ジョブに含まれる印刷属性情報に基づいて、該印刷ジョブの分割単位を決定するステップと、
    前記決定された分割単位に基づいて、前記オブジェクトの位置情報を導出し、導出された位置情報を含む複数の分割印刷ジョブを生成するステップと、
    前記生成された分割印刷ジョブを印刷装置に対して送信するステップとを有し、
    前記印刷属性情報が、印刷媒体の設定に関する情報であり、
    前記印刷ジョブの分割単位を決定するステップでは、前記印刷媒体の設定に関する情報に基づいて、同一種類の印刷媒体の設定が行われている単位を前記印刷ジョブの分割単位として決定する
    ことを特徴とする情報処理装置の制御方法。
  8. 請求項に記載の情報処理装置の制御方法をコンピュータに実行させることを特徴とするコンピュータプログラム。
JP2009274634A 2009-08-07 2009-12-02 情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム Expired - Fee Related JP5455587B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009274634A JP5455587B2 (ja) 2009-08-07 2009-12-02 情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009184119 2009-08-07
JP2009184119 2009-08-07
JP2009274634A JP5455587B2 (ja) 2009-08-07 2009-12-02 情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2011054147A JP2011054147A (ja) 2011-03-17
JP5455587B2 true JP5455587B2 (ja) 2014-03-26

Family

ID=42751811

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009274634A Expired - Fee Related JP5455587B2 (ja) 2009-08-07 2009-12-02 情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム

Country Status (3)

Country Link
US (1) US8553263B2 (ja)
JP (1) JP5455587B2 (ja)
WO (1) WO2011016187A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5586970B2 (ja) * 2010-01-25 2014-09-10 キヤノン株式会社 情報処理装置および制御方法およびプログラム
JP5804758B2 (ja) * 2011-04-19 2015-11-04 キヤノン株式会社 情報処理装置、情報処理装置の制御方法およびコンピュータプログラム
JP5840931B2 (ja) * 2011-11-11 2016-01-06 理想科学工業株式会社 ジョブ分割装置
WO2013090414A1 (en) * 2011-12-15 2013-06-20 Ricoh Production Print Solutions LLC Altering pdf data of a print job based upon criteria stored in memory of a printing system
JP2014068333A (ja) * 2012-09-05 2014-04-17 Casio Comput Co Ltd 印刷制御装置、印刷制御方法及びプログラム
US10684807B2 (en) * 2013-05-13 2020-06-16 Xerox Corporation Client based splitting of PDF/VT Dpart catalog
US9507548B2 (en) 2014-09-12 2016-11-29 Ricoh Company, Ltd. Method and apparatus for print job with reduced memory footprint size
US9304719B1 (en) * 2014-12-01 2016-04-05 Ricoh Company, Ltd. Reducing print start delays for large portable document format print jobs
JP6369376B2 (ja) * 2015-04-02 2018-08-08 キヤノンマーケティングジャパン株式会社 情報処理装置、その制御方法、及びプログラム、並びに、情報処理システム、その制御方法、及びプログラム
JP2017220088A (ja) * 2016-06-09 2017-12-14 コニカミノルタ株式会社 プリントサーバ及び印刷制御プログラム及び印刷制御方法
JP6655002B2 (ja) * 2016-12-22 2020-02-26 株式会社日立ソリューションズ・クリエイト 印刷制御プログラム、印刷制御装置及び印刷制御方法
US11003399B2 (en) 2017-09-29 2021-05-11 Ricoh Company, Ltd. Method, apparatus and non-transitory recording medium for reducing a printing time utilizing file division
JP7102955B2 (ja) * 2018-06-04 2022-07-20 富士フイルムビジネスイノベーション株式会社 情報処理装置およびプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6084688A (en) * 1998-04-30 2000-07-04 Xerox Corporation Network print server with page-parallel decomposing
US20020186384A1 (en) * 2001-06-08 2002-12-12 Winston Edward G. Splitting a print job for improving print speed
GB2384600B (en) * 2002-01-25 2005-04-13 Hewlett Packard Co Control of multipart print jobs
JP3829798B2 (ja) * 2002-12-24 2006-10-04 コニカミノルタビジネステクノロジーズ株式会社 画像形成装置およびプログラム
JP4144369B2 (ja) * 2003-02-13 2008-09-03 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置、画像処理方法、およびプログラム
US6817791B2 (en) * 2003-04-04 2004-11-16 Xerox Corporation Idiom recognizing document splitter
JP4155513B2 (ja) 2003-05-20 2008-09-24 京セラミタ株式会社 電子文書印刷システム
JP4183557B2 (ja) * 2003-05-23 2008-11-19 京セラミタ株式会社 電子文書印刷システム
JP2004348622A (ja) * 2003-05-26 2004-12-09 Kyocera Mita Corp 電子文書印刷システム
JP2005128878A (ja) * 2003-10-24 2005-05-19 Canon Inc 印刷システム、印刷制御装置、印刷制御方法及びプログラム
US20080180725A1 (en) * 2007-01-26 2008-07-31 Levin Burton L User-defined cluster printing
US7948651B2 (en) * 2007-03-01 2011-05-24 Konica Minolta Systems Laboratory, Inc. Non-sequential transfer of PDF data for PDF direct printing

Also Published As

Publication number Publication date
WO2011016187A1 (en) 2011-02-10
US8553263B2 (en) 2013-10-08
US20110170132A1 (en) 2011-07-14
JP2011054147A (ja) 2011-03-17

Similar Documents

Publication Publication Date Title
JP5455587B2 (ja) 情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム
JP4543340B2 (ja) 画像処理装置および画像形成システムとプログラム
JP5238526B2 (ja) 印刷リソース管理のためのシステム及び方法
JP5336819B2 (ja) 情報処理装置及び印刷制御方法
US20080285074A1 (en) Systems, devices, and methods for variable data printing
JP5226581B2 (ja) ディスプレイリストの並行ラスタ化のための方法、コンピュータ可読媒体及びコンピュータ可読メモリ
JP5261250B2 (ja) ページ記述言語を処理する印刷データ処理装置、方法及びコンピュータ可読媒体
US8760707B2 (en) Print data processing apparatus, cache processing method, and storage medium
JP4144392B2 (ja) 画像処理装置、画像形成システム、画像形成方法、およびプログラム
JP5099594B2 (ja) 画像処理装置、画像処理システムおよび画像処理プログラム
JP2015225481A (ja) 印刷設定情報を効率良く編集するためのプログラム
JP4110945B2 (ja) 画像処理装置、画像形成装置、およびプログラム
US9058136B2 (en) Defining reusable items in printer-ready document to include all graphic attributes for reproducing reusable items independently of external conditions
JP2017049848A (ja) 情報処理装置及びその制御方法
US10310788B2 (en) Control method for generating data used for printing and information processing apparatus
US10185903B2 (en) Image forming output control device and non-transitory recording medium storing program
JP4144369B2 (ja) 画像処理装置、画像処理方法、およびプログラム
JP2008152624A (ja) 情報処理装置及び印刷装置制御方法
JP2015202667A (ja) 情報処理装置、その制御方法およびコンピュータプログラム
JP6539022B2 (ja) 印刷装置、処理方法及びプログラム
JP6149600B2 (ja) 情報処理装置、情報処理方法、プログラムおよび情報処理システム
JP4908053B2 (ja) 印刷システム、印刷方法及び印刷処理プログラム
JP2010046891A (ja) 画像形成装置
JP2018124869A (ja) 画像処理装置、画像処理方法、及びプログラム
JP4908054B2 (ja) 印刷システム、印刷方法及び印刷処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20121107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131015

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131030

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140107

LAPS Cancellation because of no payment of annual fees