JP2004178097A - Image processor, image forming device and program - Google Patents

Image processor, image forming device and program Download PDF

Info

Publication number
JP2004178097A
JP2004178097A JP2002341358A JP2002341358A JP2004178097A JP 2004178097 A JP2004178097 A JP 2004178097A JP 2002341358 A JP2002341358 A JP 2002341358A JP 2002341358 A JP2002341358 A JP 2002341358A JP 2004178097 A JP2004178097 A JP 2004178097A
Authority
JP
Japan
Prior art keywords
pdf file
data
file
printing
printer
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
JP2002341358A
Other languages
Japanese (ja)
Other versions
JP2004178097A5 (en
JP4110945B2 (en
Inventor
Masahiro Ozawa
昌裕 小澤
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.)
Minolta Co Ltd
Original Assignee
Minolta 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 Minolta Co Ltd filed Critical Minolta Co Ltd
Priority to JP2002341358A priority Critical patent/JP4110945B2/en
Publication of JP2004178097A publication Critical patent/JP2004178097A/en
Publication of JP2004178097A5 publication Critical patent/JP2004178097A5/ja
Application granted granted Critical
Publication of JP4110945B2 publication Critical patent/JP4110945B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image processor, an image forming device and a program capable of preventing a file from being drastically changed at a transmission side, and surely printing a PDF file even at the time of transmitting the PDF file to an image forming device in which the available capacity of a storage part is small without converting it into print data. <P>SOLUTION: When a storage capacity necessary for the printing of a PDF file to be printed is larger than that of the storage part of a printer (S102 or S104: YES), this PC linearizes a PDF file (S105). Then, the PC transmits leading data including a hint table in the linearized PDF file to the printer (S106). Then, the PC extracts the predetermined data of the PDF file each time it is requested from the printer, and transmits the data to the printer. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、画像処理装置、画像形成装置、およびプログラムに関し、特に、PDFファイルをプリントデータに変換せずに画像処理装置から画像形成装置に送信して印刷するための画像処理装置、画像形成装置、およびプログラムに関する。
【0002】
【従来の技術】
パーソナルコンピュータ(以下、「PC」という)は、たとえばハードディスクに保存されている文書ファイルを、LANなどのネットワークを介してプリンタに送信して印刷することができる。
【0003】
この場合、文書ファイルは、通常、PCにインストールされているプリンタドライバによって、プリンタで解析可能なPS(PostScript(R))等のPDL(Page Description Language:ページ記述言語)で記述されたプリントデータに変換されてから、送信される。
【0004】
一方、インターネット上で配布される文書ファイルとして、ハードウェアやアプリケーションの種類にかかわらずにオリジナル文書と同じ体裁を再現できるPDF(Portable Document Format)ファイルが広く普及してきている。このPDFファイルは、ページ順と異なる順序でファイル内に配置可能なオブジェクトと当該オブジェクトのファイル内での位置を示す参照情報とを備え、所定のオブジェクトから構成されるページを規定している。
【0005】
ところで、PDFファイルは、たとえば数百ページものデータを有している場合がある。このような特にデータサイズの大きいPDFファイルをPCでプリントデータに変換すると、変換に時間がかかること、処理が複雑になること、および変換によりデータサイズが却って大きくなってデータ転送時間が増えることなどの理由により、PCの負荷が増大することになる。かかるPCの負荷を軽減するために、プリントデータに変換せずにPCからプリンタに送信されたPDFファイルを直接印刷すること(以下、「PDFダイレクトプリント」という)が可能なプリンタが提案されている。
【0006】
しかし、PS等のPDLで記述されたプリントデータは印刷すべきデータがファイル内でページ順に配置されているため、プリンタは受信したプリントデータの先頭ページから印刷可能であるのに対して、PDFファイルは印刷すべきデータがファイル内でページ順とは関係なく配置可能であるため、プリンタはPDFファイル全体を受信した後でないと印刷できない。このため、プリンタは、搭載されるメモリの容量(使用可能容量ないし空き容量)が足りないためにPDFファイル全体を受信できず、印刷を実行できない場合があった。
【0007】
この問題に関連して、PDFファイル全体を受信しなくても受信したデータから順にディスプレイ上での表示が可能となるように、PDFファイルの中身を変更して再構成する装置が知られている(たとえば、特許文献1参照)。
【0008】
【特許文献1】
特表平11−502954号公報
【0009】
【発明が解決しようとする課題】
ところで、広範に配布されるPDFファイルは、変更や修正があまり加えられることなくたとえばネットワーク上で遣り取りされることが望ましい。しかしながら、上記特許文献1に記載の装置にあっては、結果的に、ファイル転送前にPCなどの送信側で、PDFファイルを再構成するための大幅な変更処理が行われるため、変更後のファイルがオリジナルのPDFファイルと全く異なったものになるという問題がある。
【0010】
しかも、上記装置の技術は、ディスプレイ上での表示に関する技術に過ぎないため、プリンタでの印刷に関しては十分な考慮が払われていない。具体的には、たとえば最終ページから先頭ページに向かって順番に印刷する処理を示すフェイスアップなどの特別な印刷条件が適用されて、ファイルのページ順と異なる順序で印刷する必要がある場合、上記技術は対応することができない。
【0011】
本発明は、上述の課題を解決するためになされたものであり、本発明の目的は、送信側でのファイルの大幅な変更を防止しつつ、記憶部の使用可能容量が少ない画像形成装置に対して、PDFファイルをプリントデータに変換せずに送信しても、確実に印刷することが可能となる画像処理装置、画像形成装置、およびプログラムを提供することである。
【0012】
【課題を解決するための手段】
本発明の上記目的は、下記の手段によって達成される。
【0013】
(1)PDFファイルをプリントデータに変換せずに画像形成装置に送信する画像処理装置であって、印刷すべきPDFファイルのサイズと、当該PDFファイルを印刷すべき画像形成装置の記憶部の使用可能容量とを比較する比較手段と、前記比較手段による比較の結果、PDFファイルの印刷に必要な記憶容量が画像形成装置の記憶部の使用可能容量よりも大きい場合、当該PDFファイルをリニアライズする変換処理手段とを有する画像処理装置。
【0014】
(2)前記画像形成装置に対して、前記変換処理手段によりリニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データを送信する送信手段をさらに有する上記(1)に記載の画像処理装置。
【0015】
(3)PDFファイルをプリントデータに変換せずに画像形成装置に送信する画像処理装置で用いられるプログラムであって、印刷すべきPDFファイルのサイズと、当該PDFファイルを印刷すべき画像形成装置の記憶部の使用可能容量とを比較する比較手順と、前記比較手順における比較の結果、PDFファイルの印刷に必要な記憶容量が画像形成装置の記憶部の使用可能容量よりも大きい場合、当該PDFファイルをリニアライズする変換処理手順とを前記画像処理装置に実行させるためのプログラム。
【0016】
(4)前記画像形成装置に対して、前記変換処理手順においてリニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データを送信する送信手順をさらに前記画像処理装置に実行させるための上記(3)に記載のプログラム。
【0017】
(5)PDFファイルをプリントデータに変換されることなく画像処理装置から受信して印刷する画像形成装置であって、前記画像処理装置から、リニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データを受信する第1の受信手段と、前記第1の受信手段により受信された先頭データを解析した結果に基づいて、前記PDFファイルのうちの必要なデータを決定する決定手段と、前記画像処理装置に対して、前記必要なデータについての送信要求を送信する送信手段と、前記送信要求に応じて前記画像処理装置から送信されたデータを受信する第2の受信手段と、前記第2の受信手段により受信されたデータに基づいて印刷を行う印刷手段とを有する画像形成装置。
【0018】
【発明の実施の形態】
以下、図面を参照して、本発明の実施の形態を説明する。
【0019】
図1は、本発明の一実施形態に係るPCおよびプリンタが適用されたプリントシステムの構成を示すブロック図である。
【0020】
図1に示すように、プリントシステムは、画像処理装置としての機能を有するPC100A、100Bと、画像形成装置としてのプリンタ200とを備え、これらはネットワーク300を介して相互に通信可能に接続されている。ネットワーク300は、イーサネット(R)、トークンリング、FDDI等の規格によるLANや、LAN同士を専用線で接続したWAN等からなる。
【0021】
なお、ネットワークに接続される機器の種類および台数は、図1に示す例に限定されない。また、プリンタ200は、ネットワーク300を介することなく、PC100Aまたは100Bと直接機器間で接続(ローカル接続)されていてもよい。
【0022】
図2は、図1に示されるPC100A、100Bの構成を示すブロック図である。図2に示すように、PC100A、100Bは、装置全体の制御および各種演算処理を行うCPU101、プログラムやデータを格納するためのROM102、作業領域として一時的にプログラムやデータを記憶するためのRAM103、各種のプログラムやデータを保存するための外部記憶装置としてのハードディスク104、各種情報の表示のための液晶ディスプレイなどの表示部105、各種指示の入力のためのキーボードやマウスなどからなる入力部106、およびネットワーク300に接続するためのLANカードなどのネットワークインタフェース107を含み、これらは信号を遣り取りするためのバス108を介して相互に接続されている。
【0023】
図3は、図1に示されるプリンタ200の構成を示すブロック図である。図3に示すように、プリンタ200は、CPU201、ROM202、RAM203、操作パネル部204、印刷部205、およびネットワークインタフェース206を含み、これらは信号を遣り取りするためのバス207を介して相互に接続されている。なお、プリンタ200の構成要素のうち、PC100A、100Bの構成要素と同様の機能を有する部分についての重複する説明を省略する。
【0024】
RAM203は、PCから受信したデータを一時的に記憶できる。ROM202には、文字の書体に関するデータであるフォントデータが格納される。なお、プリンタ200は、各種のプログラムやデータを保存するための外部記憶装置としてのハードディスクを有していてもよい。操作パネル部204は、各種情報の表示および各種指示の入力に使用される。印刷部205は、電子写真式プロセス等の周知の作像プロセスを用いて、各種データを用紙などの記録材上に印刷する。
【0025】
PC100A、100B、およびプリンタ200は、上述した構成要素以外の構成要素を含んでいてもよく、あるいは、上述した構成要素のうちの一部が含まれていなくてもよい。以下においては、たとえばPC100Aからプリンタ200にデータが送信されて印刷が行われる場合について説明する。
【0026】
図1に示されるプリントシステムでは、通常プリントと、PDFダイレクトプリントとの2種類の印刷が実行可能である。通常プリントを実行する場合、所定のファイルは、PC100Aのハードディスク104にインストールされたプリンタドライバによってPS等のPDLで記述されたプリントデータに変換された後、プリンタ200に送信される。一方、PDFダイレクトプリントを実行する場合、PDFファイルは、ハードディスク104にインストールされた後述するプログラムにしたがって、プリントデータに変換されることなく、PC100Aからプリンタ200に送信される。
【0027】
ここで、図4および図5を参照して、標準的なPDFファイルの構造および解析方法について簡単に説明する。図4は、標準的なPDFファイルの構成を説明するための図、図5は、標準的なPDFファイルのサンプルを示す図である。なお、図4および図5は、「PDF Reference third edition Adobe Portable Document Format Version 1.4」(アドビシステムズ社)を参考にして作成されている。
【0028】
図4および図5に示すように、標準的なPDFファイル500は、ヘッダ510、ボディ520、相互参照表530、およびトレーラ540から構成される。
【0029】
ヘッダ510には、「%」で始まるコメントが記述される。図5のヘッダ510から、ファイルのフォーマットがPDFであること、および準拠するPDF仕様のバージョン(ここでは1.4)がわかる。
【0030】
ボディ520は、文書を構成するオブジェクト(図5ではオブジェクト1〜6)を含む。オブジェクトとは、文書構造、ページ情報、フォント情報、色情報など、文書を構成する個々の要素をいう。たとえば最初のオブジェクト1は、「1 0 obj」から「endobj」までの記述により定義され、他のオブジェクトも同様に定義される。ここで、たとえば「1 0 obj」における最初の数字およびその次の数字は、それぞれオブジェクトのID番号および生成番号(generation)を表す。このボディ520において、ファイル属性、ページ属性、文字情報、グラフィス情報、およびイメージ情報などの各種情報が、オブジェクトという最小単位の組み合わせにより構成される。
【0031】
相互参照表530は、ファイル内におけるオブジェクトの位置を示す参照情報である。相互参照表530において、特定のID番号(図5では、1〜6)を持つ各々のオブジェクトの位置が、ファイル先頭から当該オブジェクトの先頭までのバイト数(オフセット)で表される。これにより、ボディ520に並んでいるオブジェクトに対して、ランダムにアクセスすることが可能となる。この相互参照表530は、実際のファイル中では、「xref」というキーワードを含む行で始まる。
【0032】
トレーラ540は、ファイルの解析開始時にアクセスすべき情報である。具体的には、トレーラ540には、ファイル内における相互参照表530の位置を示す情報、および最初に参照すべきオブジェクト(階層構造のルートとなるルートオブジェクト)のID番号が記述される。「startxref」の次に示される数字は、ファイル先頭から相互参照表530の先頭までのバイト数(オフセット)である。「Root」を含む行は、ルートオブジェクトのID番号を示している。また、「Size」を含む行は、相互参照表530の最初のエントリ(オブジェクトのID番号が「0」)を含めて、ファイル内に存在するオブジェクトの個数を示している。このトレーラ540は、ファイルの末尾に存在し、「trailer」というキーワードを含む行で始まる。
【0033】
PDFファイルを解析する装置は、標準的なPDFファイルを解析する場合、まずファイルの末尾にあるトレーラ540を解析し、次いで相互参照表530を解析する。そして、これらの解析で得られた情報に基づいて、ボディ520に記述されたページの内容を解析することができる。オブジェクトには、次に必要となるデータが記述されている別のオブジェクトのID番号が含まれている。このため、次に必要なオブジェクトのID番号をたどることにより、PDFファイルの全体的な解析が可能となる。次に参照すべきオブジェクトのID番号が示されるため、オブジェクトは、PDFファイルのボディ内において解析順に並んで配置される必要はない。したがって、オブジェクトは、PDFファイルのボディ内においてオブジェクト単位で任意の順序で記述されることができ、結果として、ページ順と異なる順序でファイル内に配置可能となる。
【0034】
このように、PDFファイルを解析する装置は、標準的なPDFファイルを解析する場合、最初にファイルの末尾付近にあるトレーラ540および相互参照表530を解析した後に、ページ順と必ずしも関係のない順序でファイル内に並ぶオブジェクトにアクセスしなければならない。このため、PDFファイルを解析する装置は、通常、PDFファイル全体をメモリ等の記憶装置に保持した後でなければ解析することができない。本発明は、後述するように、リニアライズされたPDFファイルを利用することにより、プリンタなどの画像形成装置がPDFファイル全体をメモリ等の記憶装置に保持できなくても、確実に印刷することを可能ならしめたものである。
【0035】
次に、図6〜図8を参照して、PC100Aで行われる処理について説明する。なお、図6〜図8のフローチャートにより示されるアルゴリズムは、PC100Aのハードディスク104などの記憶装置にプログラムとして記憶されており、CPU101により実行される。
【0036】
ここでは、PDFファイルに対して、プリンタドライバを使用した通常プリントではなく、PDFダイレクトプリントが実行され、プリンタ200でPDFファイルの印刷が行われる場合について説明する。
【0037】
PC100Aのデスクトップ上には、PDFダイレクトプリントについてのアプリケーションプログラムファイルのアイコンがあらかじめ表示される。ユーザは、PDFファイルを当該アイコンにドラッグ&ドロップしてアプリケーションプログラムを起動することにより、PDFダイレクトプリントの実行の指示を行うことができる。なお、PDFダイレクトプリントの実行の指示は、他の方法により行われてもよい。
【0038】
また、たとえばユーザによるPDFダイレクトプリントの実行の指示の前に、印刷条件が入力部106を通して指定される。ここで、印刷条件とは、ページについての印刷順序に関連する属性をいう。印刷条件には、たとえば、ブックレット綴じの適用の有無、最終ページから先頭ページに向かって順番に印刷する処理を示すフェイスアップの適用の有無、1枚の用紙に複数ページ(Nページ)を縮小して印刷するためのNin1の適用の有無、印刷部数、および部単位で出力するためのコレートの適用の有無が含まれる。ただし、印刷条件には、印刷に関する他の属性が含まれていてもよい。なお、印刷条件は、プリンタ200において操作パネル部204を通して設定されてもよい。
【0039】
PC100Aは、まず、ユーザによるPDFファイルに対するPDFダイレクトプリントの実行の指示を受け付ける(S101)。
【0040】
続いて、印刷すべきPDFファイルのサイズと、当該PDFファイルを印刷すべきプリンタ200のメモリ(RAM203)の使用可能容量とが比較され、比較の結果、PDFファイルの印刷に必要な記憶容量がプリンタ200のメモリの使用可能容量よりも大きいか否かが判断される(S102)。
【0041】
ここで、PC100Aは、出力先となるたとえばプリンタ200に要求することにより、プリンタ200からプリンタの固有情報を取得する。ただし、プリンタの固有情報は、PC100Aまたはプリンタ200の起動時に、PC100Aからプリンタ200に要求することにより取得されてもよい。プリンタの固有情報には、プリンタに搭載されているメモリの使用可能容量、ハードディスクの装備の有無、およびプリンタにハードディスクが装備されている場合にはハードディスクの使用可能容量が含まれる。なお、ステップS102(S104においても同様)の判断において使用されるプリンタのメモリの使用可能容量は、メモリの使用状況に応じた動的な値であることが望ましい。ただし、プリンタのメモリの使用可能容量として固定的な値が使用されてもよく、一定の効果が期待できる。また、PC100Aにおいて、プリンタ200の固有情報があらかじめ手動で設定されていてもよい。
【0042】
PDFファイルの印刷に必要な記憶容量がプリンタ200のメモリの使用可能容量以下の場合(S102でNO)、PDFファイル全体がプリンタ200のメモリに保持可能なため、そのままPDFファイルの送信処理が実行される(S106)。
【0043】
一方、PDFファイルの印刷に必要な記憶容量がプリンタのメモリの使用可能容量よりも大きい場合(S102でYES)、プリンタ200がハードディスクを装備しているか否かが判断される(S103)。かかる判断の際、プリンタの固有情報が参照される。
【0044】
ステップS103において、プリンタ200がハードディスクを装備している場合(S103でYES)、印刷すべきPDFファイルのサイズと、当該PDFファイルを印刷すべきプリンタ200のハードディスクの使用可能容量とが比較され、比較の結果、PDFファイルの印刷に必要な記憶容量がプリンタ200のハードディスクの使用可能容量よりも大きいか否かが判断される(S104)。
【0045】
PDFファイルの印刷に必要な記憶容量がプリンタ200のハードディスクの使用可能容量以下の場合(S104でNO)、PDFファイル全体がプリンタ200のハードディスクに保持可能なため、そのままPDFファイルの送信処理が実行される(S106)。
【0046】
ステップS103において、プリンタ200がハードディスクを装備していないと判断された場合(S103でNO)、あるいは、ステップS104において、PDFファイルの印刷に必要な記憶容量がプリンタ200のハードディスクの使用可能容量よりも大きいと判断された場合(S104でYES)、PDFファイルの解析処理が行われる(S105)。このPDFファイルの解析処理が終了した後、PDFファイルの送信処理が行われる(S106)。
【0047】
ここで、図7を参照して、図6のステップS105におけるPDFファイルの解析処理について説明する。
【0048】
まず、印刷すべきPDFファイルがリニアライズされたPDFファイル(Linearized PDF)であるか否かが判断される(S301)。リニアライズされたPDFファイルについての詳細は後述する。リニアライズされたPDFファイルの場合(S301でYES)、PDFファイルの解析処理が終了する。
【0049】
リニアライズされたPDFファイルでない場合、つまり印刷すべきPDFファイルが標準的なPDFファイルである場合(S301でNO)、当該PDFファイルがリニアライズされる(S302)。PDFファイルのリニアライズは、リニアライズ機能を有するアプリケーションを使用して自動的に行われる。リニアライズされたPDFファイルは、メモリ(RAM103)などの記憶装置に保存され、PDFファイルの解析処理が終了する。
【0050】
図9および図10は、それぞれリニアライズされたPDFファイルのサンプルの前半部分および後半部分を示す図である。なお、図9および図10は、「PDF Reference third edition Adobe Portable Document Format Version 1.4」(アドビシステムズ社)を参考にして作成されている。
【0051】
リニアライズされたPDFファイルとは、ネットワーク環境下での効率的なアクセスを可能とするために最適化されたPDFファイルをいう。図9に示すように、リニアライズされたPDFファイル600は、ヘッダ(パート1)601、リニアライゼイションパラメータ(パート2)602、最初のページの相互参照表およびトレーラ(パート3)603、文書カタログおよび文書レベルオブジェクト(パート4)604、ヒントテーブル(パート5)605、最初のページ部(パート6)606、および残りのページ(パート7)607などのパートを有している。
【0052】
リニアライゼイションパラメータ602は、ヘッダ601の次に配置されており、PDFファイルの先頭から1024バイト以内に収められている。このリニアライゼイションパラメータ602は、「Linearized 1.0」というリニアライズのバージョンを示す記述を含んでいる。したがって、PC100Aは、PDFファイルの先頭から1024バイトのデータを解析することにより、印刷すべきPDFファイルが標準的なPDFファイルであるか、あるいはリニアライズされたPDFファイルであるかを判断することができる。
【0053】
ヒントテーブル605は、最初のページ部606の前あるいは後ろに配置されており、PDFファイルの先頭から1024バイト以内に収められている。このヒントテーブル605は、第2ページ以降のデータに関するオブジェクトの位置を示す参照情報等の、残りのページの情報を示す記述を含んでいる。つまり、リニアライズされたPDFファイルは、ヒントテーブル605を含む先頭データ(具体的にはファイルの先頭からたとえば1024バイトまでのデータ)が解析されることによって、必要なページのデータが自由に取得され得る構造となっている。したがって、リニアライズされたPDFファイルを解析する装置は、先頭データに含まれるヒントテーブル605を参照することにより、任意のページのデータに即座にアクセスすることができる。
【0054】
次に、図8を参照して、図6のステップS106におけるPDFファイルの送信処理について説明する。
【0055】
まず、送信しようとするPDFファイルがリニアライズされたPDFファイルであるか否かが判断される(S401)。
【0056】
送信しようとするPDFファイルがリニアライズされたPDFファイルでない場合、すなわち標準的なファイルである場合(S401でNO)、ユーザによるPDFダイレクトプリントの実行を指示する際に指定された、たとえばプリンタ200に対して、PDFファイル全体が送信される(S407)。このとき、印刷条件もまた、PC100Aからプリンタ200に送信される(S402においても同様)。PDFファイル全体が送信された後、図6のフローチャートに戻り、図6に示される処理の実行を終了する。
【0057】
一方、送信しようとするPDFファイルがリニアライズされたPDFファイルである場合(S401でYES)、ヒントテーブル605を含む先頭データが、プリンタ200に対して送信される(S402)。
【0058】
ステップS403では、プリンタ200から、PDFファイルのうちの所定のデータについての送信要求を受信したか否かが判断される。ここで、所定のデータは、プリンタ200における印刷に応じて順次必要となるデータ(たとえば所定のオブジェクト)である。
【0059】
所定のデータについての送信要求を受信した場合(S403でYES)、要求されたデータが、PDFファイルから抽出され(S404)、プリンタ200に送信される(S405)。一方、所定のデータについての送信要求を受信しない場合(S403でNO)、ステップS406に進む。
【0060】
PC100Aからプリンタ200へのPDFファイルの送信方法としては、アプリケーションプログラムの実行によって、PCとプリンタとの間でセッションを確立し、指定したPDFファイルを転送する方法が採用される。したがって、ユーザには操作の負担がかからない。ただし、OS(基本ソフトウェア)の機能を用いてPDFファイルの転送を実現することも可能である。
【0061】
送信要求されるデータ(たとえばオブジェクト)は、ファイル先頭から当該データの先頭までのバイト数(オフセット)と、バイト数で表した当該データ長とで特定され得る。転送プロトコルとしては、HTTP、FTPなどの各種プロトコルが使用され得る。
【0062】
ステップS406では、プリンタ200におけるPDFファイルの印刷がすべて終了したか否かが判断される。ここで、印刷の終了は、たとえばプリンタ200から、印刷終了を示す通知を受信したか否かで判断することができる。
【0063】
PDFファイルの印刷が終了していない場合(S406でNO)、ステップS403に戻って、ステップS403〜S406の処理が繰り返される。すなわち、PC100Aは、プリンタ200から所定のデータの送信要求があるたびに、プリンタ200から要求されたデータを抽出し、抽出したデータをプリンタ200に送信する。そして、PDFファイルの印刷がすべて終了した場合(S406でYES)、図6のフローチャートに戻り、図6に示される処理の実行を終了する。
【0064】
次に、図11〜図13を参照して、プリンタ200で行われる処理について説明する。なお、図11〜図13のフローチャートにより示されるアルゴリズムは、プリンタ200のROM202などの記憶装置にプログラムとして記憶されており、CPU201により実行される。
【0065】
ここでは、プリンタ200が、PC100Aから送信される印刷すべきPDFファイルを受信して、受信したPDFファイルに対して、PDFダイレクトプリントを実行する場合について、以下に説明する。
【0066】
まず、プリンタ200は、PC100Aから送信されたPDFファイルの受信を開始する(S501)。なお、受信開始後、PC100Aから送信されたデータを受信し終わるまで、当該データの受信が継続される。
【0067】
続いて、PDFファイルの先頭データ(ファイルの先頭からたとえば1024バイトまでのデータ)が受信されるまで待機する(S502)。ここで、印刷すべきPDFファイルがリニアライズされたPDFファイルの場合、先頭データにはヒントテーブル605が含まれる。受信された先頭データは、メモリ(RAM203)に保存される。
【0068】
続いて、受信された先頭データに含まれるリニアライゼイションパラメータ602から、印刷すべきPDFファイルがリニアライズされたPDFファイルであるか否かが判断される(S503)。
【0069】
印刷すべきPDFファイルがリニアライズされたPDFファイルである場合、(S503でYES)、リニアライズされたPDFファイルの印刷処理が行われる(S504)。この処理についての詳細は後述する。
【0070】
一方、印刷すべきPDFファイルがリニアライズされたPDFファイルでない場合、すなわち標準的なファイルである場合(S503でNO)、標準的なファイルの印刷処理が行われる(S505)。この処理についての詳細は後述する。
【0071】
次に、図12を参照して、図11のステップS504におけるリニアライズされたPDFファイルの印刷処理について説明する。
【0072】
まず、プリンタ200は、受信されたヒントテーブル605を含む先頭データの解析を行う(S601)。
【0073】
リニアライズされたPDFファイルの先頭データには、ヒントテーブル605と、第1ページのデータを有する最初のページ部606とが存在する。ここで、ヒントテーブル605は、解析された後にメモリに保存される。なお、ヒントテーブル605は、最初のページ部606の後ろに配置されている場合、1ページのデータに基づく印刷が必要に応じて行われた後に、解析されてメモリに保存されてもよい。
【0074】
ステップS602では、ページ単位で必要なデータがPC100Aに対して要求され、この要求に応じたデータがPC100Aから受信される。ただし、ステップS602の処理は、複数ページを有するPDFファイルをページ単位で印刷する場合であって、かつ第1ページの印刷を行う順番でないときに実行される。PC100Aに対して要求されるデータは、1つのオブジェクトでもよいし、複数のオブジェクトなどの適当なデータのまとまりであってもよい。また、プリンタ200におけるメモリの使用可能容量の余裕度に応じて、PDFファイルの複数ページ分がPC100Aに対して要求されてもよい。
【0075】
ここで、プリンタ200は、メモリに保存したヒントテーブル605を参照して、適切な印刷を行うために必要なデータを決定し、PC100Aに対して、必要なデータを要求する。このとき、印刷条件もまた参照される。PDFファイルの印刷に対して、たとえばフェイスアップが適用される場合、ファイルの最終ページから先頭ページに向かって順番に、ページのデータが送信要求されることになる。フェイスダウンが適用される場合には、ファイルのページ順と同じ順序で、ページのデータが送信要求される。つまり、同じPDFファイルを印刷する場合でも、ページについての印刷順序は、印刷条件によって異なる。このため、プリンタからPCに送信要求されるデータは、印刷条件を参照して決定される。前述したように、ヒントテーブル605には、第2ページ以降のデータに関するオブジェクトの位置を示す参照情報が含まれているため、プリンタ200は、任意のページのデータを指定して、PC100Aから当該データを取得することが可能である。
【0076】
なお、第1ページの印刷を行う順番である場合、ステップS602では何らの処理も行われずに、ステップS603に進む。これは、リニアライズされたPDFファイルの先頭データには、第1ページのデータがすべて記述されているからである。ただし、最初のページの相互参照表およびトレーラ603を解析した結果に基づいて、ステップS602において、第1ページのデータが、第2ページ以降のデータと同様にしてPC100Aに対して要求され、この要求に応じたデータがPC100Aから受信されてもよい。
【0077】
ステップS603では、印刷すべきデータ、すなわち受信した所定のページのデータ、あるいは第1ページのデータについて、プリンタで内部処理可能な形式の中間言語が作成される。
【0078】
続いて、作成された中間言語から、ビットマップ形式のラスタデータが作成される(S604)。作成されたラスタデータは印刷部205に転送され(S605)、印刷処理が実行される(S606)。
【0079】
ステップS606の印刷処理では、1枚の用紙上に出力するための全データである出力ページが完成した場合に、当該出力ページが用紙上に印刷される。たとえば1枚の用紙上に、PDFファイルの1ページ分を印刷する一般的な場合には、1ページ分のラスタデータが作成されたときに、出力ページが完成したと判断されて、当該出力ページが用紙上に印刷される。ただし、PDFファイルの印刷に対してたとえばNin1(N=2)が適用される場合、1枚目の用紙には2ページ分のデータが印刷されなければならないので、1ページ分についてのラスタデータが作成されただけでは、出力ページは完成しない。この場合、さらに必要なページについてのラスタデータを取得した後に(S602〜S605)、完成した出力ページについての印刷が行われる。
【0080】
ステップS607では、PDFファイルの全ページ分の印刷が完了したか否かが判断される。全ページ分の印刷が完了していない場合(ステップS607でNO)、ステップS602に戻って、ステップS602〜S607の処理が繰り返される。
【0081】
そして、印刷すべきPDFファイルの全ページ分の印刷が完了した場合(ステップS607でYES)、図11のフローチャートに戻り、図11に示される処理の実行を終了する。
【0082】
なお、図12の処理において、ラスタライズされたPDFファイルの印刷に必要な記憶容量がプリンタ200のメモリあるいはハードディスクの使用可能容量以下である場合、ラスタライズされたPDFファイルの全体を一括して受信した後に、ヒントテーブル605を参照しつつ印刷処理を行うことも可能である。
【0083】
次に、図13を参照して、図11のステップS505における標準的なPDFファイルの印刷処理について説明する。
【0084】
PC100Aがプリンタ200に対して標準的なPDFファイルを送信することは、プリンタ200のメモリ(ハードディスクを装備したプリンタの場合、メモリあるいはハードディスク)が、当該標準的なPDFファイルの印刷に必要な記憶容量を確保するだけの使用可能容量を有していることを示している。
【0085】
したがって、受信した標準的なPDFファイルの全体は、一括してメモリに保存される(S701)。なお、ハードディスクを装備したプリンタの場合、PDFファイルの全体は、メモリに十分な空き容量がある場合にはメモリに、メモリに十分な空き容量がない場合にはハードディスクに保存される。ファイルのメモリへの保存中にメモリの空き容量が足りなくなった場合には、メモリに保存済みのデータがハードディスクにスワップされ、ファイルの保存場所がハードディスクに変更される。
【0086】
プリンタ200は、トレーラ540および相互参照表530(図4および図5参照)の解析結果と、印刷条件とに基づいてPDFファイルを解析して、印刷すべきデータをページ単位で取得する。そして、取得された所定のページのデータについての中間言語が作成される(S702)。
【0087】
続いて、作成された中間言語から、ビットマップ形式のラスタデータが作成される(S703)。作成されたラスタデータは印刷部205に転送され(S704)、印刷処理が実行される(S705)。
【0088】
ステップS706では、PDFファイルの全ページ分の印刷が完了したか否かが判断される。全ページ分の印刷が完了していない場合(ステップS706でNO)、ステップS702に戻って、ステップS702〜S706の処理が繰り返される。
【0089】
そして、印刷すべきPDFファイルの全ページ分の印刷が完了した場合(ステップS706でYES)、図11のフローチャートに戻り、図11に示される処理の実行を終了する。
【0090】
このように本実施形態によれば、PCは、PDFファイルをPS等のPDLで記述されたプリントデータに変換せずにプリンタに送信する場合に、印刷すべきPDFファイルの印刷に必要な記憶容量がプリンタの記憶部の使用可能容量よりも大きいとき、当該PDFファイルをリニアライズすることができる。
【0091】
したがって、リニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データをプリンタに送信することにより、プリンタは、PCに対して印刷に必要なデータを順次要求することができ、PCは、PDFファイルのうちの所定のデータを、プリンタから要求されるたびに抽出して、プリンタに送信することができる。
【0092】
これにより、メモリの使用可能容量が少ないプリンタに対して、PDFファイルをプリントデータに変換せずに送信しても、確実に印刷することが可能となる。しかも、PDFファイルの送信側であるPCでは、PDFファイルをリニアライズするだけで済み、ファイルを再構成するための大幅な変更処理を行う必要がない。
【0093】
また、プリンタからPCに送信要求されるデータを、印刷条件を参照して決定することにより、ブックレット綴じ、あるいはフェイスアップなどの特別な印刷条件が適用されてファイルのページ順と異なる順序で印刷する必要がある場合であっても、支障なく十分対応することができる。
【0094】
図14は、図6のステップS105におけるPDFファイルの解析処理の他の実施形態について説明するためのフローチャートである。図14に示される処理以外の点は、上記の実施形態と同様であるため、その説明を省略する。
【0095】
この実施形態では、Adobe(R)Acrobat(R)、あるいはこれと同様なPDFファイルに対するリニアライズ機能を有するアプリケーションが、PCのハードディスク104などの記憶装置にインストールされている。
【0096】
まず、印刷すべきPDFファイルがリニアライズされたPDFファイルであるか否かが判断される(S801)。リニアライズされたPDFファイルの場合(S801でYES)、PDFファイルの解析処理が終了する。
【0097】
リニアライズされたPDFファイルでない場合、つまり印刷すべきPDFファイルが標準的なPDFファイルである場合(S801でNO)、標準的なPDFファイルをリニアライズするためのリニアライズ・アプリケーション(たとえばAdobe(R)Acrobat(R))が起動される(S802)。
【0098】
そして、ステップS803では、起動されたリニアライズ・アプリケーションにより、印刷すべきPDFファイルがリニアライズされる(S803)。リニアライズされたPDFファイルは、メモリ(RAM103)などの記憶装置に保存され、PDFファイルの解析処理が終了する。この実施形態によっても、上記の実施形態と同様の効果を得ることが可能である。
【0099】
なお、リニアライズの実行を指示する処理をあらかじめAdobe(R)Acrobat(R)にプラグインとして組み込んでおくことにより、ユーザの余分な操作を無くすことができる。また同時に、リニアライズされたPDFファイルをプリンタに送信する機能を上記プラグインに含めることにより、PDFファイルのリニアライズから、リニアライズされたPDFファイルのプリンタへの送信までの一連の処理を簡単に実行させることが可能となる。
【0100】
本発明は、上述した実施形態のみに限定されるものではなく、特許請求の範囲内において、種々改変することができる。
【0101】
たとえば、画像処理装置としての機能を有する装置として、PCの代わりに、ワークステーション、サーバなどのコンピュータが用いられてもよい。また、プリンタの代わりに、ファクシミリ装置、コピー機、およびそれらを複合した機能を有する多機能周辺機器(MFP:Multi−Function Peripheral)などの画像形成装置が用いられてもよい。
【0102】
本発明において、PDFファイルをプリントデータに変換せずに画像処理装置から画像形成装置に送信して印刷するための各種処理を行う手段および方法は、専用のハードウェア回路、またはプログラムされたコンピュータのいずれによっても実現することが可能である。上記プログラムは、例えばフレキシブルディスクやCD−ROMなどのコンピュータ読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピュータ読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶装置に転送されて記憶される。また、上記プログラムは、単独のアプリケーションソフトとして提供されてもよいし、装置の一機能としてその装置のソフトウェアに組み込まれてもよい。
【0103】
なお、上述した本発明の実施形態には、特許請求の範囲の請求項1〜5に記載した発明以外にも、以下の付記1〜10に示すような発明が含まれる。
【0104】
[付記1] 前記変換処理手段は、前記比較手段による比較の結果、PDFファイルの印刷に必要な記憶容量が画像形成装置の記憶部の使用可能容量よりも大きい場合であって、当該PDFファイルがまだリニアライズされていないときに、当該PDFファイルをリニアライズする請求項1に記載の画像処理装置。
【0105】
[付記2] 前記比較手段による比較の結果、PDFファイルの印刷に必要な記憶容量が画像形成装置の記憶部の使用可能容量以下である場合、前記変換処理手段は、当該PDFファイルをリニアライズせず、前記送信手段は、前記画像形成装置に対して、当該PDFファイル全体を送信する請求項2に記載の画像処理装置。
【0106】
[付記3] 前記画像形成装置から、前記PDFファイルのうちの所定のデータについての送信要求を受信する受信手段と、
前記PDFファイルから、前記送信要求に応じたデータを抽出する抽出手段と、
前記画像形成装置に対して、前記抽出手段により前記PDFファイルから抽出されたデータを送信する第2の送信手段と
をさらに有する請求項2に記載の画像処理装置。
【0107】
[付記4] 前記決定手段は、ページについての印刷順序に関連する印刷条件を参照して、前記必要なデータを決定する請求項5に記載の画像形成装置。
【0108】
[付記5] PDFファイルをプリントデータに変換されることなく画像処理装置から受信して印刷する画像形成装置で用いられるプログラムであって、
前記画像処理装置から、リニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データを受信する第1の受信手順と、
前記第1の受信手順において受信された先頭データを解析した結果に基づいて、前記PDFファイルのうちの必要なデータを決定する決定手順と、
前記画像処理装置に対して、前記必要なデータについての送信要求を送信する送信手順と、
前記送信要求に応じて前記画像処理装置から送信されたデータを受信する第2の受信手順と、
前記第2の受信手順において受信されたデータに基づいて印刷を行う印刷手順と
を前記画像形成装置に実行させるためのプログラム。
【0109】
[付記6] PDFファイルをプリントデータに変換せずに画像形成装置に送信する画像処理方法であって、
印刷すべきPDFファイルのサイズと、当該PDFファイルを印刷すべき画像形成装置の記憶部の使用可能容量とを比較する比較ステップと、
前記比較ステップにおける比較の結果、PDFファイルの印刷に必要な記憶容量が画像形成装置の記憶部の使用可能容量よりも大きい場合、当該PDFファイルをリニアライズする変換処理ステップと
を有する画像処理方法。
【0110】
[付記7] 前記画像形成装置に対して、前記変換処理ステップにおいてリニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データを送信する送信ステップをさらに有する付記6に記載の画像処理方法。
【0111】
[付記8] PDFファイルをプリントデータに変換されることなく画像処理装置から受信して印刷する画像形成方法であって、
前記画像処理装置から、リニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データを受信する第1の受信ステップと、
前記第1の受信ステップにおいて受信された先頭データを解析した結果に基づいて、前記PDFファイルのうちの必要なデータを決定する決定ステップと、
前記画像処理装置に対して、前記必要なデータについての送信要求を送信する送信ステップと、
前記送信要求に応じて前記画像処理装置から送信されたデータを受信する第2の受信ステップと、
前記第2の受信ステップにおいて受信されたデータに基づいて印刷を行う印刷ステップと
を有する画像形成方法。
【0112】
[付記9] 請求項3または4に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【0113】
[付記10] 付記5に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【0114】
【発明の効果】
上述したように、本発明によれば、印刷すべきPDFファイルの印刷に必要な記憶容量がプリンタの記憶部の使用可能容量よりも大きい場合、当該PDFファイルをリニアライズすることができる。したがって、リニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データを画像形成装置に送信することにより、画像形成装置は、画像処理装置に対して印刷に必要なデータを順次要求することができ、画像処理装置は、PDFファイルのうちの所定のデータを、画像形成装置から要求されるたびに抽出して、画像形成装置に送信することができる。
【0115】
これにより、記憶部の使用可能容量が少ない画像形成装置に対して、PDFファイルをプリントデータに変換せずに送信しても、確実に印刷することが可能となる。しかも、PDFファイルの送信側では、PDFファイルをリニアライズするだけで済み、ファイルを再構成するための大幅な変更処理を行う必要がない。
【0116】
また、画像形成装置から画像処理装置に送信要求されるデータを、印刷条件を参照して決定することにより、ブックレット綴じ、あるいはフェイスアップなどの特別な印刷条件が適用されてファイルのページ順と異なる順序で印刷する必要がある場合であっても、支障なく十分対応することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るPCおよびプリンタが適用されたプリントシステムの構成を示すブロック図である。
【図2】図1に示されるPCの構成を示すブロック図である。
【図3】図1に示されるプリンタの構成を示すブロック図である。
【図4】標準的なPDFファイルの構成を説明するための図である。
【図5】標準的なPDFファイルのサンプルを示す図である。
【図6】PCで行われる処理について説明するためのフローチャートである。
【図7】図6に示されるPDFファイルの解析処理について説明するためのフローチャートである。
【図8】図6に示されるPDFファイルの送信処理について説明するためのフローチャートである。
【図9】リニアライズされたPDFファイルのサンプルの前半部分を示す図である。
【図10】リニアライズされたPDFファイルのサンプルの後半部分を示す図である。
【図11】プリンタで行われる処理について説明するためのフローチャートである。
【図12】図11に示されるリニアライズされたPDFファイルの印刷処理について説明するためのフローチャートである。
【図13】図11に示される標準的なPDFファイルの印刷処理について説明するためのフローチャートである。
【図14】図6に示されるPDFファイルの解析処理の他の実施形態について説明するためのフローチャートである。
【符号の説明】
1〜21…オブジェクト、
100A、100B…PC、
101、201…CPU、
102、202…ROM、
103、203…RAM、
104…ハードディスク、
105…表示部、
106…入力部、
107、206…ネットワークインタフェース、
108、207…バス、
200…プリンタ、
204…操作パネル部、
205…印刷部、
300…ネットワーク、
500…標準的なPDFファイル、
510…ヘッダ、
520…ボディ、
530…相互参照表、
540…トレーラ、
600…リニアライズされたPDFファイル、
601…ヘッダ、
602…リニアライゼイションパラメータ、
605…ヒントテーブル、
606…最初のページ部、
607…残りのページ。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image processing apparatus, an image forming apparatus, and a program, and more particularly, to an image processing apparatus and an image forming apparatus for transmitting a PDF file from an image processing apparatus to an image forming apparatus and printing the image without converting the file into print data. , And about the program.
[0002]
[Prior art]
2. Description of the Related Art A personal computer (hereinafter, referred to as “PC”) can transmit a document file stored on a hard disk to a printer via a network such as a LAN and print the document file.
[0003]
In this case, the document file is usually written in print data described in PDL (Page Description Language) such as PS (PostScript (R)) which can be analyzed by a printer by a printer driver installed in the PC. It is transmitted after being converted.
[0004]
On the other hand, as a document file distributed on the Internet, a PDF (Portable Document Format) file capable of reproducing the same format as an original document regardless of the type of hardware or application has been widely spread. The PDF file includes an object that can be arranged in the file in an order different from the page order and reference information indicating a position of the object in the file, and defines a page including a predetermined object.
[0005]
By the way, a PDF file may have several hundred pages of data, for example. When such a PDF file having a particularly large data size is converted into print data by a PC, the conversion takes a long time, the processing becomes complicated, and the data size is rather large due to the conversion, and the data transfer time increases. For this reason, the load on the PC increases. In order to reduce the load on the PC, a printer capable of directly printing a PDF file transmitted from the PC to the printer without converting it into print data (hereinafter referred to as “PDF direct print”) has been proposed. .
[0006]
However, since print data described in PDL such as PS has data to be printed arranged in page order in the file, the printer can print from the first page of the received print data. Since the data to be printed can be arranged in the file regardless of the page order, the printer can print only after receiving the entire PDF file. For this reason, the printer may not be able to receive the entire PDF file because of a lack of the capacity (available capacity or free space) of the mounted memory, and may not be able to execute printing.
[0007]
In connection with this problem, there is known an apparatus that changes the contents of a PDF file and reconstructs the data so that the received data can be sequentially displayed on a display without receiving the entire PDF file. (For example, see Patent Document 1).
[0008]
[Patent Document 1]
Japanese Patent Publication No. Hei 11-502954
[0009]
[Problems to be solved by the invention]
By the way, it is desirable that a PDF file distributed widely is exchanged, for example, on a network without much change or modification. However, in the device described in Patent Document 1, as a result, a large change process for reconstructing the PDF file is performed on the transmission side such as a PC before the file transfer. There is a problem that the file becomes completely different from the original PDF file.
[0010]
In addition, the technology of the above-described apparatus is merely a technology relating to display on a display, and thus sufficient consideration is not given to printing with a printer. Specifically, for example, when special printing conditions such as face-up, which indicates processing for printing in order from the last page to the first page, are applied, and it is necessary to print in a different order from the page order of the file, Technology cannot cope.
[0011]
SUMMARY An advantage of some aspects of the invention is to provide an image forming apparatus that has a small usable capacity of a storage unit while preventing a file from being significantly changed on a transmission side. On the other hand, an object of the present invention is to provide an image processing apparatus, an image forming apparatus, and a program capable of reliably printing even if a PDF file is transmitted without being converted into print data.
[0012]
[Means for Solving the Problems]
The above object of the present invention is achieved by the following means.
[0013]
(1) An image processing apparatus that transmits a PDF file to an image forming apparatus without converting the file into print data, and uses a size of the PDF file to be printed and a storage unit of the image forming apparatus to print the PDF file. A comparison unit that compares the available capacity with the comparison unit, and as a result of the comparison, when the storage capacity required for printing the PDF file is larger than the available capacity of the storage unit of the image forming apparatus, the PDF file is linearized. An image processing device having conversion processing means.
[0014]
(2) The image processing apparatus according to (1), further including a transmission unit configured to transmit, to the image forming apparatus, head data including a hint table in the PDF file linearized by the conversion processing unit.
[0015]
(3) A program used in an image processing apparatus that transmits a PDF file to the image forming apparatus without converting the PDF file into print data, the size of the PDF file to be printed, and the size of the image forming apparatus to print the PDF file. A comparison procedure for comparing the available capacity of the storage unit, and if the storage capacity required for printing the PDF file is larger than the available capacity of the storage unit of the image forming apparatus as a result of the comparison in the comparison procedure, For causing the image processing apparatus to execute a conversion processing procedure for linearizing.
[0016]
(4) The above-mentioned (3) for causing the image processing apparatus to further execute a transmission procedure of transmitting top data including a hint table in the PDF file linearized in the conversion processing procedure to the image forming apparatus. ).
[0017]
(5) An image forming apparatus for receiving and printing a PDF file from an image processing apparatus without being converted into print data, and including a hint table of a linearized PDF file from the image processing apparatus. First receiving means for receiving data; determining means for determining necessary data in the PDF file based on a result of analyzing the leading data received by the first receiving means; Transmitting means for transmitting a transmission request for the necessary data to the apparatus; second receiving means for receiving data transmitted from the image processing apparatus in response to the transmission request; And a printing unit for performing printing based on the data received by the unit.
[0018]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0019]
FIG. 1 is a block diagram showing a configuration of a print system to which a PC and a printer according to an embodiment of the present invention are applied.
[0020]
As shown in FIG. 1, the print system includes PCs 100A and 100B having a function as an image processing apparatus, and a printer 200 as an image forming apparatus, which are communicably connected to each other via a network 300. I have. The network 300 includes a LAN conforming to standards such as Ethernet (R), token ring, and FDDI, and a WAN in which LANs are connected by a dedicated line.
[0021]
Note that the type and number of devices connected to the network are not limited to the example shown in FIG. The printer 200 may be directly connected (locally connected) to the PC 100A or 100B without going through the network 300.
[0022]
FIG. 2 is a block diagram showing a configuration of PCs 100A and 100B shown in FIG. As shown in FIG. 2, the PCs 100A and 100B include a CPU 101 for controlling the entire apparatus and performing various arithmetic processing, a ROM 102 for storing programs and data, a RAM 103 for temporarily storing programs and data as a work area, A hard disk 104 as an external storage device for storing various programs and data; a display unit 105 such as a liquid crystal display for displaying various information; an input unit 106 including a keyboard and a mouse for inputting various instructions; And a network interface 107 such as a LAN card for connecting to the network 300, which are mutually connected via a bus 108 for exchanging signals.
[0023]
FIG. 3 is a block diagram showing a configuration of the printer 200 shown in FIG. As shown in FIG. 3, the printer 200 includes a CPU 201, a ROM 202, a RAM 203, an operation panel unit 204, a printing unit 205, and a network interface 206, which are interconnected via a bus 207 for exchanging signals. ing. Note that, of the components of the printer 200, a duplicate description of a portion having the same function as the components of the PCs 100A and 100B will be omitted.
[0024]
The RAM 203 can temporarily store data received from the PC. The ROM 202 stores font data which is data relating to the typeface of characters. Note that the printer 200 may include a hard disk as an external storage device for storing various programs and data. The operation panel unit 204 is used for displaying various information and inputting various instructions. The printing unit 205 prints various data on a recording material such as paper using a known image forming process such as an electrophotographic process.
[0025]
The PCs 100A and 100B and the printer 200 may include components other than the components described above, or may not include some of the components described above. In the following, a case where data is transmitted from PC 100A to printer 200 to perform printing, for example, will be described.
[0026]
In the print system shown in FIG. 1, two types of printing, normal printing and PDF direct printing, can be executed. When performing normal printing, a predetermined file is converted to print data described in PDL such as PS by a printer driver installed in the hard disk 104 of the PC 100A, and then transmitted to the printer 200. On the other hand, when the PDF direct print is executed, the PDF file is transmitted from the PC 100A to the printer 200 without being converted into print data according to a program described later installed on the hard disk 104.
[0027]
Here, the structure and analysis method of a standard PDF file will be briefly described with reference to FIGS. FIG. 4 is a diagram for explaining the structure of a standard PDF file, and FIG. 5 is a diagram showing a sample of a standard PDF file. 4 and 5 are created with reference to “PDF Reference third edition Adobe Portable Document Format Version 1.4” (Adobe Systems Inc.).
[0028]
As shown in FIGS. 4 and 5, a standard PDF file 500 includes a header 510, a body 520, a cross-reference table 530, and a trailer 540.
[0029]
In the header 510, a comment starting with “%” is described. From the header 510 in FIG. 5, it can be seen that the format of the file is PDF and the version (1.4 in this case) of the compliant PDF specification.
[0030]
The body 520 includes objects (objects 1 to 6 in FIG. 5) constituting the document. An object refers to an individual element constituting a document, such as a document structure, page information, font information, and color information. For example, the first object 1 is defined by a description from “10 obj” to “endobj”, and other objects are similarly defined. Here, for example, the first number and the next number in “10 obj” represent the ID number and the generation number (generation) of the object, respectively. In the body 520, various types of information such as file attributes, page attributes, character information, graphics information, and image information are configured by a combination of minimum units called objects.
[0031]
The cross-reference table 530 is reference information indicating the position of the object in the file. In the cross-reference table 530, the position of each object having a specific ID number (1 to 6 in FIG. 5) is represented by the number of bytes (offset) from the head of the file to the head of the object. This makes it possible to randomly access the objects arranged in the body 520. This cross-reference table 530 starts with a line containing the keyword “xref” in the actual file.
[0032]
The trailer 540 is information to be accessed at the start of file analysis. Specifically, the trailer 540 describes information indicating the position of the cross-reference table 530 in the file, and the ID number of the object to be referred to first (the root object that is the root of the hierarchical structure). The number shown next to “startxref” is the number of bytes (offset) from the head of the file to the head of the cross reference table 530. The line including “Root” indicates the ID number of the root object. The line including “Size” indicates the number of objects existing in the file, including the first entry of the cross reference table 530 (the object ID number is “0”). This trailer 540 is located at the end of the file and begins with a line containing the keyword “trailer”.
[0033]
When analyzing a standard PDF file, the apparatus for analyzing the PDF file first analyzes the trailer 540 at the end of the file, and then analyzes the cross-reference table 530. Then, the contents of the page described in the body 520 can be analyzed based on the information obtained by the analysis. The object contains the ID number of another object in which the next required data is described. Therefore, by following the ID number of the next required object, the entire analysis of the PDF file becomes possible. Since the ID number of the object to be referenced next is indicated, the objects need not be arranged in the analysis order in the body of the PDF file. Therefore, the objects can be described in an arbitrary order on a per-object basis in the body of the PDF file, and as a result, can be arranged in the file in an order different from the page order.
[0034]
As described above, when analyzing a standard PDF file, the apparatus that analyzes the PDF file first analyzes the trailer 540 and the cross-reference table 530 near the end of the file, and then analyzes the order that is not necessarily related to the page order. Must access the objects in the file. For this reason, a device that analyzes a PDF file cannot normally analyze the PDF file unless the entire PDF file is stored in a storage device such as a memory. The present invention uses a linearized PDF file, as described later, to reliably print even if an image forming apparatus such as a printer cannot hold the entire PDF file in a storage device such as a memory. It is something that is possible.
[0035]
Next, processing performed by the PC 100A will be described with reference to FIGS. The algorithm shown by the flowcharts in FIGS. 6 to 8 is stored as a program in a storage device such as the hard disk 104 of the PC 100A, and is executed by the CPU 101.
[0036]
Here, a case will be described in which, instead of normal printing using a printer driver, PDF direct printing is performed on a PDF file, and the printer 200 prints the PDF file.
[0037]
An icon of an application program file for PDF direct printing is displayed on the desktop of the PC 100A in advance. The user can instruct the execution of the PDF direct print by dragging and dropping the PDF file onto the icon and activating the application program. The instruction to execute the PDF direct print may be issued by another method.
[0038]
In addition, for example, before the user instructs execution of PDF direct print, print conditions are designated through the input unit 106. Here, the printing condition refers to an attribute related to the printing order of pages. The printing conditions include, for example, whether or not booklet binding is applied, whether or not face-up indicating processing for printing in order from the last page to the first page is applied, and a plurality of pages (N pages) are reduced on one sheet of paper. The application of Nin1 for printing by printing, the number of copies, and the application of collate for output in copies. However, the printing condition may include other attributes related to printing. The printing conditions may be set in the printer 200 through the operation panel unit 204.
[0039]
First, the PC 100A receives an instruction to execute a PDF direct print for a PDF file by a user (S101).
[0040]
Subsequently, the size of the PDF file to be printed is compared with the available capacity of the memory (RAM 203) of the printer 200 to print the PDF file. As a result of the comparison, the storage capacity required for printing the PDF file is determined by the printer. It is determined whether or not the available capacity of the memory 200 is larger than the available capacity (S102).
[0041]
Here, the PC 100A obtains printer-specific information from the printer 200 by making a request to, for example, the printer 200 as an output destination. However, the printer-specific information may be obtained by requesting the printer 200 from the PC 100A when the PC 100A or the printer 200 is started. The printer-specific information includes the available capacity of the memory installed in the printer, the presence or absence of a hard disk, and the available capacity of the hard disk if the printer has a hard disk. It is preferable that the usable capacity of the memory of the printer used in the determination in step S102 (also in S104) is a dynamic value according to the state of use of the memory. However, a fixed value may be used as the available capacity of the memory of the printer, and a certain effect can be expected. In the PC 100A, the unique information of the printer 200 may be manually set in advance.
[0042]
If the storage capacity required for printing the PDF file is equal to or less than the available capacity of the memory of the printer 200 (NO in S102), the entire PDF file can be held in the memory of the printer 200, and the PDF file transmission processing is executed as it is. (S106).
[0043]
On the other hand, if the storage capacity required for printing the PDF file is larger than the available capacity of the memory of the printer (YES in S102), it is determined whether the printer 200 has a hard disk (S103). In making such a determination, the printer-specific information is referred to.
[0044]
In step S103, if the printer 200 is equipped with a hard disk (YES in S103), the size of the PDF file to be printed is compared with the available capacity of the hard disk of the printer 200 to print the PDF file. As a result, it is determined whether the storage capacity required for printing the PDF file is larger than the usable capacity of the hard disk of the printer 200 (S104).
[0045]
If the storage capacity required for printing the PDF file is less than or equal to the usable capacity of the hard disk of the printer 200 (NO in S104), the entire PDF file can be stored in the hard disk of the printer 200. (S106).
[0046]
If it is determined in step S103 that the printer 200 is not equipped with a hard disk (NO in S103), or in step S104, the storage capacity required for printing the PDF file is larger than the usable capacity of the hard disk of the printer 200. If it is determined that the size is large (YES in S104), the PDF file is analyzed (S105). After the PDF file analysis processing is completed, a PDF file transmission processing is performed (S106).
[0047]
Here, the analysis process of the PDF file in step S105 of FIG. 6 will be described with reference to FIG.
[0048]
First, it is determined whether the PDF file to be printed is a linearized PDF file (Linearized PDF) (S301). Details of the linearized PDF file will be described later. In the case of the linearized PDF file (YES in S301), the PDF file analysis processing ends.
[0049]
If the PDF file is not a linearized PDF file, that is, if the PDF file to be printed is a standard PDF file (NO in S301), the PDF file is linearized (S302). Linearization of a PDF file is automatically performed using an application having a linearization function. The linearized PDF file is stored in a storage device such as a memory (RAM 103), and the PDF file analysis process ends.
[0050]
FIGS. 9 and 10 show the first half and the second half of the sample of the linearized PDF file, respectively. 9 and 10 are created with reference to "PDF Reference third edition Adobe Portable Document Format Version 1.4" (Adobe Systems Inc.).
[0051]
The linearized PDF file refers to a PDF file optimized to enable efficient access in a network environment. As shown in FIG. 9, a linearized PDF file 600 includes a header (part 1) 601, a linearization parameter (part 2) 602, a first page cross-reference table and a trailer (part 3) 603, and a document catalog. And a document level object (part 4) 604, a hint table (part 5) 605, a first page part (part 6) 606, and the remaining pages (part 7) 607.
[0052]
The linearization parameter 602 is arranged next to the header 601 and is contained within 1024 bytes from the head of the PDF file. The linearization parameter 602 includes a description indicating a linearized version of “Linearized 1.0”. Therefore, the PC 100A can determine whether the PDF file to be printed is a standard PDF file or a linearized PDF file by analyzing 1024 bytes of data from the beginning of the PDF file. it can.
[0053]
The hint table 605 is arranged before or after the first page section 606, and is stored within 1024 bytes from the head of the PDF file. The hint table 605 includes a description indicating information of the remaining pages, such as reference information indicating a position of an object regarding data of the second and subsequent pages. That is, in the linearized PDF file, necessary data of the page is freely acquired by analyzing the leading data including the hint table 605 (specifically, data from the beginning of the file to, for example, 1024 bytes). Structure. Therefore, an apparatus that analyzes a linearized PDF file can immediately access data of an arbitrary page by referring to the hint table 605 included in the head data.
[0054]
Next, the PDF file transmission process in step S106 in FIG. 6 will be described with reference to FIG.
[0055]
First, it is determined whether the PDF file to be transmitted is a linearized PDF file (S401).
[0056]
If the PDF file to be transmitted is not a linearized PDF file, that is, if it is a standard file (NO in S401), when the user instructs execution of PDF direct printing, for example, the In response, the entire PDF file is transmitted (S407). At this time, the printing conditions are also transmitted from the PC 100A to the printer 200 (the same applies to S402). After the entire PDF file has been transmitted, the process returns to the flowchart of FIG. 6, and the execution of the process illustrated in FIG. 6 ends.
[0057]
On the other hand, if the PDF file to be transmitted is a linearized PDF file (YES in S401), the first data including the hint table 605 is transmitted to the printer 200 (S402).
[0058]
In step S403, it is determined whether a transmission request for predetermined data in the PDF file has been received from printer 200. Here, the predetermined data is data (for example, a predetermined object) that is sequentially required according to printing in the printer 200.
[0059]
When a transmission request for predetermined data is received (YES in S403), the requested data is extracted from the PDF file (S404) and transmitted to the printer 200 (S405). On the other hand, when the transmission request for the predetermined data is not received (NO in S403), the process proceeds to step S406.
[0060]
As a method of transmitting a PDF file from the PC 100A to the printer 200, a method of establishing a session between the PC and the printer by executing an application program and transferring the designated PDF file is adopted. Therefore, the user is not burdened with the operation. However, it is also possible to realize the transfer of the PDF file using the function of the OS (basic software).
[0061]
Data (for example, an object) requested to be transmitted can be specified by the number of bytes (offset) from the beginning of the file to the beginning of the data and the data length represented by the number of bytes. Various protocols such as HTTP and FTP can be used as the transfer protocol.
[0062]
In step S406, it is determined whether the printing of the PDF file in the printer 200 has been completed. Here, the end of printing can be determined based on, for example, whether a notification indicating the end of printing has been received from the printer 200.
[0063]
If the printing of the PDF file has not been completed (NO in S406), the process returns to step S403, and the processes in steps S403 to S406 are repeated. That is, the PC 100A extracts the data requested by the printer 200 and transmits the extracted data to the printer 200 every time there is a transmission request of the predetermined data from the printer 200. Then, when all the printing of the PDF file has been completed (YES in S406), the process returns to the flowchart of FIG. 6, and the execution of the processing illustrated in FIG. 6 ends.
[0064]
Next, processing performed by the printer 200 will be described with reference to FIGS. The algorithm shown in the flowcharts of FIGS. 11 to 13 is stored as a program in a storage device such as the ROM 202 of the printer 200 and is executed by the CPU 201.
[0065]
Here, the case where the printer 200 receives the PDF file to be printed transmitted from the PC 100A and executes the PDF direct print on the received PDF file will be described below.
[0066]
First, the printer 200 starts receiving a PDF file transmitted from the PC 100A (S501). After the start of reception, reception of the data transmitted from PC 100A is continued until reception of the data is completed.
[0067]
Subsequently, the process waits until the head data of the PDF file (data of, for example, 1024 bytes from the head of the file) is received (S502). Here, when the PDF file to be printed is a linearized PDF file, the head data includes the hint table 605. The received head data is stored in the memory (RAM 203).
[0068]
Next, it is determined whether the PDF file to be printed is a linearized PDF file from the linearization parameters 602 included in the received head data (S503).
[0069]
If the PDF file to be printed is a linearized PDF file (YES in S503), print processing of the linearized PDF file is performed (S504). Details of this processing will be described later.
[0070]
On the other hand, if the PDF file to be printed is not a linearized PDF file, that is, if it is a standard file (NO in S503), the printing process of the standard file is performed (S505). Details of this processing will be described later.
[0071]
Next, the printing process of the linearized PDF file in step S504 of FIG. 11 will be described with reference to FIG.
[0072]
First, the printer 200 analyzes the leading data including the received hint table 605 (S601).
[0073]
The head data of the linearized PDF file includes a hint table 605 and a first page portion 606 having first page data. Here, the hint table 605 is stored in the memory after being analyzed. When the hint table 605 is arranged behind the first page section 606, the hint table 605 may be analyzed and saved in the memory after printing based on one page of data is performed as needed.
[0074]
In step S602, data required for each page is requested to the PC 100A, and data corresponding to this request is received from the PC 100A. However, the process of step S602 is executed when a PDF file having a plurality of pages is printed in page units, and is not in the order of printing the first page. The data required for the PC 100A may be one object or a group of appropriate data such as a plurality of objects. Further, a plurality of pages of the PDF file may be requested to the PC 100A according to the margin of the available capacity of the memory in the printer 200.
[0075]
Here, the printer 200 refers to the hint table 605 stored in the memory, determines data necessary for performing appropriate printing, and requests the PC 100A for necessary data. At this time, the printing conditions are also referred to. When face-up is applied to printing of a PDF file, for example, page data transmission is requested in order from the last page of the file to the first page. When face-down is applied, transmission of page data is requested in the same order as the page order of the file. In other words, even when printing the same PDF file, the printing order of the pages differs depending on the printing conditions. Therefore, data requested to be transmitted from the printer to the PC is determined with reference to the printing conditions. As described above, since the hint table 605 includes reference information indicating the position of the object regarding the data of the second and subsequent pages, the printer 200 specifies the data of an arbitrary page and sends the data from the PC 100A to the PC 100A. It is possible to get
[0076]
If it is the first page printing order, the process proceeds to step S603 without performing any processing in step S602. This is because the first page data is entirely described in the head data of the linearized PDF file. However, based on the result of analyzing the cross-reference table of the first page and the trailer 603, in step S602, the data of the first page is requested to the PC 100A in the same manner as the data of the second and subsequent pages. May be received from the PC 100A.
[0077]
In step S603, an intermediate language in a format that can be internally processed by the printer is created for the data to be printed, that is, the received predetermined page data or the first page data.
[0078]
Subsequently, bitmap raster data is created from the created intermediate language (S604). The created raster data is transferred to the printing unit 205 (S605), and a printing process is executed (S606).
[0079]
In the printing process of step S606, when an output page that is all data to be output on one sheet is completed, the output page is printed on the sheet. For example, in a general case where one page of a PDF file is printed on one sheet of paper, when one page of raster data is created, it is determined that the output page is completed, and the output page is determined. Is printed on the paper. However, when Nin1 (N = 2) is applied to the printing of a PDF file, for example, two pages of data must be printed on the first sheet. The output page is not completed just by being created. In this case, after the raster data for the necessary pages is further acquired (S602 to S605), the printing for the completed output page is performed.
[0080]
In step S607, it is determined whether printing of all pages of the PDF file has been completed. If printing for all pages has not been completed (NO in step S607), the process returns to step S602, and the processes in steps S602 to S607 are repeated.
[0081]
When the printing of all pages of the PDF file to be printed is completed (YES in step S607), the process returns to the flowchart of FIG. 11 and ends the execution of the processing illustrated in FIG.
[0082]
In the process of FIG. 12, when the storage capacity required for printing the rasterized PDF file is less than the available capacity of the memory or the hard disk of the printer 200, after the entire rasterized PDF file is collectively received, It is also possible to perform print processing while referring to the hint table 605.
[0083]
Next, the standard PDF file print processing in step S505 in FIG. 11 will be described with reference to FIG.
[0084]
When the PC 100A transmits a standard PDF file to the printer 200, the memory of the printer 200 (memory or hard disk in the case of a printer equipped with a hard disk) has a storage capacity required for printing the standard PDF file. Has a usable capacity sufficient to secure
[0085]
Therefore, the whole of the received standard PDF file is collectively stored in the memory (S701). In the case of a printer equipped with a hard disk, the entire PDF file is stored in the memory if there is sufficient free space in the memory, and is stored in the hard disk if there is not enough free space in the memory. If there is not enough free space in the memory while the file is being saved to the memory, the data saved in the memory is swapped to the hard disk, and the storage location of the file is changed to the hard disk.
[0086]
The printer 200 analyzes the PDF file based on the analysis result of the trailer 540 and the cross-reference table 530 (see FIGS. 4 and 5) and the printing conditions, and acquires data to be printed in page units. Then, an intermediate language for the acquired data of the predetermined page is created (S702).
[0087]
Subsequently, bitmap format raster data is created from the created intermediate language (S703). The created raster data is transferred to the printing unit 205 (S704), and a printing process is executed (S705).
[0088]
In step S706, it is determined whether printing of all pages of the PDF file has been completed. If printing for all pages has not been completed (NO in step S706), the process returns to step S702, and the processes in steps S702 to S706 are repeated.
[0089]
Then, when printing of all pages of the PDF file to be printed is completed (YES in step S706), the process returns to the flowchart of FIG. 11 and ends the execution of the processing illustrated in FIG.
[0090]
As described above, according to the present embodiment, when transmitting a PDF file to a printer without converting the PDF file into print data described in PDL such as PS, the PC has a storage capacity necessary for printing the PDF file to be printed. Is larger than the available capacity of the storage unit of the printer, the PDF file can be linearized.
[0091]
Therefore, by transmitting the leading data including the hint table of the linearized PDF file to the printer, the printer can sequentially request the PC for data necessary for printing, and the PC The predetermined data can be extracted and transmitted to the printer each time it is requested from the printer.
[0092]
As a result, even if the PDF file is transmitted to the printer having a small available capacity of the memory without being converted into the print data, the printing can be reliably performed. Moreover, the PC which is the transmission side of the PDF file only needs to linearize the PDF file, and does not need to perform a significant change process for reconstructing the file.
[0093]
Further, by determining data requested to be transmitted from the printer to the PC with reference to the printing conditions, special printing conditions such as booklet binding or face-up are applied, and printing is performed in a different order from the page order of the file. Even if it is necessary, it can be adequately dealt with without any trouble.
[0094]
FIG. 14 is a flowchart for explaining another embodiment of the PDF file analysis processing in step S105 in FIG. The points other than the processing shown in FIG. 14 are the same as those in the above-described embodiment, and a description thereof will be omitted.
[0095]
In this embodiment, Adobe (R) Acrobat (R) or an application having a similar linearizing function for a PDF file is installed in a storage device such as the hard disk 104 of the PC.
[0096]
First, it is determined whether the PDF file to be printed is a linearized PDF file (S801). In the case of a linearized PDF file (YES in S801), the PDF file analysis processing ends.
[0097]
If the PDF file is not a linearized PDF file, that is, if the PDF file to be printed is a standard PDF file (NO in S801), a linearization application for linearizing the standard PDF file (for example, Adobe (R) ) Acrobat (R) is started (S802).
[0098]
Then, in step S803, the PDF file to be printed is linearized by the activated linearization application (S803). The linearized PDF file is stored in a storage device such as a memory (RAM 103), and the PDF file analysis process ends. According to this embodiment, it is also possible to obtain the same effect as the above embodiment.
[0099]
It should be noted that extra processing by the user can be eliminated by incorporating the processing for instructing execution of linearization into Adobe (R) Acrobat (R) in advance as a plug-in. At the same time, by including a function of transmitting the linearized PDF file to the printer in the plug-in, a series of processes from linearizing the PDF file to transmitting the linearized PDF file to the printer can be simplified. It can be executed.
[0100]
The present invention is not limited to only the above-described embodiments, but can be variously modified within the scope of the claims.
[0101]
For example, as an apparatus having a function as an image processing apparatus, a computer such as a workstation or a server may be used instead of a PC. Further, instead of the printer, an image forming apparatus such as a facsimile machine, a copying machine, and a multi-function peripheral (MFP) having a combined function thereof may be used.
[0102]
In the present invention, a means and a method for performing various processes for transmitting a PDF file from an image processing apparatus to an image forming apparatus for printing without converting the PDF file into print data are provided by a dedicated hardware circuit or a programmed computer. It can be realized by any of them. The program may be provided by a computer-readable recording medium such as a flexible disk or a CD-ROM, or may be provided online via a network such as the Internet. In this case, the program recorded on the computer-readable recording medium is usually transferred to a storage device such as a hard disk and stored. Further, the program may be provided as independent application software, or may be incorporated in the software of the device as one function of the device.
[0103]
The embodiments of the present invention described above include the inventions described in the following supplementary notes 1 to 10 in addition to the inventions described in claims 1 to 5 of the claims.
[0104]
[Supplementary Note 1] The conversion processing unit determines that the storage capacity required for printing the PDF file is larger than the usable capacity of the storage unit of the image forming apparatus as a result of the comparison by the comparison unit, The image processing apparatus according to claim 1, wherein the PDF file is linearized when the PDF file has not been linearized yet.
[0105]
[Supplementary Note 2] As a result of the comparison by the comparing unit, if the storage capacity required for printing the PDF file is smaller than the usable capacity of the storage unit of the image forming apparatus, the conversion processing unit linearizes the PDF file. 3. The image processing apparatus according to claim 2, wherein the transmission unit transmits the entire PDF file to the image forming apparatus.
[0106]
[Supplementary Note 3] A receiving unit that receives a transmission request for predetermined data in the PDF file from the image forming apparatus;
Extracting means for extracting data corresponding to the transmission request from the PDF file;
A second transmission unit for transmitting data extracted from the PDF file by the extraction unit to the image forming apparatus;
The image processing apparatus according to claim 2, further comprising:
[0107]
[Supplementary Note 4] The image forming apparatus according to claim 5, wherein the determining unit determines the necessary data by referring to a printing condition related to a printing order of pages.
[0108]
[Supplementary Note 5] A program used in an image forming apparatus that receives and prints a PDF file from an image processing apparatus without being converted into print data,
A first receiving procedure for receiving, from the image processing apparatus, head data including a hint table in a linearized PDF file;
A determining step of determining necessary data in the PDF file based on a result of analyzing the leading data received in the first receiving step;
A transmission procedure for transmitting a transmission request for the necessary data to the image processing apparatus,
A second receiving procedure for receiving data transmitted from the image processing device in response to the transmission request;
A printing procedure for performing printing based on the data received in the second receiving procedure;
For causing the image forming apparatus to execute the above.
[0109]
[Supplementary Note 6] An image processing method for transmitting a PDF file to an image forming apparatus without converting the file into print data,
A comparing step of comparing the size of the PDF file to be printed with the available capacity of the storage unit of the image forming apparatus to print the PDF file;
As a result of the comparison in the comparing step, when the storage capacity required for printing the PDF file is larger than the available capacity of the storage unit of the image forming apparatus, a conversion processing step of linearizing the PDF file;
An image processing method comprising:
[0110]
[Supplementary note 7] The image processing method according to supplementary note 6, further comprising a transmission step of transmitting leading data including a hint table of the PDF file linearized in the conversion processing step to the image forming apparatus.
[0111]
[Supplementary Note 8] An image forming method for receiving and printing a PDF file from an image processing apparatus without being converted into print data,
A first receiving step of receiving, from the image processing apparatus, head data including a hint table in a linearized PDF file;
A determining step of determining necessary data in the PDF file based on a result of analyzing the leading data received in the first receiving step;
A transmission step of transmitting a transmission request for the necessary data to the image processing apparatus,
A second receiving step of receiving data transmitted from the image processing apparatus in response to the transmission request;
A printing step of performing printing based on the data received in the second receiving step;
An image forming method comprising:
[0112]
[Supplementary Note 9] A computer-readable recording medium recording the program according to claim 3 or 4.
[0113]
[Supplementary Note 10] A computer-readable recording medium recording the program according to Supplementary Note 5.
[0114]
【The invention's effect】
As described above, according to the present invention, when the storage capacity required for printing a PDF file to be printed is larger than the usable capacity of the storage unit of the printer, the PDF file can be linearized. Therefore, by transmitting the leading data including the hint table of the linearized PDF file to the image forming apparatus, the image forming apparatus can sequentially request the image processing apparatus for data necessary for printing. The image processing apparatus can extract predetermined data from the PDF file each time the image forming apparatus requests the data, and transmit the extracted data to the image forming apparatus.
[0115]
As a result, even if the PDF file is transmitted to the image forming apparatus having a small usable capacity of the storage unit without being converted into the print data, the printing can be reliably performed. Moreover, the PDF file transmitting side only needs to linearize the PDF file, and does not need to perform a significant change process for reconstructing the file.
[0116]
Further, by determining data requested to be transmitted from the image forming apparatus to the image processing apparatus with reference to the printing conditions, special printing conditions such as booklet binding or face-up are applied, and the page order of the file is different from that of the file. Even when the printing needs to be performed in order, it is possible to sufficiently cope with the trouble.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of a print system to which a PC and a printer according to an embodiment of the present invention are applied.
FIG. 2 is a block diagram showing a configuration of a PC shown in FIG.
FIG. 3 is a block diagram showing a configuration of the printer shown in FIG.
FIG. 4 is a diagram for explaining a configuration of a standard PDF file.
FIG. 5 is a diagram showing a sample of a standard PDF file.
FIG. 6 is a flowchart illustrating a process performed by the PC.
FIG. 7 is a flowchart for explaining a PDF file analysis process shown in FIG. 6;
FIG. 8 is a flowchart illustrating a PDF file transmission process illustrated in FIG. 6;
FIG. 9 is a diagram showing a first half of a sample of a linearized PDF file.
FIG. 10 is a diagram illustrating the latter half of a sample of a linearized PDF file.
FIG. 11 is a flowchart illustrating a process performed by the printer.
FIG. 12 is a flowchart for explaining a printing process of the linearized PDF file shown in FIG. 11;
FIG. 13 is a flowchart for explaining a standard PDF file printing process shown in FIG. 11;
FIG. 14 is a flowchart for explaining another embodiment of the PDF file analysis processing shown in FIG. 6;
[Explanation of symbols]
1-21, an object,
100A, 100B ... PC,
101, 201 ... CPU,
102, 202 ... ROM,
103, 203 ... RAM,
104 ... Hard disk,
105 display unit,
106 ... input unit,
107, 206 ... network interface,
108, 207 ... bus,
200 ... printer,
204: operation panel section,
205 printing section,
300 ... network,
500 ... standard PDF file,
510 ... header,
520 ... body,
530 ... Cross reference table,
540 ... trailer,
600: Linearized PDF file,
601, a header,
602: linearization parameters,
605: hint table,
606: First page section,
607 ... remaining pages.

Claims (5)

PDFファイルをプリントデータに変換せずに画像形成装置に送信する画像処理装置であって、
印刷すべきPDFファイルのサイズと、当該PDFファイルを印刷すべき画像形成装置の記憶部の使用可能容量とを比較する比較手段と、
前記比較手段による比較の結果、PDFファイルの印刷に必要な記憶容量が画像形成装置の記憶部の使用可能容量よりも大きい場合、当該PDFファイルをリニアライズする変換処理手段と
を有する画像処理装置。
An image processing apparatus for transmitting a PDF file to an image forming apparatus without converting the file into print data,
Comparing means for comparing the size of the PDF file to be printed with the available capacity of the storage unit of the image forming apparatus to print the PDF file;
An image processing apparatus comprising: a conversion processing unit that linearizes the PDF file when a storage capacity required for printing the PDF file is larger than a usable capacity of a storage unit of the image forming apparatus as a result of the comparison by the comparison unit.
前記画像形成装置に対して、前記変換処理手段によりリニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データを送信する送信手段をさらに有する請求項1に記載の画像処理装置。The image processing apparatus according to claim 1, further comprising a transmission unit configured to transmit head data including a hint table in the PDF file linearized by the conversion processing unit to the image forming apparatus. PDFファイルをプリントデータに変換せずに画像形成装置に送信する画像処理装置で用いられるプログラムであって、
印刷すべきPDFファイルのサイズと、当該PDFファイルを印刷すべき画像形成装置の記憶部の使用可能容量とを比較する比較手順と、
前記比較手順における比較の結果、PDFファイルの印刷に必要な記憶容量が画像形成装置の記憶部の使用可能容量よりも大きい場合、当該PDFファイルをリニアライズする変換処理手順と
を前記画像処理装置に実行させるためのプログラム。
A program used in an image processing apparatus that transmits a PDF file to an image forming apparatus without converting the file into print data,
A comparison procedure for comparing the size of the PDF file to be printed with the available capacity of the storage unit of the image forming apparatus to print the PDF file;
As a result of the comparison in the comparison procedure, when the storage capacity required for printing the PDF file is larger than the available capacity of the storage unit of the image forming apparatus, the conversion processing procedure for linearizing the PDF file is performed by the image processing apparatus. The program to be executed.
前記画像形成装置に対して、前記変換処理手順においてリニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データを送信する送信手順をさらに前記画像処理装置に実行させるための請求項3に記載のプログラム。4. The image processing apparatus according to claim 3, further comprising causing the image processing apparatus to execute a transmission procedure of transmitting head data including a hint table in the PDF file linearized in the conversion processing procedure to the image forming apparatus. program. PDFファイルをプリントデータに変換されることなく画像処理装置から受信して印刷する画像形成装置であって、
前記画像処理装置から、リニアライズされたPDFファイルのうちのヒントテーブルを含む先頭データを受信する第1の受信手段と、
前記第1の受信手段により受信された先頭データを解析した結果に基づいて、前記PDFファイルのうちの必要なデータを決定する決定手段と、
前記画像処理装置に対して、前記必要なデータについての送信要求を送信する送信手段と、
前記送信要求に応じて前記画像処理装置から送信されたデータを受信する第2の受信手段と、
前記第2の受信手段により受信されたデータに基づいて印刷を行う印刷手段とを有する画像形成装置。
An image forming apparatus for receiving and printing a PDF file from an image processing apparatus without being converted into print data,
First receiving means for receiving, from the image processing apparatus, head data including a hint table in a linearized PDF file;
Determining means for determining necessary data in the PDF file based on a result of analyzing the head data received by the first receiving means;
Transmission means for transmitting a transmission request for the necessary data to the image processing apparatus,
Second receiving means for receiving data transmitted from the image processing apparatus in response to the transmission request;
A printing unit for performing printing based on the data received by the second receiving unit.
JP2002341358A 2002-11-25 2002-11-25 Image processing apparatus, image forming apparatus, and program Expired - Fee Related JP4110945B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002341358A JP4110945B2 (en) 2002-11-25 2002-11-25 Image processing apparatus, image forming apparatus, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002341358A JP4110945B2 (en) 2002-11-25 2002-11-25 Image processing apparatus, image forming apparatus, and program

Publications (3)

Publication Number Publication Date
JP2004178097A true JP2004178097A (en) 2004-06-24
JP2004178097A5 JP2004178097A5 (en) 2005-07-28
JP4110945B2 JP4110945B2 (en) 2008-07-02

Family

ID=32703747

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002341358A Expired - Fee Related JP4110945B2 (en) 2002-11-25 2002-11-25 Image processing apparatus, image forming apparatus, and program

Country Status (1)

Country Link
JP (1) JP4110945B2 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007207261A (en) * 2006-01-31 2007-08-16 Pitney Bowes Inc Document format and print stream modification for fabricating mail piece
JP2007257592A (en) * 2006-03-27 2007-10-04 Fuji Xerox Co Ltd Printing system, information processor, and printer
JP2008049568A (en) * 2006-08-24 2008-03-06 Seiko Epson Corp Processor and method of fixed page document
JP2008262543A (en) * 2007-03-01 2008-10-30 Konica Minolta Systems Lab Inc Discontinuous transfer of pdf data for pdf direct printing
JP2010125837A (en) * 2008-12-01 2010-06-10 Fuji Xerox Co Ltd Image forming device, output controlling device and program
US9852366B1 (en) 2016-08-31 2017-12-26 Kyocera Document Solutions Inc. Image processing and error handling system and method for printing linearized and non-linearized portable document format (PDF) files
JP2019164556A (en) * 2018-03-19 2019-09-26 株式会社リコー Information processor, image formation device, information processing system and program
JP7172150B2 (en) 2017-09-29 2022-11-16 株式会社リコー Information processing device, communication system, image forming method, program

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0714348U (en) * 1993-08-16 1995-03-10 株式会社荒井製作所 Cast plug leak inspection port plug
JP5659099B2 (en) * 2011-07-20 2015-01-28 京セラドキュメントソリューションズ株式会社 Image forming apparatus and image forming program

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007207261A (en) * 2006-01-31 2007-08-16 Pitney Bowes Inc Document format and print stream modification for fabricating mail piece
JP2007257592A (en) * 2006-03-27 2007-10-04 Fuji Xerox Co Ltd Printing system, information processor, and printer
JP2008049568A (en) * 2006-08-24 2008-03-06 Seiko Epson Corp Processor and method of fixed page document
JP2008262543A (en) * 2007-03-01 2008-10-30 Konica Minolta Systems Lab Inc Discontinuous transfer of pdf data for pdf direct printing
JP2010125837A (en) * 2008-12-01 2010-06-10 Fuji Xerox Co Ltd Image forming device, output controlling device and program
US9852366B1 (en) 2016-08-31 2017-12-26 Kyocera Document Solutions Inc. Image processing and error handling system and method for printing linearized and non-linearized portable document format (PDF) files
JP2018075826A (en) * 2016-08-31 2018-05-17 京セラドキュメントソリューションズ株式会社 Image processing and error handling system as well as method for printing linearized and non-linearized portable document format (pdf) file
JP7172150B2 (en) 2017-09-29 2022-11-16 株式会社リコー Information processing device, communication system, image forming method, program
JP2019164556A (en) * 2018-03-19 2019-09-26 株式会社リコー Information processor, image formation device, information processing system and program
JP7091748B2 (en) 2018-03-19 2022-06-28 株式会社リコー Information processing equipment, image forming equipment, information processing systems and programs

Also Published As

Publication number Publication date
JP4110945B2 (en) 2008-07-02

Similar Documents

Publication Publication Date Title
US7940413B2 (en) Image processing device, image forming device, image processing method, image forming method, program, and computer readable recording medium on which the program is recorded
JP3775381B2 (en) Image processing device
JP5238526B2 (en) System and method for print resource management
US8553263B2 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
JP5261250B2 (en) Print data processing apparatus, method, and computer-readable medium for processing page description language
JP6289276B2 (en) Information processing apparatus, program, and control method
JP4144392B2 (en) Image processing apparatus, image forming system, image forming method, and program
JP2007257592A (en) Printing system, information processor, and printer
JP4110945B2 (en) Image processing apparatus, image forming apparatus, and program
JP3829798B2 (en) Image forming apparatus and program
JP4144369B2 (en) Image processing apparatus, image processing method, and program
JP2004188865A (en) Image forming device and program
JP2012058795A (en) Information processor, document image processor, electronic document processing method, and program
JP2023018114A (en) Program, information processing device, and method for controlling information processing device
JP4539975B2 (en) Print setting control apparatus, control method thereof, and program
JP2009025952A (en) Image forming system, image-forming program and image forming device
JP4150850B2 (en) Image processing apparatus, image processing method, and program
JP3709695B2 (en) Printing system, printer server apparatus used in printing system, printer server processing method, and recording medium on which printer server processing program is recorded
JP2008027217A (en) Printing system with information processor and printing apparatus
JP2004202755A (en) Image forming apparatus, image forming method, and program
JP3810238B2 (en) Print job management apparatus, print job management method, and recording medium recording program
JP2000112684A (en) Document printing system
JP4049003B2 (en) Image forming apparatus, image forming method, and image forming program
JP2004086691A (en) Image processing system
JP2022157949A (en) printer

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20040426

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041221

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041221

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20041221

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20041222

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070706

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070807

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080331

R150 Certificate of patent or registration of utility model

Ref document number: 4110945

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110418

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120418

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130418

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140418

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees