JP2017030312A - 画像出力装置とその制御方法、及びプログラム - Google Patents

画像出力装置とその制御方法、及びプログラム Download PDF

Info

Publication number
JP2017030312A
JP2017030312A JP2015155393A JP2015155393A JP2017030312A JP 2017030312 A JP2017030312 A JP 2017030312A JP 2015155393 A JP2015155393 A JP 2015155393A JP 2015155393 A JP2015155393 A JP 2015155393A JP 2017030312 A JP2017030312 A JP 2017030312A
Authority
JP
Japan
Prior art keywords
page
job
pdl data
command
deletion target
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
JP2015155393A
Other languages
English (en)
Other versions
JP2017030312A5 (ja
JP6659099B2 (ja
Inventor
清宏 恒川
Kiyohiro Tsunekawa
清宏 恒川
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 JP2015155393A priority Critical patent/JP6659099B2/ja
Priority to US15/219,669 priority patent/US10048903B2/en
Publication of JP2017030312A publication Critical patent/JP2017030312A/ja
Priority to US16/051,832 priority patent/US11269565B2/en
Publication of JP2017030312A5 publication Critical patent/JP2017030312A5/ja
Application granted granted Critical
Publication of JP6659099B2 publication Critical patent/JP6659099B2/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/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • 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/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00281Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a telecommunication apparatus, e.g. a switched network of teleprinters for the distribution of text-based information, a selective call terminal
    • H04N1/00307Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a telecommunication apparatus, e.g. a switched network of teleprinters for the distribution of text-based information, a selective call terminal with a mobile telephone apparatus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Abstract

【課題】PDLの言語仕様が「リソース継承レベルがジョブ」の場合、任意のページを削除するための処理負荷が大きい。
【解決手段】ジョブに基づいて画像を出力する画像出力装置であって、前記ジョブを記憶する記憶手段に記憶された前記ジョブの少なくとも一つの任意のページを削除対象として選択されると、そのページに対応するPDLデータを削除し、そのジョブに含まれるページに対応するPDLデータが、他のページにまたがって有効と判定されると、その選択された削除対象ページに対応するPDLデータのリソース制御コマンドを、後続の削除対象に選択されていないページのPDLデータに含ませる。
【選択図】 図6

Description

本発明は、画像出力装置とその制御方法、及びプログラムに関する。
プリンタや複合機(MFP)等の画像出力装置を用いて印刷する際、印刷物の取り忘れ防止や機密文書の漏洩防止等を目的とし、ユーザが画像出力装置でICカード等によるユーザ認証を行った後に印刷物を出力する認証プリントが普及している。
認証プリントでは、画像出力装置は、ページ記述言語(以下、PDL)で記述された印刷ジョブを受信して内蔵のHDD等に格納しておき、ユーザ認証によって特定されたユーザの印刷ジョブだけを一覧表示したり、印刷設定を変更して印刷させることができる。
一方、近年の画像出力装置に対する更なる操作性の向上を目指した要望に応え、コピー機能やファクシミリ機能において、印刷前に出力結果のサムネイル画像を、画像出力装置の操作画面に表示する機能が出現している。更に、ユーザによって指定された、画像出力装置に記憶されている文書の任意のページを削除できる機能等が出現している。
一方、PDLの言語仕様として、PDLの描画処理の際に参照されるフォントデータやタイルパターン等のPDLリソース(以下、リソース)を、予め画像出力装置内のストレージやメモリに登録できることが知られている。このリソースとしては、複数種類のPDLコマンド(以下、コマンド)群を予めID等で登録して管理し、そのIDに基づいてコマンド群を実行して利用するマクロ制御コマンドや、オーバレイ、画像プロファイルデータ等を扱えるPDLもある。
一般的なPDL言語仕様では、上述のリソースの登録指示がなされた後は、複数の異なるページから、そのリソースを参照することが可能であり、この場合はリソースの継承が印刷ジョブ内で継承されることから「リソース継承レベルがジョブ」であると呼ぶ。一方、登録指示がなされたページ内でのみリソースが有効で、ページ間で継承されない場合は「リソース継承レベルがページ」であると呼ぶ。このような複数のページ間にまたがって継承されるリソースの管理方法に関する技術は、例えば特許文献1に記載されており、それによれば、描画処理後に不要となったリソースをメモリから削除する方法が提案されている。
特開2011−159219号公報
このような認証プリントにおいて、格納されたPDLの印刷ジョブに対しても、ページ単位のサムネイル画像を操作画面に表示するプレビュー機能や、プレビュー結果を参照したユーザの指示に基づいて任意のページを印刷前に削除する機能が望まれている。尚、PDLデータの印刷処理では、コピーやファクシミリとは異なり、PDLで記述されたコマンドを解釈してページの画像データを生成する必要があるため、処理速度はPDLの複雑度に依存する。従って、不要なページを事前に削除することが望ましい。
しかし、PDLの言語仕様が「リソース継承レベルがジョブ」の場合、任意のページを削除するための処理負荷が大きいという課題がある。なぜなら、削除対象のページのリソースの参照先を確認して、そのリソースが他のページで参照されていないことを確認しない限り、削除対象ページのリソースを削除できないためである。
本発明の目的は、上記従来技術の課題を解決することにある。
本発明の特徴は、PDLデータのリソース継承レベルがページにまたがる場合でも、PDLデータによって記述されたジョブに含まれる任意のページを効率良く削除する技術を提供することにある。
上記目的を達成するために本発明の一態様に係る画像出力装置は以下のような構成を備える。即ち、
ジョブに基づいて画像を出力する画像出力装置であって、
前記ジョブを記憶する記憶手段と、
前記記憶手段に記憶された前記ジョブの少なくとも一つの任意のページを削除対象として選択する選択手段と、
前記選択手段によって選択された前記ページに対応するPDLデータを削除する削除手段と、
前記ジョブに含まれるページに対応するPDLデータが、他のページにまたがって有効か否かを判定する判定手段と、
前記判定手段により、他のページ間にまたがって有効と判定された場合、前記選択された削除対象ページに対応するPDLデータのリソース制御コマンドを、後続の削除対象に選択されていないページのPDLデータに含ませるように制御する制御手段と、を有することを特徴とする。
本発明によれば、PDLデータのリソース継承レベルがページにまたがる場合でも、PDLデータによって記述された印刷ジョブに含まれる任意のページを効率良く削除でき、より利便性の高い画像出力装置を提供することができる。
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。尚、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
添付図面は明細書に含まれ、その一部を構成し、本発明の実施形態を示し、その記述と共に本発明の原理を説明するために用いられる。
本発明の実施形態1に係る画像出力装置と、印刷指示を行う端末装置であるPCとを有する印刷システムの構成例を示す図。 実施形態1に係る画像出力装置(MFP)のハードウェア構成を説明するブロック図。 実施形態1に係るMFPのCPUが制御プログラムを実行することにより実現される機能を説明する機能ブロック図。 実施形態1に係るMFPの表示部にプレビュー画面が表示されている状態を示す図。 実施形態1に係る印刷ジョブの構成例を説明する図。 本実施形態1に係る印刷ジョブのPDLデータのコマンド構成例を示す図(A)、PDLデータの印刷例を示す図(B)、及びページ削除を実行した後のPDLデータのコマンド構成例を示す図(C)。 実施形態1に係る画像出力装置(MFP)によるページ削除処理を説明するフローチャート。 実施形態2に係るページ開始コマンドの言語仕様例を示す図(A)、PDLデータの具体例を示す図(B)、削除対象ページに対するページ開始コマンドを一旦ダミー出力する際の例を示す図(C)。 実施形態2に係る画像出力装置(MFP)によるページ削除処理を説明するフローチャート。 実施形態3に係るページ削除処理後のPDLデータの構成例を示す図。 実施形態3に係る画像出力装置(MFP)によるページ削除処理を説明するフローチャート。 本発明の実施形態4に係るPDLデータの構成例を示す図。 実施形態5に係る画像出力装置(MFP)によるページ削除処理を説明するフローチャート。 実施形態5に係る画像出力装置(MFP)による図13のS1307のページ削除処理を説明するフローチャート。
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
図1は、本発明の実施形態1に係る画像出力装置102と、印刷指示を行う端末装置であるPC101とを有する印刷システムの構成例を示す図である。
この印刷システムでは、PC101と画像出力装置102とが、ネットワーク103を介して接続されている。ここで画像出力装置102は表示部105を備え、既知の電子写真技術によって紙媒体(シート)上に画像を印刷する多機能処理装置(MFP)である。尚、この画像出力装置102はMFPに限らず、後述のユーザ認証の機能及び表示部を備えていれば、LBP(レーザビームプリンタ)やインクジェット方式のプリンタであっても良い。また、実施形態1における表示部105はタッチパネル機能を有する表示部であり、印刷環境メニューの操作指示や、印刷設定の変更及び印刷ジョブの削除等の各種指示を受け付けることができる操作部としても機能している。
また画像出力装置102は、画像出力装置102接続されたカードリーダ213(図2)が読み取ったユーザのICカードの情報を基にユーザ認証を行う認証サーバの機能と、PC101から印刷ジョブを受信して記憶する書誌サーバの機能とを有する。そして、認証プリントを実現するために、PC101から受信した印刷ジョブのユーザ情報、文書名やカラーモード等の各種ジョブの属性を書誌情報として管理する。尚、実施形態1では、画像出力装置102が認証サーバ及び書誌サーバの機能も備える構成としたが、これら機能を別々の機器が備える構成であっても良い。
PC101は、アプリケーションからの印刷指示に応じて、プリンタドライバのUIから指定された各種印刷設定を反映したPDLデータを生成し、それにユーザを識別するユーザ情報を付加し、印刷ジョブとして画像出力装置102に送信する。
画像出力装置102は、ICカードを使用してユーザを認証した後、画像出力装置102のHDD等に記憶されている印刷ジョブから、ICカードから得られたユーザ情報に合致する書誌情報の一覧を求め、表示部105に印刷ジョブの一覧を表示する。ここで、この印刷ジョブの一覧に表示される各種情報は、上述の書誌情報から生成される。そして画像出力装置102は、ユーザによる表示部105への操作によって選択された印刷ジョブに対して、印刷設定の変更やプレビュー画像の表示、更には印刷指示、その印刷ジョブ或いは、その印刷ジョブのページ単位での削除等の処理を行うことができる。
尚、図1では、説明を簡単にするために、ネットワーク103にMFP102とPC101だけが接続された構成として説明したが、実際には複数台の端末装置がネットワーク103に接続されている。実施形態1では、一般的なパーソナルコンピュータであるPC101から印刷ジョブを画像出力装置102に送信するものとしたが、本発明はこれに限らず、例えばタブレット端末や携帯電話等の携帯端末から印刷ジョブを送信してもよい。
図2は、実施形態1に係る画像出力装置(MFP)102のハードウェア構成を説明するブロック図である。尚、図2において、図1と同一の構成については同じ参照番号を付して、その説明を省略する。
コントローラ部(制御部)201は、MFP102を統括的に制御し、CPU202、フラッシュッメモリ203、RAM204、制御プログラムや印刷ジョブ等を記憶する外部記憶装置(HDD)211等を有している。ここで、CPU202は、フラッシュメモリ203に格納された制御プログラムの一部であるOSや、HDD211に格納された制御プログラムをRAM204に展開して実行することにより、統括的にMFP102を制御する。HDD211は、外部記憶装置I/F210を経由してコントローラ部201のバスに接続されており、PC101から受信した印刷ジョブ及び、その印刷ジョブに関する書誌情報等を一時的に記憶する。ネットワークI/F208は、ネットワーク103を経由して接続された外部装置との各種データの送受信制御を行う。RAM204は、印刷ジョブの解析等に際して、CPU202がワークエリアとして使用する揮発性メモリである。RAM204の描画メモリ205は、印刷データ解析部304(図3)が印刷ジョブを解析して生成した描画オブジェクトを記憶する。レンダリングバッファ206は、ページ画像生成部305(図3)が描画オブジェクトをレンダリングしてページ画像データを生成する際に使用される。更にRAM204は、OSによってHDD211からロードされた制御プログラムのロード領域や、CPU202の作業領域であるワークメモリ207等を備えている。表示部I/F209は、コントローラ部201に表示部105を接続し、表示部105に表示されるデータをコントローラ部201から表示部105に出力する。また表示部105のタッチパネルを介して入力された情報をコントローラ部201に伝える役割を担っている。
プリンタエンジン215は、ビデオI/F214を経由してコントローラ部201に接続されており、ページ画像生成部305(図3)が生成したページ画像データに基づいて、既知の電子写真技術により用紙上に画像を形成する。また、コントローラ部201にはカードリーダI/F212を介してカードリーダ213が接続されており、CPU202は、ユーザのICカードに記憶されたユーザ情報を非接触で読み取り、そのユーザ情報を基にユーザの認証を行う。
図3は、実施形態1に係るMFP102のCPU202が制御プログラムを実行することにより実現される機能を説明する機能ブロック図である。尚、図3において、前述の図2と同一の構成については同じ参照番号を付して、その説明を省略する。
印刷ジョブ受信部310は、PC101から印刷ジョブを受信すると、印刷ジョブ管理部302に対して、その印刷ジョブを構成するPDLデータの記憶を依頼する。PDLデータ記憶部303は、HDD211の一部のパーテションが記憶領域として割り当てられており、印刷ジョブをPDLデータ321として一時的に記憶する。印刷ジョブ管理部302は、PDLデータ記憶部303にPDLデータを記憶する際、そのPDLデータの解析を印刷データ解析部305に依頼する。これにより印刷データ解析部304は、その印刷ジョブに含まれる書誌情報を調べ、その書誌情報を、HDD211の一部パーテションが記憶領域として割り当てられた領域に書誌情報320として記憶する。
次に、ユーザがPDLデータ記憶部303に記憶されている印刷ジョブをMFP102により印刷するまでの処理について説明する。
認証管理部308は、予め登録されているユーザ情報と、カードリーダ213によって入力されたユーザ情報とを照合してユーザの認証を行う。認証管理部308によるユーザの認証に成功すると、印刷ジョブ管理部302は、そのユーザ情報を含む印刷ジョブの書誌情報320をHDD211から取得し、その書誌情報320に基づいて印刷ジョブの一覧情報を生成する。そして印刷ジョブ管理部302は、その印刷ジョブの一覧情報に基づいて、UI制御部307に対して、表示部105への印刷ジョブの一覧の表示を依頼する。ここで書誌情報320には、印刷ジョブを識別するためのジョブIDなどに加え、印刷データ解析部304の解析処理によって得られた印刷ジョブの総ページ数やページサイズ情報等も含まれる。
UI制御部307は、印刷ジョブの一覧情報を表示部105に表示すると共に、表示部105のタッチパネルを介したユーザの操作を受付ける。この操作には、印刷ジョブの印刷設定の変更や、印刷ジョブの印刷指示、印刷ジョブのプレビュー指示、更には印刷ジョブの削除、或いは、印刷ジョブの任意のページの削除等の指示等が含まれる。UI制御部307は、表示部105を介してユーザが選択した印刷ジョブに対する印刷指示或いはプレビュー指示を受け取ると、印刷ジョブ管理部302に対して、その印刷ジョブの印刷処理或いはプレビュー処理を依頼する。プレビュー指示を受けると印刷ジョブ管理部302は、印刷データ解析部304、ページ画像生成部305にページ画像の生成を依頼し、生成されたプレビュー用のページの画像データを順次受け取る。
印刷指示を受けると印刷ジョブ管理部302は、印刷設定の変更及びページ削除の指示がなされているか否かを調べ、指示が行われている場合は、その指示内容に基づいて、印刷データ加工部309へPDLデータ321の加工を依頼する。印刷データ加工部309は、印刷設定の変更指示やページ削除の指示に応じて、PDLデータ321を加工する。こうして印刷データ加工部309は、その指示内容に応じてPDLデータ321を加工し、その結果としてPDLデータ322を生成する。こうして印刷ジョブ管理部302は、印刷データ解析部304、ページ画像生成部305にページの画像データの生成を依頼し、エンジン制御部306が、その生成されたページ画像データをプリンタエンジン215にビデオ信号として出力して印刷が実行される。この時、印刷ジョブ管理部302は、印刷設定の変更指示やページの削除指示がなければ、受信したPDLデータ321を参照するが、上記指示がなされていると、印刷データ加工部309で加工されたPDLデータ322を参照する。こうして印刷ジョブの印刷設定の変更や、印刷ジョブのページの削除に基づいた印刷処理が可能になる。
図4は、実施形態1に係るMFP102の表示部105にプレビュー画面が表示されている状態を示す図である。尚、この画面は、印刷ジョブの一覧情報を基にUI制御部307により表示された印刷ジョブ一覧画面(不図示)で選択された印刷ジョブに対してプレビュー指示がなされた後に遷移する画面である。
プレビュー表示領域401は、表示部105に設けられたプレビュー画像402を表示する領域である。印刷ジョブの名称403は、その印刷ジョブの書誌情報320から得られたプレビュー対象である印刷ジョブの名称である。図4では、印刷ジョブは「設計書.docx」を印刷するジョブであることが分かる。印刷ジョブの総ページ数405は、その印刷ジョブの書誌情報320より得られた印刷ジョブの総ページ数、ページ番号404は、プレビュー画像402として表示されているプレビュー表示中のページの番号を示す。スクロールボタン406及び407は、プレビュー表示する対象ページを前後のページに移動指示するためのボタンである。ボタン411は、プレビュー画像402の拡大を指示するボタン、ボタン412は、プレビュー画像402の縮小を指示するボタンである。尚、これ以外にも、印刷ジョブのその他の属性を表示しても良い。
画面の下部にはプレビュー画像の印刷を指示するプリントボタン408、プレビュー画像402に表示されているページの削除を指示するページ削除ボタン409、プレビュー表示を終了して前画面に戻るように指示する戻るボタン410が表示されている。
UI制御部307は、ページ削除ボタン409の押下を受け付けると、削除対象であるページ番号、即ちプレビュー画像402に表示されているページの番号404をワークメモリ207に一時的に記憶する。そしてスクロールボタン406或いは407によってプレビュー対象のページが切り替わり、その都度、ページ削除ボタン409が押下された場合は、削除対象のページ番号を追加して記憶する。実施形態1では、ページ番号を要素とする1次元の配列として削除対象のページ番号を記憶するものとし、プリントボタン408或いは戻るボタン410の押下に応じて、UI制御部307がページ番号を昇順にソートするものとする。
ユーザがプリントボタン408を押下すると、UI制御部307は印刷ジョブ管理部302に印刷を指示する。この際、印刷ジョブ管理部302は、削除対象のページ番号を記憶した上記配列が空でなければ、前述のページ削除処理を行う。尚、戻るボタン410が押下されて印刷ジョブの一覧画面へ戻った後、その画面での不図示のプリントボタンの押下をトリガとしても印刷の指示がなされるものとする。
図5は、実施形態1に係る印刷ジョブの構成例を説明する図である。
実施形態1に係る印刷ジョブは、PC101におけるアプリケーションの指示に従ってプリンタドライバが生成するPDLデータ部に、ジョブ制御言語を付加した形式であるとする。図5に示すように、ジョブ制御言語は、ジョブ制御ヘッダ部501とジョブ制御フッタ部503とを含み、これらがPDLデータ部502を取り囲むように記述されている。このジョブ制御言語とPDLデータ部502とが1つの印刷ジョブを構成している。
尚、実施形態1では、ジョブ制御言語は、ヒューレット・パッカード社が開発したPJL(Printer Job Language)に準じた例を示したが、本発明はこれに限らない。
図中の「<ESC>」は、エスケープシーケンス(16進数で「0x1B」)を表しており、所定の文字列との組み合わせによりPJLモードへの移行を指示している。具体的には、印刷データ解析部304は、印刷データ中に「<ESC>%−12345X」(UEL)を見つけると、処理中のPDLデータが存在する場合はPDL解析処理を終了し、PJLモードに移行する。
「@PJL」は、後続の文字列との組み合わせによって、PDLを処理する際の印刷設定や、PDL種別の指定といったジョブ制御のための各種指示を行っている。ここで1つの項目は改行コード「{lf}」(16進数で「0x0A」)によって区切られる。例えば、図中の「@PJL JOB{lf}」は、PJLジョブの開始を宣言しており、「@PJL ENTER LANGUAGE=PDL1{lf}」は、PDL種別として「PDL1」を指定している。しかし、通常はこれに限らず、様々な印刷設定或いは指示が含まれる。「PJL SET JOBATTR=“Owner=A111”{lf}」は、この印刷ジョブのオーナが「A111」であることを示しており、印刷ジョブ管理部302は、この印刷ジョブのオーナ情報を、ユーザ情報として識別する。
最後に、ジョブ制御フッタ部503に含まれる「<ESC>%−12345X」(UEL)によってPDL解析処理を終了し、「@PJL EOJ{lf}」によってPJLジョブの終了を宣言している。
PDLデータ部502の詳細は、図6を参照して後述する。実施形態1では、ジョブ及びページの階層構造を表現するコマンドの他、カラーモードの指定、或いは文字/イメージ/図形などの描画処理を行うための各種コマンドを含んでいる。また各種コマンドは指示内容をパラメータとして記述しており、例えば、ジョブ開始コマンド(図中「BeginJob」)には、PDLの記述単位を示す解像度がパラメータとして記述されている。
次に、印刷データ加工部309が、削除対象のページに相当するPDLデータを削除する際の処理手順、及び削除処理によって加工されたPDLデータの詳細例を図6と、図7のフローチャートを参照して説明する。
図6は、本実施形態1に係る印刷ジョブのPDLデータ321のコマンド構成例(図6(A))、PDLデータの印刷例(図6(B))、及びページ削除を実行した後のPDLデータのコマンド構成例(図6(C))をそれぞれ示す図である。
まず図6(A)において、PDLデータ321のデータ構成は、PDLの言語仕様に基づいて予め定義されたコマンド群615と、各コマンドに付加されて指示内容を規定し、或いは描画データの詳細を示すパラメータ群616とを含む。パラメータ群616には、PDL言語仕様に基づいて、各コマンドに必須の項目や、初期値が決まっていて必要に応じて付加すれば良い項目などが存在する。
実施形態1では、PDLのジョブ開始及び終了を示すコマンド「BeginJob」601と、コマンド「EndJob」614とに挟まれた2ページ分のPDLデータが階層構造を成している。即ち、このジョブ構造には、ページ記述の開始及び終了をそれぞれ示すページ開始コマンド「BebinPage」602,609、及びページ終了コマンド「EndPage」608,613が、それぞれ対となった2つのページ構造が含まれている。そして、これらページ構造内に、各種描画処理に用いるコマンド群が含まれている。
ここで描画処理のためのコマンド群の例として、リソースであるフォントデータをHDD211に登録(ダウンロード)し、印刷するためのコマンド群が示されている。具体的には、ページ1において、フォントを指定するためのIDや共通データであるフォントヘッダをパラメータとする「DownloadFont」603、文字単位のフォントデータを登録する「DownloadChar」604〜606が含まれる。「DownloadChar」は、文字を特定するためのCharID、及びグリフ形状を表現したパターンデータをパラメータとして持つ。そして、CharIDをパラメータとして持つコマンド「DrawChar」607によって、登録された文字パターンが印刷される。以下、このような文字を印刷するためのフォントデータを登録したり削除したりするコマンド群をリソース制御コマンドと呼ぶ。但し、リソース制御コマンドは、DrawCharを含まない。
実施形態1に示したPDLでは、登録されたフォントデータは、コマンドにより明示的な削除指示がなされるか、ジョブ終了コマンドが発行されるまでの間、複数のページにまたがって有効となる(リソース継承レベルがジョブ)。そのため、ページ2で、「DownloadFont」610でフォント登録時と同じフォントID=1を指定し、ページ1と同じFontSetコマンドを発行して、ページ1で登録したフォントを処理対象とする。そして、「DownloadChar」611で、CharID=3の文字を追加登録し、コマンド「DrawChar」612によって、ページ1及び2で登録された文字(CharID=0,3,2)を印刷している。
尚、実際には、文字サイズや印刷方向、或いは印刷色や修飾指定など、様々なパラメータが指定されるのが通常であるが、簡単化のために、ここではその説明を省略する。
ここで示したように、リソース継承レベルがジョブの場合は、リソース制御コマンドによって登録された文字(CharID=0,1,2)は、後続するページ内でも参照して印刷することができる。
図6(B)は、図6(A)に示したPDLデータを用いて印刷された例を示す模式図である。図6(B)では、「第1章」の3文字をページ1に、「第2章」の3文字をページ2にそれぞれ印刷して結果を示しており、「第」、「章」の各文字が、それぞれCharID=0,2に相当しており、それぞれのページでリソースを共有している例を示している。またCharID=1は文字「1」に、CharID=3は文字「2」に対応している。
図6(C)は、ページ1の削除を実行した後のコマンド構成例を示し、ページ1の削除指示に応じて、ページ1に含まれていたリソース制御コマンド603〜606が、ページ2の構成としてコマンド623〜626に含まれている例を示している。そして、ページ1の構造を示す図6(A)のコマンド「BeginPage」602,コマンド「EndPage」608、印刷処理を指示するコマンド「DrawChar」607が削除されていることを示している。
ここでは、ページ1が削除された結果、ページ2のみが残っているため、PDLのジョブ開始及び終了を示すコマンド「BeginJob」620と、コマンド「EndJob」631とで挟まれた1ページ分のPDLデータで構成されている。即ち、このジョブ構造では、ページ記述の開始及び終了をそれぞれ示すコマンド「BebinPage」621とコマンド「EndPage」630が対となった1つのページ構造となっている。そして、このページ構造内に、各種描画処理に用いるコマンド群が含まれている。
「DownloadFont」623でフォント登録時と同じフォントID=1を指定し、ページ1と同じFontSetコマンドを発行して、ページ1で登録したフォントを処理対象とする。そして「DownloadChar」624〜626でページ1の文字を継承し、「DownloadFont」627と「DownloadChar」628で、CharID=3の文字を追加登録している。そしてコマンド「DrawChar」629によって、ページ1及び2で登録された文字(CharID=0,3,2、即ち、「第2章」)を印刷している。
印刷データ解析部304は、図6(C)に示すようなデータ構造に加工されたPDLデータを解析することで、ページ2のみを印刷することになり、ページ1の削除指示が実現される。尚、図6(A)のリソース605(CharID=1)は、ページ1のみで参照されているため、ページ2を構成するコマンド624のPDLデータとして残す必要はない。しかし、このように残しておいても、リソースを参照しているページを特定する必要がないため、PDLデータの加工処理を高速に行うことができる。
図7は、実施形態1に係る画像出力装置(MFP)102によるページ削除処理を説明するフローチャートである。尚、この処理を実行するプログラムはフラッシュメモリ203又はHDD211に記憶されており、実行時、そのプログラムがRAM204に展開されCPU202の制御の下に実行されることにより、このフローチャートで示す処理が達成される。ここでは、CPU202がそのプログラム実行することにより、その機能が達成される図3で説明した各機能部による処理として、このフローチャートによる処理手順を説明する。
まずS701で印刷データ加工部309は、印刷ジョブ管理部302から削除対象ページ番号を格納した配列及び削除対象ページの総数を受け取り、それを削除対象ページ情報としてRAM204に記憶し管理する。ここでは例えば図6に示すようにページ1のPDLデータを加工する場合、ページ番号「1」が格納された1つの要素を持つ配列と、配列の要素数であるページ総数「1」を受け取ることになる。また処理済みページ数を管理するための変数iを「0」に初期化する。この変数iは、RAM204に記憶されている。次にS702に進み印刷データ加工部309は、PDLデータ記憶部303に記憶されたページ削除処理の対象であるPDLデータ321を、ファイルとしてアクセスできるようオープンする。尚、削除処理の対象であるPDLデータは、印刷ジョブ管理部302よって、MFP102の内部で管理する際のファイルパス名として特定される。
そしてS703以降の処理により、PDLデータ321に含まれる各ページに対して、削除対象ページ情報を参照しながら、ページ構造の削除処理を行う。S703で印刷データ加工部309は、PDLデータを解析し、BeginPageコマンドを検知するまでの全コマンドをそのまま出力する。そしてS704で印刷データ加工部309は、削除対象ページ情報の配列内に処理中ページ(i+1)が存在するか、即ち、削除対象のページのBeginPageコマンドを見つけたかどうかを判定し、見つけたと判定するとS705に進む。S705で印刷データ加工部309は、削除対象ページとして読み飛ばし処理を行う。即ち、そのページのEndPageコマンドを見つけるまで(S706の判定がYesとなるまで)、リソース制御コマンドをPDLデータ記憶部303の作業用ファイルに一旦退避し、それ以外のコマンドを読み飛ばす。例えば、図6の例では、ページ1のリソース制御コマンド603〜606を退避し、ページ1のそれ以外のコマンドを読み飛ばす。そしてS706でEndPageコマンドを検知するとS707に進み、印刷データ加工部309は処理済みページ数を示す変数iをインクリメントし、1ページ分の処理を終えてS708に進む。S708で印刷データ加工部309は、次のコマンドがEndJobコマンドかどうかを判定し、そうでない場合は後続ページを処理するためにS703へ戻る。
一方、S704で印刷データ加工部309が、検知したBeginPageコマンドが削除対象ページのものではないと判定した場合はS711に進み、印刷データ加工部309は、BeginPageコマンドを出力してS712に進む。S712で印刷データ加工部309は、退避済みのリソース制御コマンドが存在する場合は続けて退避コマンドを出力する。即ち、図6(C)に示すように、削除対象ページでないページ2では、退避しているリソース制御コマンド603〜606があるため、それらをリソース制御コマンド623〜626として出力する。こうして作業用ファイルのファイルサイズが「0」になると、退避コマンドがなくなったものと判定する。この処理をS714でEndPageコマンドを検出するまで実行し、EndPageコマンドを検知するとS715に進む。S715で印刷データ加工部309は、PageEndコマンドを出力し、処理済みページ数をカウントしている変数iをインクリメントしてS708に進む。
S708で印刷データ加工部309は、EndJobコマンドを検知したかどうか、即ち、ジョブの終了を検知したかどうかを判定し、ジョブの終了を検知したときはS709に進み、そうでないときはS703に進む。S709で印刷データ加工部309は、EndJobコマンドを出力してS710に進み、リソース制御コマンドの退避に使用した作業用ファイルを削除して、この処理を終了する。
このとき印刷ジョブ管理部302は、上述の処理によって出力されたPDLデータ322を、ページ削除処理済みのPDLデータとして書誌情報320に加えて管理する。
尚、リソース制御コマンドを大量に含むPDLデータを処理する際、PDLデータ記憶部303の空き容量次第では作業用ファイルに退避できない可能性があり、そのような場合はエラー処理を行う必要がある。このエラー処理は、ここでは詳細な説明は省略するが、PDLデータの加工処理を中断し、表示部105にエラーメッセージを表示して、処理を終了するのが一般的である。
以上説明したように実施形態1によれば、上述した処理を行うことにより、ページ間にまたがって有効なリソースが存在するPDLデータの場合も、効率的に任意のページを削除できる。そして、PDLの言語仕様が「リソース継承レベルがジョブ」の場合であっても、そのページを削除することによる、その削除ページのリソースを参照している他のページへの影響をなくすことができる。
[実施形態2]
上述の実施形態1では、削除対象ページに含まれるリソース制御コマンドを一旦作業用ファイルに退避(スプール)し、後続ページの処理の開始直後に、その退避していたコマンドを、その後続ページに挿入していた。しかし、PDLの言語仕様によっては、作業用ファイルに退避せずにページ削除を行うこともできる。即ち、ページ開始コマンドのパラメータが固定長であるか、最大サイズを特定可能なPDLの場合は、削除対象ページに記述されたリソース制御コマンドをスプールすることなく、任意のページを削除したPDLデータを出力することができる。
そこで実施形態2では、削除対象ページのページ開始コマンド(BeginPage)をダミーとして一旦出力することで、削除対象ページのリソース制御コマンドを出力する。その後、削除対象でない後続ページのページ開始コマンドのパラメータを、削除対象ページのページ開始コマンドに上書きする。以下、図8及び図9を参照して実施形態2の詳細を説明する。尚、実施形態2に係る印刷システム、画像出力装置102及びPC101の構成は、前述の実施形態1と同様であるため、その説明を省略する。
図8(A)は、実施形態2に係るページ開始コマンド(BeginPage)807の言語仕様例を示す図、図8(B)は、PDLデータの具体例を示している。そして、図8(C)は、削除対象ページに対するページ開始コマンドを一旦ダミー出力する際の例を示している。
図8(A)において、バイト表現801は、コマンド或いはパラメータのバイト表現を示し、それぞれ予め言語仕様に基づいて1バイトの数値が割当てられている。実施形態2では、<0x02>(16進数)がBeginPageコマンドを示し、<0xe7>が、BeginPageに付随する「画像領域サイズ」のパラメータである。このBebinPageコマンド807は、808で示すように、5種類のパラメータを取り得る。
パラメータ例802は、パラメータとして指定される値の例を示し、パラメータの値の型や個数は、予め言語仕様によってパラメータの種類毎に決められている。例えば、「画像領域サイズ」のパラメータには、ページ領域のサイズ表す2つの数値が(1/印刷解像度)inchの単位で記述されており、最大4バイトの値をとる。これはサイズ805で示されている。
意味803は、各パラメータの意味を説明している。ここでは「画像領域サイズ」「画像の向き」「オリエンテーション」「原点」「カラーモード」が含まれている。任意/必須804は、各パラメータが必須であるか否かを示しており、ここではオリエンテーション<0xd2>、原点<0xd3>、カラーモード<0xd4>のパラメータは任意であり、指定しない場合は、初期値806に示した値が初期値として認識される。サイズ805は、各パラメータのサイズ(バイト数)を示しており、画像領域サイズと原点が最大4バイトで、その他のパラメータは1バイトである。初期値806は、オリエンテーション、原点、カラーモードに設定されており、それぞれ方向0(縦長)、原点(0,0)、0(白黒)に設定されている。
図8(B)は、図8(A)の言語仕様に基づいて2ページ分のBeginPageコマンドを指定した例を示す。
ページ1のBeginPageコマンド809、ページ2のBeginPageコマンド811に、ページ1のパラメータ810、ページ2のパラメータ812がそれぞれ付帯している。ここでページ1では、原点とカラーモードの2つのパラメータが省略されており、画像領域サイズはA4、画像の向きが0°、オリエンテーションは縦長となっている。またページ2のパラメータは、画像領域サイズはA3、画像の向きが90°、オリエンテーションは横長、原点(0x78,0x78)、カラーモード(カラー)となっている。
図8(C)は、図8(B)に示したページ開始コマンドの構成を持つPDLデータのページ1を削除する際に、印刷データ加工部309が一時的にダミーとして出力するページ開始コマンドの例を示している。ここで、ページ1のBeginPageコマンド809で指定されたパラメータ810は、814で示すように、PDLデータ322内で、そのままの値で出力されている。一方、ページ1で省略されていた原点とカラーモードの2つのパラメータは、初期値をセットして、815で示すように出力する。この時、データのサイズが値によって可変的に指定可能なパラメータ(例えば原点)は、ページ2の値を上書きする際にBeginPageコマンド内のみを書き変えれば済むように、最大のデータサイズへ型変換した上で出力する。例えば、パラメータ「原点」は、加工前のPDLデータでは各座標(x、y)の値が1バイト(計2バイト)で記述されているが、言語仕様上取りうる値は最大2バイトであるため、(0x0000、0x0000)のように計4バイトで出力している。
上述のように、削除対象ページのBeginPageコマンドを一時的にダミーとして出力し、削除対象ページのBeginPageコマンドを、後続の削除対象でないページのBeginPageコマンドで上書きする。これにより、削除対象ページに含まれていたリソース制御コマンドを退避する必要がなくなる。この時、上書きされる削除対象でない後続ページのパラメータは、型が可変サイズとなるものは最大サイズに変換して上書きされる。
図9は、実施形態2に係る画像出力装置(MFP)102によるページ削除処理を説明するフローチャートである。尚、この処理を実行するプログラムはフラッシュメモリ203又はHDD211に記憶されており、実行時、そのプログラムがRAM204に展開されCPU202の制御の下に実行されることにより、このフローチャートで示す処理が達成される。ここでは、CPU202がそのプログラム実行することにより、その機能が達成される図3で説明した各機能部による処理として、このフローチャートによる処理手順を説明する。
尚、図9において、S901〜S904,S907〜909,S910〜S912,S915〜S917の処理は、図7のS701〜S704、S705〜S707,S708〜S710,S713〜S715と同一の処理であるため、それらの説明を省略する。
実施形態2では、印刷データ加工部309は、S904で削除対象ページのBeginPageコマンドを検知したかどうかを判定し、削除対象ページのBeginPageコマンドを検知するとS905に進む。S905で印刷データ加工部309は、変数iの処理済みページ数と書誌情報とを比較して、削除対象ページが印刷ジョブの最終ページか否かを判定する。ここで、印刷ジョブの総ページ数は、印刷データ解析部304の解析処理によって予め書誌情報320に含まれているものとするが、PDLデータを生成するプリンタドライバが予め印刷ジョブ属性に含ませておいても良い。
S905で、削除対象ページが印刷ジョブの最終ページであると判定した場合はS913に進み、EndPageコマンドを見つけるまで全てのコマンド(EndPageを含む)を読み飛ばし、EndJobコマンドまでの後続コマンドがあれば出力する。ここで最終ページのEndPage以降に発行されるコマンドとしては、各種リセットコマンド等が該当する。この場合、後続コマンドはEndJobであるため、続くS910では必ずジョブの終了と判定される。
一方、S905で削除対象ページが印刷ジョブ内の最終ページでないと判定すると印刷データ加工部309は、まず削除対象ページのBeginPageコマンドを、図8(C)に示したようにパラメータサイズを補完しつつダミーとして出力する。次に、前述の実施形態1と同様に、S907〜S909で、EndPageまでの削除対象ページに含まれるリソース制御コマンドのみを出力する。この時、印刷データ加工部309は、そのダミー出力したコマンドを、後続ページのBeginPageコマンドで上書きするために、ダミー出力したコマンドのPDLデータ先頭からのバイト位置をワークメモリに記憶しておく。
またS904で、削除対象でないページのBeginPageを検知した場合はS914に進み、出力済みのダミーのBeginPageコマンド部分を、処理中ページのパラメータで上書きして出力する。
以上説明したように実施形態2によれば、削除対象であるページ構造に含まれるリソース制御コマンドを退避することなく、任意のページのPDLデータを削除することができる。このため、PDLデータ記憶部303の作業領域を圧迫することなくページ削除処理を実現できる。
[実施形態3]
前述の実施形態1,2に示した印刷データ加工部309は、削除対象ページのページ構造を削除、或いは後続ページに上書きすることで任意ページの削除処理を実現していた。しかし本発明はこれに限らず、ページ構造を残したままで、印刷時に白紙を出力しないよう制御することでも実現できる。
既存の画像出力装置では、印刷データ解析部304が備える機能として、描画処理に直接寄与するコマンドがページに1つも含まれない場合、そのページを白紙と解釈する機能がある。そして、操作パネルを介したユーザの設定に応じて、白紙と判定したページの出力を制御する白紙節約機能を備えているものがある。
実施形態3では、この白紙節約機能を利用して、削除対象ページに含まれるリソース制御コマンドをスプールすることなく、また実施形態2のように、ページ開始コマンドをダミー出力することもなく、任意ページの削除処理を実現する。
実施形態3に係る印刷データ加工部309は、削除対象ページのページ開始コマンド及びリソース制御コマンド、ページ終了コマンドを発行順番の通りに出力するが、そのページ構造には、描画処理に直接寄与するコマンドは含まれていない。そのため、白紙節約機能によって、加工されたPDLデータ内の削除対象ページは印刷されることなく削除される。尚、操作パネルを介したユーザの設定により白紙節約設定が無効になっている場合は、削除対象ページに対して一時的に白紙節約設定を有効とするためのコマンドを挿入し、削除対象ページの最後で白紙節約を無効に戻すコマンドを挿入する必要がある。以下、図10の模式図及び図11のフローチャートを参照して実施形態3の詳細を説明する。尚、実施形態3に係る印刷システム、画像出力装置102及びPC101の構成は、前述の実施形態1と同様であるため、その説明を省略する。
図10は、実施形態3に係るページ削除処理後のPDLデータの構成例を示す図で、削除対象であるページ1の構成を示している。尚、受信したPDLデータ321は、実施形態1の図6(A)と同一であり、1001〜1002は図6(A)の601〜602に、1004〜1007は図6(A)の603〜606に、1009は図6(A)の608にそれぞれ対応している。
実施形態3では、印刷データ解析部304が備える白紙節約機能を一時的に有効とするために、削除対象ページの最初にSetWhitePageSaveコマンド1003をパラメータ「ON」で挿入する。そして、そのページ1のページ構造の最後にパラメータ「OFF」のSetWhitePageSaveコマンド1008を挿入する。こうして、白紙節約機能によって、加工されたPDLデータ内の削除対象ページは印刷されることなく削除することができる。尚、図11のフローチャートで後述する通り、白紙節約設定が予め有効となっている場合は、白紙節約を制御するためのコマンド1003,1008を挿入する必要はない。
図11は、実施形態3に係る画像出力装置(MFP)102によるページ削除処理を説明するフローチャートである。尚、この処理を実行するプログラムはフラッシュメモリ203又はHDD211に記憶されており、実行時、そのプログラムがRAM204に展開されCPU202の制御の下に実行されることにより、このフローチャートで示す処理が達成される。ここでは、CPU202がそのプログラム実行することにより、その機能が達成される図3で説明した各機能部による処理として、このフローチャートによる処理手順を説明する。
図11のS1101〜S1104,S1115,S1116〜S1117,S1107〜1108,S1112〜S1114は、実施形態1の図7のS701〜S704,S711,S713〜S714,S705〜S706,S708〜S710とそれぞれ同じであるため、それらの説明は省略する。
実施形態3に係る印刷データ加工部309は、S1104にて削除対象ページのBeginPageコマンド1002を検知するとS1105に進み、ユーザにより白紙節約設定がオフかどうか判定する。そして、設定が無効(オフ)の場合はS1106に進み、白紙節約をONに変更するコマンド1003を出力する。その後、前述の実施形態1と同様に、S1107,S1108で削除対象ページ内のリソース制御コマンドのみを出力する。そしてS1108でEndPageコマンド1009を検知するとS1109に進み、白紙節約設定がオフかどうかを調べる。ここで白紙節約設定が無効(オフ)と判定するとS1110に進み、S1106でオンにセットした白紙節約をオフに戻すためのコマンドを出力する。また前述の実施形態1との違いとして、実施形態3では、削除対象ページのページ構造を残したままとするため、S1111にてEndPageコマンドを出力した後、処理済みページ数を示す変数iの値をインクリメントする。
以上説明したように実施形態3によれば、削除対象ページに含まれるBeginPageコマンド及びリソース制御コマンドを削除せずに、そのページの印刷だけを省略できる。これにより、実施形態1の図7のS712のように、削除対象ページに含まれるコマンドを退避させる必要もなく、また実施形態2の図9のS914のように、削除対象でないページのコマンドで上書きする必要もない。
[実施形態4]
上述の実施形態1〜3では、リソース制御コマンドがBeginPage〜EndPageコマンドで囲まれたページ構造内で発行される言語仕様の場合について説明したが、本発明はこれに限らず、ページ構造の外部で発行される場合にも適用可能である。尚、実施形態4に係る印刷システム、画像出力装置102及びPC101の構成は、前述の実施形態1と同様であるため、その説明を省略する。
図12は、本発明の実施形態4に係るPDLデータの構成例を示す図である。尚、図12において、前述の実施形態1の図6(A)と共通する部分は同じ記号で示し、それらの説明を省略する。
ページ1のBeginPage1206よりも先のコマンド1215、及びページ1のEndPage1208とページ2のBeginPage1211の間のコマンド1216で、リソース登録や削除等のリソース制御コマンドを発行できることを示している。
このような言語仕様のPDLを処理対象とする場合、印刷データ加工部309は、ページ構造の外部で発行されたリソース制御コマンド1215,1216をそのまま出力すれば良い。このため、処理手順は実施形態1の図7に示したフローチャートと同じ処理で良い。なぜなら、ページ構造の外部で発行されたコマンド群は、S703で示した処理によって出力されるためである。
[実施形態5]
前述の実施形態1〜4では、図4のプレビュー画面上に表示されたプリントボタン408の押下に応じて印刷ジョブ管理部302が印刷データ加工部309を呼び出し、PDLデータを加工し削除対象ページを予め除外していた。このように構成することで、印刷データ解析部304の解析処理に先だって、PDLデータから不要なページ構造を削除することができる。
一方、PDLの言語仕様によっては、フォントデータやタイルパターン等のリソース以外に、描画ステータスをページ間でまたがって引き継げる種類のPDLも存在する。描画ステータスの一例としては、描画処理に用いるペン色やペンの太さ、ROP(raster operation processing)演算、文字サイズをはじめとするフォント選択パラメータなど、様々な項目がある。尚、以下の説明では、描画ステータスがページ間にまたがる場合を「描画ステータスの継承レベルがジョブである」と記し、ページの切り替わりによって描画ステータスが初期値に設定される場合を「描画ステータスの継承レベルがページである」と記す。
上述のような言語仕様のPDLについても、削除対象ページに含まれる描画ステータスに影響するコマンドを出力することにより、任意ページの削除を実現できるが、PDLの言語仕様に応じて処理方法を切り換えるよう構成することもできる。実施形態5では、リソース及び描画ステータスの継承レベルに応じて、ページ削除方法として以下の3種類の処理を切り換えるものとする。
(A)リソースの継承レベル、及び描画ステータスの継承レベルが共にページ
<方法A>
印刷データ加工部309によって、削除対象ページのページ開始コマンドからページ終了コマンドまでの全コマンドを読み飛ばす。この場合、リソース継承レベルはページであるため、削除対象ページに含まれるリソース制御コマンドは、ページ間の参照状況を考慮することなく読み飛ばすことができる。
(B)リソースの継承レベルがジョブで、描画ステータスの継承レベルがページ
<方法B>
前述の実施形態1〜4で説明したいずれかの方法を適用した印刷データ加工部309によって、削除対象ページのコマンドを読み飛ばす。
(C)リソースの継承レベルが任意、描画ステータスの継承レベルがジョブ
<方法C>
印刷データ加工部309は、ジョブ制御ヘッダ部に、削除対象ページ情報を付加して処理を終了する。そして、印刷処理時に、ジョブ制御ヘッダ部を解析した印刷データ解析部304は、エンジン制御部306に対して、削除対象ページ情報を伝える。エンジン制御部306は、削除対象ページ情報の通知を受け取ると、削除対象ページに相当するPDLデータが削除されていないと判断する。そして、その削除対象ページ情報から特定される削除対象ページの画像データをプリンタエンジン215へ出力することなく読み捨てる。
尚、リソースの継承レベル、及び描画ステータスの継承レベルの判定は、PDL言語の種別によって静的に判定する方法、或いは継承レベルを指定するコマンドを解析して動的に判定する方法のいずれかで行う。継承レベルを指定するコマンドとしては、例えばジョブ開始を定義するBeginJobコマンドを用い、そのコマンドのパラメータで継承レベルを指定できる。また、PDL言語の種別による判定と継承レベルを指定するコマンドによる判定とを組み合わせることで、継承レベルを判定するように構成しても良い。
図13は、実施形態5に係る画像出力装置(MFP)102によるページ削除処理を説明するフローチャートである。尚、この処理を実行するプログラムはフラッシュメモリ203又はHDD211に記憶されており、実行時、そのプログラムがRAM204に展開されCPU202の制御の下に実行されることにより、このフローチャートで示す処理が達成される。ここでは、CPU202がそのプログラム実行することにより、その機能が達成される図3で説明した各機能部による処理として、このフローチャートによる処理手順を説明する。尚、実施形態5に係る印刷システム、画像出力装置102及びPC101の構成は、前述の実施形態1と同様であるため、その説明を省略する。
図13において、S1301〜S1302は、実施形態1のS701〜S702の各処理内容と同じであるため、説明は省略する。
続くS1303で印刷データ加工部309は、図5に示したジョブ制御ヘッダ部501、或いはジョブ開始コマンドのパラメータを読み出し、継承レベルの種別を判定する。実施形態5では、「@PJL ENTER LANGUAGE=」に続く文字列から、PDL種別が「PDL1」であると判定し、PDL種別毎に予め決められた継承レベルであると判定する。次にS1304に進み印刷データ加工部309は、PDL種別の判定結果を基に、リソース及び描画ステータスの継承レベルが、上述のAに該当するかを判定する。ここで継承レベルがAの場合はS1305に進み、上述の方法Aによって削除対象ページに含まれる全てのコマンドを削除する。一方、S1304で継承レベルがAでないと判定したときはS1306に進み、継承レベルが上述のBかどうか判定する。継承レベルがBと判定するとS1307に進み、方法Bによってページ削除処理を行う。更に、S1306で継承レベルがBでないと判定したときは、上述のCであると判定してS1308に進み、上述の方法Cによってページ削除処理を行う。即ち、S1308では、印刷データ加工部309は、削除対象ページ情報をPDLデータに付加してPDLデータ322として出力して、処理を終了する。
図14は、実施形態5に係る画像出力装置(MFP)102による図13のS1307のページ削除処理を説明するフローチャートである。尚、この処理を実行するプログラムはフラッシュメモリ203又はHDD211に記憶されており、実行時、そのプログラムがRAM204に展開されCPU202の制御の下に実行されることにより、このフローチャートで示す処理が達成される。ここでS1401〜S1405の各ステップは、印刷データ解析部304及びページ画像生成部305が実行するステップであり、S1406〜S1410はエンジン制御部306が実行するステップである。
まずS1401で印刷データ解析部304は、印刷データ加工部309が出力したPDLデータ322を参照して削除対象ページ情報を取得し、S1406以降でエンジン制御部306が参照するために、エンジン制御部306に対して通知する。次のS1402〜S1405の各ステップは、ページ削除を行わない通常の印刷処理と同様で良い。まずS1403で印刷データ解析部304はPDLデータを解析し、S1404で、その解析結果に基づいてページ画像生成部305がページ画像データを生成してHDD211に格納する。そして、このページ画像データの生成処理を、S1405でジョブ終了コマンドが検知されるまで繰り返して、PDLデータに含まれる全てのページ画像データを生成する。
こうしてページ画像データを生成すると、エンジン制御部306はS1406以降のループ処理において、HDD211に格納されたページ画像データを順次読み出し、削除対象ページでないページ画像データのみをプリンタエンジン215に出力して印刷する。そのためにエンジン制御部306はS1406で、まず印刷データ解析部304から受け取った削除対象ページ情報を参照して、削除対象ページを特定する。そしてS1407以降のループ処理において、HDD211に格納済みのページ画像データを先頭ページから順次読み出し、S1408で削除対象ページかどうか判定する。ここで読み出したページ画像データが削除対象ページであると判定するとS1409に進み、その画像データをプリンタエンジン215へ出力することなく読み捨てる。一方、削除対象ページでないと判定した場合はS1411に進み、通常通り、その画像データをプリンタエンジン215へ出力して印刷する。こうして、ページ画像データの読み捨て、或いは印刷処理を印刷ジョブ内の最終ページまで繰り返すことで、削除対象ページのみを印刷しないようにして印刷を行うことができる。
尚、実施形態5では、説明を簡単にするため、ページ画像データの生成までと、ページ画像データの出力処理をシーケンシャルに実行するように説明した。しかし、PDLデータの解析とページ画像データの生成と、生成済みのページ画像データの印刷を並行して実行しても良い。
以上説明したように実施形態5によれば、PDLのリソース及び描画ステータスの継承レベルに応じて、最適な方法で、任意ページの削除に対応した印刷処理を実現できる。
尚、全てのPDL種別に対してページ画像データを読み飛ばす方法Cを適用することでも、任意ページの削除を実現することもできる。但し、この場合は、削除対象ページについてもPDLデータの解析及びページ画像データの生成処理を行うため、予めPDLデータを加工して実現する方法A及び方法Bに比べると処理効率が低下する。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は上記実施形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
101…PC,102…画像出力装置(MFP),202…CPU,211…HDD,215…プリンタエンジン、302…印刷ジョブ管理部、303…PDLデータ記憶部、309…印刷データ加工部

Claims (9)

  1. ジョブに基づいて画像を出力する画像出力装置であって、
    前記ジョブを記憶する記憶手段と、
    前記記憶手段に記憶された前記ジョブの少なくとも一つの任意のページを削除対象として選択する選択手段と、
    前記選択手段によって選択された前記ページに対応するPDLデータを削除する削除手段と、
    前記ジョブに含まれるページに対応するPDLデータが、他のページにまたがって有効か否かを判定する判定手段と、
    前記判定手段により、他のページ間にまたがって有効と判定された場合、前記選択された削除対象ページに対応するPDLデータのリソース制御コマンドを、後続の削除対象に選択されていないページのPDLデータに含ませるように制御する制御手段と、
    を有することを特徴とする画像出力装置。
  2. 前記制御手段は、前記削除対象ページに含まれるリソース制御コマンドを記憶し、前記後続の削除対象に選択されていないページに含まれるPDLデータの出力に先だって、記憶した前記リソース制御コマンドを出力することを特徴とする請求項1に記載の画像出力装置。
  3. 前記制御手段は、前記削除対象ページのPDLコマンドを出力し、前記後続の削除対象に選択されていないページの開始コマンドで、前記削除対象ページのPDLコマンドを上書きすることを特徴とする請求項1に記載の画像出力装置。
  4. ジョブに基づいて画像を出力する画像出力装置であって、
    前記ジョブを記憶する記憶手段と、
    前記記憶手段に記憶された前記ジョブの少なくとも一つの任意のページを削除対象として選択する選択手段と、
    前記ジョブに含まれるページに対応するPDLデータが、他のページにまたがって有効か否かを判定する判定手段と、
    前記判定手段により、他のページ間にまたがって有効と判定された場合、前記選択された削除対象ページに対応するPDLデータに白紙を示すコマンドを挿入することにより、当該削除対象ページを白紙として処理するように制御する制御手段と、
    を有することを特徴とする画像出力装置。
  5. ジョブに基づいて画像を出力する画像出力装置であって、
    前記ジョブを記憶する記憶手段と、
    前記記憶手段に記憶された前記ジョブの少なくとも一つの任意のページを削除対象として選択する選択手段と、
    前記ジョブに含まれるページに対応するPDLデータが、他のページにまたがって有効か否かを判定する判定手段と、
    前記選択手段によって選択された前記ページに対応するPDLデータを削除する削除手段と、
    前記判定手段により、他のページ間にまたがって有効と判定された場合、前記選択された削除対象ページに対応するPDLデータのリソース制御コマンドが、前記削除対象ページに対応するPDLデータに含まれていない場合、前記削除対象ページに対応するPDLデータを削除するように制御する制御手段と、
    を有することを特徴とする画像出力装置。
  6. 前記制御手段の制御の下に前記削除対象ページに対応するPDLデータが削除された前記ジョブに基づいて画像を出力する出力手段を更に有することを特徴とする請求項1乃至5のいずれか1項に記載の画像出力装置。
  7. ジョブに基づいて画像を出力する画像出力装置であって、
    前記ジョブを記憶する記憶手段と、
    前記記憶手段に記憶された前記ジョブの少なくとも一つの任意のページを削除対象として選択する選択手段と、
    前記選択手段によって選択された前記ページに対応するPDLデータを削除する削除手段と、
    前記ジョブに含まれるページに対応するPDLデータに含まれるリソース制御コマンドが、他のページにまたがって有効か否かを判定する第1判定手段と、
    前記ジョブに含まれるページに対応するPDLデータに含まれる描画ステータスが、他のページにまたがって有効か否かを判定する第2判定手段と、
    前記第1判定手段により前記PDLデータに含まれるリソース制御コマンドが、他のページにまたがって有効であると判定され、前記第2判定手段により前記PDLデータに含まれる描画ステータスが、他のページにまたがって有効でない判定されると、前記ジョブに含まれるPDLデータを解析して前記削除対象のページを含む全てのページ画像を生成し、前記削除対象ページのページ画像を読み捨てるように制御する制御手段と、
    を有することを特徴とする画像出力装置。
  8. ジョブを記憶する記憶部を有し、ジョブに基づいて画像を出力する画像出力装置を制御する制御方法であって、
    選択手段が、前記記憶部に記憶された前記ジョブの少なくとも一つの任意のページを削除対象としてユーザに選択させる選択工程と、
    削除手段が、前記選択工程で選択された前記ページに対応するPDLデータを削除する削除工程と、
    判定手段が、前記ジョブに含まれるページに対応するPDLデータが、他のページにまたがって有効か否かを判定する判定工程と、
    制御手段が、前記判定工程で、他のページ間にまたがって有効と判定された場合、前記選択された削除対象ページに対応するPDLデータのリソース制御コマンドを、後続の削除対象に選択されていないページのPDLデータに含ませるように制御する制御工程と、
    を有することを特徴とする画像出力装置の制御方法。
  9. コンピュータを、請求項1乃至7のいずれか1項に記載の画像出力装置の各手段として機能させるためのプログラム。
JP2015155393A 2015-08-05 2015-08-05 印刷装置とその制御方法、及びプログラム Active JP6659099B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2015155393A JP6659099B2 (ja) 2015-08-05 2015-08-05 印刷装置とその制御方法、及びプログラム
US15/219,669 US10048903B2 (en) 2015-08-05 2016-07-26 Image forming apparatus, method of controlling the same, and storage medium
US16/051,832 US11269565B2 (en) 2015-08-05 2018-08-01 Image forming apparatus that edits page description language based on a delete instruction, and a related control method and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015155393A JP6659099B2 (ja) 2015-08-05 2015-08-05 印刷装置とその制御方法、及びプログラム

Publications (3)

Publication Number Publication Date
JP2017030312A true JP2017030312A (ja) 2017-02-09
JP2017030312A5 JP2017030312A5 (ja) 2018-09-06
JP6659099B2 JP6659099B2 (ja) 2020-03-04

Family

ID=57986954

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015155393A Active JP6659099B2 (ja) 2015-08-05 2015-08-05 印刷装置とその制御方法、及びプログラム

Country Status (2)

Country Link
US (2) US10048903B2 (ja)
JP (1) JP6659099B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10437527B2 (en) * 2017-04-02 2019-10-08 Kyocera Document Solutions Inc. System and method for pre-generation of page description language (PDL) for printing
JP7043254B2 (ja) * 2017-12-28 2022-03-29 キヤノン株式会社 画像処理装置および、画像処理装置の制御方法、プログラム

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6583890B1 (en) * 1998-06-30 2003-06-24 International Business Machines Corporation Method and apparatus for improving page description language (PDL) efficiency by recognition and removal of redundant constructs
JP2006123319A (ja) * 2004-10-28 2006-05-18 Ricoh Co Ltd 印刷装置、印刷システム、及び印刷方法
US20090300479A1 (en) * 2008-05-27 2009-12-03 Fujifilm Corporation Data converting apparatus and data converting program
US20120293832A1 (en) * 2011-05-20 2012-11-22 Canon Kabushiki Kaisha Print data processing apparatus and print data processing method
JP2013134739A (ja) * 2011-12-27 2013-07-08 Konica Minolta Business Technologies Inc 印刷制御装置、印刷制御プログラム
JP2013140436A (ja) * 2011-12-28 2013-07-18 Canon Inc 入力表示装置、その制御方法、及びプログラム
JP2013162422A (ja) * 2012-02-07 2013-08-19 Canon Inc 画像形成装置、その制御方法、及びプログラム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7253919B2 (en) * 2000-11-30 2007-08-07 Ricoh Co., Ltd. Printer with embedded retrieval and publishing interface
US7319532B2 (en) * 2001-06-28 2008-01-15 Canon Kabushiki Kaisha Printing control apparatus and printing control method capable of accurately printing embedded font
JP4393076B2 (ja) 2002-02-20 2010-01-06 キヤノン株式会社 画像処理方法及びその装置
US20040105123A1 (en) * 2002-12-02 2004-06-03 Fritz Terry M. Systems and methods for accessing information corresponding to print jobs
JP2005227865A (ja) * 2004-02-10 2005-08-25 Fuji Xerox Co Ltd 印刷制御装置、方法およびプログラム
JP2006180044A (ja) 2004-12-21 2006-07-06 Canon Inc 画像処理装置
JP2007025969A (ja) 2005-07-14 2007-02-01 Canon Inc Dlc編集におけるメタデータの利用の処理及び装置ならびに記憶媒体
JP4902413B2 (ja) * 2007-04-19 2012-03-21 キヤノン株式会社 印刷データ処理装置、印刷データ処理方法及びプログラム
JP2010005790A (ja) * 2008-06-24 2010-01-14 Konica Minolta Business Technologies Inc 画像形成システム
JP2010214725A (ja) 2009-03-16 2010-09-30 Canon Inc 印刷装置及び印刷システムと、印刷装置の制御方法
JP5424778B2 (ja) * 2009-08-21 2014-02-26 キヤノン株式会社 印刷データ処理装置、印刷データ処理方法、プログラム
JP4957816B2 (ja) 2010-02-03 2012-06-20 ブラザー工業株式会社 Pdlデータ処理装置とpdlデータ処理プログラム
JP5929374B2 (ja) * 2012-03-19 2016-06-08 ブラザー工業株式会社 プログラムおよび情報処理装置
JP6051722B2 (ja) * 2012-09-20 2016-12-27 ブラザー工業株式会社 プログラムおよび情報処理装置
JP2014092928A (ja) 2012-11-02 2014-05-19 Canon Inc 情報処理装置、情報処理方法及びプログラム
JP6084862B2 (ja) * 2013-02-28 2017-02-22 理想科学工業株式会社 後処理装置
JP6264004B2 (ja) * 2013-12-09 2018-01-24 株式会社リコー 情報処理装置、設定方法及び設定プログラム
JP6451052B2 (ja) * 2014-01-09 2019-01-16 富士ゼロックス株式会社 画像処理装置及びプログラム
JP6379794B2 (ja) * 2014-07-24 2018-08-29 株式会社リコー 画像処理装置、画像処理方法および画像処理システム
JP5729516B1 (ja) * 2014-09-22 2015-06-03 富士ゼロックス株式会社 画像形成装置及びプログラム
JP6454213B2 (ja) 2015-04-09 2019-01-16 キヤノン株式会社 画像出力システム、画像処理装置、画像出力装置、これらにおける方法及びプログラム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6583890B1 (en) * 1998-06-30 2003-06-24 International Business Machines Corporation Method and apparatus for improving page description language (PDL) efficiency by recognition and removal of redundant constructs
JP2006123319A (ja) * 2004-10-28 2006-05-18 Ricoh Co Ltd 印刷装置、印刷システム、及び印刷方法
US20090300479A1 (en) * 2008-05-27 2009-12-03 Fujifilm Corporation Data converting apparatus and data converting program
JP2009288884A (ja) * 2008-05-27 2009-12-10 Fujifilm Corp データ変換装置およびデータ変換プログラム
US20120293832A1 (en) * 2011-05-20 2012-11-22 Canon Kabushiki Kaisha Print data processing apparatus and print data processing method
JP2012240344A (ja) * 2011-05-20 2012-12-10 Canon Inc 印刷データ処理装置、印刷データ処理方法及びプログラム
JP2013134739A (ja) * 2011-12-27 2013-07-08 Konica Minolta Business Technologies Inc 印刷制御装置、印刷制御プログラム
JP2013140436A (ja) * 2011-12-28 2013-07-18 Canon Inc 入力表示装置、その制御方法、及びプログラム
JP2013162422A (ja) * 2012-02-07 2013-08-19 Canon Inc 画像形成装置、その制御方法、及びプログラム

Also Published As

Publication number Publication date
US20170039013A1 (en) 2017-02-09
US11269565B2 (en) 2022-03-08
JP6659099B2 (ja) 2020-03-04
US20190034133A1 (en) 2019-01-31
US10048903B2 (en) 2018-08-14

Similar Documents

Publication Publication Date Title
US8300238B2 (en) Print control device and method
JP6454213B2 (ja) 画像出力システム、画像処理装置、画像出力装置、これらにおける方法及びプログラム
US20200174723A1 (en) Print system, printing apparatus, method of controlling the printing apparatus, and storage medium that generate print data to be printed using rendered print data
JP7395656B2 (ja) 画像形成装置、制御方法、および、プログラム
US11789599B2 (en) Information processing device and non-transitory computer readable medium
US11269565B2 (en) Image forming apparatus that edits page description language based on a delete instruction, and a related control method and storage medium
US20150002873A1 (en) Image forming apparatus, method for controlling the same, and storage medium
US7973956B2 (en) High speed printing method and apparatus
KR20180068301A (ko) 화상 처리 장치, 및 페이지 화상 데이터 및 오브젝트 정보를 사용하여 시트에 화상을 형성하는 방법
US10423374B2 (en) Image forming apparatus and method for controlling image forming apparatus for reducing print processing time
US9253343B2 (en) Information processing apparatus, control method, and storage medium for providing a preview and/or display of a main display document generated from all parts of a print document
JP6786408B2 (ja) 画像形成装置、画像形成装置の制御方法、及びプログラム
JP2016215624A (ja) 画像形成装置、情報処理方法及びプログラム
JP2018206311A (ja) 印刷システム、サーバ及びその制御方法とプログラム
JP2009095006A (ja) 画像形成装置、方法、プログラム
JP2019086987A (ja) 画像形成装置、その制御方法、及びプログラム
JP2018198377A (ja) 画像形成装置
JP2018036755A (ja) 制御方法、プログラム及び情報処理装置
US10534567B2 (en) Image forming apparatus and method for controlling image forming apparatus
JP2015225535A (ja) 情報処理装置、及びこれを用いる認証プリントシステム
US9430446B2 (en) Information processing apparatus, method and storage medium including a function for establishing exceptions applied to print settings when specified conditions are met
JP2019093559A (ja) 画像形成装置及びその制御方法、並びにプログラム
JP2015069414A (ja) プログラムおよび情報処理装置
JP2022157949A (ja) 印刷装置
JP2015090667A (ja) 印刷制御装置、印刷制御装置のデータ処理方法、及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180727

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180727

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190711

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200204

R151 Written notification of patent or utility model registration

Ref document number: 6659099

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151