JP2004322360A - Image formation apparatus - Google Patents
Image formation apparatus Download PDFInfo
- 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
Links
Images
Landscapes
- Record Information Processing For Printing (AREA)
Abstract
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
[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
[0019]
FIG. 2 is a block diagram illustrating a configuration of the
[0020]
The
[0021]
The
[0022]
The
[0023]
The
[0024]
The
[0025]
The
[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
[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
[0030]
In the
[0031]
The
[0032]
The
[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,
[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
[0041]
The
[0042]
When analyzing a standard PDF file, the apparatus for analyzing the PDF file first analyzes the
[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
[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
[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
[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
[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
[0050]
Next, the procedure of the image forming process of the
[0051]
FIG. 9 is a diagram illustrating an output result of the
[0052]
FIGS. 10 to 13 show object information tables when a memory overflow occurs when the
[0053]
Here, it is assumed that the
[0054]
Next, since the
[0055]
Next, the
[0056]
Then, the
[0057]
Hereinafter, the process proceeds in the same manner, and next, a case where the data of the
[0058]
Next, the case where the data of the
[0059]
In this manner, the header, body objects 1 to 13 and the cross-reference table of the
[0060]
Finally, the trailer as the last data in the
[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
[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
[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
[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
[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
[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
[0067]
FIGS. 19 to 21 show object information tables when a memory overflow occurs when the printer 10B receives the
[0068]
Here, it is assumed that the printer 10B has caused a memory overflow when the header and the data of the
[0069]
Next, since the
[0070]
Next, the data of the
[0071]
Then, the printer 10B deletes the data of the
[0072]
Hereinafter, the process proceeds in the same manner, and next, a case where the data of the
[0073]
Next, the identification names of the
[0074]
Next, the case where the data of the
[0075]
Next, the identification names of the
[0076]
In this manner, the header, body objects 1 to 13 and the cross-reference table of the
[0077]
Finally, the trailer serving as the last data in the
[0078]
Thus, in FIG. 22, even if the memory overflow occurs during the reception of the
[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
[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
[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
[0083]
That is, in FIG. 24, the printer 10D sequentially processes the configuration data of the
[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
[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
[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
[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
[0093]
(Supplementary Note 3) The image forming apparatus according to any one of
[0094]
[Supplementary Note 4] The image forming apparatus according to any one of
[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
[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
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
FIG. 6 is a flowchart showing a procedure of an image forming process of the
FIG. 7 is a flowchart showing a procedure of an image forming process of the
FIG. 8 is a diagram showing a structure of a
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
FIG. 11 is a diagram showing a registration status of an object information table when a memory overflow occurs when the
FIG. 12 is a diagram showing a registration status of an object information table when a memory overflow occurs when the
FIG. 13 is a diagram showing a registration state of an object information table when a memory overflow occurs when the
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
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
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
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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8441656B2 (en) | 2009-08-07 | 2013-05-14 | Brother Kogyo Kabushiki Kaisha | PDL data processing device |
-
2003
- 2003-04-22 JP JP2003117132A patent/JP4049003B2/en not_active Expired - Fee Related
Cited By (1)
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 |