(57)【要約】【課題】  ユーザに印刷結果を事前に提示するための「印刷プレビュー画像」を正確かつ効率的に生成すること。【解決手段】  まず、XML系言語で表現した原稿をインターネット経由して取得する。次に、該データを解析し、論理ページ上でのオブジェクト配置を表現するオリジナルデータを得る。さらに、該オリジナルデータに印刷仕様を適用し、実際の印刷媒体上のページ配置となるように再編集する。さらに、該編集結果とそれに付随するフォントや画像情報を中間データ群として保持する。さらに、該中間データを入力とし、表示デバイスにとって最適な解像度で画像を形成し、表示する。必要なら、該印刷仕様を再設定し、その適用結果を表示し、確認する。その後、印刷指示があれば、最終の中間データ群に基づき、印刷用データを印字バンド毎に生成し、それを媒体上に逐次印刷する。【選択図】  図１
2008188913.tif 000002
【特許請求の範囲】
【請求項１】
プレビューの要求を入力する手段、該要求に応答して、プレビューの対象となる原稿を入力する手段、該原稿を解析して描画コマンドの集合に変換する手段、該コマンドの集合と、それに付随するフォント情報および添付画像データを「中間データ群」として一時保存する手段、該中間データ群を表示装置と印刷装置間で共用する手段とを備えることを特徴とする、印刷および印刷事前表示装置。
【請求項２】
請求項１の装置であって、印刷出力様態を「指示」する手段、印刷装置固有の「機能」を取得する手段、該指示と該機能との調停により、「印刷仕様」を決定する手段、該印刷仕様を該中間データ群に適用する中間データ編集手段、該編集手段の結果を表示、並びに印刷する手段とを有することを特徴とする、印刷および印刷事前表示装置。
【請求項３】
請求項１の装置であって、該描画コマンドのパラメータには、固定的な予約値を含むことを特徴とする、印刷および印刷事前表示装置。
【請求項４】
請求項１の装置であって、該描画コマンドには、表現の抽象度に複数の階層を含み、それらの組み合わせによるマクロ機能を有していることを特徴とする、印刷および印刷事前表示装置。
【請求項５】
請求項２の装置であって、該中間データの編集は印刷装置が行うことを特徴とする、印刷および印刷事前表示装置。
【請求項６】
請求項２の装置であって、該中間データの編集は表示装置が行うことを特徴とする、印刷および印刷事前表示装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷結果を事前に提示するための「印刷プレビュー画像」を効率的に生成すること、およびその表示に関するもので、特にXML系言語で表現したる原稿の処理に関わる。
【背景技術】
【０００２】
印刷に適用するXML系言語は、レイアウトが厳密には規定されない表現形式であるため、各実装間でレイアウトの一意性が完全には保てない。それ故、この形式を直接の入力とする印刷装置に対するプレビューの要望が切実である。一方、表示データの作成は、印刷用のそれと比較して、はるかに処理負荷が軽い。これは、要求される解像度や画像サイズの違いに起因する。さて、本発明で適用する、オブジェクトを表現する描画コマンド群は、ライン・ボックス・円弧の各表現を含むコマンドの集合である。この形式には、画像形成時の解像度や画サイズの設定に自由度がある。また、座標変換を用いてページのレイアウト変更が容易で、その加工性はraster-only formatであるPNGやJPEGに比較して格段に高い。一方、デジタルテレビジョンの機能・装備の高度化が進み、描画コマンドを処理するためのレンダリングエンジンが搭載されるようになった結果、このようなコマンドの適用に利便性が一層高まった。
【０００３】
特開平8-30410号および特開2000-112691号では、印刷テータを作成しプレビューが要求されたときはそのデータを例えばドットイメージデータに変換して要求元に送付するとしている。
【０００４】
特開2000-339123号では、中間データに基づき印刷を行うにおいてレイアウト印刷(簡略印刷)時は文字データの展開を行わずその領域を矩形図形で置き換えて出力し、本印が指示された場合は該中間データから印刷データを作成するとしている。
【０００５】
特開2003-54066号では、印刷用画像を予め算出したスケール比で変換し、プレビュー画像として表示デバイスに転送する。すなわち、いったん印刷用画像を形成した後に、その画像を再加工してプレビュー画像を作成するとしている。
【０００６】
特開2004-164169号では、プレビュー用の画像は、印刷装置内で印刷用のそれとは独立した処理手順により、個別に形成としている。
【０００７】
一方、プレビューを目的とする構成ではないが、ページ記述言語で表現された原稿を印刷する場合、一旦プリンタ内部で中間データを作成して保持した後、ラスターデータを形成する処理系の提案が幾つかある。
【０００８】
例えば、特開2002-91726号では、XHTML形式で記述された原稿を入力とし、印刷仕様を加味しつつSVG形式に変換したる後、印刷画像を生成するとし、XHTMLをSVGへ変換する時点で印刷仕様であるメディアの大きさや方向等が参照されるとしている。
【０００９】
同様に、特開11-143654号では、保持しているオブジェクトの一部だけ修正することにより、データの全体に影響を与えることなく、一部異なる印刷結果を短時間に得ることができるとしている。また、前記修正はページデータの印刷媒体への再配置が目的ではなく、文字列や図形の色属性の一部を変更しながら、繰り返し印字することによって、それぞれ違った印字結果を得るのものである。すなわち、オブジェクトを修正する毎にラスターデータも形成する。
【００１０】
同様に、特開平11-327822号では、中間データとラスターデータのファイルの大きさを比較して小さい方の形式で一時保存するとしている。
【００１１】
同様に、特開平2000-311071号では、ページ記述形式のまま保存するか、中間言語に翻訳して保存するか、ライスターイメージを生成後保存するかを、ユーザが指定した優先条件により選択する。条件とは、印字速度並びにファイルの容量である。
【００１２】
同様に、特開平2000-168166号では、ページ記述言語の種類が違っていても共通の形式である中間言語に翻訳して一時保存すれば、その後、単一の印字アプリケーションにより一括した管理と印字ができるとしている。
【特許文献１】特開平8-30410号公報
【特許文献２】特開2000-112691号公報
【特許文献３】特開2000-339123号公報
【特許文献４】特開2003-54066号公報
【特許文献５】特開2004-164169号公報
【特許文献６】特開2002-91726号公報
【特許文献７】特開11-143654号公報
【特許文献８】特開平11-327822号公報
【特許文献９】特開平2000-311071号公報
【特許文献１０】特開平2000-168166号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
しかしながら、前記の先行例では、印刷装置がプレビューのためだけに印刷イメージデータすなわち最終画像を作成し、そのデータを表示に利用するので処理効率がはなはだ悪い。また、実用的な処理速度を得るには装置に大きな処理能力やメモリ資源が必要である。
【００１４】
一方、インクジットプリンタの如き処理資源の限られたでは装置においては、印刷イメージ、即ち最終のビットマップデータの生成はページの単位ではなく、ページを複数の領域に分割して成る、バンドを単位としている。ところが、印刷プレビュー本来の目的を考慮すると、表示の単位はあくまでページ単位でなくてはならない。以上の理由により、前記先行例を一般家庭機器へ適用することは現実的でない。
【００１５】
また、前記先行例の場合、該印刷用データを再加工してプレビュー用の画像を得る方式の場合、個々の表示装置に固有のパラメータ、例えば画像サイズ、解像度、データ圧縮形式等の表示パラメータに配慮する必要がある。このような場合、プリンタとプレビュー装置が個別に存在することを考慮すると、何らかのプロトコルを定義し、データの受け渡しが必要で、装置が煩雑化する。
【００１６】
さらに、別の先行例の場合、印刷データ作成機構とは独立したプレビューデータ作成部を設けている。すなわち、予め設定されたプレビュー専用の画サイズ・解像度を適用するとしている。この方式では処理が冗長でプログラム資源の利用効率が悪い。
【００１７】
またさらに、上記先行例では、印刷仕様を変更してプレビューを再度実行するには、最初から印刷データ、すなわちビットマップを作り直す必要があり、はなはだ効率が悪い。
【課題を解決するための手段】
【００１８】
本発明はかかる課題を鑑みてなされたものであり、
本発明の装置は、XML系原稿を解析して得られたレイアウトデータを「印刷仕様」に基づき再編集し、それに付随する印刷制御属性値とフォント情報および貼り付け画像を含めた「中間データ」として一時保存する。ここで、該データを印刷装置とプレビュー装置間で共有する。
【００１９】
また、本発明の装置では、原稿入力から印刷までの処理を前段と後段に分割して構成している。すなわち、原稿データを解析し、描画コマンド群によるレイアウト表現が完成するまでを前段とし、該描画コマンドをレンダリングし、ページをバンドに分割し、最後にビットマップデータを得て印字する過程を後段とする。
【００２０】
ここで、プレビューの指示があれば、前段の処理に加えて該中間データを表示デバイスに最適な形式に変換して利用する。一方、印刷の指示があれば、後段の処理を継続する。すなわち、該中間データの処理を継続し、印刷データを得る。
【００２１】
そこで、本発明の装置によれば、印刷仕様の変更時におけるプレビューの再実行を容易にする。すなわち、印刷媒体上の再配置など、新たな印刷仕様を適用するには、描画コマンド群の再編集手段により容易に実現できる。これは、ビットマップ等のラスターデータを加工するのに比べて、描画コマンド群の操作効率が格段に高いことによる。
【００２２】
さらに、本発明の装置によれば、プレビューだけのために1ページ分の印刷用のページメモリを確保して画像を形成する必要がないためメモリー資源が節約できる。また、プレビュー装置は描画コマンド群を入力として、該装置固有にとって最適な解像度で画像を形成できる。
【００２３】
また、本発明の装置によれば、ユーザの指定するページレイアウト、用紙サイズや印刷解像度と、印刷装置の性能や実際に給紙されている印刷媒体の様態等を比較し、双方が満足する組み合わせを見出し、その結果を「印刷仕様」とすることにより、より正確なプレビュー装置が構成できる。実施例の場合、印刷仕様の優先順はプリンタエンジの最新の様態、機器固有の仕様、ユーザの指定、コンテンツのスタイル記述の順である。
【００２４】
また、本発明では、レイアウトの表現形式として、XHTML/CSSにおけるイメージングモデルに最適な「描画コマンド」を考案した。
【００２５】
この描画コマンドは、ライン・ボックス・円弧を表現するもので、オブジェクトの拡大・縮小・座標変換・バンド分割処理が簡便である。また、SVG(scalable vector graphics) command表現にも変換が容易である。ここで、ある形状を表現するためのコマンドコードをオブジェクトと表現する。
【００２６】
また、描画コマンドの複数分の働きをするマクロ表現を適用することにより、階層的なオブジェクト表現、即ち、最適な抽象度レベルを適時選択できるので、ファイルサイズの低減と処理モジュールの最適化が図られる。
【００２７】
また、本発明の装置によれば、XHTML/CSSにおけるフォーム要素を「定型」としている。すなわち、それを描画するコマンドパラメータの一部あるいは全てを固定にしている。具体的には、ラジオボタン、チェックマーク、スクロールバ、スライダ等、フォーム要素を構成するグラフィク部品の該パラメータを装置に登録し、あるいは事前に定めた該パラメータを暗黙的に適用し、並びにそれらを表示と印字処理に共用することにより、表示と印字の一意性に優れたプレビュー機能が効率的に実現可能である。
【００２８】
また、本発明の装置によれば、XML文章を解析してレイアウトデータを生成するパース&レイアウトモジュールとそのデータを入力するレンダリングモジュール間において、フォント情報を照会するフォント情報インタフェス手段と、描画を指示する描画コマンドインタフェス手段とにより、パース&レイアウト部がレンダリング部からの独立した構成が可能となり、全体の処理効率が向上する利点がある。
【００２９】
ここで、パース&レイアウトモジュールからの出力において同じ文字種が連続した場合は、それらの文字に関わるアンダライン情報をまとめて付加する手段により、処理速度・メモリ使用効率が向上する。
【００３０】
また、前記情報を交換するためのメッセージキュは、要求とその応答の２つの独立した手段により、複数ページの印刷でレンダリングエンジンがページレンダリング・印刷出力を行っている場合も、パーサが次ページのレイアウトでフォントメッセージを送受信できる。
【００３１】
また、本発明の装置によれば、パース&レイアウトのソフトウエアモジュールは、出力する描画コマンド群は論理ページ上に配置するので機器固有の仕様要件に依存しない。ゆえに、後段処理において、レンダリングエンジンは論理ページ上の配置データを入力として、主体的に適時ハンド分割手法を適用しつつ描画コマンドを処理が可能となり、装置を構成する自由度が高い。
【００３２】
また、印字の単位であるバンドの分割数（＝ハンドの幅）の変動によってもパーサのレイアウトモジュールの働きに影響を与えない。
【００３３】
特に、landscapeやportraitによってバンドの区切る方向を変更する場合、あるいは原稿が指定したレイアウト方向（orientation）と印刷仕様の方向（orientation）が一致しな場合、例えば、NumberUpなどの様々なレイアウト指示がある場合にもレンダリングモジュール内部で操作が可能であるので、上流工程であるレイアウトモジュールでの再処理を要しない。
【００３４】
またさらに、本発明の装置におけるパース&レイアウトモジュールとレンダリングモジュール間において、描画コマンドはそれ自体を、ファイルとして受け渡しする手段、および保存する手段、並びに共用する手段とにより、外部機器との連携、並びに、動作の検証も容易である。
【発明の効果】
【００３５】
本発明の装置によれば、印刷仕様の変更時におけるプレビューの再実行を容易にする。すなわち、印刷媒体上の再配置など、新たな印刷仕様を適用するには、描画コマンド群の再編集手段により容易に実現できる。これは、ビットマップ等のラスターデータを加工するのに比べて、描画コマンド群の操作効率が格段に高いことによる。
【００３６】
さらに、本発明の装置によれば、プレビューだけのために1ページ分の印刷用のページメモリを確保して画像を形成する必要がないためメモリー資源が節約できる。また、プレビュー装置は描画コマンド群を入力として、該装置固有にとって最適な解像度で画像を形成できる。
【００３７】
また、本発明の装置によれば、ユーザの指定するページレイアウト、用紙サイズや印刷解像度と、印刷装置の性能や実際に給紙されている印刷媒体の様態等を比較し、双方が満足する組み合わせを見出し、その結果を「印刷仕様」とすることにより、より正確なプレビュー装置が構成できる。実施例の場合、印刷仕様の優先順はプリンタエンジの最新の様態、機器固有の仕様、ユーザの指定、コンテンツのスタイル記述の順である。
【発明を実施するための最良の形態】
【００３８】
W3C(World Wide Web Consortium)が推奨しているXHTML1.1TM(eXtensible Hyper Text Markup Language)、CSS2.0TM(Ｃａｓｃａｄｉｎｇ Style Sheet 2.0)およびSVG1.1TM(Scalable Vector Graphics)に関する仕様書を本稿と共に読むと、本発明の広い範囲を理解する上で役に立つ。以下、本発明に係る実施形態について、図並びに表に一致対応して、本発明の実施例に基づき、次の順序で詳細に説明する。
【００３９】
A[第1実施例]
(A1)装置の概要
(A2)構成と機能
(A3)印刷処理
(A4)印刷原稿
(A5)印刷手順
(A6)レンダリングインタフェス
(A7)フォント情報インタフェス
(A8)描画コマンドインタフェス
(A9)描画コマンドの機能
B[第2実施例]
(B1) 構成と機能
A[第1実施例]
(A1) 装置の概要
本発明の「印刷装置」は、デジタル放送機器からの起動により有線または無線の接続形態を経由して取得したコンテンツを解釈し印刷データに変換するプリンタコントローラ、並びに前印刷データに基づきメディア上に画像を形成するプリンタエンジンを含む。ここで、プリンタコントローラの実体は、CPU、主記憶装置、補助記憶装置およびインタフェスを含む、シングルボードコンピュータで、例えばリナックスOSの制御下で動作する。
【００４０】
本発明の「事前表示装置」とは、印刷に先行して内容確認のため、その内容を事前に表示するものである。なお、本実施例における「印刷プレビュー装置」はDigital TV Tunerとその表示器であるが、これに限らず、標準のパソコンや携帯端末であっても、同様の効果が期待できる。
【００４１】
図1は、装置全体を代表する図で、構成図とフローチャートで処理の概要を示している。ここで、Digital TV Setから印刷要求仕様を含む印刷プレビューの要求があれば、Home Printerは、Markup原稿を、インターネットを経由して取得する。次に、該データを描画コマンドの集合に変換しオリジナルとして保存する。さらに、該描画コマンド群に印刷仕、例えばn-up、を適用し実際の印刷媒体上の配置となるように再編集する。またさらに、該編集結果にフォント情報と添付画像を含ませ「中間データ群」とし、そのデータをDigital TV Setとプリンタ間で共有する。Digital TV Setのレンダリングチップとその操作アプリケーションは、該データに基づき、そのデバイスに最適な解像度とサイズで画像を形成し、印刷プレビューとして表示する。必要なら、ユーザは印刷仕様の再設定とその結果であるプレビューを行う。その後、印刷指示があれば、印刷装置は該データ群を基に印刷用データをバンド毎に生成し、それを媒体に逐次印刷する。
【００４２】
(A2) 構成と機能
図2は印刷装置の構成を示す図で、0108は、UPnP接続規格で言うところのControl Pointである。これは、印刷を起動するデバイスで、例えばデジタルテレビのチューナである。Control Point 0108は、コンテンツそのものをプリンタに送付するPrintFile動作と、コンテンツが存在するアドレスを印字装置に通知し、印字装置はそのアドレス先に存在するコンテンツを取得して印刷する、PrintURI動作が可能である。
【００４３】
0114は、ネットワークインタフェス部である。UPnP方式によりControl Pointと通信する。また外部ウエブサーバ 0101からhttp 0105を経由して、コンテンツを受信バッファ0104に一旦蓄え、後にCash 0102に記憶される。ここで、Cashは、印刷ジョブに関わるコンテンツ、画像データ、コンテンツのレイアウト結果、およびそこで使用するフォントの情報を一時的に蓄える。また、データをプレビュー装置と共用する。
【００４４】
レイアウト部0119の出力である描画コマンド群は、キャシュ0102に一旦保存される。その後、レイアウト編集部0103の働きにより、論理的ページ上の配置データの集合を、印刷仕様を適用した実際のメディア上のレイアウト情報に作り直す。即ち、論理ページ上の配置データを、実際の印字媒体上の配置仕様、例えばn-up/orientationなどに対応したレイアウトに変換してCashに再保存する。印刷プレビューが求められていたのであれば、そのままで処理は中断する。一方、印刷の指示があればレンダリング部0121を再起動して印刷処理を継続する。バンディング処理部0122においては、給紙方向landscapeやportraitの指定によっては、バンドの区切る方向を変え必要がある。ここで再編集とは配置オブジェクトの回転、スケール変換を含む座標変換である。
【００４５】
Interface Manager 1007は、印刷装置に装備するソフトウエアモジュール間の相互の働きを調停し、装置全体を統括して制御するものである。
【００４６】
スプーラ 0118は、Control Point 0108が生成した印刷ジョブを一時的に蓄えるものである。
【００４７】
スプールされた印刷ジョブは順次スプーラから取り出され、パース&レイアウト部0119を経て、レンダリング部0121およびバンディング部0122の働きにより印刷データが形成される。本実施例では、パース&レイアウト部0119の独立性を確保するためのレンダリングインタフェス0120を定義している。
【００４８】
Font 0123は、フォント配置と実体のデータファイルでテキストの配置とレンダリング部に用いる。
【００４９】
Buffer 0124は、書き込と読み出の機能が対補的にスイッチする２系列のメモリから構成され、エンジンインタフェス0117 を経由したプリンタエンジン0111へ供給するデータ群を、一時的に蓄えるものである。とくにシリアル方式のインクジットプリンタの機械的動作とデータ変換及び転送処理との同期を確保する働きがある。
【００５０】
Command 0110とStatus 0112は、Control Pointがプリンタエンジンの動作状態をモニタし、また定数や紙種の情報を読み出し、動作を設定するための信号である。
【００５１】
図3は、表示装置の構成を示す図である。ここで、表示部0125と表示制御部0108から成る。表示制御部はさらに、UPnPインタフェス制御部0132と描画コマンド記憶部0102、および表示データを作成するレンダリングエンジンからなる。ここで描画コマンド記憶部0102は印刷装置内に設けたデータキャシュ部と共用する。
【００５２】
図4は、階層的に表現したControl Pointである、デジタルテレビチューナ0108のソフトウエアモジュールの構成図である。ここで、Hardware基盤部0201はCPUを始めとしたMemory、チューナ・フロントエンド処理およびInterface制御用デバイス群からなり、装置全体の制御用ロジックを集積したLSI chipセットを含む。device driver部0202は、システの外部デバイスを駆動する物理層を制御する。Operating System部0203は、LinuxOSのカーネル、ライブラリから構成されるソフト群である。Device driverはインタフェスのリンク層・下位プロトコルを制御する。Kernelはタスクの制御、タスク間通信、資源の管理を行う。Libraryはファイルシステムやインタフェスの上位プロトコルを制御するモジュールの集合である。Middle Ware部0204は、テレビチューナに必須のアプリケーションで、ブラウザ（表示プログラム）など常駐ソフト群から成る。ここでは、BMLやHTMLの他、プレビューのための印刷装置と共通するデータ形式として、標準の描画コマンド表現、具体的にはSVG形式を解釈処理できる。Application部0205はユーザインタフェスの中心で、印刷装置の動作状態を表示したり、印刷動作を起動したり、印刷プレビューを行うソフトモジュール群である。
【００５３】
図5は、プリンタコントローラの機能のうちネットワークインタフェスを除き、主要処理内容をstep1からstep13までフローチャートで説明した図である。ここで、Step4〜9を、実施例では特にパース処理と称している。
【００５４】
図6は、プリンタコントローラの機能のうちネットワークインタフェスを除く主要処理内容をソフトモジュール別に説明した図である。ここで、図5における各Step1〜13が図6における処理内容（１）〜（１３）にそれぞれ対応している。
【００５５】
(A3) 印刷処理
UPnPにおけるPrintEnhanced:1のinterface仕様に基づき、印刷装置はControl Point(以降はCPと略記)が指定したURLから、httpによりXHTML/CSS形式のdocumentおよびimageデータを取得し、parse・layout部により、当該データを描画コマンドの集合である「論理配置データ」に変換する。
【００５６】
印刷装置は、論理配置データを、CPの指示およびPrintEngineのステータス情報に基づき、「印刷配置データ」に変換し、付随するフォント情報と共に一時記憶する。
【００５７】
CPは、印刷配置データおよび付随するフォント情報をコントローラから取得し、描画コマンドのアプリケーションを作動し、印刷結果を事前に表示し、ユーザに確認を求める。
【００５８】
印刷装置はCPから印刷の指示があれば、当該保持データを印字バンドに分割し、rendering/imaging部の働きでPrintEngineの仕様に適合するよう、データを変換する。
【００５９】
ここで、PrintFileの基本動作を説明する。まず、コンテンツは放送波を経由してCPに到達する。CPの操作者が印刷を指定すると、印刷ジョブは印刷装置にスプールされると共に、コンタンツファイルは通常、画像や本文等の複数のサブファイルに分離された状態でCashに蓄えられる。該蓄えられたデータはパース＆レイアウト処理に渡され、次にレンダリング、バンディング処理を経由して最終的に印刷データとなり印刷される。
【００６０】
さらに、PrintURIの基本動作を説明する。コンテンツのアドレスが放送波を経由してCPに到達する。CPの操作者が印刷を指定すると、コンテンツファイルは印刷装置の働きによりWebから取得され、該蓄えられたデータはパース＆レイアウト処理に渡され、次にレンダリング、バンディング処理を経由して最終的に印刷データとなり印刷される。
【００６１】
(A4) 印刷原稿
図7〜8は、本装置におけるコンテンツの構成図である。図7のように各々が独立したファイルとして存在する個別ファイル形式、または図8のように複数ファイルを１つのファイルとしてエンコーディングした一括モジュール形式の２通りが存在する。なお、格納場所が記されたコンテンツのURIが入力された場合は、Interfaceの働きにより図7〜8いずれかの形式のコンテンツ・データを事前に取得し、Parse処理部に入力する。
【００６２】
Documentは印刷する内容を含む「本文」であり、XML系言語で記述されている。Stylesは配置や形に関する修飾表現を含みstyle表記言語で記述されている。Imagesは画像データである。なお、StylesとImagesは任意のファイル数で構成される。
【００６３】
本実施例での一括モジュール形式は、MIMEエンコードのMultipart/mixedによるパッケージングの形態をとり、DocumentはXHTML、StylesはCascading Style Sheets、ImagesにはJPEG/PNG/ GIF形式の圧縮画像を適用する。また、一括モジュール入力であっても、実際は初期化モジュールの働きより、複数の個別ファイル形式に一括変換されるため、以降は後者の形式を前提に記述する。
【００６４】
(A5) 印刷手順
図9は、パース処理の概要で、インタフェスから引き渡されたコンテンツ・データの解析処理を表す。すなわち、前コンテンツ・データのXML系言語で記述されたドキュメントを解析して要素毎にタグ構造体に格納し、ドキュメントの構造を格納した多分岐リストである要素ツリーを構築する。また、ここでは、前コンテンツ・データのstyle表記言語で記述されたスタイルシートを解析してスタイル構造体を形成し、前記要素ツリーのノードであるタグ構造体と関連づける。要素ツリーをルート要素から辿り、親要素から子要素へのスタイルの継承処理を行い、要素ツリーを完成する。完成した要素ツリーは後述のLayout処理に引き渡され、印刷オブジェクトの配置を開始する。
【００６５】
図10は、レイアウト処理の概要で、生成した全要素ツリーから、ページ毎に分割されたレイアウト情報を作成する。即ち、全要素ツリーのルート要素から順にツリーを辿り、処理の対象であるページにおける印刷オブジェクトの位置を計算し、配置データとしてのレイアウト構造体を作成する。処理の途中でページ内に配置できなかった要素があるときや、スタイルにより改ページが指示された場合は、改ページ処理を行い、新たにページ要素ツリーを作成していく。ドキュメントの本文であるテキストの配置を行う際にはフォント情報を呼び出し、文字の大きさなどを取得して１文字ずつの配置データを作成していく。
【００６６】
図11は、レンダリング処理の概要を示す図で、印刷オブジェクトにはjpeg形式などの画像データとドキュメントの本文であるテキストを含む。前画像データはエンコーディングの形式に合わせてデコード処理し、ビットマップに展開する。展開されたビットマップをレイアウト構造体の配置データに従ってサイズ調整などを行い、印刷可能な状態に加工する。前テキストでは、テキストの１文字ずつについてビットマップを生成する。１文字分のビットマップはスタイル構造体のフォント情報を用いてフォントデータの実体を読み出し、生成する。
【００６７】
図12は、バンディング処理の概要を示す図で、1ページを一括処理するとメモリ資源や処理の効率が悪いので、ページを適当な幅（例えば1インチ）に分割して処理する。ここでは、分割したバンドを単位として、media上の配置データ、フォントおよびイメージデータを適用し、まずはRGB各8bit構成のビットマップデータを作成する。さらに、プリントエンジンが受け取れるデータ形式に変換する。実施例におけるインクジット印刷方式では、色空間の変換・色合わせ（カラーマッチング）・2値化処理を経て、YMCKのラスターデータを得て、最終的には、印刷コマンドでパックして、プリントエンジンに送り込む。
【００６８】
ここで、パース並びにレイアウト処理はプリントエンジンの仕様に依存しないが、レンダリング以降の処理はプリンタ固有の仕様に依存する。たとえば、メディアの大きさや解像度などの印刷仕様、またはメディア上のページ配置に関するユーザによる指定などさまざまな要因に依存する。
【００６９】
(A6) レンダリングインタフェス
図13〜16は、レンダリングインタフェスを説明する図である。レンダリングインタフェスは図2におけるインタフェス0120であり、以下に説明するように2つのインタフェスを含む。すなわち、図13に示すように、要素配置中に文字配置で必要となるフォント情報をレンダリングエンジンからパーサに受け渡す「フォント情報インタフェス」と、図16に示すように、Job制御情報や構文解析・要素配置の結果により得られたレイアウト情報を、パーサからレンダリングエンジンに受け渡す「描画コマンドインタフェス」である。ここで、レンダリングエンジンは、該描画コマンドストリームの区切りで発せられるのパーサからの要求によって処理を開始する。
【００７０】
実施例では、レンダリングインタフェスにおける情報の交換にLinux OSの機構を適用した。すなわち、パーサとレンダリングエンジン間に用いるインタフェスは、メッセージを送受信することで指令と応答を行う２つのメッセージキュを適用する。すなわち、フォント情報の要求と応答に対応するメッセージキュと、ドキュメント描画の指令と応答に対応するメッセージキュである。
【００７１】
前者のフォントメッセージキュのkeyは'XPFT' 、後者の描画メッセージキュのkeyは 'XPDW'とする固有のメッセージキュを使用し、それぞれのキューに対応したメッセージを送受信する。ここで、keyとはメッセージキュの識別子である。実施例の場合 'XPFT' では 0x58504654、'XPDW' では0x58504457が値である。
【００７２】
各メッセージキュのメッセージタイプは、パーサからレンダリングエンジンへの要求送信では '1' を使用し、レンダリングエンジンからパーサへの応答送信では '2' を使用する。メッセージタイプに続く各メッセージの１バイト目はメッセージIDである。
【００７３】
(A7) フォント情報インタフェス
フォントメッセージキュで送受信するメッセージには、「フォント位置情報」と「アンダライン情報」の２種類を含む。パース&レイアウト部(以降パーサと略記)がフォントメトリクス情報を要求すると、レンダリングエンジンは位置情報で応答する。同様に、パーサがアンダライン情報を要求すると、レンダリングエンジンはアンダライン情報で応答する。
【００７４】
パーサはstart_documentから始まりend_documentで終わる、複数ページで構成される、１ドキュメント分の描画コマンド列を出力する。レンダリングエンジンはend_documentが出現するまで描画コマンドを入力し、ページのレンダリングと印刷処理を行う。
【００７５】
図３７〜図３９は、パーサが指定したフォントの該当文字コードの１文字ずつについて、レンダリングエンジンがフォント位置情報をパーサに返す「フォント位置情報要求・応答」インタフェスのパラメータを示している。パーサは取得した該位置情報に基づきレイアウト処理を進める。
【００７６】
図４０は、フォント位置情報の要求コマンドに対する応答内容を示す表で、各値は図14の各パラメータの位置関係を表す図である。
【００７７】
図４１〜図４２は、パーサがアンダラインをレイアウトするにあたり、指定したフォントについてレンダリングエンジンがアンダライン情報をパーサに返す「アンダライン情報要求／応答」インタフェスのパラメータを示している。パーサは取得した該アンダライン情報に基づきレイアウト処理を進める。
【００７８】
図15は、原稿の記述が <p style="font:12pt Arial; text-decoration:underline"> Underline text. </p> のレイアウト例を示している。この場合、 "U"〜"." までフォントファミリとフォントサイズは同一のため、アンダライン情報も同一になり"U"〜"." の下に１つにつながった下線が引かれる。レイアウト部は、１文字ずつに下線を配置するのではなく、「Arial 12pt」に対するアンダライン情報を使用して、始点（"U"の下）から終点（"."の下）に後述の"box"commandによる塗りつぶしの矩形を１つ配置する。
【００７９】
このように、本実施例では「フォント位置情報」では文字を１文字ずつ配置する際に１文字ずつにフォント情報の要求を行う。一方「アンダライン情報」では同一フォントファミリで同一フォントサイズの場合、アンダラインの情報（ベースラインからのＹ方向の距離、線の幅）は不変であるので、アンダライン情報の要求は１回のみ発行するのである。
【００８０】
(A8) 描画コマンドインタフェス
「描画コマンド」は描画単位に分割されたコマンドで、コマンド種別のコマンドコード、描画を行う範囲（始点／終点）の描画領域を共通に持ち、描画コマンド毎にboxモデル情報・フォント情報・画像情報など付随する情報を格納した構造体である。これらは、XHTML/CSS形式が定めるイメ-ジングモデルを実現するに足りる表現力を有する。
【００８１】
パーサは、「ドキュメントを単位とした描画コマンドの集合」をレンダリングエンジンに出力する。一方、レンダリングエンジンは描画コマンドを用いて、ドキュメントの描画を行う。すなわち、ドキュメントは１ページまたは複数ページ分の描画コマンドの集合である。
【００８２】
１ページ分の描画コマンドはXHTML要素の出現順、つまり要素（描画）の重ね合わせ順に並んでおり、レンダリングエンジンは出現順に描画コマンドを扱う事で要素の重ね合わせを認識できる。
【００８３】
レンダリングエンジンは、各ページに対応した描画を行う。実施例では “寸法”“距離”の単位をptとし、分解能として72dpiを基準としている。印刷解像度や拡大縮小などによりptを任意の分解能に変換するのはレンダリングエンジンが行う。
【００８４】
１ページの描画コマンドの集合は、start_pgeで始まりend_pageで終わる描画コマンドが羅列で、描画コマンドと描画コマンド間にはパディング等の余計なバイトは含まない。図４３は描画コマンドを示した表である。
【００８５】
2ページで構成される１つのドキュメントを描画コマンドで表現したものを以下に示す。
【００８６】
start_document{DocInfo}(ドキュメントの開始)
start_pge{PageInfo}(ページの開始)
【００８７】
【表１】
2008188913.tif 000003
end_page(ページ1の終了)
start_pge{PageInfo}(ページの開始)
【００８８】
【表２】
2008188913.tif 000004
end_page
end_document(ドキュメントの終了)
上記の例において、{DocInfo}に割付印刷{UnmberUP=02}が指定されていたとする。その場合、レイアウト編集の実行後は以下のようになる。すなわち、描画コマンドストリームが１組にマージされ、かつ{DocInfo}の割付印刷マーカーは解除され{UnmberUP=01}となる。
【００８９】
start_document{DocInfo}(ドキュメントの開始)
start_pge{PageInfo}(ページの開始)
【００９０】
【表３】
2008188913.tif 000005
end_page
end_document(ドキュメントの終了)
(A9) 描画コマンドの機能
start_documentは、ドキュメント開始と終了を宣言するもので、複数ページで構成される１ドキュメントの開始の識別子。１ドキュメントはstart_documentコマンドで始まり、複数ページ分の描画コマンド群が続き、end_documentコマンドで終了する。
【００９１】
図４４〜図５０はstart_documentコマンドに付随するパラメータDocInfoの詳細である。ここで、Copiesは印刷部数で、デフォルトは1で１部印刷する。MediaSizeは予め定義された用紙サイズのID（01〜12）であることを表している。ここで、99はユーザが定義する任意の用紙サイズで、UserWidthとUserHeightによって指定される、99以外の定義済み用紙サイズではUserWidthとUserHeightの値は不定である。なお、101:none（指定無し）ではCSSの@page{size:xxx}で指定された用紙サイズで印刷する。MediaTypeは予め定義された用紙種類のID（01〜12）。NumberUpは予め定義されたレイアウト印刷のID。OrientRequestは予め定義された印刷の向き。MarginTop、MarginRight、MarginBottom、MarginLeftは４辺の用紙マージンの長さ。PrintQualityは予め定義された印刷品質。Sidesは予め定義された両面印刷で、device-settingの値は、プリンタのControl Panelまたは、Control Pointに付随したHTMLブラウザからCGIなどの機構を使用して設定した値などを指し、プリンタ側で記憶・保持している設定値を適用する。以上の機能を実現するため、プリンタ装置にwebサーバ機能の一部が装備している。
【００９２】
end_documentは、ドキュメント終了の宣言をするコマンドで、複数ページで構成される１ドキュメントの終了の識別子として用いる。
【００９３】
start_pageとend_pageは、１ページの区間を宣言するコマンドである。すなわちページはstart_pageコマンドで始まり、描画コマンド群が続き、end_pageコマンドで終了する。コマンド列の集合で構成される１コンテンツが複数のページで構成されている場合は、start_pageとend_pageのコマンド列がページ数分繰り返される。
【００９４】
PageInfoは、start_pageに付随するパラメータで、ページ毎のレイアウト情報を含む。これらは、コンテンツ作成時のページレイアウトとしてのページサイズ・向きで、原稿ソースにてCSS表現@page{xxx}で指定された値でもある。実際に印刷する用紙サイズなどはstart_documentコマンドに付随するパラメータDocInfoが優先して適用される。
【００９５】
図５１はPageInfoに付随するパラメータである。pg_width, pg_heightは原稿ソースにて@pageで指定された用紙サイズである。通常はletter,legal,ledger,A4,A5,A3,B4,B5 であるが、任意の即値サイズと単位が指定可能である。この場合、レンダリングエンジン側でフィッティングまたは、再配置してNumberUP印刷を実現する。ここでpg_orientは原稿ソースに指定してあるページの向きを表す。
【００９６】
PageInfoにおけるサイズと先に説明したstart_documentコマンドに付随するパラメータMediaSizeとは必ずしも一致しない。一致しない場合はDocInfoの指定が優先する。すなわち、PageInfo指定のサイズをMediaSizeにあわせて拡大または縮小する。はみ出た部分があれば出力しない。
【００９７】
PageInfo指定の向きと、先に説明したstart_documentコマンドに付随するパラメータOrientRequestとは必ずしも一致しない。一致しない場合はページレイアウトがメディアに収まるように拡大縮小し、はみ出た部分があれば出力しない。
【００９８】
charは、図５２をパラメータとする、1文字単位のテキスト描画コマンドで、図17のようにrcの領域に指定フォントでtc_codeの文字をtc_color色で描画する。ここで、fontには、図３８が、styleには図３９がそれぞれ適用される。rcはフォントを配置する領域を示し、スタイルやフォント位置情報からレイアウトを行った後のビットマップを配置すべき領域を指す。sup/subやtext-transform、letter-spacingなどの文字修飾はレイアウト部が配置の処理を行う。ところで、文字の開始Ｙ座標は図18のように文字ごとに異なる。
【００９９】
ここで、同等の抽象度レベルで他の形式、例えばSVG表現では、描画文字列をabcとすると、<text x=" 開始x座標" y="開始y 座標" font-size="フォントサイズ" color="文字色"> abc </text>となる。
【０１００】
clip_onは、図５３をパラメータとする、boxモデルや<object><img>画像、background-imageにおけるクリッピング領域を指定するコマンドで、図19で示すように、clip_on出現〜clip_off出現まで全ての描画コマンドはクリッピング領域(rc)の中にのみ描画される。
【０１０１】
boxは、図５４をパラメータとする、boxモデルにおける背景などの塗りつぶし(ぺイント)コマンドで、図20で示すように、box描画で、rcの領域にbx_colorの色で塗りつぶしの描画を行う。
【０１０２】
ここで、同等の抽象度レベルで他の形式、例えばSVG表現では、<rect x="開始x座標" y="開始y座標" width="箱の幅" height="箱の高さ" fill="塗り色" />となる。
【０１０３】
box_lineは、図５５をパラメータとする、塗りつぶしを行わない輪郭のみのbox描画で、図21で示すように、rcの領域にbl_color色でbl_dwidth線幅のboxを描画する。
【０１０４】
ここで、同等の抽象度レベルで他の形式、例えばSVG表現では、<rect x="開始x座標" y="開始y座標" width="箱の幅" height="箱の高さ" stroke="線の色" stroke-width="線幅" />となる。
【０１０５】
img_xは、図５６をパラメータとする、<object><img>における画像が取得できなかった場合出力する×印の描画で、図22で示すように、rcの領域にix_color色を基準色としたboxを描画し、boxの中にix_xcol色を基準とした×印を指定のサイズで、図23のように描画する。なお、下位コマンドは、45度並びに-45度で交差するラインを2本引くことにより×印を構成する。
【０１０６】
box_frameは、図５７をパラメータとするコマンドで、図24で示すように、boxモデルにおけるborder-style: solidのボーダーを１辺として、図25のように描画する。ボーダーの幅は、スタイルシートにおいて４辺を任意の太さで表現可能である。すなわち、一辺は固定幅の台形として描画するのではなく、隣接する斜辺と斜辺の間に空白は発生しないように、任意形状の台形として描画を行う。ここで、幅として0が指定された場合は出力が無い。
【０１０７】
circleは、図５８をパラメータとするコマンドで、boxモデルにおけるborder-style:dotted;の円描画である。すなわち、図26に示すci_x,ci_yを中心とした半径ci_rの、ci_color色の円を描画する。コマンドを複数組み合わせることにより、図27のような描画が完成する。
【０１０８】
ここで、同等の抽象度レベルで他の形式、例えばSVG表現では、<circle cx="中心x座標" cy="中心y座標" r="半径" fill="色" />となる。
【０１０９】
radioは、図５９をパラメータとするコマンドで、ir_x, ir_y, ir_rは描画する円の中心ＸＹ座標および半径。ir_colorは描画する円の基準色、デフォルトは黒(0)でir_color〜白(0x00FFFFFF)までの輝度を変えて陰影を表現する。ここで、rcの領域にラジオボタンが選択/比選択されている事を表す任意の形状を描画する。基本は表示系（DTVやWebブラウザ）との一意性を持たせる為、図28に示すようにir_x,ir_yを中心としたir_rの円に、ir_color色を基準色とした立体的に見えるボタンを配置し、円内にir_selectの選択状況をir_color色を基準色として、図29のように描画する。
【０１１０】
このコマンドを実行する下位コマンドの働きを以下に説明する。
【０１１１】
外周は半径r内側にr/6の太さのペンを用い、45〜225度の半円を白（基準色の0%濃度）で、225度〜405度の半円を、基準色の50%の濃度で描画する。内周は同様に半径ｒ×5/6内にｒ×1/6のペンで、45〜225度を75%濃度で225〜405度を基準色100%濃度で描画する。続いて内周の中（半径r×4/6内）を白（基準色の0%濃度）で塗りつぶす。選択状態は、半径r×2/6内を基準色100%濃度で塗りつぶす。ここで、指定が無い場合の基準色は黒である。
【０１１２】
checkboxは、図６０をパラメータとするコマンドで、rcの領域内にチェックboxがマーク／非マークされている事を表す任意の形状を描画する。基本は表示系（DTVやWebブラウザ）との一意性を持たせる為、[図30]に示すように、rcの領域内に、ic_color色を基準色とした立体的に見えるboxを配置し、box内にic_check のチェック状況をic_color色を基準色として[図31]のように描画する。
【０１１３】
このコマンドを実行する下位コマンドの働きを以下に説明する。
【０１１４】
外辺はrc内にrcの幅×1/12の太さのペンを用い、上辺と左辺を50%の濃度で、右辺と下辺を白（基準色の0%濃度）で描画する。内辺はその内側へ同様にrc幅×1/12のペンで、上辺と左辺を基準色100%濃度で、右辺と下辺を75%濃度で描画する。続いて内辺の内側を白（基準色の0%濃度）で塗りつぶす。チェック状態は、太さrcの幅の1/6の太さのペンでチェックマークを２本の斜線で描画する。ここで、指定が無い場合の基準色は黒である。
【０１１５】
scrollbarは、図６１をパラメータとする、スクロールバ／ドロップダウンボタンの描画するコマンドでrcの領域内にtb_scrollの種別に合わせたスクロールバやドロップダウンボタンを表す任意の形状を描画する。基本は表示系（DTVやWebブラウザ）との一意性を持たせる為、図32に示すようにrcの領域内に、tb_scrollの種類の立体的に見えるスクロールバ／スライダ／ドロップダウンボタンをtb_color色を基準色として図33のように描画する。
【０１１６】
このコマンドを実行する下位コマンドの働きを以下に説明する。
【０１１７】
スクロールバのボタンおよびドロップダウンボタンの描画は、rcの幅または高さの短い方を基準とした正方形の領域に、外辺は正方形内に幅×1/16の太さのペンを用い、上辺と左辺を50%の濃度で、右辺と下辺を基準色100%濃度で描画する。内辺はその内側へ同様に正方形の幅×1/16のペンで、上辺と左辺を白（基準色の0%濃度）で、右辺と下辺を75%濃度で描画する。続いて内辺の内側を基準色50%濃度で塗りつぶす。ボタン内の三角形は、底辺が正方形の幅×7/16、高さが正方形の幅×4/16の三角形を正方形の中心に描画する。スクロール領域内（rc内のボタンを除いたバーの領域）は、基準色25%濃度で塗りつぶす。スライダは、垂直スクロールバでは上部にボタン同様の正方形を描画する。同様に水平スクロールバでは左部に描画する。ただし、スライダの長さがスクロール領域よりも短い場合は、スクロール領域の長さまで縮小する。ここで、指定が無い場合の基準色は黒である。
【０１１８】
bmp_infoは、図６２をパラメータとする、<object><img>における使用画像の情報を登録するコマンドで、bi_idは画像データのID番号で、画像出力コマンドbmpが参照に用いる。bi_formatは画像データのフォーマット種別で、JPEG、PNG、GIFが使用できる。
【０１１９】
bmpは、図６３をパラメータとする<object><img>における画像描画コマンドで、bmp_infoで事前登録した画像を取得・展開した後、指定の角度に回転させ、指定の領域にスケーリングして画像ビットマップを描画する。すなわち、図34に示すようにdb_idは画像情報出力bmp_infoでレンダリングエンジンに登録した画像データのID番号。db_x, db_yは画像の出力ＸＹ座標、db_w, db_hは画像の出力サイズ。db_orientは画像の回転角度（deg単位）。0/±90/±180/±270(deg)の回転角のみ有効。また回転の有無に関係なくdb_w, db_hは出力すべきサイズを表す。
【０１２０】
ここで、画像がPNGフォマットで表現されαチャネルを持っている場合は描画済みの背景とのαブレンディングを行う。同様に、GIFフォマットで表現され透過色が設定されている場合は対象画素の背景との透過処理を行い画像を描画する。
【０１２１】
B[第2実施例］
第1実施例では「印字装置」が、論理ページ上の配置データに対して印刷仕様を適用すべく編集処理を実行するとしている。一方、第2実施例では、該編集処理を「表示装置」が行い、その結果を印字装置と共用するものである。印字指示があれば、最終の編集結果を印字装置が印刷する。以下に、第1実施例と相違する部分について説明する。
【０１２２】
(B1) 構成と機能
図35は印刷装置の構成を示す図で、0108は、UPnP接続規格で言うところのControl Pointである。これは、印刷を起動するデバイスで、例えばデジタルテレビのチューナである。Control Point 0108は、コンテンツそのものをプリンタに送付するPrintFile動作と、コンテンツが存在するアドレスを印字装置に通知し、印字装置はそのアドレス先に存在するコンテンツを取得して印刷する、PrintURI動作が可能である。
【０１２３】
0114は、ネットワークインタフェス部である。UPnP方式によりControl Pointと通信する。また外部ウエブサーバ 0101からhttp 0105を経由して、コンテンツを受信バッファ0104に一旦蓄え、後にCash 0102に記憶される。ここで、Cashは、印刷ジョブに関わるコンテンツ、画像データ、コンテンツのレイアウト結果、およびそこで使用するフォントの情報を一時的に蓄える。また、データをプレビュー装置と共用する。
【０１２４】
レイアウト部0119の出力である描画コマンド群は、キャシュ0102に一旦保存される。一方、印刷の指示があればレンダリング部0121を再起動して印刷処理を継続する。バンディング処理部0122においては、給紙方向landscapeやportraitの指定によっては、バンドの区切る方向を変え必要がある。ここで再編集とは配置オブジェクトの回転、スケール変換を含む座標変換である。
【０１２５】
Interface Manager 1007は、印刷装置に装備するソフトウエアモジュール間の相互の働きを調停し、装置全体を統括して制御するものである。
【０１２６】
スプーラ 0118は、Control Point 0108が生成した印刷ジョブを一時的に蓄えるものである。
【０１２７】
スプールされた印刷ジョブは順次スプーラから取り出され、パース&レイアウト部0119を経て、レンダリング部0121およびバンディング部0122の働きにより印刷データが形成される。本実施例では、パース&レイアウト部0119の独立性を確保するためのレンダリングインタフェス0120を定義している。
【０１２８】
Font 0123は、フォント配置と実体のデータファイルでテキストの配置とレンダリング部に用いる。
【０１２９】
Buffer 0124は、書き込と読み出の機能が対補的にスイッチする２系列のメモリから構成され、エンジンインタフェス0117 を経由したプリンタエンジン0111へ供給するデータ群を、一時的に蓄えるものである。とくにシリアル方式のインクジットプリンタの機械的動作とデータ変換及び転送処理との同期を確保する働きがある。
【０１３０】
Command 0110とStatus 0112は、Control Pointがプリンタエンジンの動作状態をモニタし、また定数や紙種の情報を読み出し、動作を設定するための信号である。
【０１３１】
図36は、表示装置の構成を示す図である。ここで、表示部0125と表示制御部0108から成る。表示制御部はさらに、UPnPインタフェス制御部0132と描画コマンド記憶部0102、および表示データを作成するレンダリングエンジンからなる。ここで描画コマンド記憶部0102は印刷装置内に設けたデータキャシュ部と共用する。レイアウト編集部0103の働きにより、論理的ページ上の配置データの集合を、印刷仕様を適用した実際のメディア上のレイアウト情報に作り直す。即ち、論理ページ上の配置データを、実際の印字媒体上の配置仕様、例えばn-up/orientationなどに対応したレイアウト情報に変換しCash 0102に再保存する。また、該情報に基づき、表示用のレンダリング部0131を経由して、表示部0125に表示する。
【図面の簡単な説明】
【０１３２】
【図１】装置全体を代表する図。
【図２】第1実施例の印刷装置。
【図３】第1実施例の表示装置。
【図４】表示装置のソフト構成図。
【図５】処理フローを示す図。
【図６】処理構成を示す図。
【図７】分離型入力コンテンツの構成を示す図。
【図８】一括型入力コンテンツの構成を示す図。
【図９】パース処理を示す図。
【図１０】レイアウト処理を示す図。
【図１１】レンダリング処理を示す図。
【図１２】バンディングと印刷出力を示す図。
【図１３】フォント情報インタフェスを示す図。
【図１４】フォント位置情報を示す図。
【図１５】アンダライン情報を示す図。
【図１６】描画コマンドインタフェスを示す図。
【図１７】1文字単位のテキスト描画を指示する図。
【図１８】1文字単位のテキスト描画における開始Y座標を指示する図。
【図１９】クリッピング領域を指定する図。
【図２０】boxモデルにおける背景の塗りつぶしを指示する図。
【図２１】塗りつぶしを行わない輪郭のみのＢＯＸ描画を指示する図。
【図２２】×印の描画を指示する図。
【図２３】×印の描画結果を示す図。
【図２４】ボーダー１辺の描画を示す図。
【図２５】ボーダー4辺の描画結果を示す図。
【図２６】円の描画を指示する図。
【図２７】連続する円の描画結果を表す図。
【図２８】ラジオボタンの描画を指示する図。
【図２９】ラジオボタンの描画結果を表す図。
【図３０】チェックマークの描画を指示する図。
【図３１】チェックマークの描画結果を示す図。
【図３２】スクロールバ／ドロップダウンボタンの描画を指示する図。
【図３３】スクロールバ／ドロップダウンボタンの描画結果を示す図。
【図３４】<object><img>における画像描画を指示する図。
【図３５】第2実施例の印刷装置。
【図３６】第2実施例の表示装置。
【図３７】フォント位置情報要求の内容を説明する表。
【図３８】{フォントファミリfr_font/tc_font code}の内容を説明する表。
【図３９】{フォントスタイルfr_style/tc_style}の内容を説明する表。
【図４０】フォント位置情報応答の内容を説明する表。
【図４１】アンダライン情報要求の内容を説明する表。
【図４２】アンダライン情報応答の内容を説明する表。
【図４３】コマンド一覧の内容を説明する表。
【図４４】パラメータ{DocInfo}の内容を説明する表。
【図４５】パラメータ{MediaSize}の内容を説明する表。
【図４６】パラメータ{MediaType}の内容を説明する表。
【図４７】パラメータ{UnmberUP}の内容を説明する表。
【図４８】パラメータ{OrientRequest}の内容を説明する表。
【図４９】パラメータ{PrintQuality}の内容を説明する表。
【図５０】パラメータ{Sides}の内容を説明する表。
【図５１】パラメータ{PageInfo}の内容を説明する表。
【図５２】コマンドcharの内容を説明する表。
【図５３】コマンドclip_onの内容を説明する表。
【図５４】コマンドboxの内容を説明する表。
【図５５】コマンドbox_lineの内容を説明する表。
【図５６】コマンドimg_xの内容を説明する表。
【図５７】コマンドbox_frameの内容を説明する表。
【図５８】コマンドcircleの内容を説明する表。
【図５９】コマンドradioの内容を説明する表。
【図６０】コマンドcheckboxの内容を説明する表。
【図６１】コマンドscrollbarの内容を説明する表。
【図６２】コマンドbmp_infoの内容を説明する表。
【図６３】コマンドbmpの内容を説明する表。
【符号の説明】
【０１３３】
0101  外部ウエブサーバ
0102  デターキャシュ&描画コマンド記憶部
0103  レイアウト編集部
0104  受信バッファ
0105  httpインタフェス
0106  ファイル制御部
0107  インタフェスマネジャー
0108  Control Point
0109  コマンド&ステータ スバッファ
0110  Commandライン
0111  プリンタエンジン
0112  Statusライン
0113  UPnP規格による接続部
0114  ネットワークインタフェス部
0115  ジョブ制御部
0116  データフロー制御部
0117  エンジンインタフェス
0118  ジョブスプーラ
0119  パース&レイアウト部
0120  レンダリングインタフェス
0121  レンダリング処理部
0122  バンディング処理部
0123  Fontデータファイル
0124  印字バンドバッファ
0125  表示器
0131  表示用レンダリング部
0132  UPnPインタフェス制御部
【図１】
2008188913.tif 000006
【図２】
2008188913.tif 000007
【図３】
2008188913.tif 000008
【図４】
2008188913.tif 000009
【図５】
2008188913.tif 000010
【図６】
2008188913.tif 000011
【図７】
2008188913.tif 000012
【図８】
2008188913.tif 000013
【図９】
2008188913.tif 000014
【図１０】
2008188913.tif 000015
【図１１】
2008188913.tif 000016
【図１２】
2008188913.tif 000017
【図１３】
2008188913.tif 000018
【図１４】
2008188913.tif 000019
【図１５】
2008188913.tif 000020
【図１６】
2008188913.tif 000021
【図１７】
2008188913.tif 000022
【図１８】
2008188913.tif 000023
【図１９】
2008188913.tif 000024
【図２０】
2008188913.tif 000025
【図２１】
2008188913.tif 000026
【図２２】
2008188913.tif 000027
【図２３】
2008188913.tif 000028
【図２４】
2008188913.tif 000029
【図２５】
2008188913.tif 000030
【図２６】
2008188913.tif 000031
【図２７】
2008188913.tif 000032
【図２８】
2008188913.tif 000033
【図２９】
2008188913.tif 000034
【図３０】
2008188913.tif 000035
【図３１】
2008188913.tif 000036
【図３２】
2008188913.tif 000037
【図３３】
2008188913.tif 000038
【図３４】
2008188913.tif 000039
【図３５】
2008188913.tif 000040
【図３６】
2008188913.tif 000041
【図３７】
2008188913.tif 000042
【図３８】
2008188913.tif 000043
【図３９】
2008188913.tif 000044
【図４０】
2008188913.tif 000045
【図４１】
2008188913.tif 000046
【図４２】
2008188913.tif 000047
【図４３】
2008188913.tif 000048
【図４４】
2008188913.tif 000049
【図４５】
2008188913.tif 000050
【図４６】
2008188913.tif 000051
【図４７】
2008188913.tif 000052
【図４８】
2008188913.tif 000053
【図４９】
2008188913.tif 000054
【図５０】
2008188913.tif 000055
【図５１】
2008188913.tif 000056
【図５２】
2008188913.tif 000057
【図５３】
2008188913.tif 000058
【図５４】
2008188913.tif 000059
【図５５】
2008188913.tif 000060
【図５６】
2008188913.tif 000061
【図５７】
2008188913.tif 000062
【図５８】
2008188913.tif 000063
【図５９】
2008188913.tif 000064
【図６０】
2008188913.tif 000065
【図６１】
2008188913.tif 000066
【図６２】
2008188913.tif 000067
【図６３】
2008188913.tif 000068