JP6202081B2 - 情報処理装置、プログラム、画像処理システム - Google Patents
情報処理装置、プログラム、画像処理システム Download PDFInfo
- Publication number
- JP6202081B2 JP6202081B2 JP2015246101A JP2015246101A JP6202081B2 JP 6202081 B2 JP6202081 B2 JP 6202081B2 JP 2015246101 A JP2015246101 A JP 2015246101A JP 2015246101 A JP2015246101 A JP 2015246101A JP 6202081 B2 JP6202081 B2 JP 6202081B2
- Authority
- JP
- Japan
- Prior art keywords
- drawing information
- page
- information
- print 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/0035—User-machine interface; Control console
- H04N1/00405—Output means
- H04N1/00408—Display of information to the user, e.g. menus
- H04N1/0044—Display of information to the user, e.g. menus for image preview or review, e.g. to help the user position a sheet
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1202—Dedicated interfaces to print systems specifically adapted to achieve a particular effect
- G06F3/1203—Improving or facilitating administration, e.g. print management
- G06F3/1208—Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1201—Dedicated interfaces to print systems
- G06F3/1223—Dedicated interfaces to print systems specifically adapted to use a particular technique
- G06F3/1237—Print job management
- G06F3/1253—Configuration of print job parameters, e.g. using UI at the client
- G06F3/1256—User feedback, e.g. print preview, test print, proofing, pre-flight checks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/12—Digital output to print unit, e.g. line printer, chain printer
- G06F3/1293—Printer information exchange with computer
- G06F3/1294—Status or feedback related to information exchange
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1801—Input data handling means
- G06K15/181—Receiving print data characterized by its formatting, e.g. particular page description languages
- G06K15/1811—Receiving print data characterized by its formatting, e.g. particular page description languages including high level document description only
- G06K15/1813—Page description language recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1801—Input data handling means
- G06K15/1822—Analysing the received data before processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1801—Input data handling means
- G06K15/1822—Analysing the received data before processing
- G06K15/1823—Analysing the received data before processing for evaluating the resources needed, e.g. rasterizing time, ink, paper stock
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K15/00—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
- G06K15/02—Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
- G06K15/18—Conditioning data for presenting it to the physical printing elements
- G06K15/1867—Post-processing of the composed and rasterized print image
- G06K15/1886—Storage of the print image data or of parts thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection 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/00204—Connection 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 digital computer or a digital computer system, e.g. an internet server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/00127—Connection 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/00344—Connection 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 management, maintenance, service or repair apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0008—Connection or combination of a still picture apparatus with another apparatus
- H04N2201/0034—Details of the connection, e.g. connector, interface
- H04N2201/0037—Topological details of the connection
- H04N2201/0039—Connection via a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N2201/00—Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
- H04N2201/0077—Types of the still picture apparatus
- H04N2201/0094—Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Facsimiles In General (AREA)
- Record Information Processing For Printing (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Description
本発明は、情報処理装置、プログラム及び画像処理システムに関する。
ユーザがプリンタで印刷物を出力する前に、意図する印刷結果が得られるか否かを確認したい場合がある。このため、印刷データのプレビューイメージを表示装置に表示する機能を備えるプリンタがある。
一般に、プリンタが実行する印刷ジョブは、プリンタが印刷を行うために最適化された印刷データを有しており、この印刷データはユーザが望む任意のページに対してプレビューイメージを短時間で生成するデータとして使用されることには向いていない。なお、印刷データとはPostScriptなどのPDL(page description language)で記述されたデータをいう。
具体的には印刷データを用いてプリンタが任意のページのプレビューイメージを印刷データに忠実に生成するためには、任意のページの前ページまでの印刷データを解析し、任意のページのプレビューイメージの生成に必要な情報を全て抽出する必要がある。これは、任意のページに対する例えばフォントの指定等がそれよりも前のページに記述されている場合が少なくないからである。
このため、プリンタが表示したあるページのプレビューイメージを別のページのプレビューイメージに切り替える度に、プリンタは任意のページの前ページまでの印刷データの解析とプレビューイメージの生成処理を必要とし、プレビューイメージを表示するまでの時間が長くなる場合がある。
このような不都合に対し、プレビューイメージの表示を高速化する技術が考案されている(例えば、特許文献1参照。)。特許文献1には、簡易化したプレビューイメージの生成を行った後に、印刷データに忠実な最終的なプレビューイメージを生成する画像入力装置が開示されている。
しかしながら、特許文献1に開示されたプレビューイメージの表示方法では、最終的なプレビューイメージを生成するまでの時間を短縮することが困難であるという問題がある。すなわち、簡易化したプレビューイメージではユーザが確認したい印刷結果が正しく表示されているとは限らないため、印刷物を出力してよいかどうかをユーザが判断できない又は判断を誤る場合が生じ得る。
本発明は、上記課題に鑑み、要求されたページの画像データが表示されるまでの時間を短縮できる情報処理装置を提供することを目的とする。
上記課題に鑑み、本発明は、画像を描画するための描画情報を用いて画像データを生成する情報処理装置であって、前記描画情報を含む印刷データを外部から取得する印刷データ取得手段と、前記印刷データの任意のページの画像データの表示要求を受け付ける要求受付手段と、前記印刷データに含まれる前記描画情報のうち該描画情報が記述されているページよりも後のページの前記画像データに反映され得る特定描画情報を記憶する描画情報記憶部から、前記要求受付手段が受け付けた前記任意のページの前ページまでの前記特定描画情報を読み出す読出手段と、前記読出手段が読み出した前記特定描画情報を反映させて前記任意のページの前記画像データを生成する生成手段と、を有する。
要求されたページの画像データが表示されるまでの時間を短縮できる情報処理装置を提供することができる。
以下、本発明を実施するための形態について図面を参照しながら説明する。
<比較例>
まず、本実施形態の印刷管理サーバ10の概略を説明するに当たり、比較例を説明する。図1は、印刷管理サーバ10によるプレビューイメージの表示手順の比較例を模式的に説明する図の一例である。印刷管理サーバ10は、業務ホスト50から印刷データを受け付け、クライアント30からプレビューイメージの表示要求を受け付ける。
まず、本実施形態の印刷管理サーバ10の概略を説明するに当たり、比較例を説明する。図1は、印刷管理サーバ10によるプレビューイメージの表示手順の比較例を模式的に説明する図の一例である。印刷管理サーバ10は、業務ホスト50から印刷データを受け付け、クライアント30からプレビューイメージの表示要求を受け付ける。
S1:印刷管理サーバ10は、業務ホスト50からネットワーク経由で投入された印刷データを受け取る。この印刷データから印刷ジョブが生成される。
S2:印刷管理サーバ10は印刷データを印刷ジョブDB(Data Base)1003に蓄積する。
S3:ユーザが操作するクライアント30は印刷ジョブDB1003に記憶されている印刷データの一覧(リスト)を取得できる。ユーザはこの一覧から特定の印刷データを選択し、また任意のページを指定して、印刷管理サーバ10に対してプレビューイメージの表示要求を送信する。
S4:印刷管理サーバ10は以下のS4-1〜S4-3の処理を行うことでプレビューイメージを生成する。
S4-1:印刷管理サーバ10は、印刷データの最初からプレビューイメージの表示が要求されたページ(以下、プレビュー要求ページという。)の前ページまでの全てのPDL(page description language)コマンドを解析する。これにより、プレビュー要求ページのプレビューイメージの生成のために使用される特定描画情報を取得することができる。特定描画情報は、プレビュー要求ページのプレビューイメージの生成に影響するPDLコマンドであるが詳細は後述される。
S4-2:印刷管理サーバ10は、印刷データからプレビュー要求ページのページデータを取得する。プレビュー要求ページのページデータとは、印刷データのうちプレビュー要求ページの印刷データをいう。
S4-3: S4-2で取得したプレビュー要求ページの印刷データを解析してプレビュー要求ページのプレビューイメージを生成するが、この際、S4-1で取得した特定描画情報を参照する。
S5:印刷管理サーバ10は生成したプレビューイメージをクライアント30に送信する。
S6:クライアント30は印刷管理サーバ10から受信したプレビューイメージを表示装置に表示させる。
このように、S4-1でプレビュー要求ページよりも前のページを全て解析し特定描画情報を取得する必要があるため、印刷管理サーバ10がプレビューイメージを生成するために時間がかかる場合があった。
<本実施形態の印刷システムの概略>
図2は、本実施形態の印刷管理サーバ10によるプレビューイメージの表示手順を模式的に説明する図の一例である。
図2は、本実施形態の印刷管理サーバ10によるプレビューイメージの表示手順を模式的に説明する図の一例である。
S1:印刷管理サーバ10は業務ホスト50からネットワーク経由で投入された印刷データを受け付ける。
S2:印刷管理サーバ10は、印刷データから以下の3つのデータを生成し、それぞれをDBに保存する。
S2-1:PDLコマンドが記述されているページよりも後のページの描画に影響する特定描画情報を印刷データから取り出し特定描画情報DB1001に記憶させる。
S2-2:印刷データを解析して各ページのオフセット値(印刷データの先頭から何バイト目にページのデータがあるか)とデータサイズをジョブ解析データDB1002に記憶させる。
S2-3:業務ホスト50から受け付けた印刷データを印刷ジョブDB1003に記憶させる。
S3:ユーザが操作するクライアント30は印刷ジョブDB1003に記憶されている印刷データの一覧(リスト)を取得できる。ユーザはこの一覧から特定の印刷データを選択し、また任意のページを指定して、印刷管理サーバ10に対してプレビューイメージの表示要求を送信する。
S4:印刷管理サーバ10は以下のS4-1〜S4-3の処理を行い、プレビューイメージを生成する。
S4-1:特定描画情報が蓄積された特定描画情報DB1001からプレビュー要求ページの前ページまで特定描画情報を取得する。
S4-2:解析データが蓄積されたジョブ解析データDB1002からプレビュー要求ページのオフセット値とデータサイズを取得する。
S4-3:S4-2で取得したオフセット値とデータサイズを元に印刷ジョブDB1003からプレビュー要求ページの印刷データを取得する。
S4-4:S4-1で取得した特定描画情報を反映させてS4-3で取得したプレビュー要求ページの印刷データを解析し、プレビュー要求ページのプレビューイメージを生成する。
S5:印刷管理サーバ10は生成したプレビューイメージをクライアント30に送信する。
S6:クライアント30は印刷管理サーバ10から受信したプレビューイメージを表示装置に表示させる。
図2の処理手順によれば、印刷データの取得時に各ページの特定描画情報を特定描画情報DB1001に記憶しているので、プレビューイメージの生成時に、印刷データの最初からプレビュー要求ページの前ページまで解析する処理を省くことができる。また、プレビュー要求ページのページデータがどこにあるか(オフセット値とデータサイズ)も印刷データの取得時にジョブ解析データDB1002に記憶しているので、印刷データからプレビュー要求ページの印刷データを高速に取得することができる。
<用語について>
特許請求の範囲の描画情報は画像又は画像データを描画するため情報であり、ページ記述言語で記述された情報ということができる。ページ記述言語は一般にPDLと称される。具体的には、PDLには、PCL、PCLの派生語、PostScript(登録商標)などの言語があるが、本実施形態の言語の種別は限定されない。
特許請求の範囲の描画情報は画像又は画像データを描画するため情報であり、ページ記述言語で記述された情報ということができる。ページ記述言語は一般にPDLと称される。具体的には、PDLには、PCL、PCLの派生語、PostScript(登録商標)などの言語があるが、本実施形態の言語の種別は限定されない。
描画情報の最小単位をPDLコマンドと称する。PDLコマンドは印刷データに含まれる描画に関する1つの命令である。また、1つのページの画像を描画するために記述されている1つ以上のPDLコマンドをページデータと称することにする。本実施形態では特許請求の範囲の描画情報をPDLコマンドという用語を用いて説明する。
また、特許請求の範囲の特定描画情報はプレビュー要求ページを描画する(プレビューイメージを生成する)ために必要なPDLコマンドである。あるいは、プレビュー要求ページの描画に影響を与え得る(反映され得る)PDLコマンドということができる。具体的には、フォント、罫線又は塗りつぶしとその色などを指定するPDLコマンドであるがこれらに限られるものではない。詳細は表2で説明される。
印刷データとは画像を形成、生成又は描画するためのデータであり、印刷ジョブはプリンタ等が印刷データを用いた画像形成を行う際の実行単位である。また、印刷データは1つ以上のPDLコマンドを含む。印刷ジョブには印刷データが含まれると共に、印刷ジョブを管理するための情報が含まれる。なお、印刷データと印刷ジョブを厳密に区別しなくてもよい。また、画像の形成、生成又は描画とは、PDLコマンドを画像(画像データ)に変換することをいう。
<システム構成例>
図3は、印刷システム1の概略構成図の一例を示す。印刷システム1は、業務ホスト50、印刷管理システム100、及び、プリンタ60を有している。印刷管理システム100はクライアント30と印刷管理サーバ10を有し、クライアント30と印刷管理サーバ10はネットワークN1を介して接続されている。印刷管理サーバ10と業務ホスト50はネットワークN2を介して接続されている。印刷管理サーバ10とプリンタ60はネットワークN3を介して接続されている。ネットワークN1は主にLANであるがWANやインターネットなどでもよい。また、ネットワークN2は、業務ホスト50が社外の機器であればインターネットやWANであり、業務ホスト50が社内の機器であれば主にLANである。ネットワークN3はLAN、WAN又はインターネットであるが、USBケーブルなどで1対1に接続されていてもよい。なお、ネットワークN1〜N3の説明は限定する趣旨ではなくあくまで一例に過ぎず、専用線であってもよいし、プロバイダのネットワークや電話会社の通信回線を含んでいてもよい。また、無線LAN、Bluetooth(登録商標)、又は、3G,4Gなどの無線通信網を含んでいてもよい。
図3は、印刷システム1の概略構成図の一例を示す。印刷システム1は、業務ホスト50、印刷管理システム100、及び、プリンタ60を有している。印刷管理システム100はクライアント30と印刷管理サーバ10を有し、クライアント30と印刷管理サーバ10はネットワークN1を介して接続されている。印刷管理サーバ10と業務ホスト50はネットワークN2を介して接続されている。印刷管理サーバ10とプリンタ60はネットワークN3を介して接続されている。ネットワークN1は主にLANであるがWANやインターネットなどでもよい。また、ネットワークN2は、業務ホスト50が社外の機器であればインターネットやWANであり、業務ホスト50が社内の機器であれば主にLANである。ネットワークN3はLAN、WAN又はインターネットであるが、USBケーブルなどで1対1に接続されていてもよい。なお、ネットワークN1〜N3の説明は限定する趣旨ではなくあくまで一例に過ぎず、専用線であってもよいし、プロバイダのネットワークや電話会社の通信回線を含んでいてもよい。また、無線LAN、Bluetooth(登録商標)、又は、3G,4Gなどの無線通信網を含んでいてもよい。
業務ホスト50は、業務用印刷のアプリケーションソフトウェア(以下、単にアプリケーションと呼ぶ)が動作する情報処理装置である。例えば、業務ホスト50のオペレータが帳票を設計したり修正したりするために使用される。専用の装置として用意されてもよいし、業務用印刷のアプリケーションを実行可能な任意の情報処理装置でもよい。業務ホスト50は、プリンタ60が用紙に印刷する画像を印刷管理サーバ10が形成するための印刷データを印刷管理サーバ10に送信する。ただし、本実施形態の印刷システム1は特殊な業務にのみ使用されるわけではなく、オフィスなどで使用されるPC(Personal Computer)が印刷管理サーバ10に送信した印刷データのプレビューイメージをクライアント30が表示する際にも使用されてよい。
クライアント30は、クライアントアプリ又はブラウザソフトウェアなどが動作する情報処理装置である。クライアント30は、プレビューイメージを表示したり、ユーザから操作入力を受け付けたりする。具体的には、PC、タブレット端末、PDA(Personal Digital Assistant)、ウェアラブルPC、ゲーム機、携帯電話、スマートフォンなどの情報処理装置である。しかし、これらに限られるものではない。クライアントアプリは、印刷管理サーバ10による印刷ジョブの管理状態をユーザが把握するためのソフトウェアである。クライアントアプリは、印刷管理サーバ10と定期的に通信しており、印刷管理サーバ10に登録されている印刷ジョブの一覧、状態(未実行、実行中、実行済みなど)、エラーが発生した場合のエラー内容などを表示する。
印刷管理サーバ10は、サーバアプリが動作する情報処理装置である。単体の情報処理装置の他、クラウドコンピューティングが適用されたネットワークの情報処理装置としての機能でもよい。印刷管理サーバ10は、図では複数の業務ホスト50及び複数のプリンタ60と接続されているが、業務ホスト50及び複数のプリンタ60はそれぞれ1台以上あればよい。印刷管理サーバ10は、業務ホスト50から受け付けた印刷データから印刷ジョブを生成しプリンタ60に印刷させる。具体的には、印刷データの受け付け、画像データへの変換、プリンタ60への出力、及び、プリンタ60による印刷ジョブの実行状態の提供などを行う。また、本実施形態では、印刷管理サーバ10がプレビューイメージを提供する機能を有するものとして説明される。
プリンタ60はいわゆる画像形成装置の一例である。印刷管理サーバ10が送信した印刷ジョブを実行し、印刷データに基づいて用紙などの記録媒体に画像を印刷する。プリンタ60には、帯電させた記録媒体にレーザで潜像を形成しトナーで現像する画像形成プロセスを有するものと、インクを吐出して画像を形成する画像形成プロセスを有するもの等がある。本実施形態の画像形成プロセスはどのようなものでもよい。また、画像形成の機能を有するコピー機、FAX装置、スキャナ装置、及び、MFP(Multi-Functional Printer)等はプリンタ60に含まれる。また、プリンタ60は記録媒体の搬送機構を有していなくてもよい。
<ハードウェア構成について>
図4は、本実施形態にかかる印刷管理サーバ10の一例のハードウェア構成図である。印刷管理サーバ10はCPU501、RAM502、入力装置503、外部I/F504、HDD505、ROM506、表示装置507及び通信I/F508などを備え、それぞれがバスBで相互に接続されている。なお、入力装置503及び表示装置507は必要なときに接続して利用する形態であってもよい。
図4は、本実施形態にかかる印刷管理サーバ10の一例のハードウェア構成図である。印刷管理サーバ10はCPU501、RAM502、入力装置503、外部I/F504、HDD505、ROM506、表示装置507及び通信I/F508などを備え、それぞれがバスBで相互に接続されている。なお、入力装置503及び表示装置507は必要なときに接続して利用する形態であってもよい。
CPU501は、ROM506やHDD505などの記憶装置からプログラムやデータをRAM502上に読み出し、処理を実行することで、印刷管理サーバ10全体の制御や機能を実現する演算装置である。
入力装置503はキーボードやマウス、タッチパネルなどを含み、ユーザが各操作信号を入力するのに用いられる。
外部I/F504は、外部装置とのインタフェースである。外部装置には、記録媒体504aなどがある。これにより、印刷管理サーバ10は外部I/F504を介して記録媒体504aの読み取り及び/又は書き込みを行うことができる。記録媒体504aにはフレキシブルディスク、CD、DVD、SDメモリカード、USBメモリなどがある。
また、HDD505は、プログラムやデータを格納している不揮発性の記憶装置の一例である。格納されるプログラムやデータには、印刷管理サーバ10の全体を制御する基本ソフトウェアであるOS、及びOS上において各種機能を提供するアプリケーションなどがある。なお、HDD505に替え、記録媒体としてフラッシュメモリを用いるドライブ装置(例えばソリッドステートドライブ:SSD)を利用するものであってもよい。
ROM506は、電源を切ってもプログラムやデータを保持することができる不揮発性の半導体メモリ(記憶装置)の一例である。ROM506には印刷管理サーバ10の起動時に実行されるBIOS、OS設定、及びネットワーク設定などのプログラムやデータが格納されている。RAM502はプログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)の一例である。
通信I/F508は印刷管理サーバ10を各種ネットワークに接続するインタフェースである。これにより、印刷管理サーバ10は通信I/F508を介してデータ通信を行うことができる。表示装置507はディスプレイ等を含み、印刷管理サーバ10による処理結果を表示する。
なお、図示する印刷管理サーバ10のハードウェア構成は、1つの筐体に収納されていたりひとまとまりの装置として備えられていたりする必要はなく、印刷管理サーバ10が備えていることが好ましいハード的な要素を示す。また、クラウドコンピューティングに対応するため、本実施例の印刷管理サーバ10の物理的な構成は固定的でなくてもよく、負荷に応じてハード的なリソースが動的に接続・切断されることで構成されてよい。
クライアント30と業務ホスト50のハードウェア構成は図4と同様であるか、相違があっても本実施形態の説明上支障がないものとする。また、プリンタ60については公知のハードウェア構成を有するものとする。
<機能について>
図5は、本実施形態の印刷システム1に含まれる印刷管理サーバ10とクライアント30の機能ブロック図の一例である。
図5は、本実施形態の印刷システム1に含まれる印刷管理サーバ10とクライアント30の機能ブロック図の一例である。
<<印刷管理サーバ10の機能構成>>
印刷管理サーバ10は、送受信部11、印刷データ取得部12、構造解析部13、特定描画情報抽出部14、印刷ジョブ蓄積部15、サーバ管理部16、プレビュー画像生成部17、プレビュー管理部18、及び、記憶読出部19を有している。これら各部は、図4に示されている各構成要素のいずれかが、HDD505からRAM502に展開されたサーバアプリ1010に従ったCPU501からの命令によって動作することで実現される機能、又は提供される手段である。
印刷管理サーバ10は、送受信部11、印刷データ取得部12、構造解析部13、特定描画情報抽出部14、印刷ジョブ蓄積部15、サーバ管理部16、プレビュー画像生成部17、プレビュー管理部18、及び、記憶読出部19を有している。これら各部は、図4に示されている各構成要素のいずれかが、HDD505からRAM502に展開されたサーバアプリ1010に従ったCPU501からの命令によって動作することで実現される機能、又は提供される手段である。
また、印刷管理サーバ10は、図4に示されているRAM502、ROM506及びHDD505のいずれかによって構築される記憶部1000を有している。記憶部1000には、特定描画情報DB1001、ジョブ解析データDB1002、及び、印刷ジョブDB1003が記憶されている。記憶部1000には、サーバアプリ1010が記憶されている。サーバアプリ1010は、記録媒体504aに記憶された状態で配布されたり、プログラムを配信するサーバからダウンロードされたりすることで配信される。これらのDBについて説明する。
ジョブ解析データDB1002には、構造解析部13が業務ホスト50から取得した印刷データを解析して得られる解析データが格納されている。より具体的には、印刷データにおいて各ページがどの場所に格納されているかという位置情報(より具体的にはアドレス情報)とデータサイズを含む。
ジョブIDは、印刷管理サーバ10が印刷ジョブを一意に識別するための識別情報であり、印刷管理サーバ10が重複しないように印刷ジョブに付与する。具体的には連続番号、登録日時、業務ホスト50の識別番号と連番の組み合わせなどであるがこれらに限られない。また、識別情報とは、複数の対象からある特定の対象を一意的に区別するために用いられる名称、符号、文字列、数値又はこれらの組み合わせをいう。以下の各種の識別情報においても同様である。
データ開始オフセットとは、各ページデータが印刷データのどこにあるかを示す位置情報であり、具体的には印刷データの先頭から何バイト目に格納されているかというオフセット値である。印刷データの1つのページデータは開始を示すPDLコマンドで始まり終了を示すPDLコマンドで終了する。したがって、1つのページデータの開始と終了は明記されている。
データサイズは、各ページデータの大きさ又は容量などをバイト単位で示す。1つのページデータの開始を示すPDLコマンドから終了を示すPDLコマンドまでが1つのページデータの大きさである。
また、ページ数は印刷データが含むページの総数である。総数はPDLコマンドで印刷データに明記されていてもよいし、開始と終了を示すPDLコマンドに基づいてカウントされたものでもよい。
特定描画情報となるPDLコマンドは、印字領域(用紙の端部を基準に何mmから画像を形成するか)を指示するもの、回転情報(0,90、180、270度などの回転角度)により画像データの向きを指示するもの、フォントを定義するもの、フォントを制御するもの、フォーム(表組みのフォーマット、罫線など)を定義するもの、フォームを制御するもの、ブラシ(塗りつぶし、網掛け、テクスチャなど)を定義するもの、ブラシを制御するものなどであるが、これらには限られない。なお、フォント、フォーム及びブラシを制御するPDLコマンドには、フォント、フォーム及びブラシを指定したり指定を解除したりするものがある。
特定描画情報DB1001に抽出されたこれらのPDLコマンドは、一度指定されると次に指定されるか又は解除されるまでは有効として扱われる(有効とは、イメージの生成に使用されることをいう)。したがって、プレビュー要求ページよりも前のページのPDLコマンドでもプレビュー要求ページの描画に影響する可能性がある。任意のページに対応するため、全てのページのPDLコマンドに関する情報が登録される。
なお、特定描画情報DB1001には、ページの区切りを検出するために使用される、1つのページデータの開始を示すPDLコマンド及び終了を示すPDLコマンドも抽出して登録される。
特定描画情報テーブルは印刷ジョブ数を有する。そして、印刷ジョブごとに、サイズ、コマンド数及び印刷データで使用されている各コマンドのコマンド情報が登録されている。
印刷ジョブ数は特定描画情報DB1001に登録されている印刷ジョブの数である。サイズは1つの印刷ジョブについて特定描画情報DB1001に登録されている特定描画情報のサイズである。印刷管理サーバ10が所望の特定描画情報を読み出すために使用される。コマンド数は1つの印刷ジョブで抽出されたPDLコマンドの数である。コマンド情報は、更に種別、k個の付帯情報(kは1つ以上)、サイズ、及び、データを有する。種別は、PDLコマンドの種類を示すIDである。例えば、1つのページデータの開始を示すPDLコマンド、終了を示すPDLコマンドはプレビューイメージの生成には使用されないので、印刷管理サーバ10は種別を見て特定描画情報DB1001からPDLコマンドを読み出すかどうかを判断できる。なお、この2つのPDLコマンドはページの区切りを検出するために使用される(特定描画情報でない描画情報の一例である)。
付帯情報は、プレビューイメージの生成に当該PDLコマンドを使用するか又は使用しないかを印刷管理サーバ10が判断するための情報である。付帯情報について補足する。例えばフォントを定義するPDLコマンドはフォントID1=Aフォント、フォントID2=Bフォント、フォントID3=Cフォントのようにフォントを定義する。また、フォントを定義する場合でもプリンタ60の内部のフォントが定義される場合とビットマップで作成されているPDLコマンド内のフォントが定義される場合がある。このような場合、付帯情報には、フォントのIDと共に、プリンタ60のフォントとPDLコマンド内のどちらのフォントが定義されたのかの区別が登録される。この区別がプリンタ60の内蔵のフォントを使用することを示す場合、印刷管理サーバ10はフォントのIDが分かればフォントを使用できるのでPDLコマンドを読み出す必要がないと判断できる。PDLコマンド内のフォントを使用することを示す場合、フォントの内容がPDLコマンド内にあるのでPDLコマンドを読み出す必要があると判断できる。
また、フォントを制御するPDLコマンドは、フォントを使用するものとフォントの使用を解除するものがある。フォントを使用するPDLコマンドではフォントのIDと使用する旨が付帯情報となる。この場合、PDLコマンド内にフォントに関する記述(例えば、フォントに関する新たな定義や使用方法など)がある場合があるので、印刷管理サーバ10はPDLコマンドを読み出す必要があると判断する。フォントの使用を解除するPDLコマンドではフォントのIDと使用しない旨が付帯情報となる。この場合、印刷管理サーバ10はPDLコマンドを読み出す必要がないと判断する。
このように、印刷管理サーバ10は、付帯情報によってプレビュー要求ページの前ページまでのPDLコマンドを読み出す必要があるか否かを判断できる。
サイズはPDLコマンドのサイズを意味する。サイズはどこからどこまでが1つのPDLコマンドかを示す。上記のようにプレビューイメージの生成の際、印刷管理サーバ10がPDLコマンドを読み出す場合があるが、このサイズにより1つのPDLコマンドを特定して読み出すことができる。換言すると、プレビュー要求ページのプレビューイメージを印刷管理サーバ10が生成する際に、特定描画情報DB1001において1つのPDLコマンドがどこからどこまでかをPDLコマンドを解析することなく特定できる。
データはPDLコマンドが複製(コピー)されたものである。PDLコマンドが複製(コピー)されるのは、付帯情報で説明したようにPDLコマンドの全体がプレビュー要求ページのプレビューイメージの生成に必要な場合があるためである。
なお、特定描画情報には、ジョブ情報(印刷向き/用紙サイズ/指定トレイ等)などが含まれるが、表2では省略されている。これらもページごとに指定されることが可能であり、プレビュー要求ページのプレビューイメージの生成に使用される。
(印刷管理サーバ10の機能について)
印刷管理サーバ10の送受信部11は、図4に示したCPU501や通信I/F508等により実現され、クライアント30や業務ホスト50などと各種のデータの送受信を行う。なお、以下では印刷管理サーバ10がデータを送受信する場合でも「送受信部11を介して」という記載を省略する場合がある。
印刷管理サーバ10の送受信部11は、図4に示したCPU501や通信I/F508等により実現され、クライアント30や業務ホスト50などと各種のデータの送受信を行う。なお、以下では印刷管理サーバ10がデータを送受信する場合でも「送受信部11を介して」という記載を省略する場合がある。
印刷管理サーバ10の印刷データ取得部12は、図4に示したCPU501等により実現され、業務ホスト50から送信されたデータが印刷データであることをヘッダー部分などから検出して印刷データを取得する。印刷データ取得部12は、ジョブIDを採番したり印刷データを1つのファイルに保管したりする。
構造解析部13、特定描画情報抽出部14及び印刷ジョブ蓄積部15を区別しない場合、これらをまとめて印刷データ解析部20と称する。まず、印刷管理サーバ10の構造解析部13は、図4に示したCPU501等により実現され、印刷データを解析して表1に示した解析データテーブルを生成し、ジョブ解析データDB1002に記憶させる。
印刷管理サーバ10の特定描画情報抽出部14は、図4に示したCPU501等により実現され、印刷データを解析して表2に示した特定描画情報テーブルを生成し、特定描画情報DB1001に記憶させる。
印刷管理サーバ10の印刷ジョブ蓄積部15は図4に示したCPU501等により実現され、印刷データから解析の終わったPDLコマンドを随時、印刷ジョブDB1003に記憶させる。印刷ジョブ蓄積部15は印刷データを印刷ジョブとして印刷ジョブDB1003に記憶させる。なお、業務ホスト50から印刷データを取得した際に印刷ジョブDB1003に記憶してもよい。
印刷管理サーバ10のサーバ管理部16は、図4に示したCPU501等により実現され、印刷管理サーバ10がサーバとして動作する際の全体的な制御を行う。例えば、クライアント30と通信していることを利用して、印刷ジョブの一覧、状態(未実行、実行中、実行済みなど)、エラーが発生した場合のエラー内容などをクライアントに送信する。また、クライアント30からプレビューイメージの表示要求を取得し、プレビューイメージを送信する。あるいは、Webサーバ又はWebアプリとして動作し、HTML、JavaScript(登録商標)データ、及び、CSSなど画面情報をクライアント30に送信する。
印刷管理サーバ10のプレビュー管理部18は、図4に示したCPU501等により実現され、プレビューイメージを生成するための制御を行う。例えば、ジョブ解析データDB1002と特定描画情報DB1001にアクセスしてプレビューイメージの生成に必要な情報(主に特定描画情報)を取得する。
印刷管理サーバ10のプレビュー画像生成部17は、図4に示したCPU501等により実現され、プレビュー管理部18が取得したプレビューイメージの生成に必要な情報を用いてプレビューイメージを生成する。すなわち、PDLコマンドを解釈してレンダリングと呼ばれる処理を行い画像データを生成する。なお、画像データのフォーマットはJPEG、ビットマップ、又は、GIFなどであるがこれらには限られない。
記憶読出部19は、図4に示されるCPU501等により実現され、記憶部1000に記憶されている各種データの読み出し、及び、記憶部1000への各種データの書き込みを行う。なお、以下の説明では、記憶読出部19が記憶部1000に読み書きする場合でも「記憶読出部19を介して」という説明を省略する場合がある。
<クライアント30の機能構成>>
クライアント30は、送受信部31、操作受付部32、表示制御部33、及び、記憶読出部39を有している。これら各部は、図4に示されている各構成要素のいずれかが、HDD505からRAM502に展開されたプログラムに従ったCPU501からの命令によって動作することで実現される機能、又は提供される手段である。
クライアント30は、送受信部31、操作受付部32、表示制御部33、及び、記憶読出部39を有している。これら各部は、図4に示されている各構成要素のいずれかが、HDD505からRAM502に展開されたプログラムに従ったCPU501からの命令によって動作することで実現される機能、又は提供される手段である。
また、クライアント30は、図4に示されているRAM502、ROM506及びHDD505のいずれかによって構築される記憶部3000を有している。記憶部3000には、クライアントアプリ3010が記憶されている。クライアントアプリ3010は、記録媒体504aに記憶された状態で配布されたり、プログラムを配信するサーバからダウンロードされたりすることで配信される。
クライアント30の操作受付部32は、図4に示したCPU501及び入力装置503等により実現され、クライアント30に対するユーザの各種の操作を受け付ける。
クライアント30の表示制御部33は、図4に示したCPU501及び表示装置507等により実現され、表示装置507に各種の情報を表示する。本実施形態ではプレビューイメージを表示装置507に表示する。
記憶読出部39は、図4に示されるCPU501等により実現され、記憶部3000に記憶されている各種データの読み出し、及び、記憶部3000への各種データの書き込みを行う。なお、以下の説明では、記憶読出部39が記憶部3000に読み書きする場合でも「記憶読出部39を介して」という説明を省略する場合がある。
<動作手順>
図6は、印刷データの取得からプレビューイメージの表示までの手順を示すシーケンス図の一例である。
図6は、印刷データの取得からプレビューイメージの表示までの手順を示すシーケンス図の一例である。
S1:業務ホスト50は作成した印刷データを印刷管理サーバ10に送信する。印刷管理サーバ10の印刷データ取得部12は印刷データを取得する。印刷データ取得部12はジョブIDを採番し印刷データを1つのファイルに保管する。
S2:印刷データ取得部12は印刷データを印刷データ解析部20に送出する。
S3:印刷管理サーバ10の構造解析部13は、印刷データ取得部12から通知を受けて、印刷データを解析し解析データをジョブ解析データDB1002に記憶させる。詳細は図8にて説明される。
S4: 印刷管理サーバ10の特定描画情報抽出部14は、印刷データ取得部12から通知を受けて、印刷データを解析し特定描画情報を抽出して特定描画情報DB1001に記憶させる。詳細は図8にて説明される。
S5:印刷管理サーバ10の印刷ジョブ蓄積部15は、印刷データから印刷ジョブを作成する。具体的には、印刷データに必要な情報が付与されているかを確認したり、ファイル名を付与したりする。そして、印刷ジョブDB1003に印刷ジョブを記憶させる。
次に、ユーザは任意のタイミングでクライアント30を操作して、プレビューイメージの表示を要求する。
S6:ユーザはクライアント30を操作して印刷管理サーバ10にログインして、サーバ管理部16から印刷ジョブのリストを取得する。ユーザが使用する権限がある印刷ジョブのみが提供されてもよい。ユーザはクライアント30が表示装置507に表示するGUI画面からプレビューイメージを表示したい任意の印刷ジョブとそのページを選択する。クライアント30の操作受付部32は印刷ジョブとページ(プレビュー要求ページ)の選択を受け付ける。
S7:クライアント30はプレビューイメージの表示要求と共に、ユーザが選択した印刷ジョブのジョブIDとプレビュー要求ページを印刷管理サーバ10に送信する。
S8:印刷管理サーバ10のサーバ管理部16は、プレビューイメージを生成させるためプレビュー管理部18に対し、ユーザが選択した印刷ジョブのジョブIDとページ(プレビュー要求ページ)を送出する。
S9:印刷管理サーバ10のプレビュー管理部18は、特定描画情報DB1001からプレビュー要求ページの前ページまでの特定描画情報を読み出す。
S10:プレビュー管理部18は、ジョブ解析データDB1002からプレビュー要求ページのデータ開始オフセット(オフセット値)とデータサイズを取得する。
S11:プレビュー管理部18は、このオフセット値とデータサイズを元に印刷ジョブDB1003からプレビュー要求ページの印刷データを取得する。
S12:プレビュー管理部18は、ステップS9で取得したプレビュー要求ページの前ページまでの特定描画情報とステップS11で取得したプレビュー要求ページの印刷データをプレビュー画像生成部17に送出して、プレビューイメージの生成を要求する。
S13:プレビュー画像生成部17は、プレビュー管理部18から渡されたプレビュー要求ページの前ページまでの特定描画情報とプレビュー要求ページの印刷データを元にプレビューイメージを生成する。詳細は図9にて説明される。
S14:プレビュー画像生成部17は、生成したプレビューイメージをプレビュー管理部18に送出する。
S15:プレビュー管理部18はプレビュー画像生成部17から取得したプレビューイメージをサーバ管理部16に送出する。
S16:サーバ管理部16は、プレビュー管理部18から取得したプレビューイメージをクライアント30に送信する。
S17:クライアント30はサーバ管理部16からプレビューイメージを受信して、表示制御部33がプレビューイメージを表示装置507に表示する。
このような手順によれば、印刷データの取得時にプレビューイメージを生成するための特定描画情報を各ページごとに特定描画情報DB1001に記憶し、各ページのオフセット値をジョブ解析データDB1002に記憶しているので、プレビューイメージを生成するまでの時間を短縮できる。
<印刷データの解析中のプレビューイメージの表示>
図7は、印刷データの解析中にプレビューイメージを表示する手順を示すシーケンス図の一例である。なお、図7では主に図6との相違を説明する。ステップS1〜S5の処理は図6と同様である。
図7は、印刷データの解析中にプレビューイメージを表示する手順を示すシーケンス図の一例である。なお、図7では主に図6との相違を説明する。ステップS1〜S5の処理は図6と同様である。
S6:印刷管理サーバ10の印刷データ解析部20は、サーバ管理部16に解析済みのページ数を通知する。これにより、サーバ管理部16はクライアント30からのプレビューイメージの表示要求に対し、プレビュー要求ページが解析済みかどうかを判断できる。
S7: 印刷管理サーバ10のサーバ管理部16は、解析中の印刷データの何ページ目までがプレビュー可能であるか又は何ページまで解析済みか(以下、プレビュー可能ページ数という)を印刷ジョブのジョブ名やジョブIDなどと共にクライアント30に通知する。なお、クライアント30のクライアントアプリは印刷管理サーバ10にログインしており、印刷管理サーバ10と定期的に通信している。したがって、ファイアウォールなどでクライアント30と印刷管理サーバ10が隔たれていても任意のタイミングで印刷管理サーバ10がプレビュー可能ページ数を通知できる。サーバ管理部16は原理的に1ページの解析が終わるごとにプレビュー可能ページ数をクライアント30に通知できる。ただし、通信負荷などを考慮して5ページ単位や10ページ単位などでクライアント30に通知してもよい。また、図7では、印刷管理サーバ10がクライアント30にプレビュー可能ページ数を通知しているが、クライアント30から問い合わせがあった場合にだけプレビュー可能ページ数を通知してもよい。
S8:クライアント30の送受信部31はジョブ名やジョブID及びプレビュー可能ページ数を受信し、表示制御部33がプレビュー可能ページ数を表示装置507に表示する。
S9:ユーザはクライアント30がプレビュー可能ページ数と共に表示したジョブ名により印刷ジョブを選択し、任意のページ(プレビュー要求ページ)のプレビューイメージを表示させる操作を行う。クライアント30の操作受付部32は印刷ジョブの選択とプレビュー要求ページの選択を受け付ける。
S10:クライアント30の送受信部31は、プレビューイメージの表示要求と共に、印刷ジョブのジョブIDとページ(プレビュー要求ページ)を印刷管理サーバ10に送信する。
以下のステップS11〜S20の処理は図6のS8〜S17と同様である。
このような処理によれば、印刷データの解析中に解析が完了しているページのプレビューイメージをクライアント30が表示することができる。
<解析データと特定描画情報の取得>
図8は、印刷管理サーバ10が解析データと特定描画情報を印刷データから取得する手順を示すフローチャート図の一例である。図8の処理は、例えば印刷管理サーバ10が印刷データを取得するとスタートする。図8の処理は、各ページデータのPDLコマンドごとに繰り返し実行される。
図8は、印刷管理サーバ10が解析データと特定描画情報を印刷データから取得する手順を示すフローチャート図の一例である。図8の処理は、例えば印刷管理サーバ10が印刷データを取得するとスタートする。図8の処理は、各ページデータのPDLコマンドごとに繰り返し実行される。
印刷管理サーバ10の構造解析部13は、印刷データ取得部12が取得した印刷データのPDLコマンドをページの先頭から順番に1つ取り出す(S10)。
構造解析部13は、PDLコマンドが解析データテーブルの生成に必要なものかどうかを判断する(S20)。解析データテーブルの生成に必要なPDLコマンドは、1つのページデータの開始を示すPDLコマンド又は終了を示すPDLコマンドの少なくとも一方である。開始を示すPDLコマンドが分かればその直前のPDLコマンドが終了を示すPDLコマンドであり、終了を示すPDLコマンドが分かればその直後のPDLコマンドが開始を示すPDLコマンドである。ただし、PDLコマンド及び終了を示すPDLコマンドの両方に着目することで、ページの区切りを正確に決定できる。
ステップS20の判断がYesの場合、構造解析部13はページデータの開始オフセットとデータサイズを解析データテーブルに登録する(S30)。すなわち、ページデータの開始を示すPDLコマンドから終了を示すPDLコマンドの直前までを1つのページデータとしてデータサイズを決定する。このデータサイズをページ順に合計していくことで次ページのデータ開始オフセットが得られる。
次に、特定描画情報抽出部14は、ステップS10で取得したPDLコマンドが特定描画情報を抽出すべきPDLコマンドかどうかを判断する(S40)。すなわち、プレビュー要求ページの描画に必要なPDLコマンド又はPDLコマンドが記述されているページよりも後のページの描画に影響するPDLコマンドかどうかを判断する。このPDLコマンドは具体的には表2で説明したPDLコマンドであり、既知のPDLコマンドとして特定描画情報抽出部14に予め登録されている。
ステップS40の判断がYesの場合、特定描画情報抽出部14は、特定描画情報を特定描画情報DB1001に記憶させる(S50)。具体的には、コマンド数(蓄積コマンド数)を1つ大きくすると共にコマンド情報を特定描画情報DB1001に記憶させる。また、コマンド情報のサイズに登録した値を情報データサイズに合計する。これにより、蓄積コマンド数と情報データサイズは1つのPDLコマンドの解析のたびに増大させられることができる。なお、特定描画情報抽出部14は予め保持するPDLコマンドと種別の対応にしたがって、コマンド情報の種別を設定する。付帯情報には、PDLコマンドに応じて表2で説明した情報を設定する。サイズは、PDLの文法などに基づいて解析して得られた1つのPDLコマンドの最初から終わりまでのPDLコマンドのサイズであり、データはPDLコマンドそのものでよい。
次に、印刷ジョブ蓄積部15は、ステップS10で取得したPDLコマンドを印刷ジョブDB1003に格納する(S60)。表3のジョブデータサイズは1つのPDLコマンドの解析が終わるごとに該PDLコマンドのサイズが合計されて大きくなり、印刷ジョブデータには1つのPDLコマンドが順番に蓄積される。
以上で1つのPDLコマンドの解析が終わったので、同様に印刷データ解析部20はページ内にある全てのPDLコマンドの解析を行う。そして、1つのページの全てのPDLコマンドの解析が終わると次のページの最初のPDLコマンドから解析を開始する。以上を繰り返すことで、全てのページの全てのPDLコマンドを解析できる。
<プレビューイメージの生成>
図9は、印刷管理サーバ10がプレビューイメージを生成する手順を示すフローチャート図の一例である。図9の処理は、例えばクライアント30からプレビューイメージの表示要求を受信するとスタートする。まず、プレビュー管理部18は、1ページ目からプレビュー要求ページの前ページまでのページの順番に1ページ分の特定描画情報を特定描画情報DB1001から取得する処理を行う。
図9は、印刷管理サーバ10がプレビューイメージを生成する手順を示すフローチャート図の一例である。図9の処理は、例えばクライアント30からプレビューイメージの表示要求を受信するとスタートする。まず、プレビュー管理部18は、1ページ目からプレビュー要求ページの前ページまでのページの順番に1ページ分の特定描画情報を特定描画情報DB1001から取得する処理を行う。
プレビュー管理部18は、特定描画情報DB1001から1ページ分の特定描画情報を取得する(S110)。この際、プレビュー管理部18は特定描画情報DB1001からプレビューイメージの生成に使用されるPDLコマンドのみを取得する。まず、特定描画情報DB1001のコマンド情報の種別(PDLコマンドの種類)のうちページの開始を示すPDLコマンドとページの終了を示すPDLコマンドを取得しないと判断する。また、表2で説明したように各PDLコマンドの付帯情報を参照して取得する必要があるPDLコマンドのみを取得する。これにより、RAM502等のリソースを圧迫しにくくなり、また、プレビューイメージの表示処理を高速化できる。
プレビュー管理部18は、特定描画情報DB1001から取得した特定描画情報と、前ページまで特定描画情報からすでに取得済みの特定描画情報で重複するPDLコマンドがあるか否かを判断する(S120)。すなわち、着目しているページの特定描画情報と前ページまでの特定描画情報に同じ種別のPDLコマンドがあるか否かを判断する。特定描画情報はプレビュー要求ページのプレビューイメージに影響するPDLコマンドであるが、最後に設定された特定描画情報が優先されるためである。したがって、印字領域を指示するもの、回転情報により画像データの向きを指示するもの、フォントを定義するもの、フォントを制御するもの、フォームを定義するもの、フォームを制御するもの、ブラシを定義するもの、及び、ブラシを制御するもの、のそれぞれについて重複するPDLコマンドがあるか否かを判断する。
ステップS120の判断がYesの場合、プレビュー管理部18は取得済みのPDLコマンドを削除する(S130)。この取得済みのPDLコマンドはステップS140で蓄積されるPDLコマンドである。
プレビュー管理部18は、ステップS110で取得した特定描画情報を記憶部1000に記憶しておく(S140)。これにより、現在のページと前ページまでで重複していたPDLコマンドについて、プレビュー要求ページに最も近いPDLコマンドを有効にすることができる。また、現在のページで新たに読み出されたPDLコマンドも記憶することができる(有効にすることができる)。
以上のステップS110〜S140の処理を、プレビュー要求ページの前ページまで行う。
次に、プレビュー管理部18は、ジョブ解析データDB1002からプレビュー要求ページのオフセット値とデータサイズを取得する(S150)。
プレビュー管理部18は、プレビュー要求ページのオフセット値とデータサイズにしたがって印刷ジョブDB1003からプレビュー要求ページの印刷データを取得する(S160)。
次に、プレビュー画像生成部17は、ステップS140で最終的に記憶部1000に記憶されている特定描画情報を反映させたプレビュー要求ページのプレビューイメージを生成する(S170)。具体的には、ステップS140で最終的に記憶部1000に記憶されているPDLコマンドのうち、プレビュー要求ページの印刷データと同じ種別のPDLコマンドがあれば、プレビュー要求ページの印刷データに含まれるPDLコマンドを優先してプレビューイメージを生成する。また、記憶部1000に記憶されているPDLコマンドのうち、プレビュー要求ページの印刷データに含まれないPDLコマンドをプレビュー要求ページに反映させてプレビューイメージを生成する。これにより、プレビュー要求ページより前に設定されている特定描画情報をプレビュー要求ページに反映させてプレビューイメージを生成できる。
このような手順により、プレビュー要求ページよりも前のページデータに含まれプレビュー要求ページのプレビューイメージに影響する特定描画情報をプレビュー要求ページに反映させることができる。プレビュー要求ページのプレビューイメージに影響する特定描画情報は印刷データの取得時に保存されているので、プレビューイメージを高速に描画できる。コマンド情報の種別と付帯情報により、特定描画情報DB1001から読み出すPDLコマンドも最小限に抑制できるため、プレビューイメージの生成に要する時間を短縮できる。また、プレビュー要求ページのオフセット値とデータサイズが印刷データの取得時に保存されているので、プレビュー要求ページのページデータにも高速にアクセスできる。したがって、印刷データの先頭からPDLコマンドを全て解析してプレビューイメージを生成する方法よりも短時間にプレビューイメージを生成できる。ページ数が多いほどこのような効果を得られ易くなる。
<変形例1>
表1にジョブ解析データテーブルを、表2に特定描画情報テーブルを、表3に印刷ジョブテーブルの一例をそれぞれ示した。しかしながら、ジョブ解析データテーブル、特定描画情報テーブル、及び、印刷ジョブテーブルを1つのテーブルで表すこともできる。
表1にジョブ解析データテーブルを、表2に特定描画情報テーブルを、表3に印刷ジョブテーブルの一例をそれぞれ示した。しかしながら、ジョブ解析データテーブル、特定描画情報テーブル、及び、印刷ジョブテーブルを1つのテーブルで表すこともできる。
<変形例2>
図3等では、プレビューイメージを生成する印刷管理サーバ10とプレビューイメージを生成するクライアントが別々の装置であったが、自身が有する表示装置507に印刷管理サーバ10がプレビューイメージを表示することもできる。この場合、印刷管理サーバ10は印刷ジョブとプレビュー要求ページを直接、受け付け、プレビューイメージを生成し表示装置507に表示すればよい。
図3等では、プレビューイメージを生成する印刷管理サーバ10とプレビューイメージを生成するクライアントが別々の装置であったが、自身が有する表示装置507に印刷管理サーバ10がプレビューイメージを表示することもできる。この場合、印刷管理サーバ10は印刷ジョブとプレビュー要求ページを直接、受け付け、プレビューイメージを生成し表示装置507に表示すればよい。
<その他の適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
例えば、図3等では業務ホスト50とクライアント30が別々の装置として示されているが、両者が一体でもよい。すなわち、印刷データを送信した装置がプレビューイメージの表示を要求してもよい。また、印刷管理サーバ10はプリンタ60と一体でもよい。この場合、プリンタ60がプレビューイメージをクライアント30に送信したり、表示したりする。
また、上記の実施形態では1ページずつプレビューイメージが要求されたが、クライアントは複数ページをまとめて要求できる。
また、図5等の構成例は、印刷管理サーバ10による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本発明が制限されることはない。印刷管理サーバ10の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、1つの処理単位が更に多くの処理を含むように分割することもできる。
また、例えば、記憶部1000に記憶されている特定描画情報DB1001、ジョブ解析データDB1002、及び、印刷ジョブDB1003は印刷管理サーバ10が有する他、ネットワーク上に存在してもよい。
なお、印刷管理サーバ10は情報処理装置の一例であり、印刷データ取得部12は印刷データ取得手段の一例であり、サーバ管理部16は要求受付手段の一例であり、特定描画情報DB1001は描画情報記憶部の一例であり、プレビュー管理部18は読出手段の一例であり、プレビュー画像生成部は生成手段の一例である。発明を実施するための形態の特定描画情報はプレビュー用描画情報の一例であり、任意のPDLコマンドは特許請求の範囲の描画情報の一例であり、付帯情報は判断情報の一例であり、印刷ジョブDB1003は印刷データ記憶部の一例であり、ジョブ解析データDB1002は位置情報記憶手段の一例である。構造解析部13は構造解析手段の一例であり、特定描画情報抽出部14は描画情報保存手段の一例であり、クライアント30は端末の一例であり、印刷管理システム100は画像処理システムの一例であり、表示制御部33は表示手段の一例である。
1 印刷システム
10 印刷管理サーバ
13 構造解析部
14 描画用情報抽出部
15 印刷ジョブ蓄積部
16 サーバ管理部
17 プレビュー画像生成部
18 プレビュー管理部
20 印刷データ解析部
30 クライアント
50 業務ホスト
60 プリンタ
100 印刷管理システム
1001 特定描画情報DB
1002 ジョブ解析データDB
1003 印刷ジョブDB
10 印刷管理サーバ
13 構造解析部
14 描画用情報抽出部
15 印刷ジョブ蓄積部
16 サーバ管理部
17 プレビュー画像生成部
18 プレビュー管理部
20 印刷データ解析部
30 クライアント
50 業務ホスト
60 プリンタ
100 印刷管理システム
1001 特定描画情報DB
1002 ジョブ解析データDB
1003 印刷ジョブDB
Claims (10)
- 画像を描画するための描画情報を用いて画像データを生成する情報処理装置であって、
前記描画情報を含む印刷データを外部から取得する印刷データ取得手段と、
前記印刷データの任意のページの画像データの表示要求を受け付ける要求受付手段と、
前記印刷データに含まれる前記描画情報のうち該描画情報が記述されているページよりも後のページの前記画像データに反映され得る特定描画情報を記憶する描画情報記憶部から、前記要求受付手段が受け付けた前記任意のページの前ページまでの前記特定描画情報を読み出す読出手段と、
前記読出手段が読み出した前記特定描画情報を反映させて前記任意のページの前記画像データを生成する生成手段と、
を有する情報処理装置。 - 前記読出手段は、ページ順に各ページに含まれる前記特定描画情報を前記描画情報記憶部から読み出し、
読み出したページよりも前に種別が同じ前記特定描画情報がある場合、読み出したページよりも前の前記特定描画情報を削除して読み出したページの前記特定描画情報を有効にする処理を、前記任意のページの前ページまでの各ページに対し行う請求項1に記載の情報処理装置。 - 前記描画情報記憶部には、前記描画情報の種別に対応付けて前記特定描画情報でない前記描画情報も記憶されており、
前記読出手段は予め定められた前記種別の前記描画情報のみを前記特定描画情報として前記描画情報記憶部から読み出す請求項1又は2に記載の情報処理装置。 - 前記描画情報記憶部には、前記特定描画情報を読み出す必要があるか否かを判断するための判断情報が前記特定描画情報ごとに記憶されており、
前記読出手段は、前記判断情報に基づき前記特定描画情報を読み出すと判断した前記特定描画情報のみを前記描画情報記憶部から読み出す請求項1〜3のいずれか1項に記載の情報処理装置。 - 前記読出手段は、前記印刷データが記憶されている印刷データ記憶部における前記印刷データの各ページの位置情報と各ページのデータサイズが記憶された位置情報記憶手段を参照し、
前記任意のページの前記印刷データを前記印刷データ記憶部から読み出す請求項1〜4のいずれか1項に記載の情報処理装置。 - 前記印刷データ取得手段が取得した前記印刷データから、ページの開始又はページの終了の少なくともどちらかを意味する前記描画情報を特定し、
ページの開始から終了までの各ページのデータサイズ、及び、前ページまでの前記データサイズを合計して得られる各ページの位置情報を生成し前記位置情報記憶手段に記憶させる構造解析手段を有する請求項5に記載の情報処理装置。 - 前記印刷データ取得手段が取得した前記印刷データから、
ページの開始又はページの終了の少なくともどちらかを意味する前記描画情報、及び、前記特定描画情報として予め定められている前記描画情報を抽出し、前記特定描画情報として前記描画情報記憶部に記憶させる描画情報保存手段を有する請求項6に記載の情報処理装置。 - 前記要求受付手段は、前記描画情報保存手段が前記描画情報記憶部へ前記特定描画情報を記憶させる処理を終わらせたページ数を、全てのページの前記処理が終わる前に、ネットワークを介して接続された端末に送信する請求項7に記載の情報処理装置。
- 画像を描画するための描画情報を用いて画像データを生成する情報処理装置を、
前記描画情報を含む印刷データを外部から取得する印刷データ取得手段と、
前記印刷データの任意のページの画像データの表示要求を受け付ける要求受付手段と、
前記印刷データに含まれる描画情報のうち該描画情報が記述されているページよりも後のページの前記画像データに反映され得る特定描画情報を記憶する描画情報記憶部から、前記要求受付手段が受け付けた前記任意のページの前ページまでの前記特定描画情報を読み出す読出手段と、
前記読出手段が読み出した前記特定描画情報を反映させて前記任意のページの前記画像データを生成する生成手段、として機能させるためのプログラム。 - 画像を描画するための描画情報を用いて画像データを生成する画像処理システムであって、
前記描画情報を含む印刷データを外部から取得する印刷データ取得手段と、
前記印刷データの任意のページの画像データの表示要求を受け付ける要求受付手段と、
前記印刷データに含まれる描画情報のうち該描画情報が記述されているページよりも後のページの前記画像データに反映され得る特定描画情報を記憶する描画情報記憶部から、前記要求受付手段が受け付けた前記任意のページの前ページまでの前記特定描画情報を読み出す読出手段と、
前記読出手段が読み出した前記特定描画情報を反映させて前記任意のページの前記画像データを生成する生成手段と、
前記画像データを表示装置に表示する表示手段と、を有する画像処理システム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015246101A JP6202081B2 (ja) | 2015-12-17 | 2015-12-17 | 情報処理装置、プログラム、画像処理システム |
US15/370,061 US9871933B2 (en) | 2015-12-17 | 2016-12-06 | Information processing apparatus and image processing system for generating image data for a preview image by using print data described in page description language |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015246101A JP6202081B2 (ja) | 2015-12-17 | 2015-12-17 | 情報処理装置、プログラム、画像処理システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017111651A JP2017111651A (ja) | 2017-06-22 |
JP6202081B2 true JP6202081B2 (ja) | 2017-09-27 |
Family
ID=59066673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015246101A Expired - Fee Related JP6202081B2 (ja) | 2015-12-17 | 2015-12-17 | 情報処理装置、プログラム、画像処理システム |
Country Status (2)
Country | Link |
---|---|
US (1) | US9871933B2 (ja) |
JP (1) | JP6202081B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10185903B2 (en) * | 2016-10-06 | 2019-01-22 | Ricoh Company, Ltd. | Image forming output control device and non-transitory recording medium storing program |
JP2019115013A (ja) * | 2017-12-26 | 2019-07-11 | シャープ株式会社 | プレビュー表示装置、複合機及びプレビュー表示方法 |
JP7438771B2 (ja) * | 2020-01-30 | 2024-02-27 | キヤノン株式会社 | 画像形成装置、制御方法、およびプログラム |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4992958A (en) * | 1988-06-27 | 1991-02-12 | Hitachi, Ltd. | Method and apparatus for controlling printer |
JP4298146B2 (ja) * | 2000-08-22 | 2009-07-15 | キヤノン株式会社 | 印刷データを生成する情報処理装置及び方法 |
JP3480844B2 (ja) * | 2001-10-26 | 2003-12-22 | 株式会社リコー | 文書管理装置、文書管理制御方法及び文書管理制御プログラム |
JP3826038B2 (ja) * | 2002-01-17 | 2006-09-27 | キヤノン株式会社 | 印刷システム及びその印刷方法並びに印刷装置 |
US7307745B2 (en) * | 2002-01-21 | 2007-12-11 | Canon Kabushiki Kaisha | Web-based print server and client |
JP3913237B2 (ja) * | 2003-10-10 | 2007-05-09 | キヤノン株式会社 | 情報処理装置および情報処理装置の制御方法 |
JP4565505B2 (ja) * | 2004-09-30 | 2010-10-20 | 株式会社リコー | 印刷制御装置、印刷制御方法、プログラム及び記録媒体 |
JP4689453B2 (ja) * | 2005-12-02 | 2011-05-25 | キヤノン株式会社 | 情報処理装置、データ処理方法、及びプログラム |
JP4823965B2 (ja) | 2007-05-10 | 2011-11-24 | 株式会社リコー | 画像処理装置、プログラムおよび画像処理方法 |
JP4717915B2 (ja) * | 2008-09-29 | 2011-07-06 | キヤノン株式会社 | 放送受信装置及び放送受信装置の制御方法 |
JP2010238086A (ja) * | 2009-03-31 | 2010-10-21 | Canon Inc | 画像入出力装置、印刷プレビュー表示方法、および印刷プレビュー表示プログラム |
JP2011043934A (ja) * | 2009-08-20 | 2011-03-03 | Fujitsu Ltd | 図面修正支援プログラム及び図面修正支援装置 |
JP5630061B2 (ja) * | 2010-04-05 | 2014-11-26 | ブラザー工業株式会社 | 情報処理装置及びプログラム |
JP6051722B2 (ja) * | 2012-09-20 | 2016-12-27 | ブラザー工業株式会社 | プログラムおよび情報処理装置 |
JP2015225535A (ja) * | 2014-05-28 | 2015-12-14 | キヤノン株式会社 | 情報処理装置、及びこれを用いる認証プリントシステム |
-
2015
- 2015-12-17 JP JP2015246101A patent/JP6202081B2/ja not_active Expired - Fee Related
-
2016
- 2016-12-06 US US15/370,061 patent/US9871933B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017111651A (ja) | 2017-06-22 |
US20170180569A1 (en) | 2017-06-22 |
US9871933B2 (en) | 2018-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2610732B1 (en) | Print control device and computer-readable storage medium storing a program | |
JP4630751B2 (ja) | 印刷システム、印刷装置及びその制御方法、プログラム | |
JP5451352B2 (ja) | プリントサーバー、印刷設定画面の提供方法及びプログラム | |
JP2020004158A (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP6206149B2 (ja) | 印刷システム | |
US9135528B2 (en) | Information processing apparatus, job processing method in information processing apparatus, and storage medium | |
US8605316B2 (en) | Information processing apparatus and control method thereof, and storage medium | |
US10996908B2 (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 | |
JP5581793B2 (ja) | 情報処理装置、プログラムおよび記憶媒体 | |
JP6202081B2 (ja) | 情報処理装置、プログラム、画像処理システム | |
US11175871B2 (en) | Image forming apparatus, non-transitory computer readable medium, and image forming system for receipt of print data including print settings | |
JP5834648B2 (ja) | 情報処理装置、プログラムおよび制御方法 | |
JP2019086987A (ja) | 画像形成装置、その制御方法、及びプログラム | |
JP5955245B2 (ja) | 画像処理装置 | |
JP6607201B2 (ja) | サーバー装置、プログラム及び情報処理システム | |
US20150237226A1 (en) | Printing instruction apparatus, image forming system, printing instruction method, and computer readable medium | |
JP2018206311A (ja) | 印刷システム、サーバ及びその制御方法とプログラム | |
JP7024547B2 (ja) | アプリケーションプログラム | |
JP5625497B2 (ja) | 情報処理装置、情報処理システム、情報処理方法、プログラム、及びそのプログラムを記憶した記録媒体 | |
JP2015225535A (ja) | 情報処理装置、及びこれを用いる認証プリントシステム | |
JP6221543B2 (ja) | プログラム、情報処理装置、情報処理システム及び画像処理システム | |
JP6492948B2 (ja) | 情報処理装置、出力システム及びプログラム | |
US20230350617A1 (en) | Computer-readable storage medium, information processing device, and method for printing composite image | |
JP6323371B2 (ja) | 情報処理装置、情報処理方法 | |
JPWO2018142695A1 (ja) | サーバー装置及び情報処理システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20170801 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170814 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6202081 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |