JP2016078287A - 画像形成装置およびその制御方法、並びにプログラム - Google Patents

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

Info

Publication number
JP2016078287A
JP2016078287A JP2014210168A JP2014210168A JP2016078287A JP 2016078287 A JP2016078287 A JP 2016078287A JP 2014210168 A JP2014210168 A JP 2014210168A JP 2014210168 A JP2014210168 A JP 2014210168A JP 2016078287 A JP2016078287 A JP 2016078287A
Authority
JP
Japan
Prior art keywords
page
documents
job
document
pages
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
JP2014210168A
Other languages
English (en)
Other versions
JP6434775B2 (ja
Inventor
賢太 松井
Kenta Matsui
賢太 松井
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 JP2014210168A priority Critical patent/JP6434775B2/ja
Priority to US14/873,640 priority patent/US9836252B2/en
Publication of JP2016078287A publication Critical patent/JP2016078287A/ja
Priority to US15/792,930 priority patent/US10620887B2/en
Application granted granted Critical
Publication of JP6434775B2 publication Critical patent/JP6434775B2/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/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • 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/1244Job translation or job parsing, e.g. page banding
    • 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/1248Job translation or job parsing, e.g. page banding by printer language recognition, e.g. PDL, PCL, PDF
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/15Indexing scheme related to printer interfaces for computers, indexing schema related to group G06F3/12
    • G06F2206/1514Sub-job

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)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

【課題】ジョブの中に複数の異なるフォーマットのドキュメントが含まれ、かつ印刷範囲指定がジョブ全体に対するページの通し番号であるジョブを印刷するための技術を提供する。
【解決手段】複数のドキュメントを含むジョブを解析して印刷を行う画像形成装置であって、前記ジョブにて指定される印刷すべきページの情報を取得し、印刷範囲として管理する管理手段と、前記ジョブに含まれる前記複数のドキュメントそれぞれを解析する解析手段と、を備え、前記解析手段は、前記複数のドキュメントそれぞれを構成するページ数を算出し、当該複数のドキュメントそれぞれのページ数に基づいて、前記印刷範囲が示す前記複数のドキュメントのうちの印刷対象となるページを特定する。
【選択図】図3

Description

本発明は、複数のドキュメントを含むジョブを印刷する画像形成装置およびその制御方法、並びにプログラムに関する。
従来、複数のドキュメントに対して、印刷範囲を指定して印刷する技術がある(例えば、特許文献1)。この技術では、各ドキュメントの設定情報にそのドキュメントで印刷すべきページ範囲の情報を付与することで、各ドキュメントの任意のページを印刷できる。
一方、ユーザが扱うドキュメントには、PDF(Portable Document Format)やPS(PostScript)など、数多くのフォーマットがある。そこで、印刷ワークフローの中で、ユーザがフォーマットを意識せずドキュメントを扱えるよう、JDF(Job Definition Format)のように複数のドキュメントのページをひとつのジョブとして管理できるフォーマットが提案されている。
特開2008−210401号公報
複数のドキュメントのページをひとつのジョブとして扱えるフォーマットを利用すると、例えば、図8に示すようなジョブが、アプリケーションによって生成される。ジョブ801には、ドキュメント802a,802b,802cがこの順番で含まれ、それぞれの総ページ数は2、3、2である。各ドキュメントのフォーマットは異なっていてもよい。また、ジョブ801には、印刷すべきページ範囲の情報として、印刷範囲指定803が付与される。印刷範囲指定803は、各ドキュメントのページ番号ではなく、ジョブ全体に対するページの通し番号で指定される。ここでは、全7ページのジョブ801に対し、4ページから6ページが印刷範囲として指定されているため、ドキュメント802bの2、3ページ目と、ドキュメント802cの1ページ目が印刷対象となる。このとき、ジョブ801に含まれるドキュメント802a〜802cそれぞれに対しては印刷範囲指定が付与されない。
印刷装置は、このようなジョブを受信した時点では、ジョブに含まれる各ドキュメントのページ数が分からないため、例えば、ジョブ801に対する4ページ目が、どのドキュメントのどのページに該当するかについて把握できない。
したがって、ジョブの中に複数の異なるフォーマットのドキュメントが含まれ、かつ印刷範囲指定がジョブ全体に対するページの通し番号にて指定されているジョブに対しても、印刷装置は印刷できることが求められる。
上記課題を解決するために本願発明は以下の構成を有する。複数のドキュメントを含むジョブを解析して印刷を行う画像形成装置であって、前記ジョブにて指定される印刷すべきページの情報を取得し、印刷範囲として管理する管理手段と、前記ジョブに含まれる前記複数のドキュメントそれぞれを解析する解析手段と、を備え、前記解析手段は、前記複数のドキュメントそれぞれを構成するページ数を算出し、当該複数のドキュメントそれぞれのページ数に基づいて、前記印刷範囲が示す前記複数のドキュメントのうちの印刷対象となるページを特定する。
複数の異なるフォーマットのドキュメントが含まれ、かつ印刷範囲がジョブ全体に対するページの通し番号で指定されるジョブを印刷できる。
本実施形態に係るハードウェアの構成例を示す図。 本実施形態に係るソフトウェアの構成例を示す図。 第一の実施形態に係るフローチャート。 第二の実施形態に係る全体フローチャート。 第二の実施形態に係るS403の詳細処理のフローチャート。 PDF、XPSの構造とファイルを説明するための図。 第三の実施形態に係るフローチャート。 本願発明にて処理するジョブを説明するための図。 本実施形態に係るジョブの生成例を説明するための図。
以下、本発明を実施するための形態について図面を用いて説明する。
<第一の実施形態>
[ハードウェア構成]
図1は、本実施形態に係る画像形成装置における、複数のドキュメントが含まれるジョブを受け付け、印刷を行うためのハードウェアの構成例を示す。なお、本願発明に係る画像形成装置は、ネットワークプリンタやMFP(Multi−Function Peripheral)などが該当するが特に限定するものではない。
CPU101は、CPU(Central Processing Unit)である。図2で後述するソフトウェアモジュールはCPU101がプログラムを読み出して実行することにより実現される。メモリ102は、CPU101がアクセスできるRAM(Random Access Memory)である。メモリ102は、各種ソフトウェアの動作に必要な記憶領域の確保先として利用され、ソフトウェアモジュールの解析部202が生成する中間データや、レンダラ103が生成するビットマップ画像の保存先としても利用される。
レンダラ103は、ソフトウェアモジュールの解析部202が生成する中間データから、ビットマップ画像を生成するハードウェアである。入力部104は、複数のドキュメントが含まれるジョブの入力を受け付ける。エンジン105は、レンダラ103が生成したビットマップ画像を印刷用紙に出力する印刷部である。ROM106は、不揮発性の記憶部である。図2で後述するソフトウェアモジュールは、ROM106に格納され、CPU101に読み出され、実行される。
[ソフトウェア構成]
図2は、本実施形態に係る画像形成装置において、複数のドキュメントが含まれるジョブを受け付け、印刷を行うためのソフトウェアモジュールの構成例を示す。
ジョブ制御部201は、複数のドキュメントが含まれるジョブを受け付け、各ドキュメントの解析を、そのドキュメントを解析可能な解析部202(202a,202b,202cのいずれか)に依頼する。本実施形態では、各ドキュメントを定義するフォーマットの種類が異なるため、解析可能なフォーマットが異なる複数の解析部が設けられているものとする。そして、ジョブ制御部201は、解析部202が解析結果として生成する中間データをレンダラ103に渡し、レンダラ103が生成するビットマップ画像が、エンジン105によって印刷用紙(記録媒体)に出力される。
解析部202は、ジョブ制御部201から依頼を受けたドキュメントを解析し、ビットマップ画像の生成に必要な中間データを生成する。ドキュメントのフォーマットの例としては、PDF(Portable Document Format)、PS(PostScript)、XPS(XML Paper Specification)、JPEG(Joint Photographic Experts Group)などが挙げられる。本実施形態では、解析部202a,202b,202cがそれぞれ、PDF,PS,XPSのドキュメントフォーマットを解析可能な解析部とする。なお、ドキュメントのフォーマットは上記に限定するものではなく、他のフォーマットであってもよい。この場合には、そのフォーマットを解析可能な解析部が別途設けられるものとする。データ部203には、印刷処理の過程で、ジョブで印刷すべきページ範囲の情報(start_page203a,end_page203b)やドキュメントのページ数(page_num203c)が格納され、管理される。start_page203aは、ページ範囲のうちの最初のページを示し、end_page203bはページ範囲のうちの最後のページを示す。ジョブ制御部201と解析部202は、データ部203にアクセスして、印刷処理を実行する。
本実施形態において扱うジョブの構成例は、図8に示したとおりである。ジョブは、PC(不図示)や携帯端末(不図示)などの外部の情報処理装置にて利用するアプリケーションによりユーザの指示に基づいて生成される。図9は、ジョブの生成例を示す。
ユーザは、アプリケーション901で、3つのドキュメント903a、903b、903cを1つのグループ902として開く。アプリケーション上には、各ドキュメントのページがサムネイル表示され、ユーザはサムネイルを選択する形で印刷したいページを指定する。ここでは、印刷したいページとして、ドキュメント903bの2、3ページ目、ドキュメント903cの1ページ目を、ユーザが選択したとする。なお、図8、図9では、選択したページを白塗りで示し、選択していないページを斜線にて示している。
ドキュメントを開いているアプリケーション901は、各ドキュメントのページ数を把握しているため、印刷すべきページをグループ902全体に対する通し番号で指定できる。この場合、アプリケーション901は、印刷対象をグループ902のうち4、5、6ページ目であると判定し、印刷用のジョブとしてジョブ904(すなわち、図8のジョブ801)を生成する。図9において、括弧付で示されるページ番号はジョブ904全体に対する通し番号である。印刷範囲指定905は、その通し番号に基づいて指定されている。
一方、このようなジョブを受信した画像形成装置は、ジョブに含まれる各ドキュメントのページ数が分からないため、指定された通し番号に対応する各ドキュメントのページが分からない。そこで、本実施形態では、以下に説明する方法で印刷を行う。
[処理フロー]
図3は、本実施形態に係る処理を示すフローチャートである。本処理は、CPU101がROM106等に格納されたプログラムを読み出して実行することにより実現される。以下、図8に示すジョブの構成を用いて具体的な例と共に説明する。
S301にて、ジョブ制御部201は、ジョブに印刷範囲指定の情報があるか否かを確認する。印刷範囲指定の情報がある場合は(S301にてYES)S302の処理へ進み、ない場合は(S301にてNO)S311の処理へ進む。
S302にて、ジョブ制御部201は、ジョブに含まれている印刷範囲指定の情報をデータ部203に格納する。ここでは、ジョブの印刷範囲指定の情報が、図8に示すように4〜6ページであるため、start_page203aに“4”が格納され、end_page203bに“6”が格納される。
S303にて、ジョブ制御部201は、ジョブに含まれるドキュメントの解析を解析部202に依頼し、ドキュメント解析が開始される。ここでは、ジョブに含まれる3つのドキュメント802a,802b,802cのフォーマットがそれぞれPDF、PS、XPSであるとする。この場合、ジョブ制御部201は、最初のドキュメント802a(PDF)の解析を、PDFの解析が可能な解析部202aに依頼する。
S304にて、解析部202aは、ドキュメントのページ数の情報を“0”で初期化する。初期化の結果、データ部203のpage_num203cに“0”が格納される。
S305にて、解析部202aは、解析を行うページが印刷範囲指定内のページか否かを判定する。印刷範囲指定内のページの場合は(S503にてYES)S306の処理へ進み、印刷範囲外のページの場合は(S503にてNO)S307の処理へ進む。具体的には、次の式が成り立つ場合は印刷範囲指定内のページであると判定し、成り立たない場合は印刷範囲外のページであると判定する。
start_page≦page_num+1≦end_page
ここでは、start_page=4、end_page=6、(page_num+1)=0+1=1となり、上記の式が成り立たず、印刷範囲指定外のページと判定され、S307の処理へ進む。
S307にて、解析部202aは、ドキュメントのページ数を次のように更新し、データ部203のpage_num203cに更新した値を格納する。
page_num=page_num+1
ここでは、page_num=page_num+1=0+1=1となり、page_num203cには“1”が格納される。
S308にて、解析部202aは、ドキュメント解析終了か否かを判定する。依頼を受けたドキュメントにおいて解析すべき次のページがある場合は(S308にてNO)、ドキュメント解析を継続するため、S305の処理へ戻る。解析すべき次のページがない場合は(S308にてYES)、ドキュメント解析終了であると判定して、S309の処理へ進む。
ここでは、次のページ(ドキュメント802a(PDF)の2ページ目)があるため、S305の処理へ進む。そして、S305以降、次の処理を経て、S309に到達する。
S305:start_page=4、end_page=6、(page_num+1)=(1+1)=2→印刷範囲指定外
S307:page_num=page_num+1=1+1=2
S308:次ページなし(S308にてYES)→ドキュメント解析終了(S309へ)
S309にて、ジョブ制御部201は、ジョブ終了か否か判定する。ジョブ中に次のドキュメントがある場合は(S309にてNO)、その解析処理を行うためにS310の処理へ進み、次のドキュメントがない場合は(S309にてYES)、ジョブ終了であると判定する。ここでは、次のドキュメント802b(PS)があるので、S310に進む。
S310にて、ジョブ制御部201は、印刷範囲指定の情報を次のように更新する。
start_page=start_page−page_num
end_page=end_page−page_num
ここでは、start_page−page_num=4−2=2、end_page−page_num=6−2=4となり、データ部203のstart_page203aには“2”が格納され、end_page203bには“4”が格納される。
S303に戻り、ジョブ制御部201は、ジョブに含まれる次のドキュメントの解析を解析部202に依頼することで、ドキュメント解析を開始する。ここでは、次のドキュメント802bのフォーマットはPSであるため、ジョブ制御部201は、PSを解析可能な解析部202bにドキュメントの解析を依頼する。その後、S304以降、次の処理を経て、S306に到達する。
S304:page_num=0
S305:start_page=2、end_page=4、(page_num+1)=(0+1)=1→印刷範囲指定外(S305にてNO)
S307:page_num=page_num+1=0+1=1
S308:次ページあり(S308にてNO)→ドキュメント解析継続(S305へ)
S305:start_page=2、end_page=4、(page_num+1)=(1+1)=2→印刷範囲指定内(S305にてYES)
S306にて、解析部202bは、解析するページの中間データを生成する。先述の通り、ジョブ制御部201は、この中間データをレンダラ103に渡し、レンダラ103が中間データから生成するビットマップ画像が、エンジン105によって印刷用紙に出力される。つまり、ジョブ801に含まれるドキュメント802b(PS)の2ページ目は、このタイミングで出力される。同様にS307以降は、次の処理を経て、ドキュメント802b(PS)の3ページ目を出力し、再びS309に到達する。
S307:page_num=page_num+1=1+1=2
S308:次ページあり(S308にてNO)→ドキュメント解析継続(S305へ)
S305:start_page=2、end_page=4、(page_num+1)=2+1=3→印刷範囲指定内(S305にてYES)
S306:中間データ生成(ドキュメント802bの3ページ目の出力)
S307:page_num=page_num+1=2+1=3
S308:次ページなし(S308にてYES)→ドキュメント解析終了(S309へ)
S309:次のドキュメント802b(XPS)あり(S310へ)
S310にて、ジョブ制御部201は、印刷範囲指定start_page203a、end_page203bを次のように更新する。
start_page=start_page−page_num=2−3=−1
end_page=end_page−page_num=4−3=1
印刷範囲指定の更新後はS303に戻る。ジョブ制御部201は、ジョブに含まれる次のドキュメントの解析を解析部202に依頼することで、ドキュメント解析を開始する。ここでは、次のドキュメント802cのフォーマットXPSであるため、XPSを解析可能な解析部202cにドキュメントの解析を依頼する。その後、S304以降、次の処理を経て、ドキュメント802c(XPS)の1ページ目を出力して、S309に到達する。
S304:page_num=0
S305:start_page=−1、end_page=1、(page_num+1)=0+1=1→印刷範囲指定内(S305にてYES)
S306:中間データ生成(ドキュメント802cの1ページ目の出力)
S307:page_num=page_num+1=0+1=1
S308:次ページあり(S308にてNO)→ドキュメント解析継続(S305へ)
S305:start_page=−1、end_page=1、(page_num+1)=1+1=2→印刷範囲指定外(S305にてNO)
S307:page_num=page_num+1=1+1=2
S308:次ページなし(S308にてYES)→ドキュメント解析終了(S309へ)
ジョブ801には次のドキュメントはないため(S309にてYES)、ジョブ制御部201は、本処理フローをする。結果として次の3ページが印刷される。
・ドキュメント802b(PS)の2ページ目
・ドキュメント802b(PS)の3ページ目
・ドキュメント802c(XPS)の1ページ目
S311〜S314は、受信した複数のドキュメントが含まれるジョブに印刷範囲指定の情報がなかった場合の処理である。印刷範囲指定の情報がない場合(S301にてNO)、ジョブ制御部201は、ジョブに含まれるドキュメントを順々に解析し、印刷する。
S311にて、ジョブ制御部201は、ジョブに含まれるドキュメントの解析を解析部202(202a、202b、202cのいずれか)に依頼し、ドキュメント解析を開始する。先述の通り、ジョブ制御部201は、そのドキュメントを解析可能な解析部に解析を依頼する。
S312にて、解析部202は、解析するページの中間データを生成する。先述の通り、ジョブ制御部201は、生成した中間データをレンダラ103に渡し、レンダラ103が中間データから生成するビットマップ画像が、エンジン105によって印刷用紙に出力される。
S313にて、解析部202は、ドキュメント解析が終了か否かを判定する。解析すべき次のページがある場合は(S313にてNO)、ドキュメント解析を継続するため、S312の処理へ戻る。解析すべき次のページがない場合は(S313にてYES)、解析部202は、ドキュメント解析終了と判定して、S314の処理へ進む。
S314にて、ジョブ制御部201は、ジョブ終了か否かを判定する。ジョブ中に次のドキュメントがある場合は(S314にてNO)、そのドキュメントの解析処理を行うためにS311の処理へ進み、ない場合は(S314にてYES)ジョブ終了と判定する。
以上、本実施形態によって、印刷装置は、複数の異なるフォーマットのドキュメントが含まれ、かつ印刷範囲がジョブ全体に対するページの通し番号で指定されるジョブを印刷できるようになり、ユーザの利便性が向上する。
なお、本実施形態では、印刷範囲指定として連続したページを指定した例を示したが、これに限定するものではない。例えば、複数のドキュメントにおいて連続していないページを通し番号にて指定したジョブであってもよい。
<第二の実施形態>
本実施形態の処理は、第一の実施形態を改善するものであり、処理全体のフローチャートを図4に示す。本実施形態(図4)と第一の実施形態(図3)との差分は、図1のS303の処理が図4のS403の条件分岐に変わった点のみであるため、ここではS403の条件分岐処理の詳細説明を行い、その他については説明を省略する。S403の詳細処理について、図5に示す。図4、図5の処理は、CPU101がROM106等に格納されたプログラムを読み出して実行することで実現される。
S501にて、ジョブ制御部201は、ジョブに含まれるドキュメントの解析を解析部202に依頼し、ドキュメント解析を開始する。
S502では、ジョブ制御部201は、ドキュメント解析を開始した直後で、解析するドキュメントに応じてpage_numの更新方法を切り替える。ドキュメントがPDFの場合はS503の処理へ、XPSの場合はS504の処理へ、JPEGの場合はS505の処理へ、PSの場合はS507へ処理を進める。PSは、データ構造上、ファイルの先頭から終端まで逐次解析しないとページ数がわからない。そのため、S507以降で、第一の実施形態と同じように各ページを順々に解析してドキュメントのページ数を算出する。
S503にて、PDFが解析可能な解析部202aは、ページ数の情報を、PDFに含まれるページツリーから取得する。第一の実施形態ではPDFのドキュメントのページ数を取得するのに、各ページを順々に解析した。しかし、PDFはツリー構造を持つフォーマットであり、ページのツリーを参照することによりドキュメントのページ数を取得できる。
図6(a)は、3ページのPDFのツリー構造とファイルの中身を示す例である。この場合、ファイルに記載された「Count 3」の“3”がページ数に相当し、解析部202aはデータ部のpage_num203cに“3”を格納する。
S504にて、XPSが解析可能な解析部202cは、ページ数の情報を、XPSに含まれるFixedDocumentパーツから取得する。第一の実施形態ではXPSのページ数を取得するのに、各ページを順々に解析した。しかし、XPSはフォルダ構成を持つフォーマットであり、特定のフォルダに存在するファイルを参照することによりドキュメントを構成するページ数を取得できる。
図6(b)は、3ページのXPSが持つフォルダ構成と、特定のフォルダ(Documents)に存在するファイル(FixedDoc.fdoc)の中身を示す例である。この場合、ファイルに記載された</PageContent>の出現回数(ここでは3回)がページ数に相当し、解析部202cはデータ部203のpage_num203cに“3”を格納する。
S505にて、JPEGが解析可能な解析部(不図示)は、データ部203のpage_num203cに“1”を格納する。JPEGの場合、そのフォーマットの規格上、常に1ページであるためページ数は“1”になり、JPEGの解析部(不図示)はデータ部203のpage_num203cに“1”を格納する。
S506にて、解析部202は、ドキュメントのページ数から、印刷範囲指定内のドキュメントか否かを判定する。印刷範囲指定内のドキュメントの場合は(S506にてYES)S507の処理へ進み、印刷範囲指定外のドキュメントの場合は(S506にてNO)S508の処理へ進む。ここでは、次の式が成り立つ場合は印刷範囲指定内のドキュメント、成り立たない場合は印刷範囲指定外のドキュメントと判定する。
num_page≧start_page
S507にて、解析部202は、ドキュメント解析を継続する。つまり、図4のS404以降の処理を続ける。
S508にて、解析部202は、ドキュメント解析を終了する。つまり、図4のS409以降の処理を続ける。
第一の実施形態と同様、図8のジョブ801に含まれる3つのドキュメント802a,802b,802cがそれぞれPDF、PS、XPSとする。この場合、(図4の)S401以降、次の処理を経て、S506の処理に到達する。
S401:印刷範囲指定あり(S401にてYES)
S402:start_page=4、end_page=6
S501:ドキュメント解析開始
S502:ドキュメント=PDF
S503:page_num=2
S506にて、start_page=4、page_num=2であるため、ドキュメント802a(PDF)は印刷範囲指定外のドキュメントと判定される(S506にてNO)。そして、S508で解析部202aは、PDFのドキュメント解析を終了し、図4のS409以降の処理に移る。このように処理することで、印刷範囲指定外のドキュメント802a(PDF)の各ページの解析を一切せず、第一の実施形態よりも早く次のドキュメント802b(PS)の解析を開始できる。
本実施形態によれば、ページ数を低コストで算出できるドキュメントについてはページ数を算出し、印刷範囲指定外のドキュメントの解析処理を省くことで、第一の実施形態よりも印刷処理の高速化が可能になる。
<第三の実施形態>
図7は、第三の実施形態に係る処理を示すフローチャートである。第一、第二の実施形態では、ドキュメントの解析と印刷を、ジョブに含まれるドキュメントの順に実行した。本実施形態では、ジョブに含まれる全ドキュメントの解析を最初に行い、その解析が全て完了した後に、全ドキュメントの印刷を実行する。図7の処理は、CPU101がROM106等に格納されたプログラムを読み出して実行することで実現される。
S701は、ジョブ制御部201が、ジョブに含まれる各ドキュメント[i](i=0,1,2...)に対して、S706までの処理を繰り返すことを示す。
S702にて、ジョブ制御部201は、ジョブに含まれるドキュメント[i]の解析を解析部202に依頼し、ドキュメント解析を開始する。
S703にて、解析部202は、ドキュメント[i]のページ数の情報を初期化し、データ部203のpage_num[i](不図示)に“0”を格納する。
S704にて、解析部202は、ドキュメント[i]の解析を行い、ページ数の情報を更新する。第一の実施形態と異なり、解析部202はドキュメント[i]の解析だけを行い、中間データの生成は行わない。
S705にて、解析部202は、ドキュメント[i]の解析が終了したか否かを判定する。解析が終了した場合は(S705にてYES)S706の処理へ進み、終了してない場合は(S705にてNO)S704の処理へ戻り、解析処理を継続する。
S706にて、ジョブ制御部201は、各ドキュメント[i](i=0,1,2...)に対して、S705までの処理が全て終了したと判定した場合、S707の処理へ進む。
S707にて、ジョブ制御部201は、印刷範囲指定の情報をデータ部203のstart_page203a、end_page203bに格納する。
S708は、ジョブ制御部201が、ジョブに含まれる各ドキュメント[i](i=0,1,2...)に対して、S714までの処理を繰り返すことを示す。S709〜S712では、第一の実施形態と同様に解析部202によりドキュメント解析が行われ、印刷範囲指定内のページについては、中間データが生成される。
S713にて、ジョブ制御部201は、印刷範囲指定の情報を次のように更新する。
start_page=start_page−page_num[i]
end_page=end_page−page_num[i]
S714にて、ジョブ制御部201は、各ドキュメント[i](i=0,1,2...)に対して、S713までの処理が全て終了したと判定した場合、本処理フローを終了する。
本実施形態の処理は、例えば、ジョブに含まれるページをプレビューなどで、ジョブ全体の総ページ数をすぐに求めたり、表示したりするケースで有効である。また、本実施形態ではドキュメントに対して解析処理が二度実行される。そこで、パフォーマンス向上のために、第二の実施形態で示した、ドキュメントのページ数の算出方法をドキュメント種別によって切り替える処理を併用してもよい。
<その他の実施例>
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
101…CPU、201…ジョブ制御部、202…解析部、203…データ部、801…ジョブ、802…ドキュメント

Claims (9)

  1. 複数のドキュメントを含むジョブを解析して印刷を行う画像形成装置であって、
    前記ジョブにて指定される印刷すべきページの情報を取得し、印刷範囲として管理する管理手段と、
    前記ジョブに含まれる前記複数のドキュメントそれぞれを解析する解析手段と、
    を備え、
    前記解析手段は、前記複数のドキュメントそれぞれを構成するページ数を算出し、当該複数のドキュメントそれぞれのページ数に基づいて、前記印刷範囲が示す前記複数のドキュメントのうちの印刷対象となるページを特定することを特徴とする画像形成装置。
  2. 前記ジョブに含まれる複数のドキュメントは、異なるフォーマットにて定義されていることを特徴とする請求項1に記載の画像形成装置。
  3. ドキュメントのページ数の算出方法は、ドキュメントのフォーマットの種類に応じて切り替えられることを特徴とする請求項1または2に記載の画像形成装置。
  4. 前記解析手段は、解析可能なドキュメントのフォーマットが異なる複数の解析部から構成されることを特徴とする請求項1乃至3のいずれか一項に記載の画像形成装置。
  5. 前記管理手段が取得する印刷すべきページの情報は、前記ジョブに含まれる前記複数のドキュメントにて構成される複数のページの通し番号で指定されていることを特徴とする請求項1乃至4のいずれか一項に記載の画像形成装置。
  6. 前記複数のドキュメントのうち、前記解析手段にて特定された前記印刷範囲が示す印刷対象のページを印刷部に印刷させる制御手段を更に有することを特徴とする請求項1乃至5のいずれか一項に記載の画像形成装置。
  7. 前記解析手段は、前記複数のドキュメントの全ての解析が完了した後に、前記印刷範囲が示す前記複数のドキュメントのうちの印刷対象となるページを特定することを特徴とする請求項1乃至6のいずれか一項に記載の画像形成装置。
  8. 複数のドキュメントを含むジョブを解析して印刷を行う画像形成装置の制御方法であって、
    前記ジョブにて指定される印刷すべきページの情報を取得し、印刷範囲として記憶部にて管理する管理工程と、
    前記ジョブに含まれる前記複数のドキュメントそれぞれを解析部にて解析する解析工程と、
    を有し、
    前記解析工程において、前記複数のドキュメントそれぞれを構成するページ数を算出し、当該複数のドキュメントそれぞれのページ数に基づいて、前記印刷範囲が示す前記複数のドキュメントのうちの印刷対象となるページを特定することを特徴とする画像形成装置の制御方法。
  9. コンピュータを、
    複数のドキュメントを含むジョブにて指定される印刷すべきページの情報を取得し、印刷範囲として管理する管理手段、
    前記ジョブに含まれる前記複数のドキュメントそれぞれを解析する解析手段、
    として機能させ、
    前記解析手段は、前記複数のドキュメントそれぞれを構成するページ数を算出し、当該複数のドキュメントそれぞれのページ数に基づいて、前記印刷範囲が示す前記複数のドキュメントのうちの印刷対象となるページを特定することを特徴とするプログラム。
JP2014210168A 2014-10-14 2014-10-14 画像形成装置およびその制御方法、並びにプログラム Active JP6434775B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014210168A JP6434775B2 (ja) 2014-10-14 2014-10-14 画像形成装置およびその制御方法、並びにプログラム
US14/873,640 US9836252B2 (en) 2014-10-14 2015-10-02 Image forming apparatus, control method thereof, and non-transitory computer-readable storage medium
US15/792,930 US10620887B2 (en) 2014-10-14 2017-10-25 Image forming apparatus and information processing apparatus configured to print a specified page of a plurality of documents, control method thereof, and non-transitory computer-readable storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014210168A JP6434775B2 (ja) 2014-10-14 2014-10-14 画像形成装置およびその制御方法、並びにプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2018212481A Division JP6727273B2 (ja) 2018-11-12 2018-11-12 画像形成装置およびその制御方法、並びにプログラム

Publications (2)

Publication Number Publication Date
JP2016078287A true JP2016078287A (ja) 2016-05-16
JP6434775B2 JP6434775B2 (ja) 2018-12-05

Family

ID=55655474

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014210168A Active JP6434775B2 (ja) 2014-10-14 2014-10-14 画像形成装置およびその制御方法、並びにプログラム

Country Status (2)

Country Link
US (2) US9836252B2 (ja)
JP (1) JP6434775B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7361489B2 (ja) * 2019-04-25 2023-10-16 キヤノン株式会社 記録装置、制御方法、及びプログラム
US11934731B1 (en) * 2023-03-09 2024-03-19 Ricoh Company, Ltd. Alternative media generation mechanism

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003162520A (ja) * 2001-09-14 2003-06-06 Canon Inc 情報処理装置及び方法
JP2006076284A (ja) * 2004-09-13 2006-03-23 Toshiba Corp 画像形成装置
JP2007042023A (ja) * 2005-08-05 2007-02-15 Konica Minolta Business Technologies Inc 印刷管理方法、プログラム及び印刷管理装置
JP2008210401A (ja) * 2008-04-21 2008-09-11 Konica Minolta Business Technologies Inc 印刷管理方法、プログラム及び印刷管理装置
JP2008269404A (ja) * 2007-04-23 2008-11-06 Ricoh Co Ltd 画像形成装置、プログラム及び記憶媒体
JP2009172925A (ja) * 2008-01-25 2009-08-06 Ricoh Co Ltd 白紙排紙抑制機能を有する画像形成装置、白紙排紙抑制方法、白紙排紙抑制プログラム
JP2011110900A (ja) * 2009-11-30 2011-06-09 Kyocera Mita Corp 画像形成装置
US20120327439A1 (en) * 2011-06-27 2012-12-27 Konica Minolta Laboratory U.S.A., Inc. Method for selecting interpreters for pdf direct printing

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3090002B2 (ja) * 1995-09-12 2000-09-18 マックス株式会社 プリンタ装置
JPH11275338A (ja) * 1998-03-25 1999-10-08 Oki Data Corp ファクシミリ通信方法
JP4756796B2 (ja) * 2001-09-14 2011-08-24 キヤノン株式会社 情報処理装置、情報処理方法、プログラム及び記憶媒体
KR100436757B1 (ko) * 2001-10-04 2004-06-23 삼성전자주식회사 프린터에 저장된 인쇄데이터의 특정부분을 인쇄하는시스템 및 그 제어방법
JP4420183B2 (ja) * 2003-08-11 2010-02-24 セイコーエプソン株式会社 印刷制御装置、印刷制御方法および印刷制御プログラム
JP4859230B2 (ja) * 2006-12-13 2012-01-25 キヤノン株式会社 混在ジョブ生成方法及びその装置、該装置を含む印刷製本システム
JP5344583B2 (ja) * 2009-03-13 2013-11-20 キヤノン株式会社 情報処理装置、情報処理方法、プログラム及び記憶媒体
JP5677043B2 (ja) * 2009-12-15 2015-02-25 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム
US8817297B2 (en) * 2010-03-31 2014-08-26 Konica Minolta Laboratory U.S.A., Inc. Restricting printer language selection on a user-by-user basis
JP2012098927A (ja) * 2010-11-02 2012-05-24 Canon Inc 情報処理装置、情報処理方法、プログラム及び情報処理システム
JP5851820B2 (ja) * 2011-12-15 2016-02-03 シャープ株式会社 電子文書作成装置、電子文書を作成するための方法、および、コンピュータを電子文書作成装置として機能させるためのプログラム
JP2013206250A (ja) * 2012-03-29 2013-10-07 Canon Inc 情報処理装置、情報処理システム、制御方法およびコンピュータプログラム
JP5591866B2 (ja) * 2012-05-02 2014-09-17 富士フイルム株式会社 データ作成装置、方法及びプログラム
US8913269B2 (en) * 2012-09-28 2014-12-16 Konica Minolta Laboratory U.S.A., Inc. Method for printing PDF files containing corrupted pages
JP5273420B1 (ja) * 2012-10-11 2013-08-28 富士ゼロックス株式会社 印刷制御装置、画像形成システムおよびプログラム
JP5817708B2 (ja) * 2012-11-22 2015-11-18 コニカミノルタ株式会社 画像処理装置、画像処理装置の制御方法、および画像処理装置の制御プログラム
JP6155865B2 (ja) * 2013-06-07 2017-07-05 株式会社リコー 情報処理システム、情報処理方法、および、プログラム

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003162520A (ja) * 2001-09-14 2003-06-06 Canon Inc 情報処理装置及び方法
JP2006076284A (ja) * 2004-09-13 2006-03-23 Toshiba Corp 画像形成装置
JP2007042023A (ja) * 2005-08-05 2007-02-15 Konica Minolta Business Technologies Inc 印刷管理方法、プログラム及び印刷管理装置
JP2008269404A (ja) * 2007-04-23 2008-11-06 Ricoh Co Ltd 画像形成装置、プログラム及び記憶媒体
JP2009172925A (ja) * 2008-01-25 2009-08-06 Ricoh Co Ltd 白紙排紙抑制機能を有する画像形成装置、白紙排紙抑制方法、白紙排紙抑制プログラム
JP2008210401A (ja) * 2008-04-21 2008-09-11 Konica Minolta Business Technologies Inc 印刷管理方法、プログラム及び印刷管理装置
JP2011110900A (ja) * 2009-11-30 2011-06-09 Kyocera Mita Corp 画像形成装置
US20120327439A1 (en) * 2011-06-27 2012-12-27 Konica Minolta Laboratory U.S.A., Inc. Method for selecting interpreters for pdf direct printing

Also Published As

Publication number Publication date
US20160103637A1 (en) 2016-04-14
JP6434775B2 (ja) 2018-12-05
US20180046414A1 (en) 2018-02-15
US9836252B2 (en) 2017-12-05
US10620887B2 (en) 2020-04-14

Similar Documents

Publication Publication Date Title
US9501246B2 (en) Computer readable recording medium, information processing apparatus, and information processing method for displaying converted image data
JP5654806B2 (ja) サーバシステムとプリント装置及びそれらを有するネットワーク印刷システムとそれらにおける方法
JP2016162238A (ja) 画像処理システム、処理実行制御装置、画像形成出力制御装置、画像処理システムの制御プログラム、画像処理システムの制御方法
US9639304B2 (en) Data supplying device and image processing system
US9830541B2 (en) Image output system, image output method, document server, and non-transitory computer readable recording medium
JP6434775B2 (ja) 画像形成装置およびその制御方法、並びにプログラム
JP2016179619A (ja) 情報処理装置及び情報処理装置により印刷所要時間を求める方法、画像形成装置及び画像形成装置の制御方法ならびにプログラム
JP2016162241A (ja) 画像処理システム、画像形成出力制御装置、情報処理方法、情報処理プログラム
CN105373356B (zh) 信息处理装置及其控制方法
US8484558B2 (en) Document generation method and document generation apparatus
JP6727273B2 (ja) 画像形成装置およびその制御方法、並びにプログラム
JP2016099763A (ja) 印刷ジョブ管理装置、管理方法及びプログラム
US8248632B2 (en) Method and apparatus for printing and inserting dividers into multi-section documents from multiple files
JP2014076569A (ja) 画像形成装置及びその制御方法、並びにプログラム、画像形成システム
JP2018206311A (ja) 印刷システム、サーバ及びその制御方法とプログラム
EP3070923A1 (en) Printing system capable of printing in any one of plural image forming apparatuses over network, image forming apparatus, and printing method
JP6397168B2 (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
JP5957979B2 (ja) 画像処理方法、画像処理プログラムおよび画像形成装置
JP6603490B2 (ja) 画像形成装置とその制御方法、及び記憶媒体
JP6217094B2 (ja) 画像形成装置、及びそれを印刷設定するプリンタドライバ、画像形成方法、画像形成プログラム
JP2015141332A (ja) 印刷装置、印刷装置の制御方法、及びプログラム
JP6197557B2 (ja) 画像処理装置及びプログラム
JP4118834B2 (ja) プリンタ制御プログラム及びプリンタ制御装置
JP2017220088A (ja) プリントサーバ及び印刷制御プログラム及び印刷制御方法
JP2016162244A (ja) 画像処理システム、画像形成出力制御装置及び画像処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180730

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180927

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181109

R151 Written notification of patent or utility model registration

Ref document number: 6434775

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151