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

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

Info

Publication number
JP6727273B2
JP6727273B2 JP2018212481A JP2018212481A JP6727273B2 JP 6727273 B2 JP6727273 B2 JP 6727273B2 JP 2018212481 A JP2018212481 A JP 2018212481A JP 2018212481 A JP2018212481 A JP 2018212481A JP 6727273 B2 JP6727273 B2 JP 6727273B2
Authority
JP
Japan
Prior art keywords
page
document
data format
page number
print
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018212481A
Other languages
English (en)
Other versions
JP2019022998A (ja
JP2019022998A5 (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 JP2018212481A priority Critical patent/JP6727273B2/ja
Publication of JP2019022998A publication Critical patent/JP2019022998A/ja
Publication of JP2019022998A5 publication Critical patent/JP2019022998A5/ja
Application granted granted Critical
Publication of JP6727273B2 publication Critical patent/JP6727273B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)

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ページ目が、どのドキュメントのどのページに該当するかについて把握できない。
したがって、ジョブの中に複数の異なるフォーマットのドキュメントが含まれ、かつ印刷範囲指定がジョブ全体に対するページの通し番号にて指定されているジョブに対しても、印刷装置は印刷できることが求められる。
上記課題を解決するために本願発明は以下の構成を有する。すなわち、本願発明の一態様に係る画像形成装置、第1のデータフォーマットを有する第1のドキュメントと、前記第1のデータフォーマットと異なる第2のデータフォーマットを有する第2のドキュメントとを少なくとも含むプリントジョブを取得する第1の取得手段と、前記プリントジョブに含まれる全てのページにおける印刷すべきターゲットページの位置を示すページ番号の指示を取得する第2の取得手段と、前記第1のドキュメントにおける各ページのページ番号と前記第2のドキュメントにおける各ページのページ番号とのうち少なくともいずれか、及び、前記第2の取得手段が取得した前記ページ番号に基づいて、前記ターゲットページの印刷を実行させる印刷制御手段とを有し、前記プリントジョブは、前記プリントジョブに含まれる全てのページにおける前記ターゲットページの位置を示すページ番号を含まないことを特徴とする
また、本願発明の他の一態様に係る画像形成装置は、第1のデータフォーマットを有する第1のドキュメントと、前記第1のデータフォーマットと異なる第2のデータフォーマットを有する第2のドキュメントとを少なくとも含むプリントジョブを取得する第1の取得手段と、前記プリントジョブに含まれる全てのページにおける印刷すべきターゲットページの位置を示すページ番号の指示を取得する第2の取得手段と、前記第1のドキュメントにおける各ページのページ番号と前記第2のドキュメントにおける各ページのページ番号とのうち少なくともいずれか、及び、前記第2の取得手段が取得した前記ページ番号に基づいて、前記ターゲットページの印刷を実行させる印刷制御手段と、前記指示が示すページ番号から、少なくとも前記第1のドキュメントのページ数を引いた結果に基づいて、前記ターゲットページを特定する特定手段とを有し、前記印刷制御手段は、前記特定手段が特定した前記ターゲットページを印刷させる制御を行うことを特徴とする。
また、本願発明の更に他の一態様に係る画像形成装置は、第1のデータフォーマットを有する第1のドキュメントと、前記第1のデータフォーマットと異なる第2のデータフォーマットを有する第2のドキュメントとを少なくとも含むプリントジョブを取得する第1の取得手段と、前記プリントジョブに含まれる全てのページにおける印刷すべきターゲットページの位置を示すページ番号の指示を取得する第2の取得手段と、前記第1のドキュメントにおける各ページのページ番号と前記第2のドキュメントにおける各ページのページ番号とのうち少なくともいずれか、及び、前記第2の取得手段が取得した前記ページ番号に基づいて、前記ターゲットページの印刷を実行させる印刷制御手段とを有し、前記プリントジョブはJDF(Job Definition Format)に従うプリントジョブであることを特徴とする。
また、本願発明の更に他の一態様に係る画像形成装置は、第1のデータフォーマットを有する第1のドキュメントと、前記第1のデータフォーマットと異なる第2のデータフォーマットを有する第2のドキュメントとを少なくとも含むプリントジョブを取得可能な第1の取得手段と、前記プリントジョブに含まれるページ全体における印刷すべきターゲットページの位置を示す情報を取得する第2の取得手段と、前記第1のドキュメントにおけるページ位置を示すページ番号と前記第2のドキュメントにおけるページ位置を示すページ番号、及び、前記第2の取得手段が取得した前記ページ番号に基づいて、前記ターゲットページの印刷を実行させる制御を行う印刷制御手段とを有し、前記ターゲットページの位置を示す情報は、ターゲットページの開始ページの位置情報と終了ページの位置情報を含むことを特徴とする。
複数の異なるフォーマットのドキュメントが含まれ、かつ印刷範囲がジョブ全体に対するページの通し番号で指定されるジョブを印刷できる。
本実施形態に係るハードウェアの構成例を示す図。 本実施形態に係るソフトウェアの構成例を示す図。 第一の実施形態に係るフローチャート。 第二の実施形態に係る全体フローチャート。 第二の実施形態に係る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 (10)

  1. 第1のデータフォーマットを有する第1のドキュメントと、前記第1のデータフォーマットと異なる第2のデータフォーマットを有する第2のドキュメントとを少なくとも含むプリントジョブを取得する第1の取得手段と、
    前記プリントジョブに含まれる全てのページにおける印刷すべきターゲットページの位置を示すページ番号の指示を取得する第2の取得手段と、
    前記第1のドキュメントにおける各ページのページ番号と前記第2のドキュメントにおける各ページのページ番号とのうち少なくともいずれか、及び、前記第2の取得手段が取得した前記ページ番号に基づいて、前記ターゲットページの印刷を実行させる印刷制御手段とを有し、
    前記プリントジョブは、前記プリントジョブに含まれる全てのページにおける前記ターゲットページの位置を示すページ番号を含まないことを特徴とする画像形成装置。
  2. 第1のデータフォーマットを有する第1のドキュメントと、前記第1のデータフォーマットと異なる第2のデータフォーマットを有する第2のドキュメントとを少なくとも含むプリントジョブを取得する第1の取得手段と、
    前記プリントジョブに含まれる全てのページにおける印刷すべきターゲットページの位置を示すページ番号の指示を取得する第2の取得手段と、
    前記第1のドキュメントにおける各ページのページ番号と前記第2のドキュメントにおける各ページのページ番号とのうち少なくともいずれか、及び、前記第2の取得手段が取得した前記ページ番号に基づいて、前記ターゲットページの印刷を実行させる印刷制御手段と、
    前記指示が示すページ番号から、少なくとも前記第1のドキュメントのページ数を引いた結果に基づいて、前記ターゲットページを特定する特定手段とを有し、
    前記印刷制御手段は、前記特定手段が特定した前記ターゲットページを印刷させる制御を行うことを特徴とする画像形成装置。
  3. 第1のデータフォーマットを有する第1のドキュメントと、前記第1のデータフォーマットと異なる第2のデータフォーマットを有する第2のドキュメントとを少なくとも含むプリントジョブを取得する第1の取得手段と、
    前記プリントジョブに含まれる全てのページにおける印刷すべきターゲットページの位置を示すページ番号の指示を取得する第2の取得手段と、
    前記第1のドキュメントにおける各ページのページ番号と前記第2のドキュメントにおける各ページのページ番号とのうち少なくともいずれか、及び、前記第2の取得手段が取得した前記ページ番号に基づいて、前記ターゲットページの印刷を実行させる印刷制御手段とを有し、
    前記プリントジョブはJDF(Job Definition Format)に従うプリントジョブであることを特徴とする画像形成装置。
  4. 前記第2の取得手段が取得する前記指示は、ユーザの指示に基づくことを特徴とする請求項1乃至3のいずれか1項に記載の画像形成装置。
  5. 印刷を行う印刷手段を更に有し、
    前記印刷制御手段は、前記印刷手段を制御して、前記ターゲットページの印刷を実行させることを特徴とする請求項1乃至4のいずれか1項に記載の画像形成装置。
  6. 第1のデータフォーマットを有する第1のドキュメントと、前記第1のデータフォーマットと異なる第2のデータフォーマットを有する第2のドキュメントとを少なくとも含むプリントジョブを取得する第1の取得工程と、
    前記プリントジョブに含まれる全てのページにおける印刷すべきターゲットページの位置を示すページ番号の指示を取得する第2の取得工程と、
    前記第1のドキュメントにおける各ページのページ番号と前記第2のドキュメントにおける各ページのページ番号とのうち少なくともいずれか、及び、前記第2の取得工程にて取得した前記ページ番号に基づいて、前記ターゲットページの印刷を実行させる印刷制御工程とを有し、
    前記プリントジョブはJDF(Job Definition Format)に従うプリントジョブであることを特徴とする画像形成装置の制御方法。
  7. 第1のデータフォーマットを有する第1のドキュメントと、前記第1のデータフォーマットと異なる第2のデータフォーマットを有する第2のドキュメントとを少なくとも含むプリントジョブを取得可能な第1の取得手段と、
    前記プリントジョブに含まれるページ全体における印刷すべきターゲットページの位置を示す情報を取得する第2の取得手段と、
    前記第1のドキュメントにおけるページ位置を示すページ番号と前記第2のドキュメントにおけるページ位置を示すページ番号、及び、前記第2の取得手段が取得した前記ページ番号に基づいて、前記ターゲットページの印刷を実行させる制御を行う印刷制御手段とを有し、
    前記ターゲットページの位置を示す情報は、ターゲットページの開始ページの位置情報と終了ページの位置情報を含むことを特徴とする画像形成装置。
  8. 前記印刷制御手段は、少なくとも、前記開始ページが前記第1のドキュメントに含まれ前記終了ページが前記第2のドキュメントに含まれる前記情報を前記第2の取得手段が取得した場合に、前記制御を行うことを特徴とする請求項に記載の画像形成装置。
  9. 画像形成装置の制御方法であって、
    第1のデータフォーマットを有する第1のドキュメントと、前記第1のデータフォーマットと異なる第2のデータフォーマットを有する第2のドキュメントとを少なくとも含むプリントジョブを取得する第1の取得工程と、
    前記プリントジョブに含まれるページ全体における印刷すべきターゲットページの位置を示す情報を取得する第2の取得工程と、
    前記第1のドキュメントにおけるページ位置を示すページ番号と前記第2のドキュメントにおけるページ位置を示すページ番号、及び、前記第2の取得工程にて取得した前記ページ番号に基づいて、前記ターゲットページの印刷を実行させる制御を行う印刷制御工程とを有し、
    前記ターゲットページの位置を示す情報は、ターゲットページの開始ページの位置情報と終了ページの位置情報を含むことを特徴とする画像形成装置の制御方法。
  10. 画像形成装置が備えるコンピュータを、請求項1乃至4、7及び8のいずれか1項に記載の画像形成装置の各手段として機能させるためのプログラム。
JP2018212481A 2018-11-12 2018-11-12 画像形成装置およびその制御方法、並びにプログラム Active JP6727273B2 (ja)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Related Parent Applications (1)

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

Publications (3)

Publication Number Publication Date
JP2019022998A JP2019022998A (ja) 2019-02-14
JP2019022998A5 JP2019022998A5 (ja) 2019-04-25
JP6727273B2 true JP6727273B2 (ja) 2020-07-22

Family

ID=65368780

Family Applications (1)

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

Country Status (1)

Country Link
JP (1) JP6727273B2 (ja)

Also Published As

Publication number Publication date
JP2019022998A (ja) 2019-02-14

Similar Documents

Publication Publication Date Title
JP6455232B2 (ja) 画像処理システム、処理実行制御装置、画像形成出力制御装置、画像処理システムの制御プログラム、画像処理システムの制御方法
JP5654806B2 (ja) サーバシステムとプリント装置及びそれらを有するネットワーク印刷システムとそれらにおける方法
US8599431B2 (en) Print-data processing apparatus and print-data processing method
JP5066511B2 (ja) 複数のファイルを一つの印刷ジョブとして印刷する方法
JP7171218B2 (ja) 印刷制御装置、制御方法及びプログラム
JP2008310526A (ja) 情報処理装置及び方法
US8842327B2 (en) Print control apparatus, print control method, and storage medium storing computer-executable program
JP2017156970A (ja) 画像形成出力制御装置、画像形成出力制御装置の制御方法、画像形成出力制御装置の制御プログラム
JP4144392B2 (ja) 画像処理装置、画像形成システム、画像形成方法、およびプログラム
JP6455457B2 (ja) 画像形成出力制御装置、画像形成出力制御装置の制御プログラム、画像形成出力制御装置の制御方法、画像処理システム
JP6541389B2 (ja) 印刷装置および印刷ジョブの印刷時間を予測する方法
JP6434775B2 (ja) 画像形成装置およびその制御方法、並びにプログラム
JP2016162241A (ja) 画像処理システム、画像形成出力制御装置、情報処理方法、情報処理プログラム
CN104915159A (zh) 信息处理装置、信息处理***和记录介质
JP6727273B2 (ja) 画像形成装置およびその制御方法、並びにプログラム
US8484558B2 (en) Document generation method and document generation apparatus
JP2008243153A (ja) 印刷支援装置および印刷支援プログラム、並びに印刷支援方法
JP5802706B2 (ja) データ作成装置、方法及びプログラム
JP6397168B2 (ja) 画像処理装置、画像処理装置の制御方法、及びプログラム
US8503008B2 (en) Computer readable medium, printing control apparatus and printing system for outputting second job and first job based on second job attributes
JP3991028B2 (ja) 文書処理方法及び情報処理装置
JP5957979B2 (ja) 画像処理方法、画像処理プログラムおよび画像形成装置
EP2610734B1 (en) Image forming apparatus, image forming method, and computer readable storage medium storing program
JP6217094B2 (ja) 画像形成装置、及びそれを印刷設定するプリンタドライバ、画像形成方法、画像形成プログラム
JP4118834B2 (ja) プリンタ制御プログラム及びプリンタ制御装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181211

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190313

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190911

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190920

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191113

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200424

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200514

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200630

R151 Written notification of patent or utility model registration

Ref document number: 6727273

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151