JP3997846B2 - 印刷装置 - Google Patents

印刷装置 Download PDF

Info

Publication number
JP3997846B2
JP3997846B2 JP2002174089A JP2002174089A JP3997846B2 JP 3997846 B2 JP3997846 B2 JP 3997846B2 JP 2002174089 A JP2002174089 A JP 2002174089A JP 2002174089 A JP2002174089 A JP 2002174089A JP 3997846 B2 JP3997846 B2 JP 3997846B2
Authority
JP
Japan
Prior art keywords
data
image
image data
unit
layout
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002174089A
Other languages
English (en)
Other versions
JP2004017418A (ja
Inventor
典生 田川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2002174089A priority Critical patent/JP3997846B2/ja
Priority to US10/461,442 priority patent/US7508539B2/en
Publication of JP2004017418A publication Critical patent/JP2004017418A/ja
Application granted granted Critical
Publication of JP3997846B2 publication Critical patent/JP3997846B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1286Remote printer device, e.g. being remote from client or server via local network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/125Page layout or assigning input pages onto output media, e.g. imposition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Record Information Processing For Printing (AREA)
  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、テキストやイメージを出力する印刷装置に関する。
【0002】
【従来の技術】
テキスト及びイメージを出力する場合、XHTML(Extensible Hyper Text Markup Language)データとイメージデータとが混在したデータ(以下、複合データ(Multiplexed Data)という。)をクライアント(コンピュータなど)から印刷装置へ送る方法と、XHTMLデータ(以下、単データ(Plain XHTML)という。)のみをコンピュータからプリンタへ送る方法がある。尚、XHTMLデータには、テキストに関するテキストデータやイメージの外部ネットワーク上の格納位置を示すURLなどを含んでいる。
【0003】
この両方の方法に対応するため、印刷装置100は、図14に示すように、レイアウト部101とレンダリング部102とバッファ103とプリントエンジン104とデコード部105を備える。デコード部105は、複合データ(Multiplexed Data)をXHTMLデータとイメージデータとに分離し、XHTMLデータをレイアウト部101へ出力し、イメージデータをバッファ103に出力する。バッファ103は、複合データ(Multiplexed Data)がクライアントから送られてきた場合に、それに含まれるイメージに関するイメージデータを格納するものである。レイアウト部101には、単データ(Plain XHTML)のXHTMLデータと、デコード部105で分離された複合データ(Multiplexed Data)を構成するXHTMLデータと、が入力される。
【0004】
以下、レイアウト部101の動作について図15を参照しつつ説明する。図15はレイアウト部101のレイアウト処理の動作フローを示すフローチャートである。
【0005】
ステップS801において、レイアウト部101は、レイアウト部101へのデータの入力が終了したか否かを判定する。データの入力が終了していないと判定された場合には(S801:NO)、ステップS802の処理へ移行する。一方、データの入力が終了したと判定された場合には(S801:YES)、ステップS815の処理へ移行する。
【0006】
ステップS802において、レイアウト部101は、入力されているデータがイメージに関するイメージデータであるか否かを判定する。イメージに関するものであると判定された場合には(S802:YES)、ステップS804の処理へ移行する。一方、イメージに関するものでないと判定された場合には(S802:NO)、ステップS803の処理へ移行し、ステップS803において、レイアウト部101はその他のデータの処理、例えば、テキストに関するテキストデータに基づいてテキストをレイアウトする処理を行い、ステップS813の処理へ移行する。
【0007】
ステップS804において、レイアウト部101は、入力されているデータの入力フォーマットが複合データ(Multiplexed Data)のフォーマットか単データ(Plain XHTML)のフォーマットであるかを判定する。単データ(Plain XHTML)のフォーマットであると判定された場合には(S804:Plain)、ステップS805の処理へ移行する。一方、複合データ(Multiplexed Data)のフォーマットであると判定された場合には(S804:Multiplexed)、ステップS806の処理へ移行する。
【0008】
ステップS805において、レイアウト部101は、外部ネットワーク上の単データ(Plain XHTML)を構成するXHTMLデータに含まれるURLをオープンする。
【0009】
ステップS806において、レイアウト部101は、イメージのURLと同じURLを持つコンテンツがバッファ103にあるか否かを判定する。同じURLを持つコンテンツがないと判定された場合には(S806:NO)、ステップS807の処理へ移行し、ステップS807において、レイアウト部101はチャンクの読み込みを行い、ステップS806の処理へ戻る。一方、同じURLを持つコンテンツがあると判定された場合には(S806:YES)、ステップS808の処理へ移行する。
【0010】
ステップS808において、レイアウト部101は、単データ(Plain XHTML)の場合にはステップS805でオープンしたURLのイメージデータに基づいて、イメージデータのヘッダを読み込み、イメージの寸法情報(サイズ)を取り出す。一方、複合データ(Multiplexed Data)の場合にはバッファ103に格納されているコンテンツのイメージデータに基づいて、イメージデータのヘッダを読み込み、イメージの寸法情報(サイズ)を取り出す。続いて、ステップS809において、レイアウト部101は、ステップS807で取り出した寸法情報(サイズ)に基づいてイメージをレイアウトする。
【0011】
ステップS810において、レイアウト部101は、入力されているデータの入力フォーマットが複合データ(Multiplexed Data)のフォーマットか単データ(Plain XHTML)のフォーマットであるかを判定する。複合データ(Multiplexed Data)のフォーマットであると判定された場合には(S810:Multiplexed)、ステップS811の処理へ移行する。一方、単データ(Plain XHTML)のフォーマットであると判定された場合には(S810:Plain)、ステップS812の処理へ移行する。
【0012】
ステップS811において、レイアウト部101は、読み込んだ分のデータをレイアウト部101内のバッファに書き込み、ステップS813の処理へ移行する。一方、ステップS812において、レイアウト部101は、ステップS805でオープンしたURLをクローズし、ステップS813の処理へ移行する。
【0013】
ステップS813において、レイアウト部101は、1ページ分のデータがあるか、つまり1ページ分のレイアウトがされたか否かを判定する。1ページ分のデータがあると判定された場合には(S813:YES)、ステップS814の処理へ移行し、ステップS814において、レイアウト部101は、レイアウトデータ(中間データ)をレンダリング部102へ出力し、ステップS801の処理へ戻る。一方、1ページ分のデータがないと判定された場合には(S813:NO)、ステップS801の処理へ戻る
【0014】
ステップS815において、レイアウト部101は、ページに未出力のデータがあるか、つまり、レンダリング部102へ出力されていないレイアウトデータ(中間データ)が残っているか否かを判定する。ページに未出力のデータがあると判定された場合には(S815:YES)、ステップS816の処理へ移行する。一方、ページに未出力のデータがないと判定された場合には(S815:NO)、レイアウト処理を終了する。
【0015】
ステップS816において、レイアウト部101は、未出力のレイアウトデータ(中間データ)をレンダリング部102へ出力して、レイアウト処理を終了する。
【0016】
以下、レンダリング部102の動作について図16を参照しつつ説明する。図16はレンダリング部のレンダリング処理の動作フローを示すフローチャートである。
【0017】
ステップS901において、レンダリング部102は、レイアウト部101から送られてくるレイアウトデータ(中間データ)の入力が終了したか否かを判定する。データの入力が終了していないと判定された場合には(S901:NO)、ステップS902の処理へ移行する。一方、データの入力が終了したと判定された場合には(S901:YES)、ステップS915の処理へ移行する。
【0018】
ステップS902において、レンダリング部102は、入力されているデータがイメージに関するものであるか否かを判定する。イメージに関するものであると判定された場合には(S902:YES)、ステップS904の処理へ移行する。一方、イメージに関するものでないと判定された場合には(S902:NO)、ステップS903の処理へ移行し、ステップS903において、レンダリング部102はその他のデータの処理、例えば、レイアウトに従ってテキストをレンダリングする処理を行い、ステップS901の処理へ移行する。
【0019】
ステップS904において、レンダリング部102は、入力されているデータの入力フォーマットが複合データ(Multiplexed Data)のフォーマットか単データ(Plain XHTML)のフォーマットであるかを判定する。単データ(Plain XHTML)のフォーマットであると判定された場合には(S904:Plain)、ステップS905の処理へ移行する。一方、複合データ(Multiplexed Data)のフォーマットであると判定された場合には(S904:Multiplexed)、ステップS906の処理へ移行する。
【0020】
ステップS905において、レンダリング部102は、外部ネットワーク上の単データ(Plain XHTML)を構成するXHTMLデータに含まれるURLをオープンする。
【0021】
ステップS906において、レンダリング部102は、入力バッファにデータがあるか否かを判定する。データがあると判定された場合には(S906:YES)、ステップS907の処理へ移行し、ステップS907において、入力バッファ上のデータをデコードして、ステップS908の処理へ移行する。一方、データがないと判定された場合には(S906:NO)、ステップS908の処理へ移行する。
【0022】
ステップS908において、レンダリング部102は、イメージのURLと同じURLを持つコンテンツがバッファ103にあるか否かを判定する。同じURLを持つコンテンツがないと判定された場合には(S908:NO)、ステップS909の処理へ移行し、ステップS909において、レンダリング部102はチャンクの読み込みを行い、ステップS908の処理へ戻る。一方、同じURLを持つコンテンツがあると判定された場合には(S908:NO)、ステップS910の処理へ移行する。
【0023】
ステップS910において、レンダリング部102は、単データ(Plain XHTML)の場合はURLのイメージデータを外部ネットワークから読み込み、複合データ(Multiplexed Data)の場合はバッファ103からイメージデータを読み込み、デコードする。そして、ステップS911において、レンダリング部102は、読み込んだイメージデータのイメージの出力情報に基づいてレイアウト部101からのレイアウトデータに従ってレンダリングする(ビットマップを出力する)。
【0024】
ステップS912において、レンダリング部102は、入力されているデータの入力フォーマットが複合データ(Multiplexed Data)のフォーマットか単データ(Plain XHTML)のフォーマットであるかを判定する。複合データ(Multiplexed Data)のフォーマットであると判定された場合には(S912:Multiplexed)、ステップS914の処理へ移行する。一方、単データ(Plain XHTML)のフォーマットであると判定された場合には(S912:Plain)、ステップS913の処理へ移行する。
【0025】
ステップS913において、レンダリング部102は、ステップS905でオープンしたURLをクローズし、ステップS901の処理へ戻る。一方、ステップS914において、レンダリング部102は、対象となっているコンテンツに関するデータをバッファ103から削除し(コンテンツバッファ開放)、ステップS901の処理へ戻る。
【0026】
ステップS915において、レンダリング部102は、テキストやイメージをレンダリングしたレンダリングデータ(中間データ)をプリントエンジン104へ出力し、レンダリング処理を終了する。
【0027】
【発明が解決しようとする課題】
ところが、上述したようの印刷装置100では、レイアウト部101及びレンダリング部102の双方でクライアントから送られてきているデータのフォーマットが複合データ(Multiplexed Data)であるか、単データ(Plain XHTML)であるかを判定し、判定結果に応じてバッファ103及び外部ネットワーク上の何れかから必要なデータを取ってこなければならない構成になっていた。このため、クライアントから送られてくるデータのフォーマットに変更があった場合やフォーマットが追加された場合には、レイアウト部101及びレンダリング部102の双方を構成しなおさなければならず、データのフォーマットの変更に対処するためには開発コストがかかるという問題がある。
【0028】
本発明は、クライアントから送られてくるデータのフォーマットに変更又はフォーマットの追加があった場合に、低い開発コストで変更又は追加後のフォーマットに対応することが可能な印刷装置を提供することを目的とする。
【0029】
【課題を解決するための手段】
請求項1に記載の印刷装置は、データを格納する格納手段と、イメージデータの格納場所を示すデータを含むテキストデータから成る単データ、並びに、イメージデータとテキストデータとの複合データのいずれかを受け取り、前記複合データを受け取った場合には、前記複合データを前記テキストデータと前記イメージデータとに分離し、前記イメージデータを前記格納手段に格納するデータ授受手段と、前記データ授受手段から前記テキストデータが入力されるとともに、前記データ授受手段が受信した前記テキストデータ及び前記データ授受手段が受信した前記イメージデータに含まれているイメージの寸法情報に基づいて前記テキストデータに相当するテキスト及び前記イメージデータに相当するイメージをレイアウトしてレイアウトデータを作成するレイアウト手段と、前記レイアウト手段が作成した前記レイアウトデータが入力されるとともに、当該レイアウトデータ及び前記データ授受手段が受信した前記イメージデータに含まれているイメージの出力情報に基づいて前記テキスト及び前記イメージをレンダリングしてレンダリングデータを作成するレンダリング手段と、前記レンダリング手段から入力されるレンダリングデータを印刷媒体に出力する出力手段と、を1筐体内に備えており、前記レイアウト手段は、前記イメージデータに含まれている前記イメージの寸法情報を前記データ授受手段に要求して前記データ授受手段から前記イメージの寸法情報を取得し、前記レンダリング手段は、前記イメージデータに含まれている前記イメージの出力情報を前記データ授受手段に要求して前記データ授受手段から前記イメージの出力情報を取得し、前記データ授受手段は、前記イメージデータに含まれている前記イメージの寸法情報及び出力情報をそれぞれ要求されると、当該イメージデータが前記複合データに係るものである場合には前記格納手段に格納された前記イメージデータに基づいて、当該イメージデータが前記単データに係るものである場合には当該単データに含まれるデータが示す前記イメージデータの格納場所を参照して、前記イメージの寸法情報及び出力情報を要求元へとそれぞれ受け渡すことを特徴とする。
【0030】
請求項1によると、レイアウト手段及びレンダリング手段は必要な情報をデータ授受手段に要求してデータ授受手段から必要な情報を取得する構成となっており、印刷装置外部から送られてくるデータのフォーマットによってその構成を変更する必要があるのはデータ授受手段のみであるため、印刷装置外部から送られてくるデータのフォーマットに変更又はフォーマットの追加があった場合に、低い開発コストで変更又は追加後のフォーマットに対応することが可能になる。
【0031】
請求項2に記載の印刷装置は、前記レイアウト手段が、前記格納手段が格納している前記イメージデータを保持させる保持指定を前記データ授受手段に行いつつ前記イメージデータに含まれている前記イメージの寸法情報を前記データ授受手段に要求し、前記レンダリング手段が、前記格納手段が格納している前記イメージデータを削除させる削除指定を前記データ授受手段に行いつつ前記イメージデータに含まれている前記イメージの出力情報を前記データ授受手段に要求し、前記データ授受手段が、前記イメージデータに含まれている前記イメージの寸法情報及び出力情報をそれぞれ要求されると、当該イメージデータが前記複合データに係るものであり且つ要求元から前記削除指定が送られた場合には、前記イメージの寸法情報及び出力情報を要求元へとそれぞれ受け渡した後に前記格納手段が格納している前記イメージデータを削除し、当該イメージデータが前記複合データに係るものであり且つ要求元から前記保持指定が送られた場合には、前記格納手段が格納している前記イメージデータを保持することを特徴とする。請求項2によると、上記の保持指定及び削除指定に基づいてイメージデータを保持したり削除したりするので、格納手段の格納領域を有効活用することができる。
【0032】
請求項3に記載の印刷装置は、前記データ授受手段は、前記レンダリング手段から前記イメージの出力情報を要求された場合、前記格納手段に格納された前記イメージデータに基づいて前記要求に応じた後、当該イメージデータの出力情報を前記格納手段から削除する旨の削除要求を当該格納手段に送出することを特徴とする。請求項3によると、格納手段のメモリ容量を有効に活用することが可能になる。
【0033】
請求項4に記載の印刷装置は、前記格納手段は、前記データ授受手段が前記レンダリング手段の要求に応じた後に送出する削除要求を確認するまでは、前記イメージデータの出力情報を削除しないことを特徴とする。請求項4によると、イメージデータの出力情報が必要な間に出力情報が格納手段から削除されるようなことが防がれる。
【0034】
請求項5に記載の印刷装置は、前記データ授受手段は、前記テキストデータ及び前記イメージデータのネットワーク上の格納場所を示す場所データを含むデータを受け取り、前記レイアウト手段及び前記レンダリング手段からの要求があると前記場所データに基づいて前記格納場所から前記イメージデータを取得し、取得した前記イメージデータに基づいて前記要求に応じることを特徴とする。請求項5によると、クライアントから送られてくるイメージデータの格納場所からイメージに関するイメージデータを取得して出力データを作成することが可能になる。
【0035】
【0036】
【0037】
【0038】
【0039】
【0040】
【0041】
【0042】
【発明の実施の形態】
以下、本発明の実施の形態に係る印刷装置について図面を参照しつつ説明する。
【0043】
まず、印刷装置を含むネットワークシステムについて図1及び図2を参照しつつ説明する。図1は、ネットワークシステムのシステム構成の一例を示す図である。図2は、図1の装置の一部の装置構成の一例を示す図である。
【0044】
図1に一例を示すネットワークシステム1は、2台の印刷装置2と、2台のコンピュータ3と、1台のファックス4と、及び1台のルータ5とを備えており、夫々LAN(Local Area Network)7に接続されている。このネットワークシステム1の各装置はルータ5を介してサーバ6とデータの送受信を行うことが可能である。
【0045】
図1の印刷装置2は、図2(a)に示すように、CPU11と、ROM12と、RAM13と、印字部14と、操作パネル15と、NVRAM16と、インターフェース(I/F)17とを備えている。
【0046】
CPU(Central Processing Unit)11は、各種演算及び処理を行うものであって、中央演算処理装置として機能する。本実施の形態におけるCPU11は、図2(b)に示すように、主として、入力部(データ授受手段)11aと、レイアウト部(レイアウト手段)11bと、レンダリング部(レンダリング手段)11cなどとして機能する。
【0047】
入力部11aは、コンピュータ3から送られてくるデータが複合データ(Multiplexed Data:XHTMLデータとイメージに関するイメージデータが混在したもの)であるか単データ(Plain XHTML:XHTMLデータのみ)であるかを判定する。そして、入力部11aは、複合データ(Multiplexed Data)の場合は、複合データ(Multiplexed Data)をXHTMLデータとイメージデータとに分離し、夫々をRAM13に格納する。また、入力部11aは、レイアウト部11bからイメージデータが要求されるとレイアウト部11bへイメージの寸法情報を含むイメージデータを渡し、レンダリング部11cからイメージデータが要求されるとレンダリング部11cへイメージの出力情報(画像などの情報)を含むイメージデータを渡す。但し、コンピュータ3からのデータが複合データ(Multiplexed Data)の場合には上記格納されたイメージデータに基づいてレイアウト部11b及びレンダリング部11cの要求に応じる。一方、コンピュータ3からのデータが単データ(Plain XHTML)の場合はXHTMLデータに含まれるURLを利用してサーバ6などからイメージデータを取得してレイアウト部11b及びレンダリング部11cの要求に応じる。尚、HTMLデータには、テキストに関するテキストデータやイメージの格納場所を示すURL((Uniform Resource Locator)などが含まれている。
【0048】
レイアウト部11bは、入力部11aからのXHTMLデータ、及び入力部11aに要求して入力部11aから取得したイメージデータに含まれるイメージの寸法情報に基づいてテキストやイメージのレイアウトを行い、レイアウトの内容などの情報をもつレイアウトデータ(中間データ)をレンダリング部11cへ出力する。
【0049】
レンダリング部11cは、レイアウト部11bからのレイアウトデータ(中間データ)、及び入力部11aに要求して入力部11aから取得したイメージデータに含まれる出力情報に基づいてテキストやイメージのレンダリングを行い、レンダリングの内容の情報を持つレンダリングデータ(中間データ)を印字部14へ出力する。
【0050】
尚、CPU11の入力部11aの詳細な処理内容は図3から図7を参照して後述する。
また、レイアウト部11bの詳細な処理内容は図8を参照して後述する。さらに、レンダリング部11cの詳細な処理内容は図9を参照して後述する。
【0051】
ROM(Read Only Memory)12は、読み出し専用の記憶装置であって、印刷装置2の主記憶装置の一部を構成するものである。このROM12には、システムプログラムなど、各種プログラムが格納されている。
【0052】
RAM(Random Access Memory)13は、読み出し・書き込み可能な揮発性記憶装置であって、ROM12と同様に印刷装置2の主記憶装置の一部を構成するものである。RAM13には、データ処理の中間結果を格納するためのワークエリアなどがある。また、RAM13には、コンピュータ3から送られてくるデータフォーマットが複合データ(Multiplexed Data)の場合には、それに含まれるイメージデータなどを格納する(図11参照)。
【0053】
印字部14は、モノクロあるいはカラーによる文字または画像の印刷機能を提供するものである。印字部14は、データ処理(図3〜図9)で作成され、CPU11のレンダリング部11cから入力されるレンダリングデータ(中間データ)を印刷媒体に出力する。
【0054】
操作パネル15は、ディスプレイなどにより情報を出力して表示する表示装置と、外部からの入力操作を行う入力装置とを備えている。表示装置は、印刷装置2の操作などに関する各種情報の表示に用いられる。例えば、液晶表示器やプラズマ表示器などにより構成され、表示面に入力装置としての操作部を構成するタッチパネルなどを備えるものである。
【0055】
NVRAM(Non Volatile Read Only Memory)16は、読み出し・書き込み可能であって、電源オフ時にも記憶したデータが消去されずに記憶し続けることが可能な記憶装置である。このNVRAM16には、コンピュータ3から送られてくるデータを解析して出力データを作成するためのデータ処理(図3〜図9)を印刷装置2に実行させるためのプログラムなどが格納されている。また、NVRAM16には、操作パネル15や、LAN7を介して接続されたコンピュータ3の表示部26に表示する表示情報(WEBページ)などが格納されている。尚、NVRAM16には、製造品のシリアル番号なども記憶されている。
【0056】
インターフェース17は、印刷装置2をLAN7に接続し、印刷装置2とLAN7の先に接続されているコンピュータ3などの各装置との間の通信を可能にするものである。
【0057】
図1のコンピュータ3は、図2(a)に示すように、CPU21と、ROM22と、RAM23と、HDD24と、操作部25と、表示部26と、インターフェース27とを備えている。コンピュータ3は、複合データ(Multiplexed Data)、及び単データ(Plain XHTML)を印刷装置2に送信などする。
【0058】
CPU21は、各種演算及び処理を行うものであって、中央演算処理装置として機能する。
【0059】
ROM22は、読み出し専用の記憶装置であって、コンピュータ3の主記憶装置の一部を構成するものである。このROM22には、システムプログラムなど、各種プログラムが格納されている。RAM23は、読み出し・書き込み可能な揮発性記憶装置であって、ROM22と同様にコンピュータ3の主記憶装置の一部を構成するものである。そして、RAM23には、データ処理の中間結果を格納するためのワークエリアなどがある。HDD(Hard Disk Drive)24は、読み出し・書き込み可能な記憶装置(ハードディスク)及びその読取装置である。
【0060】
操作部25は、コンピュータ3の入力装置を構成するものである。この操作部25は、所定数の入力キーを並べてなるキーボードやマウスなどのポインティングデバイスなどで構成されている。表示部26は、ディスプレイなどにより情報を出力して表示する表示装置であり、例えば、液晶表示器やプラズマ表示器などにより構成される。尚、液晶表示器には、STN方式やDSTN方式などの単純マトリックス方式のものや、TFTなどのアクティブマトリックス方式のものなどがある。
【0061】
インターフェース27は、コンピュータ3をLAN7に接続し、コンピュータ3とLAN7の先に接続されている印刷装置2などの各装置との間の通信を可能にするものである。
【0062】
図1のサーバ6は、図2(a)に示すように、CPU31と、ROM32と、RAM33と、HDD34と、インターフェース35とを備えている。
【0063】
CPU31は、各種演算及び処理を行うものであって、中央演算処理装置として機能する。ROM32は、読み出し専用の記憶装置であって、サーバ6の主記憶装置の一部を構成するものである。このROM32には、システムプログラムなど、各種プログラムが格納されている。RAM33は、読み出し・書き込み可能な揮発性記憶装置であって、ROM32と同様にサーバ6の主記憶装置の一部を構成するものである。そして、RAM33には、データ処理の中間結果を格納するためのワークエリアなどがある。HDD34は、読み出し・書き込み可能な記憶装置(ハードディスク)及びその読取装置であり、URLに対応したWEBページが複数記憶されている。インターフェース35は、サーバ6をインターネットに接続し、サーバ6とインターネットの先に接続されている印刷装置2などの各装置との間の通信を可能にするものである。
【0064】
次に、コンピュータ3などのクライアントから印刷装置2へ送られる複合データ(Multiplexed Data)について図10を参照しつつ説明する。図10は、複合データ(Multiplexed Data)を説明するための説明図である。
【0065】
図10(a)に一例を示す複合データ(Multiplexed Data)は、1つのXHTMLデータと2つのイメージデータとを含んでいる。チャンク番号が1のチャンクがXHTMLデータに関するものであると決めており、また、同じチャンク番号を持つものは同じデータを分割して作成されたものになっている。図10(a)に一例を示す各チャンクは、図10(b)に示すように1行のヘッダ(図示例ではCHK 1 350 MORE)と、データが入る本体(図示例では、<?xml version=“1.0”>以下)とから構成されている。また、ヘッダは、文字列(CHK)と、チャンク番号(図示例では“1”)、本体のデータのサイズ(図示例では“350”)、継続フラグ(図示例では“MORE”)から構成されている。継続フラグが“MORE”の場合、当該チャンクに続くチャンクがあり、継続フラグが“LAST”の場合、当該チャンクに続くチャンクがない、つまり同じチャンク番号を持つチャンクの最後である。
【0066】
RAM13に割り当てられたコンテンツバッファについて図11を参照しつつ説明する。図11は、コンテンツバッファを説明するための説明図である。コンテンツバッファは、固有の識別子idと、URLと、チャンク番号と、可変長のデータバッファを保持している。
【0067】
レイアウト部11bからレンダリング部11cに入力されるレイアウトデータ(中間データ)について図12を参照しつつ説明する。図12は、レイアウトデータ(中間データ)を説明するための説明図である。図12(a)に示すように、レイアウトデータ(中間データ)のフォントはフォント名及びフォントサイズから構成される。また、レイアウトデータ(中間データ)のテキストはテキストの配置位置(X,Y)及びテキスト(文字列)から構成される。また、レイアウトデータ(中間データ)のイメージはイメージの配置位置(X,Y)及びURLから構成されている。1ページ分のレイアウトデータ(中間データ)は、図12(b)に一例を示すように、フォント、テキスト、フォント、テキスト、イメージの順に構成されている。図12(b)のフォント、テキスト、イメージの夫々は、図12(a)に示した内容を持つ。尚、レイアウト部11bからレンダリング部11cへは、フォントを送った後テキストを送るように構成されている。
【0068】
以下、上述の構成を有する印刷装置2におけるデータ処理について図面を参照しつつ説明する。
【0069】
まず、入力部におけるXHTMLデータ出力処理について図3を参照しつつ説明する。
図3は、入力部におけるXHTMLデータ出力処理の動作フローを示すフローチャートである。尚、入力部11aは、クライアントから複合データ(Multiplexed Data)が送られてきたときには、複合データ(Multiplexed Data)をXHTMLデータとイメージデータとに分離し、夫々をRAM13に格納する。
【0070】
ステップS101において、印刷装置2のCPU11の入力部11aは、コンピュータ3などのクライアントから送られてくるデータの入力フォーマットを判別するために、入力フォーマットを判別するために用いる入力フォーマット用フラグが未知(unknown)であるか否かを判定する。入力フォーマット用フラグが未知(unknown)であると判定された場合には(S101:未知(unknown))、ステップS102の処理へ移行する。一方、入力フォーマットが未知(unknown)でないと判定された場合には(S101:未知(unknown)でない)、ステップS104の処理へ移行する。
【0071】
ステップS102において、入力部11aは、入力データの先頭の4バイトを読み込む。続いて、ステップS103において、入力部11aは、読み込んだ入力データの先頭の4バイトに基づいて入力データの入力フォーマットが複合データ(Multiplexed Data)及び単データ(Plain XHTML)の何れであるかを検知し、検知結果に基づいて入力フォーマット用フラグに複合データ(Multiplexed Data)及び単データ(Plain XHTML)の何れかを設定する。つまり、複合データ(Multiplexed Data)の場合には“CHK ”で始まり、単データ(Plain XHTML)の場合には“<?xm”で始まるので、先頭の4バイトが“CHK ”であれば複合データ(Multiplexed Data)であると検知し、先頭の4バイトが“<?xm”であれば単データ(Plain XHML)であると検知する。
【0072】
ステップS104において、入力部11aは、入力フォーマットを判別するために、入力フォーマット用フラグが複合データ(Multiplexed Data)であるか単データ(Plain XHTML)であるかを判定する。複合データ(Multiplexed Data)であると判定された場合には(S104:Multiplexed)、ステップS105の処理へ移行する。一方、単データ(Plain XHTML)であると判定された場合には(S104:Plain)、ステップS107の処理へ移行する。
【0073】
ステップS105において、入力部11aは、チャンク番号1のチャンクがXHTMLデータに関するものであるので、チャンク番号1のチャンクにXHTMLデータがあるか否かを判定する。チャンク番号1のチャンクにXHTMLデータがないと判定された場合には(S105:NO)、ステップS106の処理へ移行する。一方、チャンク番号1のチャンクにXHTMLデータがあると判定された場合には(S105:YES)、ステップS108の処理へ移行する。
【0074】
ステップS106において、入力部11aは、図7を参照しつつ後述するチャンク読み込み処理を行い、ステップS105の処理へ戻る。つまり、XHTMLデータを読み込めるまでステップS105及びステップS106の処理を繰り返し行う。
【0075】
ステップS107において、入力部11aは、入力データが単データ(Plain XHTML)であるので、XHTMLデータを読み込む。
【0076】
ステップS108において、入力部11aは、チャンク番号1のチャンクのXHTMLデータ又はステップS107で読み込まれたXHTMLデータをレイアウト部11bへ出力し、XHTMLデータ出力処理を終了する。
【0077】
以下、入力部11aにおけるイメージデータ出力処理について図4〜図6を参照しつつ説明する。図4〜図6は、入力部11aにおけるイメージデータ出力処理の動作フローを示すフローチャートである。尚、図4、図5、図6の順に処理が実行される。
【0078】
まず、図4の動作フローについて説明する。ステップ201において、入力部11aは、コンピュータ3から送られてきたデータの入力フォーマットが複合データ(Multiplexed Data)であるか単データ(Plain XHTML)であるかを判別するために、入力フォーマット用フラグが複合データ(Multiplexed Data)であるか単データ(Plain XHTML)であるかを判定する。単データ(Plain XHTML)であると判定された場合には(S201:Plain)、ステップS202の処理へ移行する。一方、複合データ(Multiplexed Data)であると判定された場合には(S201:Multiplexed)、ステップS203の処理へ移行する。尚、ステップS201では、図3のステップS103で設定された値を判定していることになる。
【0079】
ステップS202において、入力部11aは、外部ネットワーク上(例えば、サーバ6)の、図8のステップS603又は図9のステップS703のURLに相当するURLをオープンし、図4の処理を終了する。
【0080】
ステップS203において、入力部11aは、図8のステップS603又は図9のステップS703のURLに相当するURLと一致するURLを持つコンテンツバッファがRAM13にあるか否かを判定する。一致するURLを持つコンテンツバッファがないと判定された場合には(S203:NO)、ステップS204の処理へ移行する。一方、一致するURLを持つコンテンツバッファがあると判定された場合には(S203:YES)、ステップS206の処理へ移行する。
【0081】
ステップS204において、入力部11aは、図7を参照して後述するチャンクの読み込み処理を行い、ステップS205の処理へ移行する。
【0082】
ステップS205において、入力部11aは、ステップS205のチャンクの読み込み処理でデータが読み込めたか否かを判定する。データを読み込めたと判定された場合には(S205:YES)、ステップS203の処理へ戻る。一方、データが読み込めなかった場合には(S205:NO)、最後まで複合データ(Multiplexed Data)を読み込んでも一致するURLを持つチャンクがなかったことになるので、エラー出力して、図4の処理を終了する。
【0083】
ステップS206において、入力部11aは、レイアウト部11bからの指定またはレンダリング部11cからの指定に従って、フラグに保存(BUFFERED)又は削除(STREAMING)を設定する(図8のステップS603、図9のステップS703参照)。
【0084】
ステップS207において、入力部11aは、データの読み込み位置をコンテンツバッファの先頭に戻す。
【0085】
次に、図5の動作フローについて説明する。ステップS301において、入力部11aは、コンピュータ3などのクライアントから送られてきたデータが複合データ(Multiplexed Data)であるか単データ(Plain XHTML)であるかを判別するために、入力フォーマット用フラグが複合データ(Multiplexed Data)であるか単データ(Plain XHTML)であるかを判定する。単データ(Plain XHTML)であると判定された場合には(S301:Plain)、ステップS302の処理へ移行する。一方、複合データ(Multiplexed Data)であると判定された場合には(S301:Multiplexed)、ステップS304の処理へ移行する。尚、ステップS301では、図3のステップS103で設定された値を判定していることになる。
【0086】
ステップS302において、入力部11aは、入力部11aが図4のステップS202でオープンしたURLのイメージデータを外部ネットワーク(例えば、サーバ6)から読み取る。
【0087】
ステップS303において、入力部11aは、レイアウト部11bがイメージデータを要求してきているときには読み取ったイメージデータをレイアウト部11bへ出力する。或いは、入力部11aは、レンダリング部11cがイメージの出力情報を要求してきているときには読み取ったイメージデータに基づいてイメージの出力情報をレンダリング部11cへ出力し、図5の処理を終了する。
【0088】
ステップS304において、入力部11aは、レイアウト部11b又はレンダリング部11cが要求してきたURLのRAM13のコンテンツバッファにデータがあるか否かを判定する。データがない場合には(S304:NO)、ステップS305の処理へ移行する。一方、データがある場合には(S304:YES)、ステップS308の処理へ移行する。
【0089】
ステップS305において、入力部11aは、複合データ(Multiplexed Data)を構成するチャンクのチャンクデータが終了したか(全てのチャンクデータを読み込んだか)否かを判定する。チャンクデータが終了したと判定された場合には(S305:YES)、ステップS307の処理へ移行し、ステップS307において、例えば操作パネル15にEDF(End Of File)を出力する。一方、チャンクデータが終了していないと判定された場合には(S305:NO)、ステップS306の処理へ移行し、ステップS306において、入力部11aは、図7を参照しつつ後述するチャンクデータの読み込み処理を行い、ステップS304の処理に戻る。
【0090】
ステップS308において、入力部11aは、レイアウト部11bがイメージデータを要求してきているときにはRAM13のコンテンツバッファからイメージデータ(これには、イメージの寸法情報(サイズ)などが含まれている)をレイアウト部11bへ出力する。或いは、入力部11aは、レンダリング部11cがイメージデータを要求してきているときにはRAM13のコンテンツバッファからイメージデータ(これには、イメージの出力情報などが含まれている)をレンダリング部11cへ出力する。
【0091】
ステップS309において、入力部11aは、フラグが保存(BUFFERED)に設定されているか削除(STREAMING)に設定されているかを判定する(図8のS603、図9のS703参照)。フラグが保存(BUFFERED)に設定されていると判定された場合には(S309:BUFFERED)、再度利用される可能性があるのでRAM13のコンテンツバッファからデータを削除することなく、図5の処理を終了する。一方、フラグが削除(STREAMING)に設定されている場合には(S309:STREAMING)、ステップS310の処理へ移行する。
【0092】
ステップS310において、ステップS308で出力した内容を再度利用することがないので、入力部11aは、その内容をRAM13のコンテンツバッファから削除し、図5の処理を終了する。
【0093】
さらに、図6の動作フローについて説明する。ステップS401において、入力部11aは、コンピュータ3から送られてきたデータが複合データ(Multiplexed Data)であるか単データ(Plain XHTML)であるかを判別するために、入力フォーマット用フラグが複合データ(Multiplexed Data)であるか単データ(Plain XHTML)であるかを判定する。単データ(Plain XHTML)であると判定された場合には(S401:Plain)、ステップS402の処理へ移行する。一方、複合データ(Multiplexed Data)であると判定された場合には(S401:Multiplexed)、ステップS403の処理へ移行する。尚、ステップS401では、図3のステップS103で設定された値を判定していることになる。
【0094】
ステップS402において、入力部11aは、外部ネットワーク(例えば、サーバ6)との接続をクローズし(図4のステップS202の処理に対応する処理)、図6の処理を終了する。
【0095】
ステップS403において、入力部11aは、フラグが保存(BUFFERED)に設定されているか削除(STREAMING)に設定されているかを判定する。フラグが保存(BUFFERED)に設定されていると判定された場合には(S403:BUFFERED)、再度利用される可能性があるのでRAM13のコンテンツバッファの内容をそのままにして、図6の処理を終了する。一方、フラグが削除(STREAMING)に設定されている場合には(S403:STREAING)、ステップS404の処理へ移行する。
【0096】
ステップS404において、処理対象となっているURLのイメージデータ(イメージの寸法情報やイメージの出力情報など)は再度利用することがないので、入力部11aは、RAM13のコンテンツバッファを開放してイメージデータを削除し、図6の処理を終了する。
【0097】
つまり、図4〜図6の処理では、コンピュータ3などのクライアントから送られてくるデータの入力フォーマットが、複合データ(Multiplexed Data)及び単データ(Plain XHTML)のいずれであるかを判別する。
【0098】
単データ(Plain XHTML)の場合には、外部ネットワーク上からレイアウト部11bやレンダリング部11cから要求されたURLのイメージデータを取得し、取得したイメージデータに基づいて、レイアウト部11b及びレンダリング部11cの要求に応じる。
【0099】
複合データ(Multiplexed Data)の場合には、RAM13のコンテンツバッファに格納されているレイアウト部11bやレンダリング部11cから要求されたURLのコンテンツバッファのイメージデータに基づいて、レイアウト部11b及びレンダリング部11cの要求に応じる。そして、レイアウト部11bはフラグが保存(BUFFERED)でイメージデータを要求するのでイメージデータはそのまま格納された状態のままになる。一方、レンダリング部11cはフラグが削除(STREAMING)でイメージデータを要求するのでレンダリング部11cの要求に応じてイメージデータを送信した後要求されたURLのRAM13のコンテンツバッファを開放して、イメージデータ(イメージデータの寸法情報(サイズ)やイメージデータの出力情報など)を削除する。
【0100】
以下、入力部11aにおけるチャンク読み込み処理について図7を参照しつつ説明する。図7は、入力部11aにおけるチャンク読み込み処理の動作フローを示すフローチャートである。
【0101】
ステップS501において、入力部11aは、チャンクのヘッダを読み込む。図10(b)の例では、ヘッダ“CHK 1 350 MORE”を読み込み、ステップS502の処理へ移行する。
【0102】
ステップS502において、入力部11aは、ステップS501で読み込んだチャンクのヘッダの内容に基づいて読み込んだチャンクのチャンク番号を特定し、特定したチャンク番号と一致するチャンク番号のコンテンツバッファがあるか否かを判定する。一致するチャンク番号のコンテンツバッファがないと判定された場合には(S502:NO)、ステップS503の処理へ移行する。一方、一致するチャンク番号のコンテンツバッファがあると判定された場合には(S502:YES)、ステップS504の処理へ移行する。
【0103】
ステップS503において、読み込んだチャンクのチャンク番号を持つコンテンツバッファがまだ作成されていないので、入力部11aは、読み込んだチャックのチャンク番号を持つコンテンツバッファを新たに作成し、ステップS504の処理へ移行する。
【0104】
ステップS504において、入力部11aは、ステップS501で読み込んだチャンクのヘッダに含まれるサイズに基づいて、ヘッダに含まれるチャンク番号と同じチャンク番号を持つコンテンツバッファのサイズを変更し、ステップS505の処理へ移行する。
【0105】
ステップS505において、入力部11aは、チャンクの本体(図10(b)の例では、<?xml version=“1.0”>以下の内容)を読み込み、読み込んだチャンク本体の内容をチャンクバッファのデータバッファに追加し、図7の処理を終了する。
【0106】
次に、レイアウト部11bにおけるレイアウト処理について図8を参照しつつ説明する。図8は、レイアウト部11bにおけるレイアウト処理の動作フローを示すフローチャートである。
【0107】
ステップS601において、印刷装置2のCPU11のレイアウト部11bは、入力部11aからデータの入力があるか否かを判定する。入力部11aからのデータの入力があると判定された場合には(S601:YES)、ステップS602の処理へ移行する。一方、入力部11aからのデータの入力がないと判定された場合には(S601:NO)、ステップS610の処理へ移行する。
【0108】
ステップS602において、レイアウト部11bは、入力部11aから入力されているデータがイメージに関するものであるか否かを判定する。イメージに関するものであると判定された場合には(S602:YES)、ステップS603の処理へ移行する。一方、イメージに関するものでないと判定された場合には(S602:NO)、ステップS607の処理へ移行し、ステップS607において、レイアウト部11bは、その他のデータの処理、例えば、テキストをレイアウトする処理を行って、ステップS608の処理へ移行する。
【0109】
ステップS603において、レイアウト部11bは、イメージのURLをオープンするように入力部11aに要求し(イメージデータの要求に対応)、この要求の際に、フラグを保存(BUFFERED:要求に応じてイメージデータを出力した後もイメージデータを保存しておくこと)にして入力部11aへ出力する。続いて、ステップS604において、レイアウト部11bは、入力部11aからのイメージデータに基づいてイメージデータのヘッダを読み込み、イメージの寸法情報(サイズ)を取得する。さらに続いて、ステップS605において、レイアウト部11bは、入力部11aに対してURLをクローズするように要求する。このステップS603からステップS605の処理過程で、入力部11aは上述した図4〜図7の動作フローを実行する。
【0110】
ステップS606において、レイアウト部11bは、ステップS604で取得したイメージの寸法情報(サイズ)に基づいて、イメージをレイアウトし、ステップS608の処理へ移行する。
【0111】
ステップS608において、レイアウト部11bは、1ページ分のデータをレイアウトしたか否かを判定する。1ページ分のデータがレイアウトされていると判定された場合には(S608:YES)、ステップS609の処理へ移行する。一方、1ページ分のデータがレイアウトされていないと判定された場合には(S608:NO)、ステップS601の処理へ移行する。
【0112】
ステップS609において、レイアウト部11bは、テキストやイメージをレイアウトして作成された1ページ分のレイアウトデータ(中間データ:図12参照)をレンダリング部11cへ出力し、ステップS601の処理に戻る。
【0113】
ステップS610において、レイアウト部11bは、ページに未出力のデータがあるか、つまり、レンダリング部11cへ出力されていないレイアウトデータ(中間データ)が残っているか否かを判定する。ページに未出力のデータがあると判定された場合には(S610:YES)、ステップS611の処理へ移行する。一方、ページに未出力のデータがないと判定された場合には(S610:NO)、レイアウト処理を終了する。
【0114】
ステップS611において、レイアウト部11bは、未出力のレイアウトデータ(中間データ)をレンダリング部11cへ出力して、レイアウト処理を終了する。
【0115】
図8の処理において、レイアウト部11bは必要なイメージデータを入力部11aに要求して、入力部11aから要求したイメージデータを取得するようになっている。このイメージデータを取得する際には、図8の処理内容から分かるように、レイアウト部11bは、コンピュータ3などのクライアントから入力部11aに送られてくるデータの入力フォーマットが複合データ(Multiplexed Data)であっても単データ(Plain XHTML)であっても同様の処理を行うようになっている。
【0116】
次に、レンダリング部11cにおけるレンダリング処理について図9を参照しつつ説明する。図9は、レンダリング部11cにおけるレンダリング処理の動作フローを示すフローチャートである。
【0117】
ステップS701において、レンダリング部11cは、レイアウト部11bからのレイアウトデータ(中間データ)の入力が終了したか否かを判定する。レイアウトデータ(中間データ)の入力が終了していないと判定された場合には(S701:NO)、ステップS702の処理へ移行する。一方、レイアウトデータ(中間データ)の入力が終了したと判定された場合には(S701:YES)、ステップS708の処理へ移行する。
【0118】
ステップS702において、レンダリング部11cは、レイアウト部11bから入力されているデータがイメージに関するものであるか否かを判定する。イメージに関するものであると判定された場合には(S702:YES)、ステップS703の処理へ移行する。一方、イメージに関するものでないと判定された場合には(S702:NO)、ステップS707の処理へ移行し、ステップS707において、レンダリング部11cは、その他のデータの処理、例えば、テキストをレンダリングする処理を行って、ステップS701の処理へ戻る。
【0119】
ステップS703において、レンダリング部11cは、イメージのURLをオープンするように入力部11aに要求し(イメージデータの要求に対応)、この要求の際に、フラグを削除(STREAMING:要求に応じてイメージデータを出力した後にイメージデータを削除すること)にして入力部11aへ出力する。続いて、ステップS704において、レンダリング部11cは、入力部11aからイメージデータを読み込み、読み込んだイメージデータをデコードする。さらに続いて、ステップS705において、レンダリング部11cは、ステップS704におけるデコード結果に基づいてビットマップを作成する。つまり、イメージの出力情報をレイアウトデータに含まれるイメージの位置情報(X,Y)(図12参照)で指定された位置にレンダリングする。さらに続いて、レンダリング部11cは、入力部11aに対してURLをクローズするように要求し、ステップS701の処理へ戻る。このステップS703からステップS706の処理過程で、入力部11aは上述した図4〜図7の動作フローを実行する。
【0120】
ステップS708において、レンダリング部11cは、テキストやイメージをレンダリングして作成されたレンダリングデータを印字部14へ出力し、レンダリング処理を終了する。
【0121】
図9の処理において、レンダリング部11cは必要なイメージデータを入力部11aに要求して、入力部11aから要求したイメージデータを取得するようになっている。このイメージデータを取得する際には、図9の処理内容から分かるように、レンダリング部11cは、コンピュータ3などのクライアントから入力部11aに送られてくるデータの入力フォーマットが複合データ(Multiplexed Data)であっても単データ(Plain XHTML)であっても同様の処理を行うようになっている。
【0122】
上述した実施の形態においては、入力部11aは、クライアントからの入力データが複合データ(Multiplexed Data)であるか単データ(Plain XHTML)であるかによって処理内容(図3〜図7)が異なっているが、レイアウト部11b及びレンダリング部11cは、クライアントからの入力データが複合データ(Multiplexed Data)であっても単データ(Plain XHTML)であっても処理内容(図8、図9)が同じになっている。このため、例えば、複合データ(Multiplexed Data)と単データ(Plain XHTML)以外のフォーマットのデータがクライアントから送られてくるなど、クライアントからのデータのフォーマットに変更や追加があっても入力部11aのみ構成を変更すれば足り、変更や追加されたデータのフォーマットに対応する印刷装置の開発コストを低くすることができる。別の面から見れば、レイアウト部11b及びレンダリング部11cは、同一構成のものを使用することが可能である。
【0123】
また、入力部11aにイメージデータを要求する際にフラグを保存(BUFFERED)又は削除(STREAMING)にして入力部11aへ出力するように構成にしている。そして、フラグが保存(BUFFERED)の場合には、再度利用するイメージデータであるのでそのまま保存し、フラグが削除(STREAMING)の場合には、再度利用しないイメージデータであるのでそれを削除するようにしている。従って、メモリの有効活用を図ることが可能になる。また、プログラムを複数にモジュール化した場合に起こりがちな必要なメモリ容量の増加を抑えることができる。
【0124】
以下、変形例について図13を参照しつつ説明する。図13は変形例のシステム構成を示す図である。図13に示すように、プリンタ装置61とレイアウト装置62とレンダリング装置63とコンピュータなどのクライアント64とサーバ65とが互いにネットワーク66でデータの送受信可能に接続されている。クライアント64は、複合データ(Multiplexed Data)や単データ(Plain XHTML)をプリンタ61へ出力する。サーバ65には、URLに対応したWEBページが複数記憶されている。
【0125】
プリンタ装置61は、印刷装置2のCPU11の入力部11aと実質的に同様の機能を持つ入力部61aと、RAM13に対応する複合データ(Multiplexed Data)を構成するXHTMLデータやイメージデータ等を格納するバッファ61bと、印字部14と実質的に同様の機能を持つ印字部61cとを備えている。レイアウト装置62は、印刷装置2のCPU11のレイアウト部11bと実質的に同様の機能を有し、レンダリング部63は、印刷装置2のCPU11のレンダリング部11cと実質的に同様の処理を行う。つまり、上述した実施の形態における印刷装置2の諸機能をプリンタ装置61とレイアウト装置62とレンダリング装置63とにより機能させて、図3から図9の動作フローと実質的に同様の処理を実行することを可能にしたものである。
【0126】
ここで、プリンタ装置61、レイアウト装置62、及びレンダリング装置63について簡単に記載する。プリンタ装置61の入力部61aは、クライアント64から送られてくるデータが複合データ(Multiplexed Data:XHTMLデータとイメージに関するイメージデータが混在したもの)であるか単データ(Plain XHTML:XHTMLデータのみ)であるかを判定する。そして、入力部61aは、複合データ(Multiplexed Data)の場合は、複合データ(Multiplexed Data)をXHTMLデータとイメージデータとに分離し、夫々をバッファ61bに格納する。入力部61aは、レイアウト装置62からイメージデータが要求されるとレイアウト装置62へイメージの寸法情報を含むイメージデータを渡し、レンダリング装置63からイメージデータが要求されるとレンダリング装置63へイメージの出力情報を含むイメージデータを渡す。但し、コンピュータ3からのデータが複合データ(Multiplexed Data)の場合にはバッファ61bに格納されたイメージデータに基づいてレイアウト装置62及びレンダリング装置63の要求に応じる。一方、コンピュータ3からのデータが単データ(Plain XHTML)の場合はXHTMLデータに含まれるURLを利用してサーバ65からイメージデータを取得してレイアウト装置62及びレンダリング装置63の要求に応じる。
【0127】
レイアウト装置62は、プリンタ装置61の入力部61aからのXHTMLデータ、及び入力部61aに要求して入力部61aから取得したイメージデータに含まれるイメージの寸法情報に基づいてテキストやイメージのレイアウトを行い、レイアウトの内容などの情報をもつレイアウトデータ(中間データ)をレンダリング装置63へ出力する。
【0128】
レンダリング装置63は、レイアウト装置62からのレイアウトデータ(中間データ)、及びプリンタ装置61の入力部61aに要求して入力部61aから取得したイメージデータに含まれる出力情報に基づいてテキストやイメージのレンダリングを行い、レンダリングの内容の情報を持つレンダリングデータ(中間データ)をプリンタ装置61の印字部61cへ入力部61aを介して出力する。
【0129】
この場合、クライアント64からの入力データが複合データ(Multiplexed Data)であるか単データ(Plain XHTML)であるかによって処理内容が変るのはプリンタ装置61の入力部61のみであって(図3〜図7参照)、レイアウト装置62とレンダリング装置63の処理内容に変更がない(図8、図9参照)。従って、クライアント64からのデータの形式に変更や追加があってもプリンタ装置61の入力部61aのみ構成を変更すれば足りるので、つまり、レイアウト装置62とレンダリング装置63とは同様のものを使用することができるので、開発コストを低くすることができる。
【0130】
以上本発明の好適な実施の形態について説明したが、本発明は上述の実施の形態に限られるものではなく、特許請求の範囲に記載した限りにおいて様々な設計変更が可能なものである。例えば、入力部(データ授受手段)がレンダリング手段の要求に応じてイメージデータを送出した後、イメージデータを格納する格納手段にイメージデータを削除する旨の削除要求を送出するように構成してもよい。この場合、さらに、格納手段は、削除要求を確認するまではイメージデータを削除しないように構成してもよい。このように構成すれば、必要なイメージデータが削除されることが防がれる。
【0131】
また、複合データ(Multiplexed Data:XHTMLデータとイメージデータが混在するもの)と単データ(Plain XHTML)とが入力される場合であるが、その他のフォーマットのデータであっても適用可能である。
【0132】
さらに、レイアウト手段やレンダリング手段の要求に応じてイメージデータをレイアウト手段やレンダリング手段へ出力して、イメージデータに含まれるイメージの寸法情報やイメージデータに含まれるイメージの出力情報などが不要になった後に、不要になったデータを格納手段から削除することができる構成であればどのような構成であってもよい。
【0133】
さらに、単データ(Plain XHTML)の場合は常にネットワーク上からURLのイメージデータを取得する構成にしているが、ネットワークの使用状況によってネットワーク上から取得したイメージデータを格納手段に格納して、その格納手段により格納したイメージデータを利用してレイアウト手段やレンダリング手段からの要求に応じるような構成にしてもよい。この場合、ネットワークの通信速度が遅いような場合でも出力データを早く作成することが可能になる。
【0134】
さらに、出力処理(図3〜図9)を印刷装置などに実行させるためのプログラムをCD−ROMなどの記録媒体に記録して、CD−ROMに記憶されたそれらのプログラムを使用するようにしてもよい。
【0135】
【発明の効果】
請求項1によると、レイアウト手段及びレンダリング手段は必要な情報をデータ授受手段に要求してデータ授受手段から必要な情報を取得する構成となっており、印刷装置外部から送られてくるデータのフォーマットによってその構成を変更する必要があるのはデータ授受手段のみであるため、印刷装置外部から送られてくるデータのフォーマットに変更又はフォーマットの追加があった場合に、低い開発コストで変更又は追加後のフォーマットに対応することが可能になる。
【0136】
請求項2によると、保持指定及び削除指定に基づいてイメージデータを保持したり削除したりするので、格納手段の格納領域を有効活用することができる。
【0137】
請求項3によると、格納手段のメモリ容量を有効に活用することが可能になる。
【0138】
請求項4によると、イメージデータの出力情報が必要な間に出力情報が格納手段から削除されるようなことが防がれる。
【0139】
請求項5によると、クライアントから送られてくるイメージデータの格納場所からイメージに関するイメージデータを取得して出力データを作成することが可能になる。
【0140】
【0141】
【0142】
【0143】
【図面の簡単な説明】
【図1】 実施の形態におけるネットワークシステムのシステム構成の一例を示す図である。
【図2】 図1の装置の一部の装置構成の一例を示す図である。
【図3】 入力部におけるXHTMLデータ出力処理の動作フローを示すフローチャートである。
【図4】 入力部におけるイメージデータ出力処理の動作フローを示すフローチャートである。
【図5】 入力部におけるイメージデータ出力処理の動作フローを示すフローチャートである。
【図6】 入力部におけるイメージデータ出力処理の動作フローを示すフローチャートである。
【図7】 入力部におけるチャンク読み込み処理の動作フローを示すフローチャートである。
【図8】 レイアウト部におけるレイアウト処理の動作フローを示すフローチャートである。
【図9】 レンダリング部におけるレンダリング処理の動作フローを示すフローチャートである。
【図10】 複合データ(Multiplexed Data)を説明するための説明図である。
【図11】 コンテンツバッファを説明するための説明図である。
【図12】 レイアウト部からレンダリング部へ出力されるレイアウトデータ(中間データ)を説明するための説明図である。
【図13】 他のネットワークシステムのシステム構成の一例を示す図である。
【図14】 従来の印刷装置の装置構成図である。
【図15】 従来のレイアウト部におけるレイアウト処理の動作フローを示すフローチャートである。
【図16】 従来のレンダリング部におけるレンダリング処理の動作フローを示すフローチャートである。
【符号の説明】
1 ネットワークシステム
2 印刷装置
3 コンピュータ
4 ファックス
5 ルータ
6 サーバ
7 LAN
11 CPU
11a 入力部
11b レイアウト部
11c レンダリング部
12 ROM
13 RAM
14 印字部
15 操作パネル
16 NVRAM
17 インターフェース
21 CPU
22 ROM
23 RAM
24 HDD
25 操作部
26 表示部
27 インターフェース
31 CPU
32 ROM
33 RAM
34 HDD
35 インターフェース

Claims (5)

  1. データを格納する格納手段と、
    イメージデータの格納場所を示すデータを含むテキストデータから成る単データ、並びに、イメージデータとテキストデータとの複合データのいずれかを受け取り、前記複合データを受け取った場合には、前記複合データを前記テキストデータと前記イメージデータとに分離し、前記イメージデータを前記格納手段に格納するデータ授受手段と、
    前記データ授受手段から前記テキストデータが入力されるとともに、前記データ授受手段が受信した前記テキストデータ及び前記データ授受手段が受信した前記イメージデータに含まれているイメージの寸法情報に基づいて前記テキストデータに相当するテキスト及び前記イメージデータに相当するイメージをレイアウトしてレイアウトデータを作成するレイアウト手段と、
    前記レイアウト手段が作成した前記レイアウトデータが入力されるとともに、当該レイアウトデータ及び前記データ授受手段が受信した前記イメージデータに含まれているイメージの出力情報に基づいて前記テキスト及び前記イメージをレンダリングしてレンダリングデータを作成するレンダリング手段と、
    前記レンダリング手段から入力されるレンダリングデータを印刷媒体に出力する出力手段と、を1筐体内に備えており、
    前記レイアウト手段は、
    前記イメージデータに含まれている前記イメージの寸法情報を前記データ授受手段に要求して前記データ授受手段から前記イメージの寸法情報を取得し、
    前記レンダリング手段は、
    前記イメージデータに含まれている前記イメージの出力情報を前記データ授受手段に要求して前記データ授受手段から前記イメージの出力情報を取得し、
    前記データ授受手段は、
    前記イメージデータに含まれている前記イメージの寸法情報及び出力情報をそれぞれ要求されると、当該イメージデータが前記複合データに係るものである場合には前記格納手段に格納された前記イメージデータに基づいて、当該イメージデータが前記単データに係るものである場合には当該単データに含まれるデータが示す前記イメージデータの格納場所を参照して、前記イメージの寸法情報及び出力情報を要求元へとそれぞれ受け渡すことを特徴とする印刷装置。
  2. 前記レイアウト手段が、
    前記格納手段が格納している前記イメージデータを保持させる保持指定を前記データ授受手段に行いつつ前記イメージデータに含まれている前記イメージの寸法情報を前記データ授受手段に要求し、
    前記レンダリング手段が、
    前記格納手段が格納している前記イメージデータを削除させる削除指定を前記データ授受手段に行いつつ前記イメージデータに含まれている前記イメージの出力情報を前記データ授受手段に要求し、
    前記データ授受手段が、
    前記イメージデータに含まれている前記イメージの寸法情報及び出力情報をそれぞれ要求されると、当該イメージデータが前記複合データに係るものであり且つ要求元から前記削除指定が送られた場合には、前記イメージの寸法情報及び出力情報を要求元へとそれぞれ受け渡した後に前記格納手段が格納している前記イメージデータを削除し、当該イメージデータが前記複合データに係るものであり且つ要求元から前記保持指定が送られた場合には、前記格納手段が格納している前記イメージデータを保持することを特徴とする請求項1に記載の印刷装置。
  3. 前記データ授受手段は、前記レンダリング手段から前記イメージの出力情報を要求された場合、前記格納手段に格納された前記イメージデータに基づいて前記要求に応じた後、当該イメージデータの出力情報を前記格納手段から削除する旨の削除要求を当該格納手段に送出することを特徴とする請求項2に記載の印刷装置。
  4. 前記格納手段は、前記データ授受手段が前記レンダリング手段の要求に応じた後に送出する削除要求を確認するまでは、前記イメージデータの出力情報を削除しないことを特徴とする請求項3に記載の印刷装置。
  5. 前記データ授受手段は、前記テキストデータ及び前記イメージデータのネットワーク上の格納場所を示す場所データを含むデータを受け取り、前記レイアウト手段及び前記レンダリング手段からの要求があると前記場所データに基づいて前記格納場所から前記イメージデータを取得し、取得した前記イメージデータに基づいて前記要求に応じることを特徴とする請求項1に記載の印刷装置。
JP2002174089A 2002-06-14 2002-06-14 印刷装置 Expired - Fee Related JP3997846B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2002174089A JP3997846B2 (ja) 2002-06-14 2002-06-14 印刷装置
US10/461,442 US7508539B2 (en) 2002-06-14 2003-06-16 Image forming device, layouter, and renderer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002174089A JP3997846B2 (ja) 2002-06-14 2002-06-14 印刷装置

Publications (2)

Publication Number Publication Date
JP2004017418A JP2004017418A (ja) 2004-01-22
JP3997846B2 true JP3997846B2 (ja) 2007-10-24

Family

ID=29727948

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002174089A Expired - Fee Related JP3997846B2 (ja) 2002-06-14 2002-06-14 印刷装置

Country Status (2)

Country Link
US (1) US7508539B2 (ja)
JP (1) JP3997846B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7159005B1 (en) * 1998-10-16 2007-01-02 International Business Machines Corporation Methods, systems and computer program products for restartable multiplexed file transfers
JP3997846B2 (ja) 2002-06-14 2007-10-24 ブラザー工業株式会社 印刷装置
KR20060013883A (ko) * 2004-08-09 2006-02-14 삼성전자주식회사 이미지 데이터와 텍스트 데이터를 출력하는 시스템 및 방법
US20080141112A1 (en) * 2004-10-27 2008-06-12 Jumpei Aoki Document Processing Device and Document Processing Method
KR100657324B1 (ko) * 2005-07-04 2006-12-14 삼성전자주식회사 XHTML-Print 데이터를 이용한 화상형성방법 및시스템
KR100823264B1 (ko) * 2006-04-13 2008-04-17 삼성전자주식회사 모바일 디바이스에서 파노라마 이미지의 인쇄를 요청하는방법 및 장치
US8111419B2 (en) * 2006-09-29 2012-02-07 Brother Kogyo Kabushiki Kaisha Rasterizing device for DL object management
JP4918904B2 (ja) * 2007-10-01 2012-04-18 ブラザー工業株式会社 印刷データ生成装置とコンピュータプログラム
US8578268B2 (en) * 2010-12-30 2013-11-05 Konica Minolta Laboratory U.S.A., Inc. Rendering electronic documents having linked textboxes
US9105108B2 (en) * 2012-10-30 2015-08-11 Eastman Kodak Company System for making a panoramic print

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5159465A (en) * 1987-10-09 1992-10-27 Ricoh Company, Ltd. Facsimile machine having a transmission speed selective shiftdown function
EP0518069B1 (en) * 1991-05-14 1999-08-11 Canon Kabushiki Kaisha Image reproducing system
JP3053576B2 (ja) * 1996-08-07 2000-06-19 オリンパス光学工業株式会社 コードイメージデータ出力装置及び出力方法
JP3444269B2 (ja) * 2000-05-19 2003-09-08 セイコーエプソン株式会社 ネットワーク上のコンテンツを編集して印刷するネットワークプリンタ及びネットワーク上のコンテンツ印刷方法
JP4590080B2 (ja) 2000-09-12 2010-12-01 キヤノン株式会社 プリンタシステム及びその制御方法
WO2002041107A2 (en) * 2000-11-20 2002-05-23 Flexiworld Technologies, Inc. Systems and methods for mobile and pervasive output
US20030002072A1 (en) * 2001-06-29 2003-01-02 Berkema Alan C. Print by reference communication methods for portable wireless device printing
US6623190B1 (en) * 2002-05-03 2003-09-23 Hewlett-Packard Development Company, L.P. Methods and apparatus for managing a print job among a processor, an image producing device, and an external storage device
JP3997846B2 (ja) 2002-06-14 2007-10-24 ブラザー工業株式会社 印刷装置

Also Published As

Publication number Publication date
US20030231346A1 (en) 2003-12-18
JP2004017418A (ja) 2004-01-22
US7508539B2 (en) 2009-03-24

Similar Documents

Publication Publication Date Title
CN100412827C (zh) 打印***
US8015318B2 (en) Electronic file processor, electronic file processing program recording medium, and electronic file processing method
US20090015864A1 (en) Image-processing apparatus and image-processing method
US8045198B2 (en) System and method for processing a change history of a PDF file
JP3997846B2 (ja) 印刷装置
JP3783665B2 (ja) 画像形成装置及びネットワークシステム
JP4154316B2 (ja) 画像処理システム、制御方法、画像処理装置、プログラムおよび記憶媒体
JP4109938B2 (ja) 情報処理装置及びその制御方法並びにプログラム
JP2000089923A (ja) 印刷制御装置及び印刷制御方法
JP2008035224A (ja) ログ情報管理システム、ログ情報管理装置、ログ情報管理方法、ログ情報管理プログラム及び記憶媒体
JP2007081955A (ja) 情報処理装置及び方法、並びにプログラム
JP4434925B2 (ja) 情報処理方法、情報処理装置、プログラム及び記憶媒体
JP2014057162A (ja) 画像形成装置、画像形成装置の制御方法、及び画像形成装置の制御プログラム
JP2006244263A (ja) 印刷システム、情報処理装置、印刷方法および情報処理プログラム
JP2010176465A (ja) ジョブ制御装置
JP4471349B2 (ja) 画像処理方法、画像処理装置、プログラム及び記憶媒体
US8023146B2 (en) Print control device, information processing device, method of print control device, method of information processing device and computer program
JP4311101B2 (ja) 画像形成装置及び該装置の構成情報提供方法並びにプログラム
JP2002091716A (ja) 印刷制御装置および印刷制御方法
JP3919345B2 (ja) 画像処理装置、画像データ処理方法および記憶媒体
JP6381190B2 (ja) クライアント装置、システム、情報処理方法及びプログラム
JP2006127549A (ja) 印刷システム、印刷装置、サーバ装置、プログラム、及び記録媒体
JP2024063454A (ja) 情報処理装置、情報処理装置の制御方法、情報処理システム、およびプログラム
JP2006331435A (ja) データ処理方法、データ処理装置および記憶媒体
JP2002007217A (ja) ファイル管理方法、ファイル管理装置、ファイルおよび記録媒体

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060301

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060704

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070605

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070622

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070730

R150 Certificate of patent or registration of utility model

Ref document number: 3997846

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100817

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100817

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110817

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120817

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120817

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130817

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees