JP6344047B2 - 出力制御装置、出力制御プログラム、出力制御方法、及び記録媒体 - Google Patents

出力制御装置、出力制御プログラム、出力制御方法、及び記録媒体 Download PDF

Info

Publication number
JP6344047B2
JP6344047B2 JP2014100858A JP2014100858A JP6344047B2 JP 6344047 B2 JP6344047 B2 JP 6344047B2 JP 2014100858 A JP2014100858 A JP 2014100858A JP 2014100858 A JP2014100858 A JP 2014100858A JP 6344047 B2 JP6344047 B2 JP 6344047B2
Authority
JP
Japan
Prior art keywords
output
print
information
job
data
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
JP2014100858A
Other languages
English (en)
Other versions
JP2015015017A (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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2014100858A priority Critical patent/JP6344047B2/ja
Priority to US14/291,437 priority patent/US9176691B2/en
Publication of JP2015015017A publication Critical patent/JP2015015017A/ja
Application granted granted Critical
Publication of JP6344047B2 publication Critical patent/JP6344047B2/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/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/126Job scheduling, e.g. queuing, determine appropriate device
    • G06F3/1262Job scheduling, e.g. queuing, determine appropriate device by grouping or ganging jobs
    • 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
    • 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/1267Job repository, e.g. non-scheduled jobs, delay printing
    • 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
    • G06F3/1276Print workflow management, e.g. defining or changing a workflow, cross publishing within a printer driver, e.g. driver resides either on a server or on a client
    • 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/1512Print-to a presentation device other than a printer, e.g. e-reader, e-paper, tablet

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)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本願は、出力制御装置、出力制御プログラム、出力制御方法、及び記録媒体に関する。
文書編集ソフトや表計算ソフト等により作成されたファイルに対し、ファイルの種類ごとにアプリケーションを切り替え、印刷や電子化を行うシステムが知られている。このようなシステムでは、アプリケーションを立ち上げて「プリンタに印刷」や「PDF(Portable Document Format)ファイルで電子化」等の指示を行うことで、各ファイルを指示した形態で出力する。
例えば、ファイル(データ)を印刷する場合には、対象のファイルから所定のプリンタドライバで印刷データを作成し、作成した印刷データをTCP/IPポートモニタを介してプリンタに送信する。また、ファイルを電子化する場合には、PDFドライバ等の電子化ドライバで作成した電子化データを、ローカルポートモニタ(Local Port Monitor)を介してフォルダ等に出力する流れとなる。
なお、従来では、他の印刷ジョブ(出力要求)を1つのジョブとして結合して印刷するシステムが知られている(例えば、特許文献1参照)。
しかしながら、上述した特許文献1に示すような従来の方法では、1つのジョブ(出力要求)を所定の形式で電子化する際に、アプリケーションによって1つのジョブが複数のジョブから構成されていると判断されてしまう場合がある。この場合、ローカルポートモニタを介してフォルダ等に保存すると、ジョブが順次上書きされてしまい、結果的に最終ジョブのファイル(出力情報)のみしか電子化されない。したがって、ユーザが電子化されたファイルを開いても、最終ジョブのみ表示されることになり、ユーザが期待する1つのジョブ全体を確認することができない。
1つの側面では、本発明は、アプリケーションにより分割された複数の出力情報を結合することを目的とする。
一態様において、出力指示に基づき、一の出力対象情報を複数の同じ識別情報を有する出力情報として出力を要求するアプリケーションに対し、前記一の出力対象情報の出力を指示した後に、前記一の出力対象情報の終了を示す終了情報の出力を指示する出力指示手段と、前記アプリケーションから出力される出力情報を、該出力情報が有する識別情報をそれぞれ異なる識別情報に変更して所定の保持領域に記憶する記憶制御手段と、前記出力指示手段から前記終了情報の出力が指示されたか否か判断する判断手段と、前記判断手段により前記終了情報の出力が指示されたと判断された場合に、前記所定の保持領域に記憶された前記出力情報を結合する結合手段とを有する。
アプリケーションにより分割された複数の出力情報を結合することが可能となる。
複数のジョブに分かれて電子化されるファイルを説明するための図である。 出力制御システムの概略構成の一例を示す図である。 第1実施形態に係る出力制御装置の機能構成の一例を示す図である。 出力制御装置のハードウェア構成の一例を示す図である。 第1実施形態に係る出力制御処理の一例を示すシーケンスである。 データ結合処理の一例を示すフローチャートである。 1つのジョブとして結合されるファイルの一例を示す図である。 第2実施形態に係る出力制御装置の機能構成の一例を示す図である。 第2実施形態に係る出力制御処理の一例を示すシーケンスである。 第3実施形態に係る出力制御装置の機能構成の一例を示す図である。 第3実施形態に係る出力制御処理の一例を示すシーケンスである。 第4実施形態に係る出力制御装置の機能構成の一例を示す図である。 第4実施形態に係る出力制御処理の一例を示すシーケンスである。
以下、開示の技術に係る実施の形態について詳細に説明する。
<複数のジョブに分かれて電子化されるファイル例>
本実施形態を説明する前に、1つのジョブ(一の出力対象情報)が複数のジョブに分かれて電子化されるファイル(出力情報)の具体例について図を用いて説明する。図1は、複数のジョブに分かれて電子化されるファイルを説明するための図である。
図1(A)の例では、4ページ(Page)で構成されるWord(登録商標)ファイルを示している。Wordは、印刷時に1つのジョブが複数のジョブに分かれないアプリケーションの一例である。図1(A)に示すWordファイルに対して、アプリケーションを使用して印刷指示を行うと、各ページにより構成される1つのジョブの印刷データとして電子化ドライバに出力される。
また、図1(B)の例では、4シート(Sheet)で構成されるExcel(登録商標)ファイルを示している。Excelは、印刷時に1つのジョブが複数のジョブに分かれるアプリケーションの一例である。図1(B)に示すExcelファイルに対して、アプリケーションを使用して印刷指示を行うと、1つのジョブ(一の出力対象情報)が複数のジョブに分割され、複数のジョブに分割された印刷データ(出力情報)が電子化ドライバに出力される。
なお、複数のジョブに分割される理由としては、例えば各シートの印刷品質(解像度)の違いや、各シートに対する色(カラー/モノクロ)の設定の違い等があるが、これには限定されない。
図1(B)の例では、1ジョブ目が1シートと2シートとにより構成され、2ジョブ目が3シートと4シートとにより構成された複数のジョブに分割されている。このように、1つのジョブが複数のジョブに分割されると、電子化ドライバは、2ジョブ分の印刷データを、1ジョブ目、2ジョブ目とジョブごとに、例えばローカルポートモニタに送信する。
ここで、ローカルポートモニタは、出力するポートを設定することが可能である。例えば、ユーザが、1つのジョブ(一の出力対象情報)を識別する識別情報を"test.pdf"のように設定すると、ローカルポートモニタを介して、例えばPDFファイルで出力される印刷データの1ジョブ目は"test.pdf"として出力される。同様に、2ジョブ目もローカルポートモニタを介して同じ識別情報を有する"test.pdf"として出力される。そのため、従来では、2ジョブ目の出力により、1ジョブ目の"test.pdf"が上書されてしまう。
その結果、図1(C)に示すように、最終ジョブの印刷データ(出力情報)のみが電子化データとして残り、ユーザがこの電子化されたファイルを開いても、3シート目と4シート目のジョブしか表示されない。
したがって、本実施形態では、ファイルの種類に対応するアプリケーションにより、1つのジョブが同じ識別情報を有する複数のジョブに分割されて電子化される場合に、ユーザが1つのジョブの出力ファイル全体を確認できるように構成する。
<出力制御システムの概略構成>
図2は、出力制御システムの概略構成の一例を示す図である。図2に示すように、出力制御システム10は、出力制御装置の一例としてのPC(Personal Computer)20と、出力装置の一例としてのプリンタ30とを有するように構成される。
PC20と、プリンタ30とは、例えばLAN(Local Area Network)等のネットワークNにより接続されているがこれには限定されず、データ通信可能であれば良い。また、図2に示す各装置を構成する数もこれには限定されない。
PC20は、プリンタ30を制御するためのプリンタドライバや、ファイルを電子化する電子化ドライバ等がインストールされている。PC20は、プリンタ30に実行させる各処理に関する設定情報を取得すると、取得した設定情報を用いて、プリンタ30に対する各処理を実行する。
プリンタ30は、例えばプリンタ30−1〜30−2を有し、入力された画像データ(印刷データ)を出力する。プリンタ30は、例えばプリンタ機能、ファクシミリ機能、スキャナ機能を有する複合機として利用可能なMFP(Multi Function Perripheral)等であるが、これに限定されるものではない。
図2の例では、PC20は、文書編集ソフトや表計算ソフト等により作成された出力ファイルを管理する管理アプリケーションにより、出力ファイルの種類に応じてアプリケーションを切り替えて、プリンタ30で印刷したり、電子化ドライバで電子化したりする。
PC20は、出力ファイルを電子化する場合に、例えば管理アプリケーションから得られる出力ファイルの終了通知に基づき、出力ファイルの種類に対応したアプリケーションにより1つのジョブが1又は複数に分割されたジョブを結合する。これにより、ユーザが電子化したファイルを開いたときに、1つのジョブ全体を表示し、その全体を確認することが可能となる。
<第1実施形態:PC20−1の機能構成>
図3は、第1実施形態に係る出力制御装置の機能構成の一例を示す図である。図3に示すように、PC20−1は、出力指示手段の一例としての管理アプリケーション21と、アプリケーション22と、OS(Operating System)23と、電子化ドライバ24−1と、ローカルポートモニタ25−1とを有するように構成される。
管理アプリケーション21は、アプリケーション22に対し、一の出力対象情報(1つのジョブ)の出力を指示した後に、一の出力対象情報の終了を示すための終了情報の出力を指示する。管理アプリケーション21は、例えば印刷指示手段40と、終了通知用印刷ジョブ指示手段41とを有するように構成される。
印刷指示手段40は、所定の領域に保持されている電子化する対象の出力ファイルを開くため、アプリケーション22を起動し、電子化ドライバ24−1を選択し、出力するときの印刷設定を指示し、印刷を指示する。
終了通知用印刷ジョブ指示手段41は、印刷指示手段40による印刷指示後、所定の領域に保持されている終了情報の一例としての終了通知用ファイル(例えば、"end.xls")を開き、電子化ドライバ24−1を指定し、印刷を指示する。
ここで、終了通知用ファイルは、例えば出力ファイルの種類ごとに用意され、例えば出力ファイルの印刷終了(1つのジョブの終了)を通知する特定の合図として用いられるが、これには限定されない。
アプリケーション22は、Word等の文書編集ソフトや、Excel等の表計算ソフト等の出力ファイルの種類に対応したアプリケーションである。アプリケーション22は、複数のシートから構成される一の出力対象情報(1つのジョブ)を、例えば複数の同じ識別情報を持つ出力情報(複数のジョブに分割された印刷データ)として出力を要求する。アプリケーション22は、OS23を介して、管理アプリケーション21により指示された電子化ドライバ24−1、及び指定された印刷設定に基づき印刷を行う。
電子化ドライバ24−1は、アプリケーション22により指定された設定内容に基づき、所定の形式で印刷データを電子化して、ローカルポートモニタ25−1に出力する。電子化ドライバ24−1は、PDFドライバの他、XPS(XML Paper Specification)、TIFF(Tagged Image File Format)、JPEG(Joint Photographic Experts Group)等のドライバを用いることが可能である。
ローカルポートモニタ25−1は、記憶制御手段の一例としての印刷データ保持手段42−1と、判断手段の一例としての終了通知用印刷ジョブ確認手段43−1と、結合手段の一例としての印刷データ結合手段44−1と、印刷データ出力手段45とを有するように構成される。
印刷データ保持手段42−1は、アプリケーション22から出力される出力情報を、出力情報が有する識別情報をそれぞれ異なる識別情報に変更して、所定の保持領域に記憶させる。印刷データ保持手段42−1は、例えば電子化ドライバ24−1から得られた印刷データを一旦出力し、終了通知用印刷ジョブ確認手段43−1の指示に応じて、印刷データ保持領域26−1に保持する。
印刷データ保持手段42−1は、例えば複数のジョブに分割された印刷データ(出力情報)のジョブ名(例えば、文書名やファイル名)(識別情報)に、それぞれ異なる識別情報として、予め設定された手法(例えば、印刷データの入力順等)で番号を付加する。また、印刷データ保持手段42−1は、例えば複数のジョブに分割された印刷データを、印刷データ保持領域26−1に保持する。
なお、上述したファイル保持する所定の領域や、印刷データ保持領域26−1等は、例えばPC20−1内のHDD(Hard Disk Drive)やメモリ等の記憶手段における所定の記憶領域である。
終了通知用印刷ジョブ確認手段43−1は、管理アプリケーション21から終了情報の出力が指示されたか否か判断する。終了通知用印刷ジョブ確認手段43−1は、例えば、終了通知用印刷ジョブ指示手段41から、予め設定された出力ファイルの印刷終了(1つのジョブの終了)を示す特定の通知(合図)を受け付けたか確認する。
具体的には、終了通知用印刷ジョブ確認手段43−1は、電子化ドライバ24−1から得られる印刷データのジョブ名を確認する。終了通知用印刷ジョブ確認手段43−1は、例えば印刷データのジョブ名が、終了通知(終了合図)用のジョブ名(例えば、"end.xls")と判断すると、印刷データ結合手段44−1に対して、印刷データ保持領域26−1で保持されている印刷データを結合するように指示する。
印刷データ結合手段44−1は、終了通知用印刷ジョブ確認手段43−1の指示に応じて、印刷データ保持領域26−1に保持されている印刷データを取得し、取得した印刷データを結合し、印刷データ出力手段45に結合された印刷データを出力するよう指示する。
印刷データ出力手段45は、印刷データ結合手段44−1により結合された印刷データを、予め指定されているポートへ出力する。印刷データ出力手段45は、予め指定されているポートとして、例えば「C:¥Users¥Public¥BoundJob.pdf」に印刷データを出力することができるが、これに限定されるものではない。
ここで、管理アプリケーション21から1つのファイル(4sheet.xls)を、例えば"BoundJob.pdf"として電子化(出力)するよう指示した場合に、アプリケーション22が2つのジョブに分割して印刷を指示した例について説明する。
管理アプリケーション21は、印刷指示手段40により、「4sheet.xls」のファイルを開いて、電子化ドライバ24−1を選択し、印刷設定を行って、アプリケーション22に対して印刷を指示する(図3に示す(1))。
アプリケーション22は、OS23を介して電子化ドライバ24−1に対して1ジョブ目の印刷を指示する(図3に示す(2))。電子化ドライバ24−1は、指示された印刷設定に基づき印刷データを作成し、ローカルポートモニタ25−1に出力する(図3に示す(3))。
ローカルポートモニタ25−1は、終了通知用印刷ジョブ確認手段43−1により、印刷データのジョブ名が、例えば終了通知用の"end.xls"であるか否か判断する。終了通知用印刷ジョブ確認手段43−1は、印刷データのジョブ名が、"end.xls"ではないと判断すると、印刷データ保持手段42−1に印刷データを保持しておくように指示する(図3に示す(4))。
印刷データ保持手段42−1は、終了通知用印刷ジョブ確認手段43から得た印刷データのジョブ名に、例えば「4sheet_X.prn」(Xは連番となるような数字)のように番号を付加して、印刷データ保持領域26−1に保持させる(図3に示す(5))。
ここで、1ジョブ目の印刷データは、例えば「4sheet_1.prn」として保持される。なお、アプリケーション22から得られる2ジョブ目の印刷データも、1ジョブ目と同様の処理により、例えば「4sheet_2.prn」として、印刷データ保持領域26−1に保持される。
管理アプリケーション21は、印刷指示手段40による印刷指示後、終了通知用印刷ジョブ指示手段41により、例えば終了通知用ファイル"end.xls"を開き、電子化ドライバ24−1を選択し、アプリケーション22に対して印刷を指示する(図3に示す(6))。
アプリケーション22は、OS23を介して電子化ドライバ24−1に対して印刷を指示すると(図3に示す(7))、電子化ドライバ24−1が印刷データを作成し、ローカルポートモニタ25−1に出力する(図3に示す(8))。
ローカルポートモニタ25−1は、終了通知用印刷ジョブ確認手段43−1により、印刷データのジョブ名が、終了通知用のジョブ名(例えば、"end.xls")と判断すると、印刷データ結合手段44−1に印刷データを結合するよう指示する(図3に示す(9))。
印刷データ結合手段44−1は、印刷データ保持領域26−1に保持されているファイル(例えば4sheet_1.prn、4sheet_2.prn)を適切な順序で、例えば"BoundJob.pdf"として結合し、印刷データ出力手段45に結合したファイルを出力する(図3に示す(10))。
上述したように、管理アプリケーション21からの出力指示に基づく1つのジョブ(出力要求)が、アプリケーション22により複数のジョブに分割された場合でも、複数のジョブに対応して分割された出力ファイルを1つのジョブとして結合することが可能となる。また、電子化ドライバ24−1よりも後の工程で、印刷データ(出力情報)を結合するため、例えばRAWスプール形式、EMF(Enhanced MetaFile)スプール形式のいずれにおいても対応することが可能である。
なお、スプールデータとは、例えばWindows(登録商標)環境において、アプリケーションからプリンタにデータを送信する際、一旦蓄積又は経由するスプーラに送られるデータを示す。また、RAW形式とは、例えばプリンタに処理を依存する形式を示し、EMF形式とは、Windows GDI(Graphic Device Interface)の描画コマンドを使用して描画された中間データ形式を示す。
<ハードウェア構成>
次に、上述した本実施形態に係る出力制御装置等のハードウェア構成例について図を用いて説明する。図4は、出力制御装置のハードウェア構成の一例を示す図である。なお、図4の例では、上述した図2に対応するPC20のハードウェア構成例を示すが、プリンタ30においても同様の構成を用いることが可能である。
図4に示すように、PC20は、CPU(Central Processing Unit)50と、RAM(Random Access Memory)51と、ROM(Read Only Memory)52と、HDD53と、I/F部54と、ドライブ装置55と、LCD(Liquid Crystal Display)56と、操作部57と、記録媒体58とを有するように構成される。
CPU50と、RAM51と、ROM52と、HDD53と、I/F部54と、ドライブ装置55とは、バス59を介して接続されている。また、I/F部54に、LCD56と、操作部57とが接続されている。なお、プリンタ30の場合には、画像形成出力やスキャン等を実行するエンジンを有する。
CPU50は、演算手段であり、例えばPC20全体の動作を制御する。CPU50は、上述した図3に示すPC20−1に係る各アプリケーション、ドライバ及びローカルポートモニタ等における処理の実行を制御する。
RAM51は、情報の高速な読み書きが可能な揮発性の記憶媒体である。RAM51は、CPU50が情報を処理する際の作業領域として用いられる。
ROM52は、読み出し可能な不揮発性の記憶媒体である。ROM52には、ファームウェア等のプログラムが格納されている。HDD53は、情報の読み書きが可能な不揮発性の記憶媒体である。HDD53には、OSや各種の制御プログラム、アプリケーションプログラム等が格納される。
I/F部54は、各種ハードウェアやネットワーク等と接続する。LCD56は、例えば、本実施形態における各処理(例えば電子化処理等)を実行するための各画面を表示する表示部である。操作部57は、例えばキーボード、マウス、各種ハードボタン、タッチパネル等であり、ユーザから入力される情報を受け付けるためのユーザインターフェースである。
本実施形態に係る出力制御プログラムは、CD−ROM等の記録媒体58によって提供される。記録媒体58は、ドライブ装置55にセットされ、記録媒体58に含まれる出力制御プログラムは、記録媒体58からドライブ装置55を介してインストールされる。
なお、プログラムを記録した記録媒体58は、CD−ROM、フレキシブルディスク、光磁気ディスク(MO)等のように情報を光学的、電気的或いは時期的に記録する記録媒体、又はフレッシュメモリ等のように情報を電気的に記録する半導体メモリ等、様々なタイプの記録媒体を用いることが可能である。
上述したハードウェア構成において、ROM52やHDD53、光学ディスク等の記憶媒体に格納されたプログラムがRAM51に読み出され、CPU50が読み出されたプログラムにより演算を行うことにより、例えば図3に示すPC20−1の各部の処理を実現するソフトウェア制御部が構成される。このようにして構成されたソフトウェア制御部と、ハードウェアとの組合せにより、本実施形態に係るシステムを構成する各装置の機能を実現することが可能となる。
<第1実施形態:出力制御処理のシーケンス>
上述した各構成における時間的な処理の流れを、シーケンスを用いて説明する。図5は、第1実施形態に係る出力制御処理のシーケンスの一例を示す図である。図5に示すシーケンスは、管理アプリケーション21と、アプリケーション22と、電子化ドライバ24−1と、ローカルポートモニタ25−1とにより実行される。
図5において、管理アプリケーション21は、印刷指示手段40によりアプリケーション22に、1つの出力ファイル(例えば4sheet.xls)に対する印刷を指示する(S10)。
アプリケーション22は、印刷指示手段40により印刷が指示された出力ファイルを取得すると、1ジョブ目として電子化ドライバ24−1に印刷を指示する(S11)。電子化ドライバ24−1は、指示された印刷設定に基づき印刷データを作成し(S12)、ローカルポートモニタ25−1に出力する(S13)。
ローカルポートモニタ25−1は、終了通知用印刷ジョブ確認手段43−1により、電子化ドライバ24−1から得た印刷データのジョブ名が、終了通知用のジョブ名(例えば、"end.xls")であるか否か判断する(S14)。
ローカルポートモニタ25−1は、印刷データのジョブ名が、終了通知用の"end.xls"ではないと判断すると、印刷データ保持手段42−1により、印刷データ保持領域26−1に印刷データ(4sheet_1.prn)を保持させる(S15)。
次に、アプリケーション22は、2ジョブ目として電子化ドライバ24−1に印刷を指示する(S16)。電子化ドライバ24−1は、指示された印刷設定に基づき印刷データを作成し(S17)、ローカルポートモニタ25−1に出力する(S18)。
ローカルポートモニタ25−1は、終了通知用印刷ジョブ確認手段43−1により、電子化ドライバ24−1から得た印刷データのジョブ名が、終了通知用のジョブ名"end.xls"であるか否か判断する(S19)。ローカルポートモニタ25−1は、印刷データのジョブ名が、例えば終了通知用の"end.xls"ではないと判断すると、印刷データ保持手段42−1により、印刷データ保持領域26−1に印刷データ(4sheet_2.prn)を保持させる(S20)。
次に、管理アプリケーション21は、印刷指示手段40による印刷指示後、終了通知用印刷ジョブ指示手段41により、終了通知用ファイルを開き、アプリケーション22に印刷を指示する(S21)。
アプリケーション22は、終了通知用印刷ジョブ指示手段41により印刷が指示された終了通知用ファイルを取得すると、電子化ドライバ24−1に印刷を指示する(S22)。電子化ドライバ24−1は、印刷データを作成し(S23)、ローカルポートモニタ25−1に出力する(S24)。
ローカルポートモニタ25−1は、終了通知用印刷ジョブ確認手段43−1により、印刷データのジョブ名が、例えば終了通知用のジョブ名"end.xls"か判断する(S25)。ローカルポートモニタ25−1は、印刷データのジョブ名が、終了通知用の"end.xls"であると判断すると、印刷データ結合手段44−1により、印刷データ保持領域26−1に保持されているファイルを、例えば番号順に結合する(S26)。
次に、ローカルポートモニタ25−1は、印刷データ出力手段45により、S26の処理で結合されたファイルを出力する(S27)。
上述したように、アプリケーションにより1つのジョブが複数のジョブに分割されたとしても、終了が通知されるまでファイルを保持しておき、終了の通知により保持しているファイルを結合して出力する。これにより、ユーザが電子化されたファイルを開くと、1つのジョブ全体が表示されることとなる。
<データ結合処理>
次に、上述した図5に示すS25〜S26の処理に対応するデータ結合処理について説明する。図6は、データ結合処理の一例を示すフローチャートである。図6に示す処理では、電子化ドライバ24−1が指示された印刷設定に基づき印刷データを作成し、ローカルポートモニタ25−1に出力すると、終了通知用印刷ジョブ確認手段43−1により、電子化ドライバ24−1から得られた印刷データのジョブ名を確認する(S30)。
終了通知用印刷ジョブ確認手段43−1は、印刷データのジョブ名が、終了通知用のジョブ名(例えば、"end.xls")であるか否か判断する(S31)。終了通知用印刷ジョブ確認手段43−1は、印刷データのジョブ名が終了通知用のジョブ名"end.xls"ではないと判断すると(S31において、NO)、印刷データ保持手段42−1により印刷データのジョブ名に連番となるような番号を付加し、印刷データ保持領域26−1に移動させる(S32)。
また、終了通知用印刷ジョブ確認手段43−1は、印刷データのジョブ名が終了通知用のジョブ名"end.xls"であると判断すると(S31において、YES)、印刷データ結合手段44−1により印刷データ保持領域26−1に保持されているファイル(印刷データ)を、例えばPDF等の形式で結合する(S33)。次に、印刷データ出力手段45は、S33の処理で結合されたファイルを、予め指定されているポートへ出力し(S34)、処理を終了する。
なお、印刷時に1つのジョブが複数のジョブに分かれる場合には、上述したS32の処理の後、次のジョブの印刷データが、電子化ドライバ24−1からローカルポートモニタ25−1に出力されるため、S30の処理から繰り返される。
<結合されるファイルの一例>
図7は、1つのジョブとして結合されるファイルの一例を示す図である。図7(A)は、従来の最終ジョブの印刷データのみが表示された例を示し、図7(B)は、本実施形態における結合されたファイルの印刷データが表示された例を示す。
図7(A)の例では、1つのジョブが複数のジョブに分割され、前のジョブが次のジョブに上書きされてしまったため、最終ジョブの印刷データのみが表示されている。これに対し、図7(B)の例では、複数のジョブに分割された印刷データが1つのジョブとして結合され、1ページ目(1〜2シートの集約)と2ページ目(3〜4シートの集約)により構成される1つのジョブ(test.pdfファイル)の全体が表示されている。
上述したように、1つのジョブが複数のジョブに分割された場合でも、複数のジョブに対応して分割された印刷データが結合され、1つのジョブ全体が表示されることにより、ユーザが期待する1つのジョブ全体を確認することが可能となる。
<第2実施形態:PC20−2の機能構成>
図8は、第2実施形態に係る出力制御装置の機能構成の一例を示す図である。図8に示す出力制御装置の一例としてのPC20−2は、第1実施形態に係るPC20−1と比較すると、仮想ドライバ(プリンタドライバ)60と、プリントプロセッサ61−1と、EMFデータ保持領域62と、ディスパッチャ63とを有している点で異なる。
PC20−2は、プリントプロセッサ61−1が、記憶制御手段の一例としてのEMFデータ退避手段64−1を有している。また、PC20−2は、ディスパッチャ63が、判断手段の一例としての終了通知用印刷ジョブ確認手段43−2と、結合手段の一例としてのEMFデータ出力手段65−1を有している。
第2実施形態では、上述した構成を有することにより、複数のジョブに分割された1つのジョブを適切に結合することが可能となる。また、PDL(Page Description Language)に依存しないEMFデータを用いてジョブを結合するため、PDLに対応するための実装が必要なくなる。以下、異なる点を中心に説明する。なお、同一の構成については同一の符号を付して、ここでの具体的な説明は省略する。
図8の例において、仮想ドライバ60は、アプリケーション22により指定された印刷設定に基づき、所定のファイル形式で印刷データを作成する。仮想ドライバ60は、例えばPDLに依存しないEMF形式の印刷データ(EMFデータ)を作成する。なお、仮想ドライバ60は、必要な場合に用いられる。
プリントプロセッサ61−1は、EMFデータ退避手段64−1を有するように構成される。EMFデータ退避手段64−1は、アプリケーション22からOS23を介して1又は複数のジョブに分割されたEMFデータを取得する。
EMFデータ退避手段64−1は、取得したEMFデータのジョブ名(例えば、文書名やファイル名)に、予め設定された手法(例えば、EMFデータの入力順等)で番号を付加して、EMFデータ保持領域62に退避させる。なお、上述したEMFデータ保持領域62は、例えばPC20−2内のHDDやメモリ等の記憶手段における所定の記憶領域である。
ディスパッチャ63は、終了通知用印刷ジョブ確認手段43−2と、EMFデータ出力手段65−1とを有するように構成される。終了通知用印刷ジョブ確認手段43−2は、EMFデータ保持領域62に保持されているEMFデータのジョブ名を確認し、例えば終了通知用のジョブ名(例えば、"end.xls")か判断する。
EMFデータ出力手段65−1は、終了通知用印刷ジョブ確認手段43−2からの指示に応じて、EMFデータ保持領域62に保持されているEMFデータの出力指示を、1つのジョブ内でOS23に対して行う。これにより、例えばEMFデータ保持領域62に保持されている1つのジョブに対応したEMFデータを結合することが可能となる。
EMFデータ出力手段65−1は、例えばWindowsのAPI(Application Programming Interface)であるGetEnhMetaFile()関数等を使用して、EMFデータのファイルハンドルをOS23から取得する。また、EMFデータ出力手段65−1は、取得したファイルハンドルに基づき、EMFデータ保持領域62から取得したEMFデータについて、例えばPlayEnhMetaFile()関数等を使用して出力指示等を行う。
ローカルポートモニタ25−2は、印刷データ出力手段45を有するように構成される。印刷データ出力手段45は、電子化ドライバ24−1から得られた印刷データを、予め指定されているポート、例えば「C:¥Users¥Public¥BoundJob.pdf」に出力することができるが、これに限定されるものではない。
ここで、第1実施形態と同様に、管理アプリケーション21から1つのファイル(4sheet.xls)を、例えば"BoundJob.pdf"として電子化するよう指示された場合に、アプリケーション22が2つのジョブに分割して印刷を指示した例について説明する。
管理アプリケーション21は、印刷指示手段40により、「4sheet.xls」のファイルを開いて、電子化ドライバ24−1を選択し、印刷設定を行って、アプリケーション22に対して印刷を指示する(図8に示す(1))。
アプリケーション22は、OS23を介してプリントプロセッサ61−1に1ジョブ目の印刷を指示する(図8に示す(2)、(3))。プリントプロセッサ61−1は、EMFデータ退避手段64−1により、EMFデータのジョブ名に、例えば「emf_data_X.EMF」(Xは連番となるような数字)のように番号を付加して、EMFデータ保持領域62に退避させる(図8に示す(4))。1ジョブ目のEMFデータは、例えば「emf_data_1.EMF」として保持される。
プリントプロセッサ61−1は、ディスパッチャ63を起動させ、正常終了する(図8に示す(5))。ディスパッチャ63は、終了通知用印刷ジョブ確認手段43−2により、EMFデータ保持領域62に保持されているEMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"があるか否か判断し、"end.EMF"がないと確認する(図8に示す(6))。
なお、仮想ドライバ60は、必要な場合には、アプリケーション22からOS23を介して得られる印刷指示に基づき、所定のファイル形式の印刷データを作成する(図8に示す(7))。
アプリケーション22から得られる2ジョブ目のEMFデータも、1ジョブ目と同様に、例えば「emf_data_2.EMF」として、EMFデータ保持領域62に保持される。また、ディスパッチャ63の終了通知用印刷ジョブ確認手段43−2によりジョブ名が、終了通知用の"end.EMF"か判断される。
次に、管理アプリケーション21は、印刷指示手段40による印刷指示後、終了通知用印刷ジョブ指示手段41により、終了通知用ファイル"end.xls"を開き、電子化ドライバ24−1を選択し、アプリケーション22に対して印刷を指示する(図8に示す(8))。アプリケーション22は、OS23を介してプリントプロセッサ61−1に印刷を指示する(図8に示す(9)、(10))。
プリントプロセッサ61−1は、EMFデータ退避手段64−1により、終了通知用ファイルの場合には、EMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"を付加して、EMFデータ保持領域62に退避させる(図8に示す(11))。
プリントプロセッサ61−1は、ディスパッチャ63を起動させ、正常終了する(図8に示す(12))。ディスパッチャ63は、終了通知用印刷ジョブ確認手段43−2により、EMFデータ保持領域62に保持されているEMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"があるか否か判断する(図8に示す(13))。
EMFデータ出力手段65−1は、終了通知用印刷ジョブ確認手段43−2により、例えば終了通知用のジョブ名"end.EMF"があると判断すると、EMFデータ保持領域62に保持されているEMFデータのファイルハンドルを、例えばGetEnhMetaFile()関数等を使用してOS23から取得する。
次に、EMFデータ出力手段65−1は、取得したファイルハンドルに基づき、EMFデータ保持領域62からEMFデータを取得し(図8に示す(14))、PlayEnhMetaFile()関数を使用してOS23に対して出力指示を行う(図8に示す(15))。
OS23は、EMFデータ出力手段65−1からの出力指示に応じて、電子化ドライバ24−1に印刷データの印刷を指示する(図8に示す(16))。電子化ドライバ24−1は、指示された印刷設定に基づき印刷データを作成し、ローカルポートモニタ25−2に出力する(図8に示す(17))。
上述したように、アプリケーション22により1つのジョブが複数のジョブに分割された場合でも、複数のジョブに対応して分割された出力ファイルを1つのジョブとして結合することが可能となる。また、PDLに依存しないEMF形式のデータを用いるため、PDLに対応するための実装が必要なくなる。
また、ディスパッチャ63は、スプーラプロセスとは、別のプロセスにより動作するため、プレビュー画面を表示することが可能となる。したがって、ユーザは、例えばプレビュー画面上でページの出力順を変更したりすることが可能となる。
<第2実施形態:出力制御処理のシーケンス>
図9は、第2実施形態に係る出力制御処理の一例を示すシーケンスである。図9に示すシーケンスは、管理アプリケーション21と、アプリケーション22と、OS23と、プリントプロセッサ61−1と、ディスパッチャ63と、仮想ドライバ60と、電子化ドライバ24−1と、ローカルポートモニタ25−2とにより実行される。
図9において、管理アプリケーション21は、印刷指示手段40によりアプリケーション22に、1つの出力ファイル(例えば4sheet.xls)に対する印刷を指示する(S40)。
アプリケーション22は、印刷指示手段40により印刷が指示された出力ファイルを取得すると、OS23に1ジョブ目の印刷を指示する(S41)。OS23は、プリントプロセッサ61−1に1ジョブ目の印刷指示を通知する(S42)。プリントプロセッサ61−1は、EMFデータ退避手段64−1により、EMFデータのジョブ名に、例えば「emf_data_X.EMF」(Xは連番となるような数字)のように番号を付加して、EMFデータ保持領域62に退避させる(S43)。
次に、プリントプロセッサ61−1は、ディスパッチャ63を起動させる(S44)。ディスパッチャ63は、終了通知用印刷ジョブ確認手段43−2により、EMFデータ保持領域62に保持されているEMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"があるか否か判断する(S45)。なお、OS23は、必要な場合には、仮想ドライバ60に印刷指示を通知し(S46)、仮想ドライバ60により作成された所定のファイル形式の印刷データを取得する。
次に、アプリケーション22は、OS23に2ジョブ目の印刷を指示すると(S47)、OS23は、プリントプロセッサ61−1に2ジョブ目の印刷指示を通知する(S48)。プリントプロセッサ61−1は、アプリケーション22から得られる2ジョブ目のEMFデータも、1ジョブ目と同様に、例えば「emf_data_2.EMF」のように番号を付加して、EMFデータ保持領域62に退避させる(S49)。
次に、プリントプロセッサ61−1は、ディスパッチャ63を起動させる(S50)。ディスパッチャ63は、終了通知用印刷ジョブ確認手段43−2により、EMFデータ保持領域62に保持されているEMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"があるか否か判断する(S51)。なお、OS23は、必要な場合には、仮想ドライバ60に印刷指示を通知し(S52)、仮想ドライバ60により作成された所定のファイル形式の印刷データを取得する。
次に、管理アプリケーション21は、印刷指示手段40による印刷指示後、終了通知用印刷ジョブ指示手段41により、終了通知用ファイル"end.xls"を開き、電子化ドライバ24−1を選択し、アプリケーション22に対して印刷を指示する(S53)。アプリケーション22は、OS23に終了通知用のジョブの印刷を指示すると(S54)、OS23は、プリントプロセッサ61−1に終了通知用のジョブの印刷指示を通知する(S55)。
プリントプロセッサ61−1は、EMFデータ退避手段64−1により、EMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"を付加して、EMFデータ保持領域62に退避させる(S56)。
次に、プリントプロセッサ61−1は、ディスパッチャ63を起動させる(S57)。ディスパッチャ63は、終了通知用印刷ジョブ確認手段43−2により、EMFデータ保持領域62に保持されているEMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"があるか否か判断する(S58)。
ディスパッチャ63は、終了通知用印刷ジョブ確認手段43−2により、終了通知用のジョブ名"end.EMF"があると判断すると、EMFデータ出力手段65−1により、EMFデータ保持領域62で保持されているEMFデータのファイルハンドルを、例えばGetEnhMetaFile()関数等を使用してOS23から取得する(S59)。
次に、ディスパッチャ63は、取得したファイルハンドルに基づき、EMFデータ保持領域62から取得したEMFデータについて、PlayEnhMetaFile()関数等を使用してOS23に対して出力指示を行う(S60)。
OS23は、ディスパッチャ63から取得したEMFデータを1つのジョブとして、電子化ドライバ24−1に印刷データの印刷を指示する(S61)。電子化ドライバ24−1は、指示された印刷設定に基づき印刷データを作成し(S62)、ローカルポートモニタ25−2に出力する(S63)。
上述した第2実施形態では、終了通知用のジョブの印刷時において、ディスパッチャ63がEMFデータ保持領域62に退避させたEMFデータの出力指示をOS23に対して行う。OS23は、1つのジョブとしてそのデータの印刷指示を電子化ドライバ24−1に行い、電子化ドライバ24−1で印刷データを作成して出力を行う。これにより、複数のジョブに分かれたEMFデータを最終的に1つのジョブの印刷データとして出力することが可能となる。
<第3実施形態:PC20−3の機能構成>
図10は、第3実施形態に係る出力制御装置の機能構成の一例を示す図である。図10に示す出力制御装置の一例としてのPC20−3は、電子化ドライバ24−2に描画手段24−3を有している。PC20−3は、第1実施形態に係るPC20−1と比較すると、電子化ドライバ24−2の描画手段24−3に、記憶制御手段の一例としての印刷データ保持手段42−2と、判断手段の一例としての終了通知用印刷ジョブ確認手段43−3と、結合手段の一例としての印刷データ結合手段44−2を有している点で異なる。
第3実施形態では、上述した構成を有することにより、複数のジョブに分割された1つのジョブを適切に結合することが可能となる。また、電子化ドライバ24−2において印刷データを結合するため、例えばRAWスプール形式、EMFスプール形式のいずれにおいても対応することが可能となる。以下、異なる点を中心に説明する。なお、同一の構成については同一の符号を付して、ここでの具体的な説明は省略する。
ここで、第1実施形態と同様に、管理アプリケーション21から1つのファイル(4sheet.xls)を、例えば"BoundJob.pdf"として電子化するよう指示され、アプリケーション22が2つのジョブに分割して印刷を指示した例について説明する。
管理アプリケーション21は、印刷指示手段40により、例えば「4sheet.xls」のファイルを開いて、電子化ドライバ24−2を選択し、印刷設定を行って、アプリケーション22に対して印刷を指示する(図10に示す(1))。
アプリケーション22は、OS23を介して電子化ドライバ24−2に対して1ジョブ目の印刷を指示する(図10に示す(2))。電子化ドライバ24−2の描画手段24−3は、終了通知用印刷ジョブ確認手段43−3により、印刷データのジョブ名が、終了通知用のジョブ名(例えば、"end.xls")か否か判断する。終了通知用印刷ジョブ確認手段43−3は、印刷データのジョブ名が、例えば終了通知用のジョブ名"end.xls"ではないと判断すると、印刷データ保持手段42−2に印刷データを保持しておくように指示する(図10に示す(3))。
印刷データ保持手段42−2は、終了通知用印刷ジョブ確認手段43−3から得られた印刷データのジョブ名に、例えば「4sheet_X.prn」(Xは連番となるような数字)のように番号を付加して、印刷データ保持領域26−2に保持させる(図10に示す(4))。
ここで、1ジョブ目の印刷データは、例えば「4sheet_1.prn」として保持される。なお、アプリケーション22から得られる2ジョブ目の印刷データも、1ジョブ目と同様の処理により、例えば「4sheet_2.prn」として、印刷データ保持領域26−2に保持される。
次に、管理アプリケーション21は、印刷指示手段40による印刷指示後、終了通知用印刷ジョブ指示手段41により、例えば終了通知用ファイル"end.xls"を開き、電子化ドライバ24−2を選択し、アプリケーション22に対して印刷を指示する(図10に示す(5))。アプリケーション22は、OS23を介して電子化ドライバ24−2に対して印刷を指示する(図10に示す(6))。
終了通知用印刷ジョブ確認手段43−3は、印刷データのジョブ名が、例えば終了通知用のジョブ名"end.xls"であると判断すると、印刷データ結合手段44−2に印刷データを結合するよう指示する(図10に示す(7))。
印刷データ結合手段44−2は、印刷データ保持領域26−2に保持されているファイル(例えば4sheet_1.prn、4sheet_2.prn)を、例えば"BoundJob.pdf"として結合し、ローカルポートモニタ25−3に結合したファイルを出力する(図10に示す(8))。
上述したように、アプリケーション22により1つのジョブが複数のジョブに分割された場合でも、複数のジョブに対応して分割された出力ファイルを1つのジョブとして結合することが可能となる。また、電子化ドライバ24−2の描画手段24−3において、印刷データを結合することにより、例えばRAWスプール形式、又はEMFスプール形式で結合することが可能となる。
<第3実施形態:出力制御処理のシーケンス>
図11は、第3実施形態に係る出力制御処理の一例を示すシーケンスである。図11に示すシーケンスは、管理アプリケーション21と、アプリケーション22と、電子化ドライバ24−2と、ローカルポートモニタ25−3とにより実行される。なお、OS23は省略して説明する。
図11において、管理アプリケーション21は、印刷指示手段40によりアプリケーション22に、1つの出力ファイル(例えば4sheet.xls)に対する印刷を指示する(S70)。
アプリケーション22は、電子化ドライバ24−2に対して1ジョブ目の印刷を指示する(S71)。電子化ドライバ24−2の描画手段24−3は、終了通知用印刷ジョブ確認手段43−3により、印刷データのジョブ名が、例えば終了通知用のジョブ名"end.xls"か否か判断する(S72)。終了通知用印刷ジョブ確認手段43−3は、印刷データのジョブ名が、終了通知用のジョブ名"end.xls"ではないと判断すると、印刷データ保持手段42−2に印刷データを保持しておくように指示する(S73)。なお、S73の処理では、印刷データ保持手段42−2は、終了通知用印刷ジョブ確認手段43−3から得られた印刷データのジョブ名に、例えば「4sheet_X.prn」(Xは連番となるような数字)のように番号を付加して、印刷データ保持領域26−2に保持する。
アプリケーション22は、電子化ドライバ24−2に対して2ジョブ目の印刷を指示する(S74)。電子化ドライバ24−2の描画手段24−3は、終了通知用印刷ジョブ確認手段43−3により、1ジョブ目と同様に、印刷データのジョブ名が、例えば終了通知用のジョブ名か否か判断し(S75)、印刷データのジョブ名が終了通知用のジョブ名でないと判断すると、印刷データ保持手段42−2に印刷データを保持しておくように指示する(S76)。
次に、管理アプリケーション21は、印刷指示手段40による印刷指示後、終了通知用印刷ジョブ指示手段41により、終了通知用ファイル"end.xls"を開き、電子化ドライバ24−2を選択し、アプリケーション22に対して印刷を指示する(S77)。アプリケーション22は、電子化ドライバ24−2に対して印刷を指示する(S78)。
電子化ドライバ24−2の描画手段24−3は、終了通知用印刷ジョブ確認手段43−3により、印刷データのジョブ名が、例えば終了通知用のジョブ名"end.xls"であるか否か判断する(S79)。終了通知用印刷ジョブ確認手段43−3は、印刷データのジョブ名が、終了通知用のジョブ名であると判断すると、印刷データ結合手段44−2に印刷データを結合するよう指示する(S80)。
なお、S80の処理では、印刷データ結合手段44−2は、印刷データ保持領域26−2に保持されているファイル(例えば4sheet_1.prn、4sheet_2.prn)を、例えば"BoundJob.pdf"として結合する。電子化ドライバ24−2は、ローカルポートモニタ25−3に結合したファイルを出力する(S81)。
上述した第3実施形態では、第1実施形態とは異なり、電子化ドライバにて印刷データのジョブ名が終了通知用のジョブ名か否かの判断処理や、印刷データの結合処理を行うことが可能となる。
<第4実施形態:PC20−4の機能構成>
図12は、第4実施形態に係る出力制御装置の機能構成の一例を示す図である。図12に示す出力制御装置の一例としてのPC20−4は、プリントプロセッサ61−2を有している。PC20−4は、第1実施形態のPC20−1と比較すると、プリントプロセッサ61−2において、記憶制御手段の一例としてのEMFデータ退避手段64−2と、判断手段の一例としての終了通知用印刷ジョブ確認手段43−4と、結合手段の一例としてのEMFデータ出力手段65−2とを有する点で異なる。
第4実施形態では、上述した構成を有することにより、複数のジョブに分割された1つのジョブを適切に結合することが可能となる。また、第2実施形態と同様に、EMFデータを用いてジョブを結合するため、PDLに対応するための実装が必要なくなる。また、第2実施形態と比較して、小さな構成で実現することが可能となる。
ここで、第1実施形態と同様に、管理アプリケーション21から1つのファイル(4sheet.xls)を、例えば"BoundJob.pdf"として電子化するよう指示され、アプリケーション22が2つのジョブに分割して印刷を指示した例について説明する。
管理アプリケーション21は、印刷指示手段40により、例えば「4sheet.xls」のファイルを開いて、電子化ドライバ24−1を選択し、印刷設定を行って、アプリケーション22に対して印刷を指示する(図12に示す(1))。
アプリケーション22は、OS23を介して、プリントプロセッサ61−2に1ジョブ目の印刷を指示する(図12に示す(2)、(3))。プリントプロセッサ61−2は、EMFデータ退避手段64−2により、EMFデータのジョブ名に、例えば「emf_data_X.EMF」(Xは連番となるような数字)のように番号を付加して、EMFデータ保持領域62に退避させる(図12に示す(4))。1ジョブ目のEMFデータは、例えば「emf_data_1.EMF」として保持される。
プリントプロセッサ61−2は、終了通知用印刷ジョブ確認手段43−4により、EMFデータ保持領域62に保持されているEMFデータのジョブ名に、例えば終了通知用のジョブ名(例えば"end.EMF")があるか否か判断する。プリントプロセッサ61−2は、終了通知用印刷ジョブ確認手段43−4により、例えば終了通知用のジョブ名"end.EMF"がないと確認すると、正常終了する(図12に示す(5))。
アプリケーション22から得られる2ジョブ目のEMFデータも、1ジョブ目と同様の処理により、例えば「emf_data_2.EMF」として、EMFデータ保持領域62に保持される。また、終了通知用印刷ジョブ確認手段43−4によりジョブ名が、例えば終了通知用のジョブ名"end.EMF"か判断される。
次に、管理アプリケーション21は、印刷指示手段40による印刷指示後、終了通知用印刷ジョブ指示手段41により、例えば終了通知用ファイル"end.xls"を開き、電子化ドライバ24−1を選択し、アプリケーション22に対して印刷を指示する(図12に示す(6))。アプリケーション22は、OS23を介してプリントプロセッサ61−2に印刷を指示する(図12に示す(7)、(8))。
プリントプロセッサ61−2は、EMFデータ退避手段64−2により、終了通知用ファイルの場合に、EMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"を付加して、EMFデータ保持領域62に退避させる(図12に示す(9))。
プリントプロセッサ61−2は、終了通知用印刷ジョブ確認手段43−4により、EMFデータ保持領域62に保持されているEMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"があるか否か判断する(図12に示す(10))。
プリントプロセッサ61−2は、終了通知用印刷ジョブ確認手段43−4により、終了通知用のジョブ名"end.EMF"があると判断すると、EMFデータ出力手段65−2により、EMFデータ保持領域62に保持されているEMFデータのファイルハンドルを、GetEnhMetaFile()関数等を使用してOS23から取得する。
次に、EMFデータ出力手段65−2は、取得したファイルハンドルに基づき、EMFデータ保持領域62からEMFデータを取得し(図12に示す(11))、PlayEnhMetaFile()関数等を使用してOS23に対して出力指示を行う(図12に示す(12))。
OS23は、EMFデータ出力手段65−2からの出力指示に応じて、電子化ドライバ24−1に印刷データの印刷を指示する(図12に示す(13))。電子化ドライバ24−1は、指示された印刷設定に基づき印刷データを作成し、ローカルポートモニタ25−4に出力する(図12に示す(14))。
上述したように、アプリケーション22により1つのジョブが複数のジョブに分割された場合でも、複数のジョブに対応して分割された出力ファイルを1つのジョブとして結合することが可能となる。また、PDLに依存しないEMF形式のデータを用いるため、PDLに対応するための実装が必要なくなる。また、第2実施形態と比較して小さな構成で実現することが可能となる。
<第4実施形態:出力制御処理のシーケンス>
図13は、第4実施形態に係る出力制御処理の一例を示すシーケンスである。図13に示すシーケンスは、管理アプリケーション21と、アプリケーション22と、OS23と、プリントプロセッサ61−2と、電子化ドライバ24−1と、ローカルポートモニタ25−4とにより実行される。
図13において、管理アプリケーション21は、印刷指示手段40により、例えば「4sheet.xls」のファイルを開いて、電子化ドライバ24−1を選択し、印刷設定を行って、アプリケーション22に対して印刷を指示する(S90)。
アプリケーション22は、印刷指示手段40により印刷が指示された出力を取得すると、OS23に1ジョブ目の印刷を指示する(S91)。OS23は、プリントプロセッサ61−2に1ジョブ目の印刷を指示する(S92)。プリントプロセッサ61−2は、EMFデータ退避手段64−2により、EMFデータのジョブ名に、例えば「emf_data_X.EMF」(Xは連番となるような数字)のように番号を付加して、EMFデータ保持領域62に退避させる(S93)。
プリントプロセッサ61−2は、終了通知用印刷ジョブ確認手段43−4により、EMFデータ保持領域62に保持されているEMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"があるか否か判断する(S94)。ここで、プリントプロセッサ61−2は、終了通知用印刷ジョブ確認手段43−4により、終了通知用のジョブ名"end.EMF"がないと確認すると、正常終了する。
次に、アプリケーション22は、OS23に2ジョブ目の印刷を指示すると(S95)、OS23は、プリントプロセッサ61−2に2ジョブ目の印刷指示を通知する(S96)。プリントプロセッサ61−2は、アプリケーション22から得られる2ジョブ目のEMFデータも、1ジョブ目と同様の処理により、例えば「emf_data_2.EMF」として、EMFデータ保持領域62に退避させる(S97)。
次に、プリントプロセッサ61−2は、終了通知用印刷ジョブ確認手段43−4により、EMFデータ保持領域62に保持されているEMFデータのジョブ名に、例えば終了通知用の"end.EMF"があるか否か判断する(S98)。ここで、プリントプロセッサ61−2は、終了通知用印刷ジョブ確認手段43−4により、終了通知用の"end.EMF"がないと確認すると、正常終了する。
次に、管理アプリケーション21は、印刷指示手段40による印刷指示後、終了通知用印刷ジョブ指示手段41により、例えば終了通知用ファイル"end.xls"を開き、電子化ドライバ24−1を選択し、アプリケーション22に対して印刷を指示する(S99)。アプリケーション22は、OS23に終了通知用のジョブの印刷を指示すると(S100)、OS23は、プリントプロセッサ61−2に終了通知用のジョブの印刷指示を通知する(S101)。
プリントプロセッサ61−2は、EMFデータ退避手段64−2により、例えば終了通知用ファイルの場合に、EMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"を付加して、EMFデータ保持領域62に退避させる(S102)。
プリントプロセッサ61−2は、終了通知用印刷ジョブ確認手段43−4により、EMFデータ保持領域62に保持されているEMFデータのジョブ名に、例えば終了通知用のジョブ名"end.EMF"があるか否か判断する(S103)。
プリントプロセッサ61−2は、終了通知用印刷ジョブ確認手段43−4により、終了通知用のジョブ名"end.EMF"があると判断すると、EMFデータ出力手段65−2により、EMFデータ保持領域62に保持されているEMFデータのファイルハンドルを、GetEnhMetaFile()関数等を使用してOS23から取得する(S104)。
次に、EMFデータ出力手段65−2は、取得したファイルハンドルに基づき、EMFデータ保持領域62から取得したEMFデータについて、PlayEnhMetaFile()関数等を使用してOS23に対して出力指示を行う(S105)。
OS23は、EMFデータ出力手段65−2からの出力指示に応じて、電子化ドライバ24−1に印刷データの印刷を指示する(S106)。電子化ドライバ24−1は、指示された印刷設定に基づき印刷データを作成し(S107)、ローカルポートモニタ25−4に出力する(S108)。
上述した第4実施形態では、第2実施形態でディスパッチャ63が行った処理をプリントプロセッサ61−2で実行することが可能となる。
上述した実施形態によれば、アプリケーションにより分割された複数の出力情報を結合することが可能となる。なお、上述した実施形態では、情報処理装置の一例としてPCを用いて説明したが、スマートフォン、タブレット端末、サーバ等であっても良く、例えばMFP等の画像処理装置に適用することも可能である。また、上述した第1〜第4実施形態は、必要に応じて複数の実施形態の一部又は全部を組み合わせても良い。
以上、開示の技術の好ましい実施形態について詳述したが、開示の技術に係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された開示の技術の要旨の範囲内において、種々の変形、変更が可能である。
10 出力制御システム
20 PC(出力制御装置の一例)
21 管理アプリケーション
22 アプリケーション
23 OS
24 電子化ドライバ
25 ローカルポートモニタ
26 印刷データ保持領域
30 プリンタ
40 印刷指示手段
41 終了通知用印刷ジョブ指示手段
42 印刷データ保持手段(記憶制御手段の一例)
43 終了通知用印刷ジョブ確認手段(判断手段の一例)
44 印刷データ結合手段(結合手段の一例)
45 印刷データ出力手段
50 CPU
51 RAM
52 ROM
53 HDD
54 I/F部
55 ドライブ装置
56 LCD
57 操作部
58 記録媒体
59 バス
60 仮想ドライバ
61−1〜61−2 プリントプロセッサ
62 EMFデータ保持領域
63 ディスパッチャ
64 EMFデータ退避手段(記憶制御手段の一例)
65 EMFデータ出力手段(結合手段の一例)
特開2012−113591号公報

Claims (14)

  1. 出力指示に基づき、一の出力対象情報を複数の同じ識別情報を有する出力情報として出力を要求するアプリケーションに対し、前記一の出力対象情報の出力を指示した後に、前記一の出力対象情報の終了を示す終了情報の出力を指示する出力指示手段と、
    前記アプリケーションから出力される出力情報を、該出力情報が有する識別情報をそれぞれ異なる識別情報に変更して所定の保持領域に記憶する記憶制御手段と、
    前記出力指示手段から前記終了情報の出力が指示されたか否か判断する判断手段と、
    前記判断手段により前記終了情報の出力が指示されたと判断された場合に、前記所定の保持領域に記憶された前記出力情報を結合する結合手段とを有することを特徴とする出力制御装置。
  2. 前記出力指示手段は、
    前記終了情報として、終了通知用ファイルを用いることを特徴とする請求項1に記載の出力制御装置。
  3. 前記判断手段は、
    前記出力指示手段から得られる前記終了通知用ファイルのファイル名に基づき、前記終了情報が出力されたか判断することを特徴とする請求項2に記載の出力制御装置。
  4. 前記判断手段は、
    ローカルポートモニタ、ディスパッチャ、電子化ドライバ、及びプリントプロセッサのうち少なくとも1つにより構成されることを特徴とする請求項1乃至3のいずれか一項に記載の出力制御装置。
  5. 前記結合手段は、
    ローカルポートモニタ、ディスパッチャ、電子化ドライバ、及びプリントプロセッサのうち少なくとも1つにより構成されることを特徴とする請求項1乃至4のいずれか一項に記載の出力制御装置。
  6. 前記結合手段は、
    前記出力情報をRAW形式又はEMF形式で結合することを特徴とする請求項1乃至5のいずれか一項に記載の出力制御装置。
  7. コンピュータを、
    出力指示に基づき、一の出力対象情報を複数の同じ識別情報を有する出力情報として出力を要求するアプリケーションから出力される出力情報を、該出力情報が有する識別情報をそれぞれ異なる識別情報に変更して所定の保持領域に記憶する記憶制御手段、
    前記一の出力対象情報の出力が指示された後に、前記一の出力対象情報の終了を示す終了情報の出力が指示されたか否か判断する判断手段、及び
    前記判断手段により前記終了情報の出力が指示されたと判断された場合に、前記所定の保持領域に記憶された前記出力情報を結合する結合手段として機能させるための出力制御プログラム。
  8. 前記判断手段は、
    前記終了情報が出力されたかの判断として、終了通知用ファイルを取得したか判断することを特徴とする請求項7に記載の出力制御プログラム。
  9. 前記判断手段は、
    前記終了通知用ファイルのファイル名に基づき、前記終了情報が出力されたか判断することを特徴とする請求項8に記載の出力制御プログラム。
  10. 前記判断手段は、
    ローカルポートモニタ、ディスパッチャ、電子化ドライバ、及びプリントプロセッサのうち少なくとも1つにより構成されることを特徴とする請求項7乃至9のいずれか一項に記載の出力制御プログラム。
  11. 前記結合手段は、
    ローカルポートモニタ、ディスパッチャ、電子化ドライバ、及びプリントプロセッサのうち少なくとも1つにより構成されることを特徴とする請求項7乃至10のいずれか一項に記載の出力制御プログラム。
  12. 前記結合手段は、
    前記出力情報をRAW形式又はEMF形式で結合することを特徴とする請求項7乃至11のいずれか一項に記載の出力制御プログラム。
  13. 出力制御装置により実行される出力制御方法であって、
    出力指示に基づき、一の出力対象情報を複数の同じ識別情報を有する出力情報として出力を要求するアプリケーションに対し、前記一の出力対象情報の出力を指示した後に、前記一の出力対象情報の終了を示す終了情報の出力を指示する出力指示手順と、
    前記アプリケーションから出力される出力情報を、該出力情報が有する識別情報をそれぞれ異なる識別情報に変更して所定の保持領域に記憶する記憶制御手順と、
    前記出力指示手順から前記終了情報の出力が指示されたか否か判断する判断手順と、
    前記判断手順により前記終了情報の出力が指示されたと判断された場合に、前記所定の保持領域に記憶された前記出力情報を結合する結合手順とを有することを特徴とする出力制御方法。
  14. 請求項7乃至12のいずれか一項に記載の出力制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2014100858A 2013-06-04 2014-05-14 出力制御装置、出力制御プログラム、出力制御方法、及び記録媒体 Expired - Fee Related JP6344047B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014100858A JP6344047B2 (ja) 2013-06-04 2014-05-14 出力制御装置、出力制御プログラム、出力制御方法、及び記録媒体
US14/291,437 US9176691B2 (en) 2013-06-04 2014-05-30 Output control device and output control method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2013118062 2013-06-04
JP2013118062 2013-06-04
JP2014100858A JP6344047B2 (ja) 2013-06-04 2014-05-14 出力制御装置、出力制御プログラム、出力制御方法、及び記録媒体

Publications (2)

Publication Number Publication Date
JP2015015017A JP2015015017A (ja) 2015-01-22
JP6344047B2 true JP6344047B2 (ja) 2018-06-20

Family

ID=51984772

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014100858A Expired - Fee Related JP6344047B2 (ja) 2013-06-04 2014-05-14 出力制御装置、出力制御プログラム、出力制御方法、及び記録媒体

Country Status (2)

Country Link
US (1) US9176691B2 (ja)
JP (1) JP6344047B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10264152B2 (en) 2015-03-19 2019-04-16 Ricoh Company, Ltd. Information processing device, computer-readable recording medium, and system
JP2019164446A (ja) * 2018-03-19 2019-09-26 株式会社リコー 情報処理装置、情報処理方法、プログラム、及び印刷システム

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3873427B2 (ja) * 1998-01-30 2007-01-24 ブラザー工業株式会社 プリンタ制御システムにおける中間ファイルの加工装置及びその制御プログラムが記録された記録媒体
JP3634695B2 (ja) * 1999-11-02 2005-03-30 キヤノン株式会社 印刷制御方法および装置
JP2001209632A (ja) * 2000-01-25 2001-08-03 Konica Corp ドキュメントハンドリング方法およびドキュメントハンドリング装置ならびにドキュメントハンドリングプログラムを格納した記録媒体
JP3689662B2 (ja) * 2001-07-16 2005-08-31 キヤノン株式会社 情報処理装置及びその表示方法
JP4119203B2 (ja) * 2002-08-23 2008-07-16 京セラミタ株式会社 ファイル加工プログラム
JP5353477B2 (ja) * 2009-06-24 2013-11-27 富士ゼロックス株式会社 画像処理装置及びプログラム
EP2275916A3 (en) * 2009-06-29 2013-01-23 Kabushiki Kaisha Toshiba Print job managing apparatus, print job managing system, and print job managing method
JP5725812B2 (ja) * 2010-11-25 2015-05-27 キヤノン株式会社 文書処理装置、文書処理方法、及びプログラム
JP2012113591A (ja) * 2010-11-26 2012-06-14 Canon Inc ジョブ結合印刷制御装置および方法およびプログラム
JP5699604B2 (ja) 2011-01-05 2015-04-15 株式会社リコー 印刷プログラム、情報処理装置および記録媒体
JP5804749B2 (ja) * 2011-04-01 2015-11-04 キヤノン株式会社 データ処理装置、データ処理方法およびプログラム
JP2014038434A (ja) 2012-08-14 2014-02-27 Ricoh Co Ltd 情報処理装置、プログラム及び記録媒体
JP6155851B2 (ja) * 2013-05-31 2017-07-05 ブラザー工業株式会社 表示プログラムおよび表示装置

Also Published As

Publication number Publication date
US9176691B2 (en) 2015-11-03
US20140355026A1 (en) 2014-12-04
JP2015015017A (ja) 2015-01-22

Similar Documents

Publication Publication Date Title
JP4082427B2 (ja) 画像形成装置、画像形成方法、画像処理装置、および画像形成プログラム
JP2005309933A (ja) 拡張制御装置および画像処理システムおよびアプリケーションアイコン表示方法およびプログラムおよび記憶媒体
JP4643677B2 (ja) 印刷制御装置
US10306085B2 (en) Information processing apparatus, control method of information processing apparatus, and recording medium
JP2010167596A (ja) 画像処理装置、サーバ、情報処理装置及び印刷システム
US9386082B2 (en) Information processing apparatus, and control method and storage medium therefor
JP2014241506A (ja) 画像処理システム、情報処理装置、及び情報処理プログラム
JP6344047B2 (ja) 出力制御装置、出力制御プログラム、出力制御方法、及び記録媒体
JP2006261889A (ja) 画像処理装置および画像処理方法
JP2009188940A (ja) 画像処理装置、画像処理方法、及び画像処理システム
JP2008059332A (ja) 多機能装置および利用条件設定プログラム
JP4771528B2 (ja) 分散処理システムおよび分散処理方法
JP2010213066A (ja) 画像形成装置
US9081530B2 (en) Control system for forming and outputting image, control apparatus for forming and outputting image, and recording medium storing a control program for forming and outputting image
JP5361399B2 (ja) 画像処理装置、画像処理装置の制御方法、及び制御プログラム
JP2007007922A (ja) 画像処理装置
JP2015225535A (ja) 情報処理装置、及びこれを用いる認証プリントシステム
JP2008257628A (ja) 情報処理装置、文書集約プログラム及び記録媒体
JP2008152398A (ja) 情報処理装置及びその制御方法
JP6107084B2 (ja) 情報処理装置、アップデート用プログラム、アップデート制御システム
JP2024032737A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP5705061B2 (ja) 画像形成装置および画像形成プログラム
JP5370762B2 (ja) 画像処理装置、画像出力管理方法及びプログラム
JP2013052613A (ja) 画像処理装置、画像処理装置の制御方法及び画像処理装置の制御プログラム
JP2018069499A (ja) 画像処理装置とその制御方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170509

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180507

R151 Written notification of patent or utility model registration

Ref document number: 6344047

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees