JP2004322360A - Image formation apparatus - Google Patents

Image formation apparatus Download PDF

Info

Publication number
JP2004322360A
JP2004322360A JP2003117132A JP2003117132A JP2004322360A JP 2004322360 A JP2004322360 A JP 2004322360A JP 2003117132 A JP2003117132 A JP 2003117132A JP 2003117132 A JP2003117132 A JP 2003117132A JP 2004322360 A JP2004322360 A JP 2004322360A
Authority
JP
Japan
Prior art keywords
page
data
pdf file
printer
content
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
JP2003117132A
Other languages
Japanese (ja)
Other versions
JP4049003B2 (en
Inventor
Takenori Izuhara
武典 出原
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.)
Konica Minolta Business Technologies Inc
Original Assignee
Konica Minolta Business Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konica Minolta Business Technologies Inc filed Critical Konica Minolta Business Technologies Inc
Priority to JP2003117132A priority Critical patent/JP4049003B2/en
Priority to US10/730,935 priority patent/US8310713B2/en
Publication of JP2004322360A publication Critical patent/JP2004322360A/en
Application granted granted Critical
Publication of JP4049003B2 publication Critical patent/JP4049003B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an image formation apparatus which can carry out image formation by directly receiving a document file such as a PDF file even when a storage part has a small usable capacity. <P>SOLUTION: When a memory overflow takes place, a printer 10A applies identification names to contents objects (objects 1, 3, 5, 7, 8 and 9) included in composition data of the PDF file 42 stored in a RAM 103, and sequentially outputs the objects (521-526). Data of the outputted contents objects is deleted from the RAM 103, and composition data of the succeeding PDF file 42 is received. Finally, a list is formed and outputted on the basis of the identification names of the contents objects, and information on page objects and a page list object (527). <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、画像形成装置に関し、特に、文書の特定のページの内容の一部または全部を描画するためのオブジェクトが、ファイル内において前記文書内で表示される順序によらずに配列可能な文書ファイルを受信して画像形成する画像形成装置に関する。
【0002】
【従来の技術】
パソコン等のコンピュータは、たとえばハードディスクに保存されている文書ファイルを、LAN等のネットワークを介してプリンタに送信して印刷することができる。
【0003】
この場合、文書ファイルは、通常、パソコンにインストールされているプリンタドライバによって、プリンタで解析可能なポストスクリプト(PostScript(R))等のページ記述言語で記述されたプリントデータに変換されてから、送信される。
【0004】
一方、インターネット上で配布される文書ファイルとして、OS(Operating System)やアプリケーションの種類にかかわらずにオリジナル文書と同じ体裁を再現できるPDF(Portable Document Format)ファイルが広く普及してきている。このPDFファイルは、文書の特定のページの内容の一部または全部を描画するためのオブジェクトを含み、当該オブジェクトは文書内で表示される順序によらずにファイル内において配列可能であり、前記オブジェクトのファイル内での位置情報および個々のページの内容がどのオブジェクトにより表示されるかについての情報等を参照することにより文書構造を解析することができるようになっている。
【0005】
ところで、PDFファイルは、たとえば数百ページものデータを有している場合がある。このような特にデータサイズの大きいPDFファイルをパソコンでプリントデータに変換すると、変換に時間がかかること、処理が複雑になること、および変換によりデータサイズが大きくなってデータ転送時間が増えること等の理由により、パソコンの負荷が増大することになる。かかるパソコンの負荷を軽減するために、プリントデータに変換せずにパソコンから送信されたPDFファイルを直接印刷すること(以下、「PDFダイレクトプリント」という)が可能なプリンタが提案されている。
【0006】
しかし、PDFファイルは各々のページの内容を描画するオブジェクトが文書内で表示される順序によらずにファイル内において配列されており、しかもオブジェクトのファイル内での位置を示す参照情報がファイルの末尾部分に配置されているため、プリンタはPDFファイル全体を受信した後でないと印刷することができない。このため、プリンタは、搭載されるメモリの容量(使用可能容量ないし空き容量)が足りないためにPDFファイル全体を受信できず、印刷を実行できない場合があった。
【0007】
この問題に関連して、PDFファイル全体を受信しなくても受信したデータから順にディスプレイ上での表示が可能となるように、PDFファイルの中身を変更して再構成する装置が知られている(例えば、特許文献1参照。)。
【0008】
【特許文献1】
特表平11−502954号公報
【0009】
【発明が解決しようとする課題】
しかしながら、上記特許文献1に記載の装置にあっては、結果的に、ファイル転送前にパソコン等の送信側で、PDFファイルを再構成するための複雑な処理が必要となってしまう。したがって、上記装置の技術は、PDFファイルをPS等のPDLで記述されたプリントデータに変換することと比較して、パソコンの負荷の軽減を図ることにならないという問題がある。しかも、上記技術は、ディスプレイ上での表示に関する技術に過ぎないため、プリンタでの印刷に関しては十分な考慮が払われていない。
【0010】
本発明は、上述の課題を解決するためになされたものであり、その目的とするところは、記憶部の使用可能容量が少ない場合であっても、PDFファイル等の文書ファイルをダイレクトに受信して画像形成することが可能となる画像形成装置を提供することにある。
【0011】
【課題を解決するための手段】
本発明の上記目的は、下記の手段によって達成される。
【0012】
(1)文書の特定のページの内容の一部または全部を描画するためのオブジェクトがファイル内において前記文書内で表示される順序によらずに配列可能な文書ファイルを受信して画像形成する画像形成装置であって、
前記文書ファイルの構成データを順次受信する受信手段と、
前記受信手段により受信した前記構成データを記憶する記憶手段と、
前記記憶手段に記憶した前記構成データに含まれる前記オブジェクトを単独でまたは2つ以上を組み合わせて前記文書内で表示される順序によらずに画像形成して出力する画像形成手段と、
を有する画像形成装置。
【0013】
(2)前記記憶手段に記憶した前記構成データに含まれる前記オブジェクトに識別名を付与する識別名付与手段をさらに有し、
前記画像形成手段は、前記識別名付与手段により付与した前記オブジェクトの識別名とともに前記オブジェクトを画像形成して出力するものである(1)に記載の画像形成装置。
【0014】
(3)前記文書の個々のページに含まれる前記オブジェクトの識別名についての情報を出力する識別名情報出力手段をさらに有する(1)または(2)に記載の画像形成装置。
【0015】
(4)前記画像形成手段は、前記記憶手段の使用可能領域が規定値以下となった場合または前記記憶手段の使用可能領域がなくなり前記記憶手段が前記構成データを記憶できなくなった場合に前記オブジェクトを画像形成して出力するものである(1)〜(3)のいずれか1つに記載の画像形成装置。
【0016】
(5)前記オブジェクト以外にかかる前記構成データおよび前記画像形成手段により画像形成して出力した前記オブジェクトにかかる前記構成データを前記記憶手段から削除する削除手段をさらに有する(1)〜(4)のいずれか1つに記載の画像形成装置。
【0017】
【発明の実施の形態】
以下、図面を参照して、本発明の実施の形態を説明する。
【0018】
図1は、本発明の第1の実施形態にかかる画像形成装置が適用された画像処理システムの全体構成を示すブロック図である。図1に示すように、本実施形態にかかる画像処理システムは、画像形成装置としてのプリンタ10Aと、画像処理装置としてのパソコン20とを備え、これらはネットワーク30を介して相互に通信可能に接続されている。なお、ネットワークに接続される機器の種類および台数は、図1に示す例に限定されない。また、プリンタ10Aは、ネットワーク30を介することなく、パソコン20と直接機器間で接続(ローカル接続)されていてもよい。
【0019】
図2は、本実施形態にかかるプリンタ10Aの構成を示すブロック図である。図2において、プリンタ10Aは、CPU101、ROM102、RAM103、操作パネル部104、印刷部105およびネットワークインタフェース106を備えており、これらは信号をやり取りするためのバス107を介して相互に接続されている。
【0020】
CPU101は、プログラムにしたがって上記各部の制御や各種の演算処理等を行う。ROM102は、各種プログラムやパラメータを格納する。RAM103は、作業領域として一時的にプログラムやデータを記憶する。本実施形態において、プリンタ10Aは後述する所定の動作を行うが、このためのプリンタ10Aの動作を制御するプログラムはROM102に格納されており、動作開始の際にRAM103に読み出されてCPU101によって実行される。
【0021】
操作パネル部104は、表示パネル、固定キー、表示ランプ等で構成されており、各種の入力と表示を行うために使用される。
【0022】
印刷部105は、ビットマップデータに展開された印刷データを設定条件に従って印刷する。
【0023】
ネットワークインタフェース106は、ネットワークに接続しネットワーク上の他の機器と通信するためのインタフェースである。
【0024】
パソコン20は、CPU、ROM、RAM、各種プログラムやデータを記憶するハードディスク、各種の表示を行うディスプレイ、キーボードやマウス等各種入力を行う入力装置、ネットワークインタフェース等がバスを介して相互に接続されてなる。パソコン20のハードディスクには、後述するように、通常プリントを実行するためのプリンタドライバの他に、PDFダイレクトプリントを実行するための専用ソフトウエアがインストールされている。
【0025】
ネットワーク30は、イーサネット(登録商標)、トークンリング、FDDI等の規格によりコンピュータやネットワーク機器同士を接続したLANや、LAN同士を専用線で接続したWAN等からなる。
【0026】
本実施形態にかかる画像処理システムでは、プリンタとパソコンとの間のデータ通信プロトコルとして、双方向通信が可能で、ジョブごとにセッションを確立することができ、ファイル内の任意の部分のデータを送信可能な所定のプロトコル、たとえば、Raw(TCP/IP 9100)、LPR(Line Printer Remote)、IPP(Internet Printing Protocol)等の各種プロトコルを使用することができる。ただし、独自のプロトコルが使用されてもよい。
【0027】
本実施形態にかかる画像処理システムでは、通常プリントと、PDFダイレクトプリントの2種類の印刷が実行可能である。通常プリントが実行される場合、印刷処理にかかるファイルは、パソコン20のプリンタドライバによって、パソコン20においてページ記述言語で記述されたプリントデータに変換された後、プリンタ10Aに送信される。一方、PDFダイレクトプリントが実行される場合、印刷処理にかかるPDFファイルは、パソコン20の専用ソフトウエアによって、パソコン20でプリントデータに変換されることなく、パソコン20からプリンタ10Aに送信される。以下、本実施形態では、本発明の特徴であるPDFダイレクトプリントの処理について説明するものとする。
【0028】
次に、図3および図4を参照して、標準的なPDFファイルの構造および解析方法について簡単に説明する。図3は、標準的なPDFファイルの構成を説明するための図、図4は、PDFファイルのサンプルを示す図である。なお、図3および図4は、「PDF Reference third edition Adobe Portable Document Format Version 1.4」(アドビシステムズ社)を参考にして作成されている。
【0029】
図3および図4に示すように、標準的なPDFファイル41は、ヘッダ411、ボディ412、相互参照表413、およびトレーラ414から構成される。
【0030】
ヘッダ411には、「%」で始まるコメントが記述される。図4のヘッダ411から、ファイルのフォーマットがPDFであること、および準拠するPDF仕様のバージョン(ここでは1.4)がわかる。
【0031】
ボディ412は、複数のオブジェクトから構成される(図4ではオブジェクト1〜6)。オブジェクトとは、文書を構成する個々の要素をいう。
【0032】
最初のオブジェクト1は、「1 0 obj」から「endobj」までの記述により定義され、他のオブジェクトも同様に定義される。ここで、たとえば「1 0 obj」における最初の数字およびその次の数字は、それぞれオブジェクトの番号(ID)および世代番号(generation)を表す。
【0033】
オブジェクトには、カタログオブジェクト、ページ一覧オブジェクト、ページオブジェクト、コンテンツオブジェクト、リソースオブジェクト、フォントオブジェクト、フォント情報オブジェクト等がある。
【0034】
カタログオブジェクトは、PDFファイルのオブジェクト階層構造のルートとなるオブジェクトである。カタログオブジェクトは、オブジェクトの「/Type」属性が「/Catalog」となっており、「/Pages」属性によりページ一覧オブジェクトが参照されている。
【0035】
ページ一覧オブジェクトは、カタログオブジェクトにより参照されるPDFファイルのページ一覧を持つオブジェクトである。ページ一覧オブジェクトの「/Type」属性は「/Pages」であり、「/Count」属性により当該PDFファイルに含まれるページオブジェクトの個数、すなわち、当該PDFファイルのページ数が示されている。また、「/Kids」属性により各ページオブジェクトが参照されるともに、各ページオブジェクトのページ順位、すなわち、各ページオブジェクトが示すページが文章全体の何ページ目に当たるのかが示されている。
【0036】
ページオブジェクトは、ページ一覧オブジェクトにより参照される特定のページを構成するのに必要な情報が記述されたオブジェクトである。ページオブジェクトの「/Type」属性は「/Page」であり、「/Contents」属性によりコンテンツオブジェクトが参照されている。
【0037】
コンテンツオブジェクトは、ページオブジェクトにより参照される特定のページの中身、すなわち文字、図形、画像等を描画するための命令やデータが既述されたコンテンツストリームを含むオブジェクトである。すなわち、コンテンツオブジェクトは、文字、図形、画像等を描画するためのデータ、すなわち、テキストデータ、ベクタデータ、ラスタデータ等に加え、文字、図形、画像等のページ内での位置やサイズを指定する座標系や色の指定等の命令を含んでいる。
【0038】
リソースオブジェクトは、ページオブジェクトで参照される当該ページで使用されるオペレータ、フォント、色空間の定義情報や、複数ページで共通に使用する画像やパターン等の情報が記述されたオブジェクトであり、フォントオブジェクトは、フォントの定義が記述されたオブジェクトであり、フォント情報オブジェクトは、フォントの幅や高さ等の幾何学情報が記述されたオブジェクトである。
【0039】
なお、図4において、オブジェクト1はカタログオブジェクト、オブジェクト3はページ一覧オブジェクト(図4の場合、文書は1ページのみで構成される)、オブジェクト4はページオブジェクト、オブジェクト5はコンテンツオブジェクト、オブジェクト6はリソースオブジェクトである。
【0040】
相互参照表413は、PDFファイル内におけるオブジェクトの位置を示す参照情報である。相互参照表413において、各オブジェクトの位置がオフセットで表される。ここで、オフセットとは、ファイル先頭から注目するデータの先頭までのバイト数をいう。これにより、ボディ412に並んでいるオブジェクトに対して、ランダムにアクセスすることが可能となる。この相互参照表413は、PDFファイル中では、「xref」というキーワードを含む行で始まる。
【0041】
トレーラ414は、PDFファイルの解析開始時にアクセスすべき情報である。具体的には、トレーラ414には、PDFファイル内における相互参照表413の位置を示す情報、および最初に参照すべきオブジェクト(階層構造のルートとなるルートオブジェクト、すなわちカタログオブジェクト)の番号が記述される。すなわち、「startxref」の次に示される数字は、相互参照表413のオフセットであり、また、「/Root」属性により、ルートオブジェクトが示されている。さらに、「/Size」属性により、相互参照表413の最初のエントリ(オブジェクトのID番号が「0」)を含めて、ファイル内に存在するオブジェクトの個数が示されている。このトレーラ414は、ファイルの末尾部分に存在し、「trailer」というキーワードを含む行で始まる。
【0042】
PDFファイルを解析する装置は、標準的なPDFファイルを解析する場合、まずファイルの末尾部分にあるトレーラ414を解析し、次いで相互参照表413を解析する。そして、これらの解析で得られた情報に基づいて、ボディ412に記述されたページの内容を解析することができる。オブジェクトには、次に必要となるデータが記述された別のオブジェクトの番号が含まれている。このため、次に必要なオブジェクトの番号をたどることにより、PDFファイルの全体的な解析が可能となる。したがって、オブジェクトは、PDFファイルのボディ内においてオブジェクト単位で任意の順序で記述されることができ、結果として、文書内における順序かかわらずファイル内において配列可能となる。
【0043】
次に、本実施形態にかかる画像処理システムの動作の概要について説明する。図5〜図7は、本実施形態にかかるプリンタ10Aの画像形成処理の手順を示すプロ−チャートである。図5において、まず、パソコン20は、ユーザによるPDFダイレクトプリントの実行の指示を受け付けて、印刷ジョブとして印刷しようとするPDFファイルの構成データをプリンタ10Aに順次送信する。プリンタ10Aは、パソコン20から送信されたPDFファイルの構成データを順次受信して(S101)、受信したデータをRAM103に保存する(S102)。そして、メモリオーバーフローが発生しない限り前記構成データの受信を繰り返して前記構成データをRAM103に蓄積し((S103のNO、S104のNO、S101およびS102)、前記構成データを全て受信し終えると(S103のNOおよびS104のYES)、RAM103に保存されたPDFファイルを解析して(S105)、印刷イメージ(ビットマップデータ)に変換して印刷出力する(S106)。
【0044】
ここで、メモリオーバーフローとは、メモリ(RAM103)の所定のデータ保存領域が満杯となってそれ以上データを保存することができなくなる状態をいう。ただし、ステップS103においては、実際にメモリオーバーフローが発生していなくても、前記データ保存領域の使用量が規定値を超えた場合にメモリオーバーフローと判断するものであってもよい。
【0045】
PDFファイルの構成データの受信中にメモリオーバーフローが発生した場合には(S103のYES)、ステップS107に進んで、オブジェクト情報テーブルを初期化する。ここで、オブジェクト情報テーブルとは、PDFファイルの構成データ中に含まれるオブジェクトの各種情報を管理するためのテーブルである。オブジェクト情報テ―ブルの内容および使用方法については後述する。
【0046】
次に、その時点までにRAM103に保存されているPDFファイルの構成データの先頭を読み出し(S108)、読み出したデータがコンテンツオブジェクトにかかるものである場合には(S109のYES)、当該コンテンツオブジェクトに識別名を付して、当該コンテンツオブジェクトの情報をオブジェクト情報テーブルに登録する(S110)。次いで、当該コンテンツオブジェクトを解析して(S111)、印刷イメージに変換して識別名とともに印刷出力する(S112)。そして、当該コンテンツオブジェクトのデータをRAM103から削除し(S113)、PDFファイルの構成データのすべてを受信していない場合は(S114のNO)、当該コンテンツオブジェクトのデータを削除して得られたRAM103の空き容量内で続きのデータを受信してRAM103に保存し(S115)、再度、RAM103に保存されているPDFファイルの構成データの先頭を読み出す(S108)。ステップS114で、既にPDFファイルの構成データのすべてを受信している場合は(S114のYES)、そのままRAM103に保存されている残りのデータの先頭を読み出す(S108)。
【0047】
また、ステップS108で読み出したデータがページオブジェクトにかかるものである場合は(S109のNOおよびS116のYES)、当該ページオブジェクトの情報をオブジェクト情報テーブルに登録し(S117)、当該ページオブジェクトのデータをRAM103から削除して(S118)、ステップS114およびS115の手順を経て、再度、RAM103に保存されているPDFファイルの構成データの先頭を読み出す(S108)。
【0048】
さらに、ステップS108で読み出したデータがページ一覧オブジェクトにかかるものである場合は(S109のNO、S116のNOおよびS119のYES)、当該ページ一覧オブジェクトの情報をオブジェクト情報テーブルに登録し(S120)、当該ページ一覧オブジェクトのデータをRAM103から削除して(S121)、ステップS114およびS115の手順を経て、再度、RAM103に保存されているPDFファイルの構成データの先頭を読み出す(S108)。
【0049】
一方、ステップS108で読み出したデータがコンテンツオブジェクト、ページオブジェクトまたはページ一覧オブジェクトのいずれにかかるものでもない場合、すなわち上記以外のオブジェクト(リソースオブジェクトやフォントオブジェクト等)やヘッダ、相互参照表、トレーラ等にかかるデータである場合は(S109のNO、S116のNOおよびS119のNO)、当該データをRAM103から削除して(S122)、当該データがPDFファイルの末尾データでない場合(S123のNO)、ステップS114およびS115の手順を経て、再度、RAM103に保存されているPDFファイルの構成データの先頭を読み出す(S108)。そして、ステップS122で削除したデータがPDFファイルの末尾データである場合は(S123のYES)、オブジェクト情報テーブルを参照して目次を作成し(S124)、作成した目次を印刷出力して(S125)、画像形成処理を終了する。
【0050】
次に、本実施形態にかかるプリンタ10Aの画像形成処理の手順を、具体例をもってさらに詳細に説明する。図8は、パソコン20がプリンタ10Aに送信したPDFファイルの構造を示す図である。図8において、PDFファイル42は、先頭のヘッダから末尾のトレーラまでの各データがこの順序で配列されて構成されているものとする。ボディに含まれるオブジェクトに付されている数字は当該オブジェクトの番号(ID)を表し、括弧書きは当該オブジェクトの種別を表している。
【0051】
図9は、プリンタ10Aがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こさなかった場合(図5のフローチャートにおけるS101〜S103のNOおよびS104〜S106)のプリンタ10Aの出力結果を示す図である。この場合、プリンタ10Aは、通常のPDFダイレクトプリントと同様にして、パソコン20からPDFファイルの構成データのすべてを受信し(S101〜S103のNOおよびS104)、受信したPDFファイル42を解析して(S105)、印刷出力する(S106)。印刷物511はPDFファイル42の第1ページ、印刷物512は第2ページの出力結果をそれぞれ表している。すなわち、PDFファイル42は全2ページからなり、オブジェクト1、3、5、7、8および13の6つのコンテンツオブジェクトを含み、第1ページはオブジェクト3、5および7、第2ページはオブジェクト1、8および13を、それぞれ図9に示した位置関係で含んでいるものとする。
【0052】
図10〜図13は、プリンタ10Aがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合(図5〜図7のフローチャートにおけるS101〜S103のYESおよびS107〜S125)のオブジェクト情報テーブルの登録状況を段階的に示した図であり、図14は、かかる場合のプリンタ10Aの出力結果を示す図である。
【0053】
ここで、プリンタ10Aは、パソコン20からPDFファイル42の構成データのうちヘッダおよびオブジェクト1〜7までのデータを受信した時点でメモリオーバーフローを起こしたものとする(S104のYES)。プリンタ10Aは、オブジェクト情報テーブルを初期化した後(S107)、RAM103に保存されている上記データのうち、まず先頭データであるヘッダを読み出す(S108)。次いで、ヘッダは、コンテンツオブジェクト、ページオブジェクトおよびページ一覧オブジェクトのいずれでもないので(S109のNO、S116のNOおよびS119のNO)、ヘッダのデータをRAM103から削除する(S122)。そして、ヘッダはPDFファイル42の末尾データではなく(S123のNO)、また、PDFファイル42の構成データの全部を受信していないので(S114のNO)、RAM103の空き容量分だけ続きのPDFファイル42の構成データを受信して(S115)、RAM103内で次に先頭となったオブジェクト1のデータを読み出す(S108)。
【0054】
次に、オブジェクト1はコンテンツオブジェクトなので(S109のYES)、オブジェクト1に識別名を付してオブジェクト1の情報をオブジェクト情報テーブルに登録する(S110)。図10は、この時点でのオブジェクト情報テーブルの登録状況を示している。ここで、オブジェクト情報テーブルには、オブジェクトの情報としてオブジェクト種別、オブジェクト番号、オブジェクト識別名、ページ番号、ページオブジェクト番号、コンテンツオブジェクト番号等が含まれている。ページ番号は、コンテンツオブジェクトの場合は当該コンテンツオブジェクトが含まれるPDFファイルのページ番号を表し、ページオブジェクトの場合は当該ページオブジェクトにより表示されるPDFファイルのページ番号を表す。ページオブジェクト番号は、コンテンツオブジェクトの場合は当該コンテンツオブジェクトが含まれるページオブジェクトの番号を表し、ページ一覧オブジェクトの場合は当該PDFファイルの各ページを表示するページオブジェクトの番号(番号の順序はページ順位)を表す。また、コンテンツオブジェクト番号は、ページオブジェクトの場合に当該ページオブジェクトに含まれるコンテンツオブジェクトの番号を表している。オブジェクト情報テーブル611には、オブジェクト1の情報として、オブジェクト種別が「コンテンツオブジェクト」であり、オブジェクト番号が「1」であり、オブジェクト識別名が「コンテンツ1」であることが登録されている。また、この時点では、オブジェクト1にかかるページ番号およびページオブジェクト番号の情報はわかっていないので、これらの情報は「不明」と登録されている。
【0055】
次いで、プリンタ10Aは、オブジェクト1のデータを解析して(S111)、オブジェクト1の内容を識別名とともに印刷する(S112)。図14における印刷物521は、この時点におけるプリンタ10Aの出力結果を示したものである。印刷物521には、オブジェクト1の識別名である「コンテンツ1」の文字列とともに、オブジェクト1の内容にかかる文字、図形、画像等が出力されている。コンテンツオブジェクトには、前述のとおり、文字、図形、画像等のページ内での位置やサイズを指定する座標系の命令が含まれているので、印刷物521おいて、オブジェクト1の内容にかかる文字、図形、画像等は、ページ内での位置およびサイズが正しく反映されて出力される。なお、印刷物521では、オブジェクト1の識別名を用紙のヘッダ部に出力しているが、本実施形態においてコンテンツオブジェクトの識別名の出力位置は特に限定されるものではなく、例えばコンテンツオブジェクトの内容の出力部分の上部または下部に付記する形態で出力するものであってもよい。
【0056】
そして、プリンタ10Aは、オブジェクト1のデータをRAM103から削除し(S113)、未だPDFファイル42の構成データの全部を受信していない場合は(S114のNO)、RAM103の空き容量分だけ続きのPDFファイルの構成データを受信して(S115)、RAM103内で次に先頭となったオブジェクト2のデータを読み出す(S108)。
【0057】
以下同様にして処理を進めて行き、次に、RAM103内でオブジェクト4のデータが先頭となった場合について説明する。オブジェクト4はページオブジェクトであるので(S109のNOおよびS116のYES)、オブジェクト4の情報をオブジェクト情報テーブルに登録する(S117)。図11は、この時点でのオブジェクト情報テーブルの登録状況を示している。オブジェクト情報テーブル612には、オブジェクト4の情報として、オブジェクト種別が「ページオブジェクト」であり、オブジェクト番号が「4」であること、およびコンテンツオブジェクト番号が「3、5、7」であること、すなわちオブジェクト4により表示されるページにはコンテンツオブジェクトであるオブジェクト3、5および7の内容が含まれることが登録されている。また、この時点では、オブジェクト4により表示されるページ番号の情報はわかっていないので、ページ番号は「不明」と登録されている。さらに、コンテンツオブジェクト番号が「3、5、7」であるという情報、すなわち、オブジェクト4にコンテンツオブジェクトであるオブジェクト3が含まれるという情報に基づいて、既に登録されているオブジェクト3に関し、それまで不明であったオブジェクト3のページオブジェクト番号の情報を「4」に更新する。そして、オブジェクト4のデータをRAM103から削除し(S118)、RAM103内で次に先頭となったデータを読み出す(S108)。
【0058】
さらに、RAM103内でオブジェクト9のデータが先頭となった場合について次に説明する。オブジェクト9はページ一覧オブジェクトであるので(S109のNO、S116のNOおよびS119のYES)、オブジェクト9の情報をオブジェクト情報テーブルに登録する(S120)。図12は、この時点でのオブジェクト情報テーブルの登録状況を示している。オブジェクト情報テーブル613には、オブジェクト9の情報として、オブジェクト種別が「ページ一覧オブジェクト」であり、オブジェクト番号が「9」であること、およびページオブジェクト番号が「4、11」であること、すなわちPDFファイル42が全2ページからなり、第1ページがページオブジェクトであるオブジェクト4、第2ページがページオブジェクトであるオブジェクト11によりそれぞれ表示されることが登録されている。また、ページオブジェクト番号が「4、11」であるという情報、すなわち、ページオブジェクトであるオブジェクト4がPDFファイル42の第1ページを表示するという情報に基づいて、既に登録されているオブジェクト3、4、5および7に関し、それまで不明であったページ番号の情報を「1」に更新する。そして、オブジェクト9のデータをRAM103から削除し(S121)、RAM103内で次に先頭となったデータを読み出す(S108)。
【0059】
このようにして、PDFファイル42のヘッダ、ボディのオブジェクト1〜13および相互参照表が順次処理され、その結果として、ヘッダ、カタログオブジェクトであるオブジェクト2、リソースオブジェクトであるオブジェクト6、フォントオブジェクトであるオブジェクト10、フォント情報オブジェクトであるオブジェクト12および相互参照表のデータがRAM103から削除される。また、コンテンツオブジェクトであるオブジェクト1、3、5、7、8および13は、それぞれ識別名「コンテンツ1」、「コンテンツ2」、「コンテンツ3」、「コンテンツ4」、「コンテンツ5」および「コンテンツ6」が付されてオブジェクト情報テーブルに登録されるとともに、オブジェクトの内容が識別名とともに印刷される。図13はオブジェクト情報テーブルの最終的な登録状況を示している。また、図14の印刷物521〜526は、プリンタ10Aによるオブジェクト1、3、5、7、8および13の出力結果を示している。
【0060】
そして、最終的に、RAM103内の最後のデータとなるトレーラが読み出され(S108)、RAMから削除される(S109のNO、S116のNO、S119のNOおよびS122)。トレーラはPDFファイル42の末尾データであるので(S123のYES)、オブジェクト情報テーブル614(図13)を参照してPDFファイル42の目次を作成し(S124)、作成した目次を印刷する(S125)。図14の印刷物527は、プリンタ10Aによる目次の出力結果を示している。すなわち、印刷物527には、PDFファイル42の目次として、第1ページが「コンテンツ2」、「コンテンツ3」、および「コンテンツ4」の識別名で出力した印刷物、すなわち、印刷物522、523および524の内容を含むこと、第2ページが「コンテンツ1」、「コンテンツ5」、および「コンテンツ6」の識別名で出力した印刷物、すなわち、印刷物521、525および526の内容を含むことが記載されている。これにより、プリンタ10AがPDFファイル42の受信中にメモリオーバーフローを生じた場合であっても、ユーザは、プリンタ10Aにより出力された印刷物527の目次の情報をもとに、印刷物521〜526を組み合わせることにより、PDFファイル42の文書の内容を正確に知ることができる。また、必要であれば、印刷物521〜526における各オブジェクトの出力部分を、その位置を考慮して切り貼りしたり、スキャナで読み取って重ね合わせた後出力したりすることにより、PDFファイル42の印刷物をほぼ完全な形で復元することができるものである。
【0061】
次に、本発明の第2の実施形態について説明する。本実施形態にかかるプリンタ10Bは、前記第1の実施形態にかかるプリンタ10Aと同様の構成を有し(図2参照)、プリンタ10Aと同様にネットワーク30を介してパソコン20と相互に通信可能に接続されている(図1参照)。図15〜18は、本実施形態にかかるプリンタ10Bの画像形成処理の手順を示すフローチャートである。図15において、プリンタ10Bが、パソコン20からメモリオーバーフローを発生させないでPDFファイルの構成データのすべてを受信した場合の動作(S201〜S203NOおよびS204〜S206)については、前記第1の実施形態にかかるプリンタ10Aの動作(S101〜S103NOおよびS104〜S106)と同様であるので説明を省略する。
【0062】
PDFファイルの構成データの受信中にメモリオーバーフローが発生した場合には(S203のYES)、プリンタ10Bは、オブジェクト情報テーブルを初期化した後(S207)、RAM103に保存されているPDFファイルの構成データの先頭を読み出す(S208)。読み出したデータがコンテンツオブジェクトにかかるものである場合には(S209のYES)、オブジェクト情報テーブルを参照して、オブジェクト情報テーブルに当該コンテンツオブジェクトが登録されていない場合は(S210のNO)、当該コンテンツオブジェクトに識別名を付して、当該コンテンツオブジェクトの情報をオブジェクト情報テーブルに登録する(S211)。次いで、当該コンテンツオブジェクトを解析し(S212)、印刷イメージに変換して識別名とともに印刷出力する(S213)。また、ステップS210で、オブジェクト情報テーブルに既に当該コンテンツオブジェクトが登録されている場合は(S210のYES)、直ちに当該コンテンツオブジェクトを解析して(S212)、印刷イメージに変換し、オブジェクト情報テーブルに登録されている当該コンテンツオブジェクトの識別名とともに印刷出力する(S213)。そして、当該コンテンツオブジェクトのデータをRAM103から削除し(S214)、PDFファイルの構成データのすべてを受信していない場合は(S215のNO)、当該コンテンツオブジェクトのデータを削除して得られたRAM103の空き容量内で続きのデータを受信してRAM103に保存し(S216)、再度、RAM103に保存されているPDFファイルの構成データの先頭を読み出す(S208)。ステップS215で、既にPDFファイルの構成データのすべてを受信している場合は(S215のYES)、そのままRAM103に保存されている残りのデータの先頭を読み出す(S208)。
【0063】
また、ステップS208で読み出したデータがページオブジェクトにかかるものである場合は(S209のNOおよびS217のYES)、オブジェクト情報テーブルを参照して、オブジェクト情報テーブルに当該ページオブジェクトが登録されていない場合は(S218のNO)、当該ページオブジェクトに識別名を付して、当該ページオブジェクトの情報をオブジェクト情報テーブルに登録する(S219)。また、オブジェクト情報テーブルに当該ページオブジェクトに含まれるコンテンツオブジェクトの一部または全部が登録されていない場合は(S220のNO)、未登録のコンテンツオブジェクトに識別名を付して、オブジェクト番号とともにオブジェクト情報テーブルに登録する(S221)。次いで、当該ページオブジェクトの識別名とともに、当該ページオブジェクトに含まれるすべてのコンテンツオブジェクトの識別名を印刷出力する(S222)。なお、ステップS218でオブジェクト情報テーブルに既に当該ページオブジェクトが登録されている場合(S218のYES)、またはステップS220でオブジェクト情報テーブルに既に当該ページオブジェクトに含まれるコンテンツオブジェクトの一部または全部が登録されている場合は(S220のNO)、ステップS222における当該ページオブジェクトの識別名またはコンテンツオブジェクトの識別名の印刷出力は、オブジェクト情報テーブルに登録されているものを用いて行う。そして、当該ページオブジェクトのデータをRAM103から削除して(S223)、ステップS215およびS216の手順を経て、再度、RAM103に保存されているPDFファイルの構成データの先頭を読み出す(S208)。
【0064】
さらに、ステップS208で読み出したデータがページ一覧オブジェクトにかかるものである場合は(S209のNO、S217のNOおよびS224のYES)、当該ページ一覧オブジェクトの情報をオブジェクト情報テーブルに登録し(S225)、オブジェクト情報テーブルにページオブジェクトの一部または全部が登録されていない場合は(S226のNO)、未登録のページオブジェクトに識別名を付して、当該ページオブジェクトをオブジェクト情報テーブルに登録する(S227)。次いで、当該ページ一覧オブジェクトの情報をもとに、ページオブジェクトの識別名と該当するページ番号を印刷出力する(S228)。なお、ステップS226でオブジェクト情報テーブルに既にページオブジェクトの一部または全部が登録されている場合は(S226のYES)、ステップS228における当該ページオブジェクトの識別名の印刷出力は、オブジェクト情報テーブルに登録されているものを用いて行う。そして、当該ページ一覧オブジェクトのデータをRAM103から削除して(S229)、ステップS215およびS216の手順を経て、再度、RAM103に保存されているPDFファイルの構成データの先頭を読み出す(S208)。
【0065】
一方、ステップS208で読み出したデータがコンテンツオブジェクト、ページオブジェクトまたはページ一覧オブジェクトのいずれにかかるものでもない場合は(S209のNO、S217のNOおよびS224のNO)、当該データをRAM103から削除して(S230)、当該データがPDFファイルの末尾データでない場合(S231のNO)、ステップS215およびS216の手順を経て、再度、RAM103に保存されているPDFファイルの構成データの先頭を読み出す(S208)。そして、ステップS230で削除したデータがPDFファイルの末尾データである場合は(S231のYES)、画像形成処理を終了する。
【0066】
次に、本実施形態にかかるプリンタ10Bの画像形成処理の手順を、具体例をもってさらに詳細に説明する。ここでは、前記第1の実施形態におけるプリンタ10Aの場合と同様にして、PDFファイル42(図8参照)を受信して印刷出力する場合について説明する。プリンタ10Bがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こさなかった場合(図15のフローチャートにおけるS201〜S203のNOおよびS204〜S206)の出力結果については、図9に示すもの(印刷物511および512)と同様である。
【0067】
図19〜図21は、プリンタ10Bがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合(図15〜図18のフローチャートにおけるS201〜S203のYESおよびS207〜S231)のオブジェクト情報テーブルの登録状況を段階的に示した図であり、図22は、かかる場合のプリンタ10Bの出力結果を示す図である。
【0068】
ここで、プリンタ10Bは、パソコン20からPDFファイル42の構成データのうちヘッダおよびオブジェクト1〜7までのデータを受信した時点でメモリオーバーフローを起こしたものとする(S204のYES)。プリンタ10Bは、オブジェクト情報テーブルを初期化した後(S207)、RAM103に保存されている上記データのうち、まず先頭データであるヘッダを読み出す(S208)。次いで、ヘッダは、コンテンツオブジェクト、ページオブジェクトおよびページ一覧オブジェクトのいずれでもないので(S209のNO、S217のNOおよびS224のNO)、ヘッダのデータをRAM103から削除する(S230)。そして、ヘッダはPDFファイル42の末尾データではなく(S231のNO)、また、PDFファイル42の構成データの全部を受信していないので(S215のNO)、RAM103の空き容量分だけ続きのPDFファイル42の構成データを受信して(S216)、RAM103内で次に先頭となったオブジェクト1のデータを読み出す(S208)。
【0069】
次に、オブジェクト1はコンテンツオブジェクトであり(S209のYES)、また、オブジェクト1はオブジェクト情報テーブルに未登録であるので(S210のNO)、オブジェクト1に識別名を付してオブジェクト1の情報をオブジェクト情報テーブルに登録する(S211)。この時点でのオブジェクト情報テーブルの登録状況は、図10に示すもの(オブジェクト情報テーブル611)と同様である。
【0070】
次いで、オブジェクト1のデータを解析して(S212)、オブジェクト1の内容を識別名とともに印刷する(S213)。図22における印刷物531は、この時点におけるプリンタ10Bの出力結果を示している。
【0071】
そして、プリンタ10Bは、オブジェクト1のデータをRAM103から削除し(S214)、未だPDFファイル42の構成データの全部を受信していない場合は(S215のNO)、RAM103の空き容量分だけ続きのPDFファイルの構成データを受信して(S216)、RAM103内で次に先頭となったオブジェクト2のデータを読み出す(S208)。
【0072】
以下同様にして処理を進めて行き、次に、RAM103内でオブジェクト4のデータが先頭となった場合について説明する。オブジェクト4はページオブジェクトであり(S209のNOおよびS217のYES)、また、オブジェクト4はオブジェクト情報テーブルに未登録であるので(S218のNO)、オブジェクト4に識別名を付して、オブジェクト4の情報をオブジェクト情報テーブルに登録する(S219)。図19は、この時点でのオブジェクト情報テーブルの登録状況を示している。オブジェクト情報テーブル621には、オブジェクト4の情報として、オブジェクト種別が「ページオブジェクト」であり、オブジェクト番号が「4」であり、オブジェクト識別名が「ページA」であること、およびコンテンツオブジェクト番号が「3、5、7」であることが登録されている。また、この時点では、オブジェクト4により表示されるページ番号の情報はわかっていないので、ページ番号は「不明」と登録されている。さらに、コンテンツオブジェクト番号が「3、5、7」であるという情報、すなわち、オブジェクト4にコンテンツオブジェクトであるオブジェクト3、5および7が含まれるという情報に基づいて、未だ登録されていないオブジェクト5および7にそれぞれ「コンテンツ3」および「コンテンツ4」という識別名を付して、コンテンツオブジェクトとしてその情報をオブジェクト情報テーブルに登録するとともに(S220のNOおよびS221)、既に登録されているオブジェクト3に関し、それまで不明であったページオブジェクト番号の情報を「4」に更新する。
【0073】
次いで、オブジェクト3、5および7の識別名をオブジェクト4の識別名とともに印刷出力する(S222)。図22における印刷物533は、この時点におけるプリンタ10Bの出力結果を示している。印刷物533には、オブジェクト4の識別名である「ページA」と、それぞれオブジェクト3、5および7の識別名である「コンテンツ2」、「コンテンツ3」および「コンテンツ4」の文字列が印刷されている。これにより、ユーザは、PDFファイル42の特定のページである「ページA」が、「コンテンツ2」、「コンテンツ3」および「コンテンツ4」の内容を含むものであることを知ることができる。そして、プリンタ10Bは、オブジェクト4のデータをRAM103から削除し(S223)、RAM103内で次に先頭となったデータを読み出す(S208)。
【0074】
さらに、RAM103内でオブジェクト9のデータが先頭となった場合について次に説明する。オブジェクト9はページ一覧オブジェクトであるので(S209のNO、S217のNOおよびS224のYES)、オブジェクト9の情報をオブジェクト情報テーブルに登録する(S225)。図20は、この時点でのオブジェクト情報テーブルの登録状況を示している。オブジェクト情報テーブル622には、オブジェクト9の情報として、オブジェクト種別が「ページ一覧オブジェクト」であり、オブジェクト番号が「9」であり、オブジェクト識別名が「ページ一覧」であること、およびページオブジェクト番号が「4、11」であることが登録されている。なお、ここではオブジェクト9に「ページ一覧」という識別名を付しているが、本実施形態においてはページ一覧オブジェクトに必ずしも識別名を付す必要はない。また、ページオブジェクト番号が「4、11」であるという情報、すなわちPDFファイル42が全2ページからなり、ページオブジェクトであるオブジェクト4がPDFファイル42の第1ページを、オブジェクト11が第2ページをそれぞれ表示するという情報に基づいて、未だ登録されていないオブジェクト11に「ページB」という識別名を付して、ページオブジェクトとしてその情報をオブジェクト情報テーブルに登録するとともに(S226のNOおよびS227)、既に登録されているオブジェクト3、4、5および7に関し、それまで不明であったページ番号の情報を「1」に更新する。
【0075】
次いで、ページオブジェクトであるオブジェクト4および11の識別名とこれらにより表示されるPDFファイル42のページ番号をそれぞれ印刷出力する(S228)。図22における印刷物537は、この時点におけるプリンタ10Bの出力結果を示している。印刷物537には、オブジェクト9の識別名である「ページ一覧」とともに、オブジェクト4の識別名である「ページA」とページ番号の「1ページ」およびオブジェクト11の識別名である「ページB」とページ番号の「2ページ」の文字列がそれぞれ組み合わされて印刷されている。これにより、ユーザは、PDFファイル42の第1ページが「ページA」、第2ページが「ページB」でそれぞれ構成されるものであることを知ることができる。そして、プリンタ10Bは、オブジェクト9のデータをRAM103から削除し(S229)、RAM103内で次に先頭となったデータを読み出す(S208)。
【0076】
このようにして、PDFファイル42のヘッダ、ボディのオブジェクト1〜13および相互参照表が順次処理され、その結果として、ヘッダ、カタログオブジェクトであるオブジェクト2、リソースオブジェクトであるオブジェクト6、フォントオブジェクトであるオブジェクト10、フォント情報オブジェクトであるオブジェクト12および相互参照表のデータがRAM103から削除される。また、コンテンツオブジェクトであるオブジェクト1、3、5、7、8および13は、それぞれ「コンテンツ1」、「コンテンツ2」、「コンテンツ3」、「コンテンツ4」、「コンテンツ5」および「コンテンツ6」の識別名が付されてオブジェクト情報テーブルに登録されるとともに、オブジェクトの内容が識別名とともにそれぞれ印刷される。図21はオブジェクト情報テーブルの最終的な登録状況を示している。また、図22の印刷物531、532、534〜536および539は、プリンタ10Bによるオブジェクト1、3、5、7、8および13の出力結果を示している。さらに、ページオブジェクトであるオブジェクト4およびオブジェクト11は、それぞれ「ページA」および「ページB」の識別名が付されてオブジェクト情報テーブルに登録されるとともに、当該オブジェクトの識別名と含んでいるコンテンツオブジェクトの識別名がそれぞれ印刷される。図22の印刷物533および538は、プリンタ10Bによるオブジェクト4および11の出力結果を示している。
【0077】
そして、最終的に、RAM103内の最後のデータとなるトレーラを読み出して(S108)、RAMから削除し(S209のNO、S217のNO、S224のNOおよびS230)、画像処理を終了する(S231のYES)。
【0078】
これにより、図22において、プリンタ10BがPDFファイル42の受信中にメモリオーバーフローを生じた場合であっても、ユーザは、プリンタ10Bにより出力された印刷物533、537および538の情報をもとに、印刷物531、532、534〜536および539を組み合わせることにより、PDFファイル42の文書の内容を正確に知ることができる。また、必要であれば、印刷物531、532、534〜536および539における各オブジェクトの内容の出力部分を、その位置を考慮して切り貼り等することにより、PDFファイル42の印刷物をほぼ完全な形で復元することができるものである。
【0079】
図23および24は、それぞれ本発明の第3および第4の実施形態にかかるプリンタ10Cおよび10Dのメモリオーバーフロー時の出力結果を説明するための図である。プリンタ10Cおよび10Dは、前記第1の実施形態にかかるプリンタ10Aと同様の構成を有し(図2参照)、プリンタ10Aと同様にネットワーク30を介してパソコン20と相互に通信可能に接続されているものとする(図1参照)。また、図23および24では、前記第1および第2の実施形態の場合と同様にして、PDFファイル42(図8参照)の受信中にメモリオーバーフローが発生した場合のプリンタ10Cおよび10Dの出力結果を示している。
【0080】
本発明の第3の実施形態は、前記第2の実施形態の変形例である。本発明の第3の実施形態にかかるプリンタ10Cの動作が前記第2の実施形態にかかるプリンタ10Bの動作と異なるのは、受信したPDFファイルの構成データ中のページオブジェクトを処理する場合において、ページオブジェクトに識別名を付してオブジェクト情報テーブルに登録した後、直ちに当該ページオブジェクトの識別名および当該ページオブジェクトに含まれるコンテンツオブジェクトの識別名を印刷出力するのではなく、当該ページオブジェクトに含まれるコンテンツオブジェクトのうち未処理のものがある場合は、当該未処理のコンテンツオブジェクトをすべて処理した後、当該未処理のコンテンツオブジェクトについては識別名を印刷する代わりにオブジェクトの内容を当該ページオブジェクトの識別名ともに印刷する点にある。
【0081】
すなわち、図23において、プリンタ10Cは、前記第2の実施形態にかかるプリンタ10Bと同様にしてRAM103内に保存されているPDFファイル42の構成データのうち先頭のものから順次処理して、オブジェクト1およびオブジェクト3の内容をそれぞれの識別名である「コンテンツ1」および「コンテンツ2」の文字列とともに印刷する(印刷物541および542参照)。次に、ページオブジェクトであるオブジェクト4の処理において、オブジェクト4に含まれるコンテンツオブジェクトのオブジェクト3、オブジェクト5およびオブジェクト7のうち、オブジェクト5およびオブジェクト7がその時点で未処理であるので、識別名の印刷を直ちには行わずに次のRAM103内の先頭データの処理に進む。そして、未処理のコンテンツオブジェクトのうち最後に処理されるオブジェクト7の処理時において、オブジェクト5およびオブジェクト7の内容をオブジェクト4の識別名である「ページA」の文字列とともに印刷する(印刷物543参照)。この際、既に出力しているオブジェクト3については、用紙の余白部に識別名の「コンテンツ2」の文字列を出力する。同様に、ページオブジェクトであるオブジェクト11についても、オブジェクト11に含まれるオブジェクト1、オブジェクト8およびオブジェクト13のうち、未処理であるオブジェクト13の処理時に、オブジェクト11の内容ならびにそれぞれオブジェクト1およびオブジェクト8の識別名である「コンテンツ1」および「コンテンツ3」の文字列を、オブジェクト11の識別名である「ページB」の文字列とともに印刷する(印刷物546参照)。これにより、ページオブジェクトの情報をただ出力するのではなくPDFファイル42の実際のページにおけるコンテンツオブジェクトの配列に近い状態で出力することができるとともに、前記第2の実施形態の場合に比べて、印刷物の出力部数を少なくすることができる。
【0082】
本発明の第4の実施形態は、前記第1の実施形態の変形例である。本発明の第4の実施形態にかかるプリンタ10Dの動作が前記第1の実施形態にかかるプリンタ10Aの動作と異なるのは、受信したPDFファイルの構成データ中のコンテンツオブジェクトを処理する場合において、コンテンツオブジェクトに識別名を付してオブジェクト情報テーブルに登録した後、直ちにコンテンツオブジェクトの内容を印刷出力するのはなく、メモリ内に同一の用紙上に組み合わせて配置できるコンテンツオブジェクトがある場合は、複数のコンテンツオブジェクトの内容を組み合わせて同一用紙上に印刷出力する点にある。
【0083】
すなわち、図24において、プリンタ10Dは、前記第1の実施形態にかかるプリンタ10Aと同様にしてRAM103内に保存されているPDFファイル42の構成データのうち先頭のものから順次処理する。そして、コンテンツオブジェクトであるオブジェクト1の処理において、オブジェクト1に識別名を付してオブジェクト1の情報をオブジェクト情報テーブルに登録した後、オブジェクト1のデータを解析して、サイズ情報のみを抽出してオブジェクト情報テーブルに記録し、コンテンツオブジェクトの内容は出力せずに、次のRAM103内の先頭データの処理に進む。同様にして、コンテンツオブジェクトであるオブジェクト3、オブジェクト5およびオブジェクト7についてのサイズ情報を取得する。そして、メモリオーバーフロー時にRAM103に保存されているPDFファイル42の構成データ(ヘッダおよびオブジェクト1〜7までのデータ)のすべてを処理した時点で、コンテンツオブジェクトのサイズ情報を比較し、オブジェクト1、オブジェクト3およびオブジェクト5を組み合わせてそれぞれこれらの識別名である「コンテンツ1」、「コンテンツ2」および「コンテンツ3」の文字列とともに同一用紙上に印刷出力する(印刷物551参照)。この際、オブジェクト1、オブジェクト3およびオブジェクト5は、効率よく組み合わせるため、位置情報は破棄されて例えば用紙の左上端から順に配置されて出力される。次いで、RAM103からオブジェクト1、オブジェクト3およびオブジェクト5のデータを削除し、RAM103の空き容量分だけ続きのPDFファイルの構成データを順次受信する。以下、同様に処理して印刷物562および563を出力し、最後に前記第1の実施形態にかかるプリンタ10Aと同様の処理によりPDFファイル42の目次を作成して出力する。これにより、前記第1の実施形態の場合に比べて、コンテンツオブジェクトを効率よく組み合わせて出力することができ、印刷物の出力部数を少なくすることができるものである。
【0084】
上記各実施形態では、受信したPDFファイルの構成データに含まれるコンテンツオブジェクトの内容を出力する際に、同時に当該コンテンツオブジェクトに付した識別名を出力するとともに、個々のページに含まれるコンテンツオブジェクトの識別名についての情報を出力するものであったが、本発明はかかる形態に限定されるものではなく、例えば、コンテンツオブジェクトの内容を出力する際に、前記識別名および情報を出力しない構成としてもよい。かかる場合であっても、ユーザは取得したコンテンツオブジェクトについての印刷物をもとにPDFファイルの文書の内容を概ね知ることができ、また、PDFファイルに含まれる画像データのみを取得したい場合等PDFファイルの出力目的によっては、必ずしも文書の正確な復元を要しない場合があるからである。
【0085】
上記各実施形態では、プリンタがPDFファイルを受信中にメモリオーバーフローが発生した場合に、自動的に受信したPDFファイルの構成データに含まれるコンテンツオブジェクトをオブジェクトごとに画像形成するものであったが、本発明はかかる形態に限定されるものではなく、例えば、メモリオーバーフローが発生した場合に、プリンタの操作パネル部104やパソコン20のディスプレイにその旨の通知を表示させ、PDFファイルの印刷を中止するか本発明の方法によりコンテンツオブジェクトごとに画像形成するかをユーザに選択させる構成とすることができる。また、プリンタがPDFファイルを受信中にメモリオーバーフローを発生するか否かにかかわらずに、例えば事前に設定入力を受け付けることにより、通常のPDFダイレクトプリントを行うか本発明の方法によりコンテンツオブジェクトごとに画像形成するかをユーザが任意に選択できる構成としてもよい。
【0086】
また、上記各実施形態では、パソコンでの操作に基づいてパソコンからプリンタにPDFファイルを送信する場合について説明したが、本発明はこれに限定されるものではない。本発明は、プリンタで印刷したいPDFファイルの保存場所を指定することにより、印刷すべきPDFファイルが保存されている保存装置から当該PDFファイルを取得してプリンタで印刷する場合にも適用することができる。
【0087】
さらに、上記各実施形態では、本発明にかかる画像形成処理の対象をPDFファイルのダイレクトプリントを例にして説明したが、本発明はこれに限定されるものではなく、PDFファイル以外にも、文書の特定のページの内容の一部または全部を描画するためのオブジェクトがファイル内において前記文書内で表示される順序によらずに配列可能な文書ファイルであれば、いずれも本発明により処理することが可能である。
【0088】
上記各実施形態では、本発明にかかる画像処理システムを、画像処理装置としてパソコン、および画像形成装置としてプリンタを例にして説明したが、本発明はこれに限定されるものではない。画像処理装置としては、パソコンの代わりに、たとえばワークステーション、サーバ等のコンピュータを用いてもよい。また、画像形成装置としては、プリンタの代わりに、デジタル複写機、ファクシミリ装置等の印刷機能を有する多機能周辺機器(MFP:Multi−Function Peripheral)、または単体あるいはパソコン等に接続されたCRTディスプレイ、液晶ディスプレイ、プロジェクタ等のディスプレイ装置であってもよい。
【0089】
本発明による画像形成装置および画像形成方法は、上記各手順を実行するための専用のハードウエア回路によっても、また、上記各手順を記述したプログラムをCPUが実行することによっても実現することができる。後者により本発明を実現する場合、画像形成装置を動作させる上記プログラムは、フロッピー(登録商標)ディスクやCD−ROM等のコンピュータ読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピュータ読み取り可能な記録媒体に記録されたプログラムは、通常、ROMやハードディスク等に転送され記憶される。また、このプログラムは、たとえば、単独のアプリケーションソフトとして提供されてもよいし、画像形成装置の一機能としてその装置のソフトウエアに組み込んでもよい。
【0090】
なお、上述した本発明の実施形態には、特許請求の範囲の請求項1〜5に記載した発明以外にも、以下の付記1〜7に示すような発明が含まれる。
【0091】
[付記1] 前記識別名情報出力手段は、前記文書の各ページ番号と前記ページ番号にかかるページに含まれる前記オブジェクトの識別名とを対応させて表示した目次を出力するものである請求項3に記載の画像形成装置。
【0092】
[付記2] 前記識別名情報出力手段は、前記文書の特定のページに含まれる前記オブジェクトの識別名と前記特定のページの識別名とを表示したページ情報と、前記文書の各ページ番号と前記ページ番号にかかるページの識別名とを対応させて表示したページ一覧情報とを出力するものである請求項3に記載の画像形成装置。
【0093】
[付記3] 前記画像形成手段は、前記オブジェクトを前記記憶手段に記憶した順序で画像形成して出力するものである請求項1〜5または付記1もしくは2のいずれか1つに記載の画像形成装置。
【0094】
[付記4] 前記文書ファイルは、PDF(Portable Document Format)ファイルである請求項1〜5または付記1〜3のいずれか1つに記載の画像形成装置。
【0095】
[付記5] 文書の特定のページの内容の一部または全部を描画するためのオブジェクトがファイル内において前記文書内で表示される順序によらずに配列可能な文書ファイルを受信して画像形成する画像形成方法であって、
前記文書ファイルの構成データを順次受信する段階(1)と、
段階(1)で受信した前記構成データを記憶する段階(2)と、
段階(2)で記憶した前記構成データに含まれる前記オブジェクトを単独でまたは2つ以上を組み合わせて前記文書内で表示される順序によらずに画像形成して出力する段階(3)と、
を有する画像形成方法。
【0096】
[付記6] 文書の特定のページの内容の一部または全部を描画するためのオブジェクトがファイル内において前記文書内で表示される順序によらずに配列可能な文書ファイルを受信して画像形成する画像形成装置のための画像形成プログラムであって、
前記文書ファイルの構成データを順次受信する手順(1)と、
手順(1)で受信した前記構成データを記憶する手順(2)と、
手順(2)で記憶した前記構成データに含まれる前記オブジェクトを単独でまたは2つ以上を組み合わせて前記文書内で表示される順序によらずに画像形成して出力する手順(3)と、
を前記画像形成装置に実行させることを特徴とする画像形成プログラム。
【0097】
[付記7] 付記6に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【0098】
【発明の効果】
上述したように、本発明の画像形成装置によれば、PDFファイル等のように、文書の特定のページの内容の一部または全部を描画するためのオブジェクトがファイル内において前記文書内で表示される順序によらずに配列可能な文書ファイルをダイレクトに受信して画像形成する場合に、前記文書ファイルの全体を受信しなくても、受信した前記文書ファイルの構成データに含まれる前記オブジェクトを単独でまたは2つ以上を組み合わせて前記文書内で表示される順序によらずに画像形成して出力するので、ユーザは前記オブジェクトの印刷物から文書の内容を概ね知ることができる。
【0099】
さらに、前記オブジェクトを画像形成する際に前記オブジェクトに識別名を付与して出力するとともに、個々のページに含まれる前記オブジェクトの識別名についての情報を出力することにより、ユーザはその情報をもとに前記オブジェクトの印刷物から文書の内容を正確に知ることができるとともに、前記オブジェクトの印刷物をその位置を考慮して切り張り等することにより、文書ファイルの印刷物をほぼ完全な形で復元することができるものである。
【0100】
したがって、本発明によれば、記憶部の使用可能容量が少ない画像形成装置に適用しても、前記文書ファイルをダイレクトに受信して画像形成することが可能となる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態にかかる画像形成装置が適用された画像処理システムの全体構成を示すブロック図である。
【図2】図1におけるプリンタ10Aの構成を示すブロック図である。
【図3】標準的なPDFファイルの構成を説明するための図である。
【図4】PDFファイルのサンプルを示す図である。
【図5】プリンタ10Aの画像形成処理の手順を示すプロ−チャートである。
【図6】プリンタ10Aの画像形成処理の手順を示すプロ−チャートである。
【図7】プリンタ10Aの画像形成処理の手順を示すプロ−チャートである。
【図8】パソコン20がプリンタ10Aに送信したPDFファイル42の構造を示す図である。
【図9】プリンタ10Aがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こさなかった場合のプリンタ10Aの出力結果を示す図である。
【図10】プリンタ10Aがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合のオブジェクト情報テーブルの登録状況を示した図である。
【図11】プリンタ10Aがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合のオブジェクト情報テーブルの登録状況を示した図である。
【図12】プリンタ10Aがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合のオブジェクト情報テーブルの登録状況を示した図である。
【図13】プリンタ10Aがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合のオブジェクト情報テーブルの登録状況を示した図である。
【図14】プリンタ10Aがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合のプリンタ10Aの出力結果を示す図である。
【図15】本発明の第2の実施形態にかかるプリンタ10Bの画像形成処理の手順を示すフローチャートである。
【図16】本発明の第2の実施形態にかかるプリンタ10Bの画像形成処理の手順を示すフローチャートである。
【図17】本発明の第2の実施形態にかかるプリンタ10Bの画像形成処理の手順を示すフローチャートである。
【図18】本発明の第2の実施形態にかかるプリンタ10Bの画像形成処理の手順を示すフローチャートである。
【図19】プリンタ10Bがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合のオブジェクト情報テーブルの登録状況を示した図である。
【図20】プリンタ10Bがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合のオブジェクト情報テーブルの登録状況を示した図である。
【図21】プリンタ10Bがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合のオブジェクト情報テーブルの登録状況を示した図である。
【図22】プリンタ10Bがパソコン20からPDFファイル42を受信した際にメモリオーバーフローを起こした場合のプリンタ10Bの出力結果を示す図である。
【図23】本発明の第3の実施形態にかかるプリンタ10Cのメモリオーバーフロー時の出力結果を説明するための図である。
【図24】本発明の第4の実施形態にかかるプリンタ10Dのメモリオーバーフロー時の出力結果を説明するための図である。
【符号の説明】
1〜6…オブジェクト、
10A…プリンタ、
101…CPU、
102…ROM、
103…RAM、
104…操作パネル部、
105…印刷部、
106…ネットワークインタフェース、
107…バス、
20…パソコン、
30…ネットワーク、
41…標準的なPDFファイル、
411…ヘッダ、
412…ボディ、
413…相互参照表、
414…トレーラ。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an image forming apparatus, and in particular, to a document in which objects for drawing part or all of the content of a specific page of a document can be arranged in a file regardless of the order in which the document is displayed. The present invention relates to an image forming apparatus that receives a file and forms an image.
[0002]
[Prior art]
A computer such as a personal computer can transmit a document file stored on a hard disk to a printer via a network such as a LAN and print it.
[0003]
In this case, the document file is usually converted by a printer driver installed in a personal computer into print data described in a page description language such as PostScript (R), which can be analyzed by a printer, and then transmitted. Is done.
[0004]
On the other hand, as a document file distributed on the Internet, a PDF (Portable Document Format) file that can reproduce the same format as an original document regardless of the type of an OS (Operating System) or an application has been widely spread. The PDF file includes objects for drawing part or all of the contents of a specific page of the document, and the objects can be arranged in the file regardless of the order in which the objects are displayed in the document. The document structure can be analyzed by referring to position information in the file and information about which object displays the contents of each page.
[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 personal computer, the conversion takes a long time, the processing becomes complicated, and the data size becomes large due to the conversion. For that reason, the load on the personal computer increases. In order to reduce the load on the personal computer, a printer capable of directly printing a PDF file transmitted from the personal computer without converting it into print data (hereinafter, referred to as “PDF direct print”) has been proposed.
[0006]
However, the PDF file is arranged in the file regardless of the order in which the objects for rendering the contents of each page are displayed in the document, and the reference information indicating the position of the object in the file is stored at the end of the file. Since the printer is located in a portion, 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, refer to Patent Document 1).
[0008]
[Patent Document 1]
Japanese Patent Publication No. Hei 11-502954
[0009]
[Problems to be solved by the invention]
However, in the apparatus described in Patent Document 1, as a result, a complicated process for reconstructing the PDF file is required on the transmission side such as a personal computer before the file transfer. Therefore, the technique of the above-described apparatus has a problem in that the load on the personal computer is not reduced as compared with converting a PDF file into print data described in PDL such as PS. In addition, since the above technique is merely a technique related to display on a display, sufficient consideration is not given to printing with a printer.
[0010]
The present invention has been made to solve the above-described problem, and an object of the present invention is to directly receive a document file such as a PDF file even when the available capacity of a storage unit is small. An object of the present invention is to provide an image forming apparatus capable of forming an image by using an image forming apparatus.
[0011]
[Means for Solving the Problems]
The above object of the present invention is achieved by the following means.
[0012]
(1) An image for receiving and forming a document file in which an object for drawing a part or all of the content of a specific page of a document can be arranged regardless of the order in which the object is displayed in the file A forming device,
Receiving means for sequentially receiving the configuration data of the document file;
Storage means for storing the configuration data received by the receiving means,
Image forming means for forming and outputting the objects included in the configuration data stored in the storage means alone or in combination of two or more regardless of the order in which they are displayed in the document;
An image forming apparatus having:
[0013]
(2) further comprising an identification name assigning means for assigning an identification name to the object included in the configuration data stored in the storage means,
The image forming apparatus according to (1), wherein the image forming unit forms and outputs the object together with the identification name of the object assigned by the identification name assigning unit.
[0014]
(3) The image forming apparatus according to (1) or (2), further including an identification name information output unit configured to output information on an identification name of the object included in each page of the document.
[0015]
(4) The image forming unit is configured to execute the object processing when the usable area of the storage unit is equal to or smaller than a specified value or when the usable region of the storage unit is exhausted and the storage unit cannot store the configuration data. The image forming apparatus according to any one of (1) to (3), which forms an image and outputs the image.
[0016]
(5) The apparatus according to any of (1) to (4), further including a deletion unit configured to delete, from the storage unit, the configuration data related to the object other than the object and the configuration data related to the object that has been formed and output by the image forming unit. An image forming apparatus according to any one of the preceding claims.
[0017]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0018]
FIG. 1 is a block diagram illustrating an overall configuration of an image processing system to which an image forming apparatus according to a first embodiment of the present invention is applied. As shown in FIG. 1, the image processing system according to the present embodiment includes a printer 10A as an image forming apparatus and a personal computer 20 as an image processing apparatus, which are communicably connected to each other via a network 30. Have been. Note that the type and number of devices connected to the network are not limited to the example shown in FIG. The printer 10A may be directly connected (locally connected) to the personal computer 20 without going through the network 30.
[0019]
FIG. 2 is a block diagram illustrating a configuration of the printer 10A according to the present embodiment. 2, the printer 10A includes a CPU 101, a ROM 102, a RAM 103, an operation panel unit 104, a printing unit 105, and a network interface 106, which are mutually connected via a bus 107 for exchanging signals. .
[0020]
The CPU 101 controls the above-described units and performs various arithmetic processes according to a program. The ROM 102 stores various programs and parameters. The RAM 103 temporarily stores programs and data as a work area. In the present embodiment, the printer 10A performs a predetermined operation described later, and a program for controlling the operation of the printer 10A for this is stored in the ROM 102, read out to the RAM 103 when the operation starts, and executed by the CPU 101. Is done.
[0021]
The operation panel unit 104 includes a display panel, fixed keys, display lamps, and the like, and is used for performing various inputs and displays.
[0022]
The printing unit 105 prints the print data expanded into the bitmap data according to the setting conditions.
[0023]
The network interface 106 is an interface for connecting to a network and communicating with other devices on the network.
[0024]
The personal computer 20 includes a CPU, a ROM, a RAM, a hard disk that stores various programs and data, a display that performs various displays, an input device that performs various inputs such as a keyboard and a mouse, and a network interface and the like, which are interconnected via a bus. Become. As will be described later, dedicated software for executing PDF direct printing is installed on the hard disk of the personal computer 20 in addition to a printer driver for executing normal printing.
[0025]
The network 30 includes a LAN that connects computers and network devices according to standards such as Ethernet (registered trademark), Token Ring, and FDDI, and a WAN that connects LANs with a dedicated line.
[0026]
In the image processing system according to the present embodiment, bidirectional communication is possible as a data communication protocol between a printer and a personal computer, a session can be established for each job, and data of an arbitrary portion in a file is transmitted. Possible predetermined protocols, for example, various protocols such as Raw (TCP / IP 9100), LPR (Line Printer Remote), and IPP (Internet Printing Protocol) can be used. However, a proprietary protocol may be used.
[0027]
The image processing system according to the present embodiment can execute two types of printing: normal printing and PDF direct printing. When normal printing is performed, a file for print processing is converted into print data described in a page description language by the printer driver of the personal computer 20 in the personal computer 20, and then transmitted to the printer 10A. On the other hand, when the PDF direct printing is executed, the PDF file for the printing process is transmitted from the personal computer 20 to the printer 10A by the dedicated software of the personal computer 20 without being converted into print data by the personal computer 20. Hereinafter, in the present embodiment, a PDF direct print process which is a feature of the present invention will be described.
[0028]
Next, the structure and analysis method of a standard PDF file will be briefly described with reference to FIGS. FIG. 3 is a diagram for explaining the structure of a standard PDF file, and FIG. 4 is a diagram showing a sample PDF file. FIGS. 3 and 4 are created with reference to “PDF Reference third edition Adobe Portable Document Format Version 1.4” (Adobe Systems Inc.).
[0029]
As shown in FIGS. 3 and 4, the standard PDF file 41 includes a header 411, a body 412, a cross-reference table 413, and a trailer 414.
[0030]
In the header 411, a comment starting with “%” is described. From the header 411 in FIG. 4, it is known that the file format is PDF and the version of the PDF specification (1.4 in this case) to which the file conforms.
[0031]
The body 412 is composed of a plurality of objects (objects 1 to 6 in FIG. 4). Objects are the individual elements that make up a document.
[0032]
The first object 1 is defined by descriptions from “10 obj” to “endobj”, and the other objects are similarly defined. Here, for example, the first number and the next number in “10 obj” represent the object number (ID) and the generation number (generation), respectively.
[0033]
The objects include catalog objects, page list objects, page objects, content objects, resource objects, font objects, font information objects, and the like.
[0034]
The catalog object is an object serving as a root of the object hierarchical structure of the PDF file. In the catalog object, the “/ Type” attribute of the object is “/ Catalog”, and the page list object is referenced by the “/ Pages” attribute.
[0035]
The page list object is an object having a page list of the PDF file referenced by the catalog object. The “/ Type” attribute of the page list object is “/ Pages”, and the “/ Count” attribute indicates the number of page objects included in the PDF file, that is, the number of pages of the PDF file. In addition, each page object is referred to by the “/ Kids” attribute, and the page order of each page object, that is, what page in the entire text the page indicated by each page object corresponds to is shown.
[0036]
The page object is an object in which information necessary to configure a specific page referred to by the page list object is described. The “/ Type” attribute of the page object is “/ Page”, and the content object is referenced by the “/ Contents” attribute.
[0037]
The content object is an object including the content of a specific page referred to by the page object, that is, a content stream in which commands and data for drawing characters, graphics, images, and the like have been described. In other words, the content object specifies the position and size of the characters, figures, images, etc. in the page in addition to the data for drawing characters, figures, images, etc., that is, text data, vector data, raster data, etc. It contains instructions for specifying the coordinate system and colors.
[0038]
The resource object is an object in which information such as operator, font, and color space definition information used in the page referred to by the page object and information such as images and patterns commonly used in a plurality of pages are described. Is an object in which the definition of the font is described, and the font information object is an object in which geometric information such as the width and height of the font is described.
[0039]
In FIG. 4, object 1 is a catalog object, object 3 is a page list object (in FIG. 4, the document is composed of only one page), object 4 is a page object, object 5 is a content object, and object 6 is Resource object.
[0040]
The cross-reference table 413 is reference information indicating the position of the object in the PDF file. In the cross-reference table 413, the position of each object is represented by an offset. Here, the offset refers to the number of bytes from the beginning of the file to the beginning of the data of interest. This makes it possible to randomly access the objects arranged in the body 412. The cross-reference table 413 starts with a line including the keyword “xref” in the PDF file.
[0041]
The trailer 414 is information to be accessed when the analysis of the PDF file starts. Specifically, in the trailer 414, information indicating the position of the cross-reference table 413 in the PDF file and the number of the object to be referred first (the root object serving as the root of the hierarchical structure, that is, the catalog object) are described. You. That is, the number following “startxref” is the offset of the cross-reference table 413, and the “/ Root” attribute indicates the root object. Further, the “/ Size” attribute indicates the number of objects existing in the file including the first entry of the cross reference table 413 (the object ID number is “0”). This trailer 414 exists at the end of the file and begins with a line containing the keyword “trailer”.
[0042]
When analyzing a standard PDF file, the apparatus for analyzing the PDF file first analyzes the trailer 414 at the end of the file, and then analyzes the cross-reference table 413. Then, the contents of the page described in the body 412 can be analyzed based on the information obtained by the analysis. The object contains the number of another object in which the next required data is described. Therefore, by following the number of the next required object, the entire analysis of the PDF file becomes possible. 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, the objects can be arranged in the file regardless of the order in the document.
[0043]
Next, an outline of the operation of the image processing system according to the present embodiment will be described. 5 to 7 are flowcharts showing the procedure of the image forming process of the printer 10A according to the present embodiment. In FIG. 5, first, the personal computer 20 receives a user's instruction to execute PDF direct printing, and sequentially transmits the configuration data of the PDF file to be printed as a print job to the printer 10A. The printer 10A sequentially receives the configuration data of the PDF file transmitted from the personal computer 20 (S101), and stores the received data in the RAM 103 (S102). Unless a memory overflow occurs, the reception of the configuration data is repeated to accumulate the configuration data in the RAM 103 (NO in S103, NO in S104, S101 and S102), and when all the configuration data has been received (S103 (NO in S104 and YES in S104), the PDF file stored in the RAM 103 is analyzed (S105), converted into a print image (bitmap data) and printed out (S106).
[0044]
Here, the memory overflow refers to a state in which a predetermined data storage area of the memory (RAM 103) is full and data can no longer be stored. However, in step S103, even if the memory overflow does not actually occur, the memory overflow may be determined when the used amount of the data storage area exceeds a specified value.
[0045]
If a memory overflow occurs during reception of the configuration data of the PDF file (YES in S103), the flow advances to step S107 to initialize the object information table. Here, the object information table is a table for managing various types of information of objects included in the configuration data of the PDF file. The contents and usage of the object information table will be described later.
[0046]
Next, the head of the configuration data of the PDF file stored in the RAM 103 up to that point is read (S108), and if the read data is for the content object (YES in S109), the content object is read. The information of the content object is registered in the object information table with the identification name (S110). Next, the content object is analyzed (S111), converted into a print image, and printed out together with the identification name (S112). Then, the data of the content object is deleted from the RAM 103 (S113), and if not all the configuration data of the PDF file is received (NO in S114), the data of the RAM 103 obtained by deleting the data of the content object is obtained. The subsequent data within the free space is received and stored in the RAM 103 (S115), and the head of the configuration data of the PDF file stored in the RAM 103 is read again (S108). If all the component data of the PDF file has already been received in step S114 (YES in S114), the head of the remaining data stored in the RAM 103 is read as it is (S108).
[0047]
If the data read in step S108 is for the page object (NO in S109 and YES in S116), the information of the page object is registered in the object information table (S117), and the data of the page object is stored. After deleting the data from the RAM 103 (S118), the head of the configuration data of the PDF file stored in the RAM 103 is read again through the procedures of steps S114 and S115 (S108).
[0048]
Further, if the data read in step S108 relates to the page list object (NO in S109, NO in S116 and YES in S119), the information of the page list object is registered in the object information table (S120). The data of the page list object is deleted from the RAM 103 (S121), and the head of the configuration data of the PDF file stored in the RAM 103 is read out again through steps S114 and S115 (S108).
[0049]
On the other hand, if the data read in step S108 does not relate to any of the content object, the page object, and the page list object, that is, the data (resource object, font object, etc.), header, cross-reference table, trailer, etc. If it is such data (NO in S109, NO in S116 and NO in S119), the data is deleted from the RAM 103 (S122), and if the data is not the end data of the PDF file (NO in S123), step S114 After the procedure of S115 and S115, the head of the configuration data of the PDF file stored in the RAM 103 is read again (S108). If the data deleted in step S122 is the end data of the PDF file (YES in S123), a table of contents is created with reference to the object information table (S124), and the created table of contents is printed out (S125). Then, the image forming process ends.
[0050]
Next, the procedure of the image forming process of the printer 10A according to the present embodiment will be described in more detail with a specific example. FIG. 8 is a diagram showing a structure of a PDF file transmitted from the personal computer 20 to the printer 10A. In FIG. 8, it is assumed that the PDF file 42 is configured by arranging each data from the head header to the trailer at the end in this order. The number attached to the object included in the body indicates the number (ID) of the object, and parentheses indicate the type of the object.
[0051]
FIG. 9 is a diagram illustrating an output result of the printer 10A when a memory overflow does not occur when the printer 10A receives the PDF file 42 from the personal computer 20 (NO in S101 to S103 and S104 to S106 in the flowchart of FIG. 5). It is. In this case, the printer 10A receives all the configuration data of the PDF file from the personal computer 20 in the same way as the normal PDF direct print (NO in S101 to S103 and S104), and analyzes the received PDF file 42 ( S105), and print out (S106). The printed matter 511 represents the output result of the first page of the PDF file 42, and the printed matter 512 represents the output result of the second page. That is, the PDF file 42 is composed of a total of two pages and includes six content objects of objects 1, 3, 5, 7, 8, and 13, the first page is objects 3, 5, and 7, the second page is object 1, 8 and 13 are included in the positional relationship shown in FIG.
[0052]
FIGS. 10 to 13 show object information tables when a memory overflow occurs when the printer 10A receives the PDF file 42 from the personal computer 20 (YES in S101 to S103 and S107 to S125 in the flowcharts in FIGS. 5 to 7). FIG. 14 is a diagram showing an output result of the printer 10A in such a case.
[0053]
Here, it is assumed that the printer 10A has caused a memory overflow when the header and the data of the objects 1 to 7 among the configuration data of the PDF file 42 are received from the personal computer 20 (YES in S104). After initializing the object information table (S107), the printer 10A first reads a header, which is the head data, from among the data stored in the RAM 103 (S108). Next, since the header is not any of the content object, the page object, and the page list object (NO in S109, NO in S116 and NO in S119), the data of the header is deleted from the RAM 103 (S122). Then, the header is not the end data of the PDF file 42 (NO in S123), and the entire configuration data of the PDF file 42 has not been received (NO in S114). After receiving the configuration data of the object 42 (S115), the data of the object 1 that is the first in the RAM 103 is read (S108).
[0054]
Next, since the object 1 is a content object (YES in S109), an identification name is given to the object 1 and information on the object 1 is registered in the object information table (S110). FIG. 10 shows the registration status of the object information table at this point. Here, the object information table includes, as object information, an object type, an object number, an object identification name, a page number, a page object number, a content object number, and the like. The page number indicates the page number of the PDF file including the content object in the case of the content object, and indicates the page number of the PDF file displayed by the page object in the case of the page object. The page object number indicates the number of the page object including the content object in the case of the content object, and the number of the page object displaying each page of the PDF file in the case of the page list object (the order of the numbers is the page order). Represents In the case of a page object, the content object number represents the number of a content object included in the page object. In the object information table 611, as the information of the object 1, it is registered that the object type is "content object", the object number is "1", and the object identification name is "content 1". At this time, since the information of the page number and the page object number of the object 1 is not known, the information is registered as “unknown”.
[0055]
Next, the printer 10A analyzes the data of the object 1 (S111), and prints the contents of the object 1 together with the identification name (S112). The printed matter 521 in FIG. 14 shows the output result of the printer 10A at this time. The printed matter 521 outputs characters, graphics, images, and the like relating to the contents of the object 1 along with the character string of “contents 1” which is the identification name of the object 1. As described above, the content object includes a coordinate system command that specifies the position and size of a character, graphic, image, or the like in a page. Figures, images, and the like are output with their positions and sizes in the page correctly reflected. Note that, in the printed matter 521, the identification name of the object 1 is output to the header portion of the sheet. However, in this embodiment, the output position of the identification name of the content object is not particularly limited. The information may be output in a form added to the upper or lower part of the output portion.
[0056]
Then, the printer 10A deletes the data of the object 1 from the RAM 103 (S113). If not all the configuration data of the PDF file 42 has been received yet (NO in S114), the PDF 10A continues by the free space of the RAM 103. The file configuration data is received (S115), and the data of the object 2 which is the first in the RAM 103 is read (S108).
[0057]
Hereinafter, the process proceeds in the same manner, and next, a case where the data of the object 4 is first in the RAM 103 will be described. Since the object 4 is a page object (NO in S109 and YES in S116), the information of the object 4 is registered in the object information table (S117). FIG. 11 shows the registration status of the object information table at this point. In the object information table 612, as information of the object 4, the object type is “page object”, the object number is “4”, and the content object number is “3, 5, 7”. It is registered that the page displayed by the object 4 includes the contents of the objects 3, 5, and 7, which are content objects. At this point, since the information of the page number displayed by the object 4 is not known, the page number is registered as “unknown”. Further, based on the information that the content object number is “3, 5, 7”, that is, the information that the object 4 includes the object 3 that is the content object, the already registered object 3 is unknown until then. The information of the page object number of the object 3 is updated to “4”. Then, the data of the object 4 is deleted from the RAM 103 (S118), and the next leading data in the RAM 103 is read (S108).
[0058]
Next, the case where the data of the object 9 is first in the RAM 103 will be described. Since the object 9 is a page list object (NO in S109, NO in S116 and YES in S119), the information of the object 9 is registered in the object information table (S120). FIG. 12 shows the registration status of the object information table at this point. In the object information table 613, as information of the object 9, the object type is “page list object”, the object number is “9”, and the page object number is “4, 11”, that is, PDF. It is registered that the file 42 is composed of two pages, and the first page is displayed by the object 4 which is a page object, and the second page is displayed by the object 11 which is a page object. Further, based on the information that the page object number is “4, 11”, that is, based on the information that the object 4 which is the page object displays the first page of the PDF file 42, the registered objects 3, 4 , 5 and 7, the information of the page number which has been unknown so far is updated to “1”. Then, the data of the object 9 is deleted from the RAM 103 (S121), and the next leading data in the RAM 103 is read (S108).
[0059]
In this manner, the header, body objects 1 to 13 and the cross-reference table of the PDF file 42 are sequentially processed, and as a result, a header, an object 2 as a catalog object, an object 6 as a resource object, and a font object are obtained. The object 10, the object 12, which is a font information object, and the data of the cross-reference table are deleted from the RAM 103. The objects 1, 3, 5, 7, 8, and 13 which are content objects have identifiers “content 1”, “content 2”, “content 3”, “content 4”, “content 5”, and “content”, respectively. "6" is registered in the object information table and the contents of the object are printed together with the identification name. FIG. 13 shows the final registration status of the object information table. Printed materials 521 to 526 in FIG. 14 show output results of objects 1, 3, 5, 7, 8, and 13 by the printer 10A.
[0060]
Finally, the trailer as the last data in the RAM 103 is read (S108) and deleted from the RAM (NO in S109, NO in S116, NO in S119 and S122). Since the trailer is the end data of the PDF file 42 (YES in S123), a table of contents of the PDF file 42 is created with reference to the object information table 614 (FIG. 13) (S124), and the created table of contents is printed (S125). . The printed matter 527 in FIG. 14 shows the output result of the table of contents by the printer 10A. That is, the printed matter 527 includes, as a table of contents of the PDF file 42, the printed matter whose first page is output with the identification names of “content 2”, “content 3”, and “content 4”, that is, the printed matter 522, 523, and 524. It is described that the second page includes the contents of the printed matter output with the identification names of “contents 1”, “contents 5”, and “contents 6”, that is, the printed matters 521, 525, and 526. . Thus, even when the memory overflow occurs during the reception of the PDF file 42 by the printer 10A, the user combines the prints 521 to 526 based on the information of the table of contents of the prints 527 output by the printer 10A. Thus, the contents of the document in the PDF file 42 can be accurately known. If necessary, the output portion of each object in the printed materials 521 to 526 can be cut and pasted in consideration of the position, or can be read by a scanner and superimposed and output to output the printed material of the PDF file 42. It can be restored in almost perfect form.
[0061]
Next, a second embodiment of the present invention will be described. The printer 10B according to the present embodiment has the same configuration as the printer 10A according to the first embodiment (see FIG. 2), and can communicate with the personal computer 20 via the network 30 similarly to the printer 10A. Connected (see FIG. 1). FIGS. 15 to 18 are flowcharts illustrating the procedure of the image forming process of the printer 10B according to the present embodiment. In FIG. 15, the operation (S201 to S203NO and S204 to S206) when the printer 10B receives all the configuration data of the PDF file from the personal computer 20 without causing a memory overflow is according to the first embodiment. Since the operation is the same as that of the printer 10A (S101 to S103NO and S104 to S106), the description is omitted.
[0062]
If a memory overflow occurs during reception of the PDF file configuration data (YES in S203), the printer 10B initializes the object information table (S207), and then stores the PDF file configuration data stored in the RAM 103. Is read (S208). If the read data relates to a content object (YES in S209), the object information table is referred to, and if the content object is not registered in the object information table (NO in S210), the content is read. An identification name is given to the object, and information of the content object is registered in the object information table (S211). Next, the content object is analyzed (S212), converted into a print image, and printed out together with the identification name (S213). If the content object is already registered in the object information table in step S210 (YES in S210), the content object is immediately analyzed (S212), converted into a print image, and registered in the object information table. The content is printed out together with the identification name of the content object (S213). Then, the data of the content object is deleted from the RAM 103 (S214), and if not all the configuration data of the PDF file has been received (NO in S215), the data of the RAM 103 obtained by deleting the data of the content object is obtained. The subsequent data within the free space is received and stored in the RAM 103 (S216), and the head of the configuration data of the PDF file stored in the RAM 103 is read again (S208). If all the component data of the PDF file has already been received in step S215 (YES in S215), the head of the remaining data stored in the RAM 103 is read as it is (S208).
[0063]
If the data read in step S208 is data relating to a page object (NO in S209 and YES in S217), if the page object is not registered in the object information table with reference to the object information table, (NO at S218), an identification name is assigned to the page object, and information on the page object is registered in the object information table (S219). If part or all of the content objects included in the page object is not registered in the object information table (NO in S220), an identifier is assigned to the unregistered content object, and the object information is displayed together with the object number. Register in the table (S221). Next, the identification names of all the content objects included in the page object are printed out together with the identification names of the page object (S222). If the page object has already been registered in the object information table in step S218 (YES in S218), or part or all of the content objects included in the page object have already been registered in the object information table in step S220. If it is (NO in S220), the printout of the identification name of the page object or the identification name of the content object in step S222 is performed using the one registered in the object information table. Then, the data of the page object is deleted from the RAM 103 (S223), and after the steps S215 and S216, the head of the configuration data of the PDF file stored in the RAM 103 is read again (S208).
[0064]
Further, if the data read in step S208 is for the page list object (NO in S209, NO in S217 and YES in S224), the information of the page list object is registered in the object information table (S225). If some or all of the page objects are not registered in the object information table (NO in S226), an unregistered page object is given an identification name, and the page object is registered in the object information table (S227). . Next, the identification name of the page object and the corresponding page number are printed out based on the information of the page list object (S228). If part or all of the page object has already been registered in the object information table in step S226 (YES in S226), the print output of the identification name of the page object in step S228 is registered in the object information table. This is done using Then, the data of the page list object is deleted from the RAM 103 (S229), and the head of the configuration data of the PDF file stored in the RAM 103 is read again through the procedures of steps S215 and S216 (S208).
[0065]
On the other hand, if the data read in step S208 does not relate to any of the content object, the page object, and the page list object (NO in S209, NO in S217 and NO in S224), the data is deleted from the RAM 103 ( (S230), if the data is not the end data of the PDF file (NO in S231), the head of the configuration data of the PDF file stored in the RAM 103 is read again through the procedures of steps S215 and S216 (S208). If the data deleted in step S230 is the end data of the PDF file (YES in S231), the image forming process ends.
[0066]
Next, the procedure of the image forming process of the printer 10B according to the present embodiment will be described in more detail with a specific example. Here, a case will be described in which the PDF file 42 (see FIG. 8) is received and printed out in the same manner as in the case of the printer 10A in the first embodiment. The output result when the printer 10B does not cause a memory overflow when receiving the PDF file 42 from the personal computer 20 (NO in S201 to S203 and S204 to S206 in the flowchart of FIG. 15) is shown in FIG. 511 and 512).
[0067]
FIGS. 19 to 21 show object information tables when a memory overflow occurs when the printer 10B receives the PDF file 42 from the personal computer 20 (YES in S201 to S203 and S207 to S231 in the flowcharts in FIGS. 15 to 18). FIG. 22 is a diagram showing the output result of the printer 10B in such a case.
[0068]
Here, it is assumed that the printer 10B has caused a memory overflow when the header and the data of the objects 1 to 7 among the configuration data of the PDF file 42 are received from the personal computer 20 (YES in S204). After initializing the object information table (S207), the printer 10B first reads a header, which is the leading data, from the data stored in the RAM 103 (S208). Next, since the header is not any of the content object, the page object, and the page list object (NO in S209, NO in S217 and NO in S224), the data of the header is deleted from the RAM 103 (S230). Then, the header is not the end data of the PDF file 42 (NO in S231), and the entire configuration data of the PDF file 42 has not been received (NO in S215). After receiving the configuration data of the object 42 (S216), the data of the object 1 that is the first in the RAM 103 is read (S208).
[0069]
Next, since the object 1 is a content object (YES in S209), and since the object 1 has not been registered in the object information table (NO in S210), the identification information is given to the object 1 and the information of the object 1 is added. Register it in the object information table (S211). The registration status of the object information table at this point is the same as that shown in FIG. 10 (object information table 611).
[0070]
Next, the data of the object 1 is analyzed (S212), and the contents of the object 1 are printed together with the identification name (S213). The printed matter 531 in FIG. 22 shows the output result of the printer 10B at this point.
[0071]
Then, the printer 10B deletes the data of the object 1 from the RAM 103 (S214). If not all the configuration data of the PDF file 42 has been received yet (NO in S215), the PDF 10B continues by the free space of the RAM 103. The file configuration data is received (S216), and the data of the object 2 which is the first in the RAM 103 is read (S208).
[0072]
Hereinafter, the process proceeds in the same manner, and next, a case where the data of the object 4 is first in the RAM 103 will be described. The object 4 is a page object (NO in S209 and YES in S217). Since the object 4 has not been registered in the object information table (NO in S218), an identification name is given to the object 4, and the object 4 The information is registered in the object information table (S219). FIG. 19 shows the registration status of the object information table at this point. In the object information table 621, as information of the object 4, the object type is “page object”, the object number is “4”, the object identification name is “page A”, and the content object number is “page A”. 3, 5, 7 "are registered. At this point, since the information of the page number displayed by the object 4 is not known, the page number is registered as “unknown”. Furthermore, based on the information that the content object number is “3, 5, 7”, that is, based on the information that the object 4 includes the content objects 3, 5, and 7, 7 are given identification names of “content 3” and “content 4”, and the information is registered in the object information table as a content object (NO in S220 and S221). The information of the page object number that was unknown until then is updated to “4”.
[0073]
Next, the identification names of the objects 3, 5 and 7 are printed out together with the identification names of the objects 4 (S222). The printed matter 533 in FIG. 22 shows the output result of the printer 10B at this point. On the printed matter 533, a character string of "Page A" which is the identification name of the object 4 and "Content 2", "Content 3" and "Content 4" which are the identification names of the objects 3, 5 and 7, respectively, are printed. ing. Thereby, the user can know that the “page A” which is a specific page of the PDF file 42 includes the contents of “content 2”, “content 3”, and “content 4”. Then, the printer 10B deletes the data of the object 4 from the RAM 103 (S223), and reads the next leading data in the RAM 103 (S208).
[0074]
Next, the case where the data of the object 9 is first in the RAM 103 will be described. Since the object 9 is a page list object (NO in S209, NO in S217 and YES in S224), the information of the object 9 is registered in the object information table (S225). FIG. 20 shows the registration status of the object information table at this point. In the object information table 622, as information of the object 9, the object type is “page list object”, the object number is “9”, the object identification name is “page list”, and the page object number is “4, 11” is registered. Here, the object 9 is given an identification name of “page list”, but in the present embodiment, it is not always necessary to give the page list object an identification name. Also, information that the page object number is “4, 11”, that is, the PDF file 42 includes all two pages, the object 4 as a page object is the first page of the PDF file 42, and the object 11 is the second page Based on the information to be displayed, the object 11 that has not been registered is given an identification name of “page B”, the information is registered as a page object in the object information table (NO in S226 and S227), and For the objects 3, 4, 5, and 7 that have already been registered, the information of the page number that has been unknown so far is updated to “1”.
[0075]
Next, the identification names of the objects 4 and 11, which are page objects, and the page numbers of the PDF file 42 displayed by these are printed out (S228). The printed matter 537 in FIG. 22 shows the output result of the printer 10B at this time. In the printed matter 537, "Page A" which is the identification name of the object 4, "Page 1" which is the page number, and "Page B" which is the identification name of the object 11, together with the "page list" which is the identification name of the object 9 The character strings of “2 pages” of the page number are printed in combination. Thus, the user can know that the first page of the PDF file 42 is composed of “page A” and the second page is composed of “page B”. Then, the printer 10B deletes the data of the object 9 from the RAM 103 (S229), and reads the next leading data in the RAM 103 (S208).
[0076]
In this manner, the header, body objects 1 to 13 and the cross-reference table of the PDF file 42 are sequentially processed, and as a result, a header, an object 2 as a catalog object, an object 6 as a resource object, and a font object are obtained. The object 10, the object 12, which is a font information object, and the data of the cross-reference table are deleted from the RAM 103. Objects 1, 3, 5, 7, 8, and 13 as content objects are “content 1”, “content 2”, “content 3”, “content 4”, “content 5”, and “content 6”, respectively. Is registered in the object information table with the identification name, and the content of the object is printed together with the identification name. FIG. 21 shows the final registration status of the object information table. Printed matters 531, 532, 534 to 536, and 539 in FIG. 22 indicate output results of the objects 1, 3, 5, 7, 8, and 13 by the printer 10 </ b> B. Further, the object 4 and the object 11, which are page objects, are registered in the object information table with the identification names of "page A" and "page B", respectively, and the content objects including the identification names of the objects are included. Are printed. Printed materials 533 and 538 in FIG. 22 show the output results of the objects 4 and 11 by the printer 10B.
[0077]
Finally, the trailer serving as the last data in the RAM 103 is read out (S108), deleted from the RAM (NO in S209, NO in S217, NO in S224 and S230), and the image processing ends (S231). YES).
[0078]
Thus, in FIG. 22, even if the memory overflow occurs during the reception of the PDF file 42 by the printer 10B, the user can use the information of the printed materials 533, 537, and 538 output by the printer 10B based on the information. By combining the printed materials 531, 532, 534 to 536 and 539, the contents of the document of the PDF file 42 can be accurately known. If necessary, the output portion of the content of each object in the printed materials 531, 532, 534 to 536 and 539 is cut and pasted in consideration of the position, so that the printed material of the PDF file 42 is almost completely formed. It can be restored.
[0079]
FIGS. 23 and 24 are diagrams for explaining output results at the time of a memory overflow of the printers 10C and 10D according to the third and fourth embodiments of the present invention, respectively. The printers 10C and 10D have the same configuration as the printer 10A according to the first embodiment (see FIG. 2), and are communicably connected to the personal computer 20 via the network 30 similarly to the printer 10A. (See FIG. 1). 23 and 24, the output results of the printers 10C and 10D when a memory overflow occurs during the reception of the PDF file 42 (see FIG. 8) in the same manner as in the first and second embodiments. Is shown.
[0080]
The third embodiment of the present invention is a modified example of the second embodiment. The operation of the printer 10C according to the third embodiment of the present invention is different from the operation of the printer 10B according to the second embodiment in that when processing a page object in configuration data of a received PDF file, After the object is given an identification name and registered in the object information table, immediately after printing the identification name of the page object and the identification name of the content object included in the page object, the content included in the page object is not output. If there is an unprocessed object, after processing all the unprocessed content objects, the content of the unprocessed content object is replaced with the identification name of the page object instead of printing the identification name. Print Located in.
[0081]
That is, in FIG. 23, the printer 10C sequentially processes the configuration data of the PDF file 42 stored in the RAM 103 from the first one in the same manner as the printer 10B according to the second embodiment, and And the contents of the object 3 are printed together with the character strings of “contents 1” and “contents 2”, which are the respective identification names (see printed materials 541 and 542). Next, in the processing of the object 4 which is a page object, among the objects 3, 5 and 7 of the content objects included in the object 4, since the objects 5 and 7 are not yet processed at that time, The process proceeds to processing of the next head data in the RAM 103 without immediately performing printing. Then, at the time of processing the object 7 to be processed last among the unprocessed content objects, the contents of the object 5 and the object 7 are printed together with the character string of “Page A” which is the identification name of the object 4 (see the printed material 543). ). At this time, for the object 3 that has already been output, the character string of the “content 2” of the identification name is output in the margin of the paper. Similarly, with respect to the object 11 which is a page object, the content of the object 11 and the contents of the object 1 and the object 8 when the unprocessed object 13 among the objects 1, 8 and 13 included in the object 11 are processed. The character strings of “contents 1” and “contents 3” as the identification names are printed together with the character strings of “page B” as the identification names of the objects 11 (see printed matter 546). Thereby, the information of the page object can be output in a state close to the arrangement of the content objects in the actual page of the PDF file 42 instead of just outputting the page object, and the printed matter can be compared with the case of the second embodiment. Can be reduced in the number of output units.
[0082]
The fourth embodiment of the present invention is a modified example of the first embodiment. The operation of the printer 10D according to the fourth embodiment of the present invention is different from the operation of the printer 10A according to the first embodiment in that when processing a content object in the configuration data of the received PDF file, After registering an object with an identification name and registering it in the object information table, the content of the content object is not immediately printed out. If there is a content object that can be combined and arranged on the same sheet in the memory, The point is that the contents of the content objects are combined and printed out on the same sheet.
[0083]
That is, in FIG. 24, the printer 10D sequentially processes the configuration data of the PDF file 42 stored in the RAM 103 from the head in the same manner as the printer 10A according to the first embodiment. Then, in the processing of the object 1 which is a content object, after assigning an identification name to the object 1 and registering the information of the object 1 in the object information table, the data of the object 1 is analyzed and only the size information is extracted. The content of the content object is recorded in the object information table, and the process proceeds to the next head data in the RAM 103 without outputting the content of the content object. In the same manner, size information on the object 3, the object 5, and the object 7, which are content objects, is obtained. When all the configuration data (header and data of the objects 1 to 7) of the PDF file 42 stored in the RAM 103 at the time of the memory overflow is processed, the size information of the content objects is compared, and the objects 1 and 3 are compared. And the object 5 are combined and printed out on the same sheet together with the character strings of "contents 1", "contents 2" and "contents 3" which are their identification names (see printed matter 551). At this time, in order to efficiently combine the object 1, the object 3, and the object 5, the position information is discarded and, for example, the sheets are sequentially arranged and output from the upper left end of the sheet. Next, the data of the object 1, the object 3, and the object 5 are deleted from the RAM 103, and the configuration data of the PDF file that continues by the free space of the RAM 103 is sequentially received. Hereinafter, the same processing is performed to output the printed materials 562 and 563, and finally, the table of contents of the PDF file 42 is created and output by the same processing as that of the printer 10A according to the first embodiment. As a result, compared with the case of the first embodiment, the content objects can be efficiently combined and output, and the number of output copies of the printed matter can be reduced.
[0084]
In the above embodiments, when the content of the content object included in the configuration data of the received PDF file is output, the identification name given to the content object is output at the same time, and the identification of the content object included in each page is performed. Although the information about the name is output, the present invention is not limited to this mode. For example, when outputting the content of the content object, the identification name and the information may not be output. . Even in such a case, the user can generally know the contents of the document of the PDF file based on the printed matter of the acquired content object, and if the user wants to acquire only the image data included in the PDF file, for example, the PDF file This is because it may not always be necessary to accurately restore a document depending on the purpose of the output.
[0085]
In the above embodiments, when a memory overflow occurs while the printer is receiving the PDF file, the content object included in the configuration data of the received PDF file is automatically image-formed for each object. The present invention is not limited to this mode. For example, when a memory overflow occurs, a notification to that effect is displayed on the operation panel unit 104 of the printer or the display of the personal computer 20 and printing of the PDF file is stopped. Alternatively, the user can select whether to form an image for each content object by the method of the present invention. Regardless of whether or not a memory overflow occurs while the printer is receiving the PDF file, for example, by accepting a setting input in advance, normal PDF direct printing can be performed or the content object can be set for each content object by the method of the present invention. The user may arbitrarily select whether to form an image.
[0086]
Further, in each of the above embodiments, the case where the PDF file is transmitted from the personal computer to the printer based on the operation on the personal computer has been described, but the present invention is not limited to this. The present invention can also be applied to a case where a PDF file to be printed by a printer is designated and a PDF file to be printed is obtained from a storage device in which the PDF file to be printed is stored and is printed by the printer. it can.
[0087]
Further, in each of the above-described embodiments, the target of the image forming process according to the present invention has been described by taking direct printing of a PDF file as an example. However, the present invention is not limited to this. Any object file for rendering part or all of the content of a specific page can be arranged according to the present invention as long as the object can be arranged in the file regardless of the order in which the object is displayed in the document. Is possible.
[0088]
In each of the above embodiments, the image processing system according to the present invention has been described by taking a personal computer as an image processing apparatus and a printer as an example of an image forming apparatus, but the present invention is not limited thereto. As the image processing device, for example, a computer such as a workstation or a server may be used instead of a personal computer. Further, as the image forming apparatus, instead of a printer, a multi-function peripheral (MFP) having a printing function such as a digital copying machine or a facsimile machine, or a CRT display connected alone or connected to a personal computer or the like, A display device such as a liquid crystal display and a projector may be used.
[0089]
The image forming apparatus and the image forming method according to the present invention can be realized by a dedicated hardware circuit for executing the above-described procedures, or by a CPU executing a program describing the above-described procedures. . When the present invention is realized by the latter, the program for operating the image forming apparatus may be provided by a computer-readable recording medium such as a floppy (registered trademark) disk or a CD-ROM, or may be provided over a network such as the Internet. It may be provided online via: In this case, the program recorded on the computer-readable recording medium is usually transferred to a ROM or a hard disk and stored. This program may be provided as, for example, independent application software, or may be incorporated in software of the image forming apparatus as one function of the apparatus.
[0090]
The embodiments of the present invention described above include the inventions described in the following supplementary notes 1 to 7 in addition to the inventions described in claims 1 to 5 of the claims.
[0091]
[Supplementary Note 1] The identification name information output means outputs a table of contents in which each page number of the document is associated with an identification name of the object included in a page corresponding to the page number. An image forming apparatus according to claim 1.
[0092]
[Supplementary Note 2] The identification name information output means includes: page information indicating an identification name of the object included in a specific page of the document and an identification name of the specific page; each page number of the document; The image forming apparatus according to claim 3, wherein the image forming apparatus outputs page list information in which a page number corresponding to the page number is displayed in association with the page name.
[0093]
(Supplementary Note 3) The image forming apparatus according to any one of Supplementary notes 1 and 2, wherein the image forming unit forms and outputs the objects in the order in which the objects are stored in the storage unit. apparatus.
[0094]
[Supplementary Note 4] The image forming apparatus according to any one of Supplementary notes 1 to 3, wherein the document file is a PDF (Portable Document Format) file.
[0095]
[Supplementary Note 5] Receive and form an image of a document file in which objects for drawing a part or all of the content of a specific page of the document can be arranged in the file regardless of the order in which the objects are displayed in the document. An image forming method,
(1) sequentially receiving the configuration data of the document file;
Storing (2) the configuration data received in step (1);
(3) forming and outputting an image of the objects included in the configuration data stored in step (2) alone or in combination of two or more regardless of the order in which the objects are displayed in the document;
An image forming method comprising:
[0096]
[Supplementary Note 6] Receive and form an image by receiving a document file in which objects for drawing part or all of the content of a specific page of the document can be arranged in the file regardless of the order in which the objects are displayed in the document. An image forming program for an image forming apparatus, comprising:
A step (1) of sequentially receiving the configuration data of the document file;
A procedure (2) for storing the configuration data received in the procedure (1);
A step (3) of forming and outputting an image of the objects included in the configuration data stored in the step (2) alone or in combination of two or more regardless of the order in which the objects are displayed in the document;
An image forming program causing the image forming apparatus to execute the program.
[0097]
[Supplementary Note 7] A computer-readable recording medium that records the program according to Supplementary Note 6.
[0098]
【The invention's effect】
As described above, according to the image forming apparatus of the present invention, an object for drawing a part or all of the content of a specific page of a document, such as a PDF file, is displayed in the file in the document. When an image is formed by directly receiving a document file that can be arranged regardless of the order in which the document file is arranged, the object included in the configuration data of the received document file can be used alone without receiving the entire document file. , Or a combination of two or more, the image is formed and output irrespective of the order displayed in the document, so that the user can generally know the contents of the document from the printed matter of the object.
[0099]
Further, when an image is formed on the object, the object is given an identification name and output, and by outputting information on the identification name of the object included in each page, the user can use the information based on the information. It is possible to accurately know the contents of the document from the printed matter of the object, and to restore the printed matter of the document file in almost perfect form by cutting the printed matter of the object in consideration of its position. You can do it.
[0100]
Therefore, according to the present invention, even when the present invention is applied to an image forming apparatus having a small usable capacity of the storage unit, the document file can be directly received to form an image.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating an overall configuration of an image processing system to which an image forming apparatus according to a first embodiment of the present invention is applied.
FIG. 2 is a block diagram showing a configuration of a printer 10A in FIG.
FIG. 3 is a diagram for explaining a configuration of a standard PDF file.
FIG. 4 is a diagram showing a sample of a PDF file.
FIG. 5 is a flowchart showing a procedure of an image forming process of the printer 10A.
FIG. 6 is a flowchart showing a procedure of an image forming process of the printer 10A.
FIG. 7 is a flowchart showing a procedure of an image forming process of the printer 10A.
FIG. 8 is a diagram showing a structure of a PDF file 42 transmitted from the personal computer 20 to the printer 10A.
FIG. 9 is a diagram illustrating an output result of the printer in a case where a memory overflow does not occur when the printer receives a PDF file from the personal computer.
FIG. 10 is a diagram showing a registration state of an object information table when a memory overflow occurs when the printer 10A receives a PDF file 42 from the personal computer 20.
FIG. 11 is a diagram showing a registration status of an object information table when a memory overflow occurs when the printer 10A receives a PDF file 42 from the personal computer 20.
FIG. 12 is a diagram showing a registration status of an object information table when a memory overflow occurs when the printer 10A receives a PDF file 42 from the personal computer 20.
FIG. 13 is a diagram showing a registration state of an object information table when a memory overflow occurs when the printer 10A receives the PDF file 42 from the personal computer 20.
FIG. 14 is a diagram showing an output result of the printer when a memory overflow occurs when the printer receives a PDF file from the personal computer.
FIG. 15 is a flowchart illustrating a procedure of an image forming process of the printer according to the second embodiment of the present invention.
FIG. 16 is a flowchart illustrating a procedure of an image forming process of the printer according to the second embodiment of the present invention.
FIG. 17 is a flowchart illustrating a procedure of an image forming process of the printer according to the second embodiment of the present invention.
FIG. 18 is a flowchart illustrating a procedure of an image forming process of the printer according to the second embodiment of the present invention.
FIG. 19 is a diagram showing a registration state of the object information table when a memory overflow occurs when the printer 10B receives the PDF file 42 from the personal computer 20.
FIG. 20 is a diagram showing a registration state of the object information table when a memory overflow occurs when the printer 10B receives the PDF file 42 from the personal computer 20.
FIG. 21 is a diagram showing a registration status of an object information table when a memory overflow occurs when the printer 10B receives a PDF file 42 from the personal computer 20.
FIG. 22 is a diagram illustrating an output result of the printer when a memory overflow occurs when the printer receives a PDF file from the personal computer.
FIG. 23 is a diagram illustrating an output result when a memory overflows in a printer according to a third embodiment of the present invention.
FIG. 24 is a diagram illustrating an output result when a memory overflow occurs in a printer according to a fourth embodiment of the present invention.
[Explanation of symbols]
1 to 6 ... objects,
10A ... printer,
101 ... CPU,
102 ... ROM,
103 ... RAM,
104 ... operation panel section
105 printing section
106 ... Network interface,
107 ... bus,
20 ... PC,
30 ... network,
41 ... standard PDF file,
411: header,
412 ... body,
413 ... Cross reference table,
414 ... Trailer.

Claims (5)

文書の特定のページの内容の一部または全部を描画するためのオブジェクトがファイル内において前記文書内で表示される順序によらずに配列可能な文書ファイルを受信して画像形成する画像形成装置であって、
前記文書ファイルの構成データを順次受信する受信手段と、
前記受信手段により受信した前記構成データを記憶する記憶手段と、
前記記憶手段に記憶した前記構成データに含まれる前記オブジェクトを単独でまたは2つ以上を組み合わせて前記文書内で表示される順序によらずに画像形成して出力する画像形成手段と、
を有する画像形成装置。
An image forming apparatus that receives a document file that can be arranged regardless of the order in which an object for drawing part or all of the content of a specific page of a document is displayed in the file in the file, and forms an image. So,
Receiving means for sequentially receiving the configuration data of the document file;
Storage means for storing the configuration data received by the receiving means,
Image forming means for forming and outputting the objects included in the configuration data stored in the storage means alone or in combination of two or more regardless of the order in which they are displayed in the document;
An image forming apparatus having:
前記記憶手段に記憶した前記構成データに含まれる前記オブジェクトに識別名を付与する識別名付与手段をさらに有し、
前記画像形成手段は、前記識別名付与手段により付与した前記オブジェクトの識別名とともに前記オブジェクトを画像形成して出力するものである請求項1に記載の画像形成装置。
Further comprising an identification name assigning unit for assigning an identification name to the object included in the configuration data stored in the storage unit,
The image forming apparatus according to claim 1, wherein the image forming unit forms and outputs an image of the object together with the identification name of the object assigned by the identification name assigning unit.
前記文書の個々のページに含まれる前記オブジェクトの識別名についての情報を出力する識別名情報出力手段をさらに有する請求項1または2に記載の画像形成装置。The image forming apparatus according to claim 1, further comprising an identification name information output unit configured to output information about an identification name of the object included in each page of the document. 前記画像形成手段は、前記記憶手段の使用可能領域が規定値以下となった場合または前記記憶手段の使用可能領域がなくなり前記記憶手段が前記構成データを記憶できなくなった場合に前記オブジェクトを画像形成して出力するものである請求項1〜3のいずれか1項に記載の画像形成装置。The image forming unit forms an image of the object when the usable area of the storage unit becomes equal to or less than a specified value or when the usable region of the storage unit runs out and the storage unit cannot store the configuration data. The image forming apparatus according to any one of claims 1 to 3, wherein the image is output. 前記オブジェクト以外にかかる前記構成データおよび前記画像形成手段により画像形成して出力した前記オブジェクトにかかる前記構成データを前記記憶手段から削除する削除手段をさらに有する請求項1〜4のいずれか1項に記載の画像形成装置。5. The image processing apparatus according to claim 1, further comprising: a deletion unit configured to delete, from the storage unit, the configuration data related to the object other than the object and the configuration data related to the object formed and output by the image forming unit. The image forming apparatus according to any one of the preceding claims.
JP2003117132A 2002-12-24 2003-04-22 Image forming apparatus, image forming method, and image forming program Expired - Fee Related JP4049003B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003117132A JP4049003B2 (en) 2003-04-22 2003-04-22 Image forming apparatus, image forming method, and image forming program
US10/730,935 US8310713B2 (en) 2002-12-24 2003-12-10 Image forming device, image forming program, computer readable recording medium on which the program is recorded, and image forming method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003117132A JP4049003B2 (en) 2003-04-22 2003-04-22 Image forming apparatus, image forming method, and image forming program

Publications (2)

Publication Number Publication Date
JP2004322360A true JP2004322360A (en) 2004-11-18
JP4049003B2 JP4049003B2 (en) 2008-02-20

Family

ID=33497123

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003117132A Expired - Fee Related JP4049003B2 (en) 2002-12-24 2003-04-22 Image forming apparatus, image forming method, and image forming program

Country Status (1)

Country Link
JP (1) JP4049003B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8441656B2 (en) 2009-08-07 2013-05-14 Brother Kogyo Kabushiki Kaisha PDL data processing device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8441656B2 (en) 2009-08-07 2013-05-14 Brother Kogyo Kabushiki Kaisha PDL data processing device

Also Published As

Publication number Publication date
JP4049003B2 (en) 2008-02-20

Similar Documents

Publication Publication Date Title
JP3775381B2 (en) Image processing device
US7612913B2 (en) Warning system and warning method
JP2004050722A (en) Printer
JP3832423B2 (en) Image processing apparatus, image forming apparatus, and program
JP4596285B2 (en) Image processing system, image processing method, and object name generation program
JP5539672B2 (en) System and method for color mixing in multiple modes
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
JP4537040B2 (en) Document processing apparatus and document processing method
JP4144392B2 (en) Image processing apparatus, image forming system, image forming method, and program
JP4761535B2 (en) Document management apparatus and method, program
JP4110945B2 (en) Image processing apparatus, image forming apparatus, and program
JP4144369B2 (en) Image processing apparatus, image processing method, and program
JP2008176365A (en) Printing apparatus, printing program and recording medium
JP2006252300A (en) Pull print system
JP2007008011A (en) Image forming apparatus, image forming method and program
JP3829798B2 (en) Image forming apparatus and program
JP2004188865A (en) Image forming device and program
JP4049003B2 (en) Image forming apparatus, image forming method, and image forming program
JP7040166B2 (en) Information processing equipment, image forming equipment, systems and programs
JP2004110337A (en) Image forming method, image forming system, client terminal, server device, program and storage medium
JP2002248829A (en) Image processor and storage medium with image processing program recorded therein
JP4150850B2 (en) Image processing apparatus, image processing method, and program
JP2006218819A (en) Image formation apparatus, image processing apparatus, program, and image processing method
JP2005092586A (en) Print controller and method for creating output print data

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20040907

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20040908

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070320

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070518

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071119

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20101207

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111207

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121207

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20131207

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