(57)【要約】【課題】電子文書の印刷においてトナーやインク等の色材、および出力用紙の節約機能の要求がある。電子文書の体裁や美観、可読性を損なわずにコンパクトに集約するレイアウト技術が求められている。【解決手段】電子文書が複数の表示領域の横幅に対応した複数のレイアウト情報を有するか否かを判別し、さらに段組みレイアウトが可能な横幅の狭い表示領域対応するレイアウト情報を選別する。当該レイアウト情報によるレイアウトを反復することにより段組みレイアウトを実現する。【選択図】図１３
2015039824.tif 000002
【特許請求の範囲】
【請求項１】
複数のレイアウト幅が設定されたスタイルシートを使って出力可能なＷｅｂページを印刷する場合、指定された用紙サイズと、前記複数のレイアウト幅のうちの前記用紙サイズの幅よりも小さいレイアウト幅とに基づいて段組み数を決定する決定手段と、
前記決定された段組み数で用紙に前記Ｗｅｂページが配置されるように前記スタイルシートを変更する変更手段と、
変更された前記スタイルシートに基づいて、前記Ｗｅｂページをレイアウトした印刷データを生成する生成手段と
を有することを特徴とする文書レイアウトシステム。
【請求項２】
前記決定手段は、前記複数のレイアウト幅のうちの前記用紙サイズの幅よりも小さいレイアウト幅を、前記指定された用紙サイズの長辺の長さに対する短辺の長さの比で変換し、変換により得た幅で段組みした場合に前記用紙サイズの幅に収まる段組み数を前記段組み数として決定することを特徴とする請求項１に記載の文書レイアウトシステム。
【請求項３】
前記複数のレイアウト幅のうちの前記用紙サイズの幅よりも小さいレイアウト幅を用いた場合に表示しないオブジェクトの数が所定数以上の場合を判定する判定手段を更に有し、該当する場合には前記スタイルシートを変更し、該当しない場合にはスタイルシートを変更しないことを特徴とする請求項１又は２に記載の文書レイアウトシステム。
【請求項４】
前記用紙サイズを指定するため入力手段を更に有することを特徴とする請求項１乃至３のいずれか一項に記載の文書レイアウトシステム。
【請求項５】
ページ記述言語で記述されたＰＤＬデータを取得し、該ＰＤＬデータに省資源設定がされていること、かつ前記ＰＤＬデータがＷｅｂページから作成されていること、かつ該Ｗｅｂページが複数のレイアウトを有していることを判定する手段を更に有し、条件に該当する場合には、前記Ｗｅｂページを印刷の対象とすることを特徴とする請求項１乃至３のいずれか一項に記載の文書レイアウトシステム。
【請求項６】
複数のレイアウト幅が設定されたスタイルシートを使って出力可能なＷｅｂページを印刷する場合、指定された用紙サイズと前記複数のレイアウト幅のうちの前記用紙サイズの幅よりも小さいレイアウト幅とに基づいて段組み数を決定する決定手段と、
前記決定された段組み数で用紙に前記Ｗｅｂページが配置されるように前記スタイルシートを変更する変更手段と、
変更された前記スタイルシートに基づいて、前記Ｗｅｂページをレイアウトした印刷データを生成する生成手段と
してコンピュータを機能させるためのプログラム。
【請求項７】
前記決定手段は、前記複数のレイアウト幅のうちの前記用紙サイズの幅よりも小さいレイアウト幅を、前記指定された用紙サイズの長辺の長さに対する短辺の長さの比で変換し、変換により得た幅で段組みした場合に前記用紙サイズの幅に収まる段組み数を前記段組み数として決定することを特徴とする請求項６に記載のプログラム。
【請求項８】
前記複数のレイアウト幅のうちの前記用紙サイズの幅よりも小さいレイアウト幅を用いた場合に表示しないオブジェクトの数が所定数以上の場合を判定する判定手段としてコンピュータを更に機能させ、該当する場合には前記スタイルシートを変更し、該当しない場合にはスタイルシートを変更しないことを特徴とする請求項６又は７に記載のプログラム。
【請求項９】
前記用紙サイズを指定するため入力手段としてコンピュータを更に機能させることを特徴とする請求項６乃至８のいずれか一項に記載のプログラム。
【請求項１０】
ページ記述言語で記述されたＰＤＬデータを取得し、該ＰＤＬデータに省資源設定がされていること、かつ前記ＰＤＬデータがＷｅｂページから作成されていること、かつ該Ｗｅｂページが複数のレイアウトを有していることを判定する手段としてコンピュータを更に機能させ、条件に該当する場合には、前記Ｗｅｂページを印刷の対象とすることを特徴とする請求項６乃至８のいずれか一項に記載のプログラム。
【請求項１１】
複数のレイアウト幅が設定されたスタイルシートを使って出力可能なＷｅｂページを印刷する場合、指定された用紙サイズと、前記複数のレイアウト幅のうちの前記用紙サイズの幅よりも小さいレイアウト幅とに基づいて段組み数を決定する決定工程と、
前記決定された段組み数で用紙に前記Ｗｅｂページが配置されるように前記スタイルシートを変更する変更工程と、
変更された前記スタイルシートに基づいて、前記Ｗｅｂページをレイアウトした印刷データを生成する生成工程と
を有することを特徴とする文書レイアウト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば印刷時の省資源を目的とした文書レイアウトシステム、プログラム、文書レイアウト方法に関する。
【背景技術】
【０００２】
複写機、レーザプリンタ、インクジェットプリンタ等の画像形成装置では、印刷に際してトナーやインク等の色材、および出力用紙を消費する。これらの消耗品はランニングコストとして継続的に発生する費用であり、その節約に対する要求が高い。印刷文書の中でも特にＷｅｂページには、主たるコンテンツ（本文）の周辺にサイドメニューやナビゲーションバー、バナー広告などの補助的なコンテンツが配置されることが多い。これらの補助的なコンテンツを印刷対象から除外することでトナーの消費量および出力用紙枚数を削減できる可能性がある。
【０００３】
一方、Ｗｅｂページの表示、印刷においてはスタイルシートを用いたレイアウトが広く採用されている。Ｗｅｂページ内の表示エリア（ブロック）毎の印刷要否や描画位置をユーザに設定させることにより新たなスタイルシートを生成し、必要な部分のみを印刷する方法が知られている（例えば特許文献１参照）。この特許文献１を用いることで不要なオブジェクトが印刷対象から除外されるため、印刷における節約を実現することが可能となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１８１９７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１では、印刷対象をユーザの期待どおりに選択可能ではあるが、設定するための操作負荷が上がるおそれがあった。
【０００６】
本発明は、容易な操作で資源を節約した印刷を実現する。
【課題を解決するための手段】
【０００７】
本発明は以下の構成を有する。
【０００８】
複数のレイアウト幅が設定されたスタイルシートを使って出力可能なＷｅｂページを印刷する場合、指定された用紙サイズと、前記複数のレイアウト幅のうちの前記用紙サイズの幅よりも小さいレイアウト幅とに基づいて段組み数を決定する決定手段と、
前記決定された段組み数で用紙に前記Ｗｅｂページが配置されるように前記スタイルシートを変更する変更手段と、
変更された前記スタイルシートに基づいて、前記Ｗｅｂページをレイアウトした印刷データを生成する生成手段とを有することを特徴とする文書レイアウトシステム。
【発明の効果】
【０００９】
本発明によれば、容易な操作で、印刷に要する資源を節約できる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態を説明するハードウェアブロック図
【図２】本発明の一実施形態を説明するソフトウェアブロック図
【図３】エコプリントの操作画面図
【図４】エコプリントの基本フローチャート
【図５】段組みレイアウトのフローチャート
【図６】プリントドライバのフローチャート
【図７】Ｗｅｂページの一例（デスクトップＰＣレイアウト表示例）を示す図
【図８】Ｗｅｂページの一例を構成する為のＨＴＭＬデータを示す図
【図９】Ｗｅｂページの一例を構成する為のスタイルシートデータを示す図
【図１０】Ｗｅｂページの一例におけるパーツ構成図
【図１１】Ｗｅｂページの一例（スマートフォンレイアウト表示例）を示す図
【図１２】Ｗｅｂページの一例
【図１３】Ｗｅｂページの一例による段組みレイアウト例を示す図
【図１４】段組みレイアウト用に変換したスタイルシート例を示す図
【図１５】第２の実施例におけるシステム構成図
【図１６】第２の実施例における段組みレイアウトのフローチャート
【図１７】第３の実施例におけるシステム構成図
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１２】
［実施形態１］
＜画像形成装置のハードウェア構成図＞
図１は本実施形態の電子文書のレイアウトシステムの構成を説明するハードウェアブロック図である。図１の文書レイアウトシステムは、例えばディジタル複合機やプリンタ等の画像形成装置である。図１において、コントローラユニット２００は画像信号やデバイス情報の入出力を制御する。ＣＰＵ１はＲＯＭ３あるいはＨＤＤ４に記憶されたプログラムをＲＡＭ２に読み出し、実行する。さらに、システムバス５に接続される各デバイスをＣＰＵ１が統括的に制御する。ＲＡＭ２は、ＣＰＵ１の主メモリ、ワークエリアとして機能する。ＲＯＭ３には電源ＯＮ時に実行されるブートプログラムが格納され、ＨＤＤ４にはオペレーティングシステムと本装置の制御プログラム本体が格納される。また、ＨＤＤ４は画像データやプリントデータ等の大容量データを一時的あるいは長期的に保持する目的でも使用される。Ｎｅｔｗｏｒｋ６はローカルエリアネットワーク１３に接続し、印刷データやデバイス情報の入出力を担う。操作部Ｉ／Ｆ７は操作部１４とのインターフェース部で、操作部１４に表示する画像データを操作部１４に対して出力する。また、操作部１４から本装置の使用者が入力した情報を、ＣＰＵ１に伝える役割をする。操作部１４は、出力器として液晶パネルと音源を備え、入力器としてタッチパネルとハードキーを備えるものである。コントローラユニット２００はデバイスＩ／Ｆ８を介して、プリンタエンジン１５に接続される。デバイスＩ／Ｆ８はＣＰＵ１の指示に基づき、画像信号の送出、デバイス動作指示、デバイス情報の受信を行う。プリンタエンジン１５はコントローラユニット２００からの画像信号を媒体上に出力する出力機であり、電子写真方式、インクジェット方式の何れでも構わない。ラスタイメージプロセッサ（ＲＩＰ）９はディスプレイリスト（以後、ＤＬと略記する）をラスタイメージに展開する専用ハードウェアである。ＲＩＰ９はＣＰＵ１によりＲＡＭ２上に生成されたＤＬを高速かつ、ＣＰＵ１の実行と並列に、処理するものである。プリンタ画像処理部１０は、プリント出力画像データに対して、画像補正、ハーフトーニング等を行う。画像回転部１２は画像データの回転を行う。画像圧伸部１１は、多値画像データはＪＰＥＧ、２値画像データはＪＢＩＧ、ＭＭＲ、ＭＨの圧縮伸張処理を行う。
【００１３】
＜レイアウトシステムのソフトウェアモジュール構成図＞
図２（Ａ）および図２（Ｂ）は本レイアウトシステムのソフトウェアモジュール構成図である。図２（Ａ）および図２（Ｂ）に記載した各ソフトウェアモジュールは、プログラムとしてＨＤＤ４に格納され、ＲＡＭ２にロードされＣＰＵ１により実行される。より具体的には、各ソフトウェアモジュールはＣＰＵ１上で動作するＯＳ（オペレーティングシステム）によりＲＡＭ２にロードされ、スレッド単位で実行権を付与され、実行される。データ受信部２０１はホストコンピュータから送信されたプリントデータを受信し、受信したデータはジョブ制御部２０２を介してジョブデータ管理部２０８で保持される。ジョブ制御部２０２はデータ受信から印刷までのジョブ制御の全般を司る。レイアウタ２０３はジョブ制御部２０２からの指示によりＨＴＭＬデータをＰＤＬ（ページ記述言語）データに変換する。生成されたＰＤＬデータはジョブ制御部２０２を介してジョブデータ管理部２０８で保持される。ＰＤＬインタプリタ２０４はＰＤＬデータを解釈して、中間データであるＤＬを生成する。生成されたＤＬはジョブ制御部２０２を介してジョブデータ管理部２０８で保持される。レンダラ２０５はＤＬからビットマップイメージを生成するモジュールであり、多くの処理は専用ハードウェアＲＩＰ９により実行される。生成されたビットマップイメージはジョブ制御部２０２を介してジョブデータ管理部２０８で保持される。プリントドライバ２０６はデバイスＩ／Ｆ８を介してプリンタエンジンへの印刷指示とビットマップイメージの送出を行う。プリントドライバはプリンタドライバとも呼ばれる。この際に、プリントドライバ２０６はプリンタ画像処理１０による画像補正も行う。ユーザインターフェース２０７は操作部Ｉ／Ｆ７を介して、操作部１４を制御するモジュールである。操作部１４の液晶パネルに表示するデータを生成し、タッチパネルからの入力に従い液晶パネルの表示を更新する。また、タッチパネルからの入力が何らかのジョブ実行指示であった場合は、ジョブ制御部２０２に指示を伝達する。ジョブデータ管理部２０８はプリントデータ、ＤＬ、ビットマップイメージのそれぞれを一時的もしくは長期的に保持管理するデータベースである。
【００１４】
図２（Ｂ）は図２（Ａ）のレイアウタ２０３の内部構成を説明するソフトウェアモジュール構成図である。ＨＴＭＬインタプリタ２１１はＨＴＭＬデータを解釈しページに配置する描画オブジェクト情報を生成する。ＨＴＭＬデータの解釈に必要なビットマップやスクリプトデータ等のリソースが不足する場合に、ＨＴＭＬインタプリタ２１１はデータ取得部２１２を介して当該リソースを取得する。データ取得部２１２は指定されたリソースをｈｔｔｐプロトコルにより指定されたロケーションから取得する。リソースおよびロケーションはＵＲＩとしてＨＴＭＬインタプリタ２１１から指示される。スタイルシートコンバータ２１３はＨＴＭＬデータに付随するスタイルシートデータを段組みレイアウト等の異なるレイアウトに供するスタイルシートデータに変換する。ＰＤＬ出力部２１４はＨＴＭＬインタプリタ２１１から与えられた描画オブジェクト情報を元にＰＤＬデータを生成する。
【００１５】
＜エコプリントの設定＞
図３は操作部１４の液晶パネルに表示されるエコプリントの設定画面である。エコプリントは省資源を意図した印刷を行う機能である。エコプリント３０１で、ＯＮ３０２を押下（あるいはタッチ）するとエコプリント機能が有効となり、ＯＦＦ３０３を押下するとエコプリント機能が無効となる。ここで、ＣＰＵ１は画面上の押下された位置の情報から選択された項目を判定し、その設定値をＲＡＭ２に保存する。即ち、ＣＰＵ１は液晶タッチパネル上の３０２の領域が押下されたことを検知して、ＲＡＭ２にエコプリント機能が有効か無効かという情報（エコプリント機能の設定値、あるいは省資源設定などと呼ぶ。）を記憶する。エコプリント機能が有効の場合に値１が記憶され、無効の場合に値０が記憶される。
【００１６】
＜エコプリントの基本フロー＞
図４は、コントローラユニット２００にて実行されるエコプリントの基本フローをあらわすフローチャートである。なお、本説明では図２（Ａ）および図２（Ｂ）の各ソフトウェアモジュールによって実行されるように記述する。また、本フローチャートはＨＤＤ４に記憶された図２（Ａ）の各ソフトウェアモジュール内の各プログラムがＲＡＭ２に読み出され、ＣＰＵ１により実行されることにより実現される。本フローチャートではスレッドＡ、スレッドＢ、スレッドＣの三つのスレッドが並列に実行される。各スレッドはオペレーティングシステムにより時分割され、その実行権が割り振られる。時分割の単位は十分に小さいため、三つのスレッドは並列動作すると見なすことができる。オペレーティングシステムによるマルチスレッディング処理は一般に広く知られる技術であるため、詳細は省略する。スレッドＡ、スレッドＢ、スレッドＣは本レイアウトシステムの起動時にオペレーティングシステムにより生成される常駐スレッドである。
【００１７】
スレッドＡでは最初にステップＳ４００１において、データ受信部２０１はＰＤＬデータを受信し、ジョブ制御部２０２を介してジョブデータ管理部２０８に保持させる。次にステップＳ４００２において、ジョブ制御部２０２はエコプリント機能の設定値を取得する。エコプリント機能の設定値としては、図３の設定画面により、エコプリント機能が有効の場合にはＲＡＭ２に値１が記憶され、無効の場合に値０が記憶されている。次にステップＳ４００３でエコプリント機能の設定値が有効か否か判定する。Ｙｅｓすなわち有効の場合はＳ４００４へ進み、Ｎｏすなわち無効の場合はＳ４００８へ進む。ステップＳ４００４において、ジョブ制御部２０２は、当該ＰＤＬデータがＷｅｂページから作られたものか否かを判定する。ここで、ＰＤＬデータに付属するジョブチケットには、そのＰＤＬデータの元となった文書名の情報がプリンタドライバによって埋め込まれている。そして、Ｗｅｂブラウザの場合はｈｔｔｐ：／／ｘｘｘ．ｙｙｙ．ｚｚｚ／ｉｎｄｅｘ．ｈｔｍｌ等のウエブページの所在を示すＵＲＬがその文書の文書名として採用される。従って、ジョブ制御部２０２は当該ＰＤＬデータの文書名が「ｈｔｔｐ：」から始まるＵＲＬか否かによって、Ｗｅｂブラウザから作られたＰＤＬデータ、すなわちウエブページに基づいて作成されたＰＤＬデータか否かを判定する。なお本実施形態では、ＰＤＬデータの基となったウエブページの所在を示すＵＲＬを元ＵＲＬと呼ぶ。ステップＳ４００４でＹｅｓの場合はＳ４００５へ進み、Ｎｏの場合はＳ４００８へ進む。ステップＳ４００５において、ジョブ制御部２０２はＰＤＬデータの元ＵＲＬのＷｅｂページが複数のレイアウト情報を有するか否か判定する。ここで、ジョブ制御部２０２は、まず前述の元ＵＲＬからｈｔｍｌファイルをダウンロードして取得する。そして、ジョブ制御部２０２はこのｈｔｍｌファイルから参照されるスタイルシートをさらにダウンロードして取得する。ジョブ制御部２０２は、このスタイルシートの中に＠ｍｅｄｉａコマンドによるメディア特性値としてｍｉｎ−ｗｉｄｔｈもしくはｍａｘ−ｗｉｄｔｈが指定された記述を探す。見つかった場合は複数レイアウトを有する、とジョブ制御部２０２は判定する。すなわち、ジョブ制御部２０２は、複数レイアウトで出力可能であるか判定する。複数レイアウトはマルチレイアウトなどとも呼ばれ、条件に応じた異なるレイアウトが設定されたレイアウトをいう。ｍｉｎ−ｗｉｄｔｈはその記述以降に指定されたレイアウト指定がｍｉｎ−ｗｉｄｔｈで指定された幅よりも大きいメディアにのみ有効であることを意味する。ｍａｘ−ｗｉｄｔｈは反対にその記述以降に指定されたレイアウト指定がｍａｘ−ｗｉｄｔｈで指定された幅よりも小さいメディアにのみ有効であることを意味する。具体的な記載例については後述する。ステップＳ４００５でＹｅｓの場合はＳ４００６へ進み、Ｎｏの場合はＳ４００８へ進む。
ステップＳ４００６において、ジョブ制御部２０２はＰＤＬデータから論理ページサイズを取り出す。論理ページサイズはＰＤＬデータに付属するジョブチケットに記載された印刷用紙サイズを論理ページサイズとみなす。例えば、用紙サイズＡ４であれば、２１０ｍｍ×２９７ｍｍが論理ページサイズとなる。次にステップＳ４００７へ進み、レイアウタ２０３は元ＵＲＬからＷｅｂページをダウンロードして、段組みレイアウトに変更してＰＤＬデータを再生成する。この処理の詳細については図５にて後述する。ステップＳ４００８へ進み、ＰＤＬインタプリタ２０４はＰＤＬデータを解析処理し、当該ページの描画情報を表す中間データであるディスプレイリストを生成する。ステップＳ４００９へ進み、ＰＤＬインタプリタ２０４はレンダラ２０５に対してディスレプリリストの生成完了を通知し、レンダリングを依頼する。そして、ステップＳ４０１０へ進み、ＰＤＬインタプリタ２０４は全ページの処理が終了したか判定する。Ｙｅｓの場合は本フローの処理を終了し、Ｎｏの場合はステップＳ４００８へ戻り、残りのページの処理を継続する。
【００１８】
スレッドＢのフローはレンダラ２０５によって実行される。ステップＳ４１０１でレンダラ２０５は１ページ分のディスプレイリストの生成完了を待つ。ステップＳ４００９でディスプレイリストの生成完了が通知されるとレンダラ２０５はステップＳ４１０１から次の処理に進む。ステップＳ４１０２において、レンダラ２０５はレンダリングを行いビットマップと属性マップを生成する。ここで、生成されるビットマップはＣＭＹＫの各色８ビットの階調を有し、属性マップはビットマップの各ピクセルに対応した、当該ピクセルがグラフィックス、イメージ、文字の何れに属するかを示す２ビットの情報を有する。ディスプレイリスト内には、各オブジェクトの属性フラグが含まれており、属性フラグによってオブジェクトがグラフィックス、イメージ、文字の何れであるかが識別される。この属性フラグがレンダリング時に属性マップに展開される。即ち、属性マップは各ピクセルがグラフィックス（００）、テキスト（０１）、イメージ（１０）の何れであるかを示す。
【００１９】
次にステップＳ４１０３において、レンダラ２０５はビットマップをジョブデータ管理部２０８に保存し、プリントドライバ２０６にプリントを依頼する。プリントの依頼はプリントドライバ２０６に対してレンダリング終了通知を送信することにより実行される。次にステップＳ４１０４へ進み、レンダラ２０５は全ページのレンダリングが完了したか判定する。Ｙｅｓの場合は、図４のフローを終了する。Ｎｏの場合は、ステップＳ４１０１へ戻り、処理を繰り返す。
【００２０】
プリントドライバ２０６はエンジン同期して処理を実行するために、スレッドＣとしてスレッドＡとは別スレッドで実行される。ステップＳ４１０３で発行された依頼を受けたプリントドライバ２０６は、ステップＳ４２０１において、エンジンに対してプリント開始要求コマンドを送信し、画像転送する。また、画像転送に先立ってビットマップ画像に対して画像処理を施す。これによって、ＰＤＬデータが多段組みレイアウトにレイアウトし直されプリンタに引き渡される。
【００２１】
＜段組みレイアウトの処理フロー＞
図５は、レイアウタ２０３により実行される段組みレイアウト処理をあらわすフローチャートである。また、図４のステップＳ４００７を詳細化したフローチャートである。最初にステップＳ５００１において、データ取得部２１２は指定されたＵＲＬからＨＴＭＬデータをダウンロードする。ここで指定されるＵＲＬとは、ジョブ制御部２０２からレイアウタ２０３へ渡されるＰＤＬデータの元ＵＲＬを意味する。
【００２２】
ステップＳ５００２においてＨＴＭＬインタプリタ２１１はダウンロードしたＨＴＭＬデータを解釈し、スタイルシートの所在を判別する。スタイルシートはＨＴＭＬデータ内に直接埋め込むことも可能であるが、外部ファイルとして記載されることが多い。例えば、＜ｌｉｎｋ  ｒｅｌ＝”ｓｔｙｌｅｓｈｅｅｔ”  ｈｒｅｆ＝”ｃｓｓ／ｃｏｍｍｏｎ．ｃｓｓ”  ｔｙｐｅ＝”ｔｅｘｔ／ｃｓｓ”／＞のように＜ｌｉｎｋ＞要素を使って表現される。この例ではスタイルシート（ＣＳＳファイル）はｃｓｓ／ｃｏｍｍｏｎ．ｃｓｓとして存在していることが分かる。元のＨＴＭＬデータのＵＲＬがｈｔｔｐ：／／ｘｘｘ．ｙｙｙ．ｚｚｚ／ｉｎｄｅｘ．ｈｔｍｌである場合、スタイルシートのＵＲＬはｈｔｔｐ：／／ｘｘｘ．ｙｙｙ．ｚｚｚ／ｃｓｓ／ｃｏｍｍｏｎ．ｃｓｓとなる。ＨＴＭＬインタプリタ２１１はこのように判別したＵＲＬからのダウンロードをデータ取得部２１２に依頼する。データ取得部２１２はスタイルシートをダウンロードする。なお、ステップＳ５００２の処理はＨＴＭＬインタプリタ２１１とデータ取得部２１２の協調動作により実現されることに注意されたい。
【００２３】
ステップＳ５００３において、スタイルシートコンバータ２１３はステップＳ５００２でダウンロードしたスタイルシートから、メディアクエリーの記載を探す。そして、スタイルシートコンバータ２１３はレイアウトが切り替わるブレークポイントを判別する。例えば、スタイルシートは"＠ｍｅｄｉａ  ａｌｌ  ａｎｄ  （ｍａｘ−ｗｉｄｔｈ：  ８００ｐｘ）  ｛  ．．．  ｝"のように記述される。実際には、｛  ｝の間には、レイアウト情報、フォント情報、色情報などのスタイル情報が指定される。具体的な記述例に関しては図９により後述する。本実施形態においてはレイアウト情報が最も重要なスタイル情報であり、レイアウト情報が指定されるものとして説明する。この例は、幅が８００ピクセル以下の全てのメディアで｛  ．．．  ｝に記載されたレイアウトを採用するという意味である。すなわち、幅８００ピクセルを分岐点としてレイアウトを変更している。このようにレイアウトを切り換えるピクセル幅をブレークポイントと呼ぶ。本実施形態ではブレークポイントを表すメディア特性の記載方法としてｍｉｎ−ｗｉｄｔｈとｍａｘ−ｗｉｄｔｈを採用する。デスクトップＰＣ用、タブレット端末用、スマートフォン用と複数のレイアウトを用意することも可能である。この場合、ブレークポイントも二つ以上になる。なお、スタイルシートにおけるピクセル幅指定はデバイス非依存の表記方法であることに注意されたい。１ピクセルは０．７５ポイントに固定される。高解像度の液晶パネルを採用する携帯端末ではスタイルシートの１ピクセルが液晶パネルの２ピクセルに相当する場合もある。
【００２４】
ステップＳ５００４において、スタイルシートコンバータ２１３は複数のレイアウト幅のうち最小のレイアウト幅が論理ページの幅未満か否か判定する。ステップＳ５００３における複数のブレークポイントのうち最小のものが最小のレイアウト幅として使用される。例えば、４８０ピクセルが最小のブレークポイントであれば、４８０ピクセル＝１２７ミリが最小のレイアウト幅となる。論理ページの幅はステップＳ４００６において、ジョブ制御部２０２がＰＤＬデータから取り出したものがレイアウタ２０３に渡され、使用される。例えば、Ａ４サイズが論理ページ幅であれば、横幅は２１０ミリとなる。この場合の判定結果はＹｅｓとなる。ステップＳ５００４でＹｅｓの場合はＳ５００５へ進み、Ｎｏの場合はフローを終了する。なお、ここでフローを終了する場合、段組みレイアウトは行われずに、元のＰＤＬデータがそのまま使用されて、印刷されることになる。なお、本願は最小のレイアウト幅を使って段組み数を計算することになるが、その他の方法でも構わない。例えば、複数のレイアウト幅の内、論理ページの幅未満のレイアウト幅を使って段組み数を計算しても良い。
【００２５】
ステップＳ５００５において、スタイルシートコンバータ２１３は最小レイアウト幅のレイアウト情報を用いた場合に表示されない描画オブジェクトの個数を調べる。表示しない描画オブジェクトとは、そのレイアウト属性として、"ｄｉｓｐｌａｙ：  ｎｏｎｅ；"を有する描画オブジェクト（もしくは描画ブロック）である。スマートフォン等の携帯端末では表示領域が小さいため、重要度の低いコンテンツを非表示にしたり、別のより簡易な描画オブジェクトに差し替えたりするケースが多い。
【００２６】
ステップＳ５００６において、スタイルシートコンバータ２１３は表示されない描画オブジェクトの個数が所定数以上か否か判定する。本実施形態では２個以上か否かを持って判定する。非表示設定は一定サイズの描画ブロック毎に為されることが多いため、非表示になる描画オブジェクトの個数が数個でも効果が期待できる。Ｙｅｓの場合はＳ５００７へ進み、Ｎｏの場合はフローを終了する。なお、ここでフローを終了する場合、段組みレイアウトは行われずに、元のＰＤＬデータがそのまま使用されて、印刷されることになる。非表示になる描画オブジェクトが少ない場合は、トナーおよび用紙の節約という意味で効果が少ないことが予想されるためである。
【００２７】
ステップＳ５００７において、スタイルシートコンバータ２１３は最小のレイアウト幅で段組みした場合に指定された論理ページに収まる最も多い段組み数を算出し、決定する。ここでは、最小のレイアウト幅を９／１６倍した値で、論理ページ幅を割った値を切り上げるという計算方法を採用する。９／１６は９：１６という一般的な液晶パネルの縦横比に基づく値であり、長辺方向の幅を短辺方向に収めるための変換比率である。スマートフォンなどの携帯端末では縦置きと横置きの両方を考慮して、ブレークポイントを決めている場合が多い。つまり、最小レイアウト幅のブレークポイントは横置きを前提に設定する場合が多い。ブレークポイントは横置きで決めても、携帯端末は縦置きで使用されるケースも多いので、Ｗｅｂページの作成者は縦置きでも問題なく読めるようにデザインするのが通例である。例えば、前述の最小レイアウト幅１２７ミリと論理ページ幅２１０ミリを用いて段組み数の算出方法を説明する。前述の最小レイアウト幅１２７ミリを９／１６倍すると７１．４３７５ミリとなる。この場合、縦置きの７１．４３７５ミリ幅も想定したレイアウトとなっていると考えることができる。そして、段組み数については、例えば、最小レイアウト幅１２７ミリ、論理ページ幅２１０ミリの場合は、３段組みが算出値となる。前述の通り１２７ミリを９／１６倍すると７１．４３７５ミリであり、余白を考慮しても、３段組みで十分な大きさのレイアウトが可能となる。
【００２８】
ステップＳ５００８において、スタイルシートコンバータ２１３は算出した段組み数のレイアウトになるように、スタイルシートを変更し、差し替える。具体的には以下の三つの手順を実行する。
１）最小レイアウト幅のメディアクエリー記載、すなわち本例ではメディアの幅に関する条件の記載を削除する。
２）最小レイアウト幅以外のメディアクエリーによるレイアウト情報、すなわちメディアの幅を条件としたレイアウト情報を全て削除する。
３）ｂｏｄｙタグのレイアウト情報として"ｃｏｌｕｍｎ−ｃｏｕｎｔ：ｎ"（ここでｎは段組み数）を追加する。
【００２９】
例えば、 "＠ｍｅｄｉａ  ａｌｌ  ａｎｄ  （ｍａｘ−ｗｉｄｔｈ：４８０ｐｘ）｛  ．．．  ｝" と"＠ｍｅｄｉａ  ａｌｌ  ａｎｄ  （ｍｉｎ−ｗｉｄｔｈ：４８０ｐｘ）  ａｎｄ  （ｍａｘ−ｗｉｄｔｈ：１０２４）｛  ．．．  ｝"という記述がスタイルシートに含まれているとする。最初の記述は、レイアウト幅のブレークポイントが４８０ピクセルであり、４８０ピクセル以下の幅のメディアについて｛  ．．．  ｝が適用されることを示している。一方、２番目の記述は、幅が４８１ピクセル以上かつ１０２４ピクセル以下のメディアに対して適用されるレイアウトを示している。したがって、最小幅のメディアに対して適用されるレイアウトは"＠ｍｅｄｉａ  ａｌｌ  ａｎｄ  （ｍａｘ−ｗｉｄｔｈ：４８０ｐｘ）｛  ．．．  ｝"であり、そのメディアクエリーの記載は"（ｍａｘ−ｗｉｄｔｈ：４８０ｐｘ）"であると特定される。
【００３０】
そこで例えば、１）を適用して、"＠ｍｅｄｉａ  ａｌｌ  ａｎｄ  （ｍａｘ−ｗｉｄｔｈ：  ４８０ｐｘ）  ｛  ．．．  ｝"を"＠ｍｅｄｉａ  ａｌｌ  ｛  ．．．  ｝"に書き換える。また例えば、２）を適用して、"＠ｍｅｄｉａ  ａｌｌ  ａｎｄ  （ｍｉｎ−ｗｉｄｔｈ：  ４８０ｐｘ）  ａｎｄ  （ｍａｘ−ｗｉｄｔｈ：  １０２４）  ｛  ．．．  ｝"という記述を削除する。１）と２）の手順により、最小幅のレイアウト情報が全ての表示メディアの幅で有効となる。ｃｏｌｕｍｎ−ｃｏｕｎｔはＨＴＭＬインタプリタに段組みを指示する命令であり、実際の配置処理はＨＴＭＬデータとそれに付随するスタイルシートを解釈するときに実行される。
【００３１】
ステップＳ５００９において、ＨＴＭＬインタプリタ２１１はＨＴＭＬデータ及びスタイルシートを解釈して、論理ページに合わせて１ページ分の描画オブジェクト情報を生成する。ここでは、ｃｏｌｕｍｎ−ｃｏｕｎｔの値に従って、描画オブジェクトの配置が為される。通常、Ｗｅｂブラウザでの表示の場合は単純に段組み配置のみを行うが、ページに割り当てる場合はページ間への跨りも考慮する。例えば、２段組みの場合、１ページ目左ブロック、１ページ目右ブロック、２ページ目左ブロック、２ページ目右ブロック、２ページ目左ブロック、‥‥という具合にコンテンツを割り当てていく。また、段組みするブロック間にイメージオブジェクト等が跨る場合は、次のブロックに配置する。
【００３２】
ステップＳ５０１０において、ＰＤＬ出力部２１４は描画オブジェクト情報から１ページ分のＰＤＬデータを出力する。次に、ステップＳ５０１１において、ＨＴＭＬインタプリタ２１１はＨＴＭＬデータを全て処理したか否か判定する。Ｎｏの場合は、ステップＳ５００９へ戻り、処理を繰り返す。Ｙｅｓの場合は、ＨＴＭＬデータからＰＤＬデータへの変換が終了したので、フローを終了する。
【００３３】
なお、本実施形態のフローチャートでは最小のレイアウト幅のレイアウト情報を採用しているが、必ずしも最小でなくともかまわない。論理ページの幅以下のレイアウト情報が複数ある場合に大きい方を使うケースも考えられる。例えば、スマートフォン用とタブレット端末用に二つのスタイルシートがある場合、タブレット端末用のスタイルシートを用いた２段組みなども十分に考えられる。
【００３４】
＜プリントドライバの処理フロー＞
図６は、プリントドライバ２０６により実行される画像転送処理をあらわすフローチャートである。また、図４のステップＳ４２０１を詳細化したフローチャートである。最初にステップＳ６００１において、プリントドライバ２０６はレンダリング終了通知を受信するまで待つ。レンダリング終了通知は、前述したように、ジョブ制御部２０２によりステップＳ４１０３で送信される。
【００３５】
次にステップＳ６００２において、プリントドライバ２０６はレンダリング済みのページがジョブの先頭ページか、もしくは前ページの印字出力が完了しているか判定する。Ｎｏの場合は、前のページのレンダリング完了を待つために、ステップＳ６００１に戻る。前述したように、各ページのレンダリングはページ順に完了するとは限らない。ステップＳ６００２でＹｅｓの場合は、ステップＳ６００３へ進み、プリントドライバ２０６はエンジンに対してプリント開始要求コマンドを送信し、画像を転送する。なお、ステップＳ６００３において、プリントドライバ２０６はエンジンとの同期処理も行う。プリンタエンジンは所定のスピード以上では出力できない。コントローラ２００はそのＲＩＰ処理が速すぎる場合にプリンタエンジン１５の印字出力を待つ必要がある。次にステップＳ６００４において、プリントドライバ２０６は次ページがレンダリング済みか否か判定する。Ｙｅｓであれば、ステップＳ６００５に進み、プリントドライバ２０６はエンジン同期して、プリント開始要求コマンドを送信し、画像を転送する。そして、再びステップＳ６００４に戻り同様の処理を繰り返す。ステップＳ６００４、Ｓ５００５の処理により、先にレンダリング済みのページが全て出力される。ステップＳ６００４でＮｏの場合は、ステップＳ６００６へ進み、プリントドライバ２０６は全ページの画像転送が完了したか否か判定する。Ｙｅｓの場合は、ステップＳ６００７へ進み、プリントドライバ２０６はプリンタエンジン１５に対してプリント完了要求コマンドを送信する。Ｎｏ場合は、ステップＳ６００１へ戻り、処理を繰り返す。
【００３６】
＜Ｗｅｂページの一例＞
次に具体的なＷｅｂページの例を使用して、段組みレイアウトの実例を説明する。まず、図７から図１２を用いて例として挙げるＷｅｂページについて説明する。図７はＷｅｂページをデスクトップＰＣ用のスタイルシートを用いて、Ｗｅｂブラウザで表示した場合の例である。ヘッダ部７０１には、トップバナー部７０８を含む。メインメニュー７０２は６個の切り替えメニューボタンからなる。サイドメニュー部７０３はサブメニューと位置づけられる。本文７０４には、イメージ７０５とイメージ７０６の二つのイメージが含まれる。サイドバナー部７０９は宣伝用のビットマップが表示される。ページ末尾にフッタ部７０７がある。デスクトップＰＣは表示エリアが広く、この例では全てのコンポーネントが表示されている。実際のＷｅｂブラウザにおける表示では、縦方向に全て表示できない場合にはスクロールバーによる表示に切り替わることに注意されたい。
【００３７】
図８は図７のＷｅｂページを表現するためのＨＴＭＬデータ内部を示すものである。＜ｌｉｎｋ＞要素８０１の記述により、スタイルシートを指定している。＜ｄｉｖ＞タグ８０２の記述によりヘッダ部、＜ｄｉｖ＞要素８０３の記述によりサイドメニュー部、＜ｄｉｖ＞要素８０４の記述により本文、＜ｄｉｖ＞要素８０５の記述によりサイドバナー部、＜ｄｉｖ＞要素８０６の記述によりフッタ部をそれぞれ表現する。ヘッダ部、サイドメニュー部などの各描画ブロックは＜ｄｉｖ＞要素により指定される。
【００３８】
図９は図７のＷｅｂページを表現するためのスタイルシート内部を示す。記述９０１により、タイプセレクタによるスタイルの記述を行っている。記述９０２により、＜ｄｉｖ＞要素により指定された主要な描画ブロックのスタイルを指定している。記述９０３により、４８０ピクセル以下のレイアウト幅に適用するスタイル、即ちスマートフォン向けのスタイルを指定している。特に、描画ブロック＃ｓｕｂＬ（サブメニュー部）と＃ｓｕｂＲ（サイドバナー部）に｛ｄｉｓｐｌａｙ：ｎｏｎｅ；｝が設定され非表示となっていることに注意されたい。なお、＃ｔｏｐと＃ｔｏｐなど同一のセレクタが重複した場合には後の記述が優先される。記述９０４により、詳細描画オブジェクト毎のスタイルを指定している。ここでも、一部に４８０ピクセル以下のレイアウト幅用に特別なスタイルを指定している。特に、４８０ピクセル以下のレイアウト幅では＃ｈｅａｄｅｒ．ｐｒ（トップバナー部）に｛ｄｉｓｐｌａｙ：ｎｏｎｅ；｝が設定され非表示となっていることに注意されたい。なお、スタイル情報には、レイアウト情報、フォント情報、色情報などが含まれている。
【００３９】
図１０は図８のＨＴＭＬにおいて＜ｄｉｖ＞要素により指定された描画ブロックを模式的に説明するものである。＃ｔｏｐ１００１が全体を含むブロックである。その中に、＃ｈｅａｄｅｒ１００２（ヘッダ部）、＃ｍｅｎｕ１００３（メインメニュー部）、＃ｃｏｎｔｅｎｔｓ１００４（コンテンツ部）、＃ｆｏｏｔｅｒ１００８（フッタ部）が含まれる。＃ｃｏｎｔｅｎｔｓ１００４はその内部に＃ｓｕｂＬ（サイドメニュー部）、＃ｍａｉｎ１００６（本文）、＃ｓｕｂＲ１００７（サイドバナー部）を含む構成となっている。
【００４０】
図１１は図８のＨＴＭＬおよび図９のスタイルシートを用いて、スマートフォン等の表示幅が狭いデバイス用にレイアウト表示した例である。実際のＷｅｂブラウザにおける表示では、表示デバイスに収まる一部のみが表示されフリック等の操作により縦方向にスクロール表示する必要があることに注意されたい。ここでは、トップバナー部、サイドメニュー部、サイドバナー部が非表示となっている。これは、図９のスタイルシートにてｄｉｓｐｌａｙ：ｎｏｎｅが各ブロックに指定されているためである。メインメニュー部１１０１は表示幅に応じて折り返し表示される。本文１１０２も同様に改行位置が自動調整され、一行に表示できる文字数が図７のデスクトップＰＣの場合に比べて減っている。すなわち、文字を小さくするのではく、改行位置を調整することにより可読性を保ったまま小さい画面に対応している。イメージ１１０３は表示幅に合わせて縮小表示される。スマートフォント用のレイアウトが用意されていることは、Ｗｅｂページをデザインしたデザイナーがスマートフォントで縮小表示されることを意識している、ことを意味する。即ち、縮小したとしても可読性が損なわれないと考えるのが妥当である。
【００４１】
図１２（Ａ）および図１２（Ｂ）はデスクトップＰＣからエコプリントオフの状態で印刷した場合のページレイアウト例である。図１２（Ａ）が１ページ目、図１２（Ｂ）が２ページ目を意味する。印刷用のヘッダ、フッタを含む余白を考慮して、やや縮小されていることを除くと、図７の表示をそのまま二つのページに配置した形になっている。
【００４２】
＜Ｗｅｂページの段組みレイアウト例＞
次に図１３、図１４を用いて、段組みレイアウトの実例を説明する。図１３は、図７から図１１を用いて説明したＷｅｂページを３段組みした例である。デスクトップＰＣからエコプリントオフで印刷した場合は２ページとなるが、ここでは１ページに収まっている。図１１のスマートフォン用のレイアウトを３等分して一つのページに並べて配したかたちとなっている。このように、ｃｏｌｕｍｎ−ｃｏｕｎｔによる段組みの場合は各段の高さが一致するように調整される。１ページに収まっている要因としては、非表示となったバナー等が元々占めていた領域に本文が効率的に配置されたことが大きい。それ以外にも、二つのイメージデータが若干縮小されていることも影響している。
【００４３】
図１４は、図９のスタイルシートを３段組み用に変更したものである。記述１４０１によりｂｏｄｙに３段組みの指定が追加される。記述１４０２と記述１４０３により、４８０ピクセル以下のレイアウト情報が表示幅によらず使用されるようになる。元のスタイルシートから変更された箇所はこの三か所のみである。ちなみに、図５のステップＳ５００８において、２）最小レイアウト幅以外のメディアクエリーによるレイアウト情報を全て削除する、という手順が存在した。例示したスタイルシートでは他のレイアウト幅によるメディアクエリーは存在しないため、特に削除は行われていない。
【００４４】
＜効果＞
ウエブを閲覧する端末は多様化しており、複数の表示デバイスに合わせたウエブページのレイアウト情報は、異なる表示デバイスに合わせてデザインしたものであることが一般的である。例えば、デスクトップＰＣと携帯端末で同一のコンテンツを閲覧させるＷｅｂサイトを考える。デスクトップＰＣ用にはナビゲーションバーやバナー広告などの補助的なコンテンツを表示しても、携帯端末用には表示しないようにデザインされる。また、表示するイメージデータは携帯端末で縮小表示されたとしても判別可能なようにデザインされる。全てのコンテンツについて保証されるものではないが、コンテンツの制作者（デザイナー）がこのような画面サイズの違いを配慮してデザインしている可能性が非常に高い。特に表示エリアの小さい携帯端末向けのレイアウト情報はコンテンツの重要な部分を集約してデザインすることで可読性を保つのが一般的である。これらは、携帯端末向けのデザインを第一に考えるモバイルファーストのデザイン思想が普及していることも一因として挙げることができる。そして、携帯端末等の小型画面とパーソナルコンピュータの大型画面との両方に対応するレイアウトは、スタイルシートに画面サイズによる条件分けされるのもまた一般的である。
【００４５】
そこで本実施形態に係る発明は、視認性が考慮された小型画面用のレイアウトを利用して多段組みに再構成することで、視認性を維持しつつ、文書を配置する空間の効率的な利用を実現する。すなわち、携帯端末向けのレイアウト情報を使って段組みレイアウトすることにより、さらなる情報集約が可能となる。レイアウト幅が狭い場合にはテキストの折り返し位置を調整することにより文字サイズを小さくすることなくレイアウト可能である。その結果として、印刷時の消耗品の削減に大きく貢献しつつ、文書本来の美観や可読性を損なうことも無いレイアウトが可能となる。また、省資源という目的ではなくとも、一覧性の高い情報集約表示や印刷のためのレイアウト手段として有用である。
【００４６】
［実施形態２］
第２の実施形態では、第１の実施形態で説明した段組みレイアウトを情報処理装置であるホストコンピュータ上のＷｅｂブラウザにて実行する方法を示す。
【００４７】
＜ホストコンピュータにおけるシステム構成図＞
図１５（Ａ）は本実施形態のレイアウトシステムのシステム構成図である。コンピュータ１５０１はネットワークを介してＷｅｂサーバ１５０３およびプリンタ１５０６に接続される。Ｗｅｂブラウザ１５０２はコンピュータ１５０１のオペレーティングシステム上で動作するアプリケーションプログラムである。Ｗｅｂブラウザ１５０２は指定されたＵＲＬで特定されるＷｅｂサーバにアクセスし、ＨＴＭＬデータやスタイルシート、ビットマップデータ等のＷｅｂページをダウンロードして表示を実行する。データ受信部１５０９はｈｔｔｐプロトコルを用いてＷｅｂページを取得する。ページ形成部１５０８はＷｅｂページの保持とＨＴＭＬデータの解釈による画面表示データの形成を実行する。ユーザインターフェース１５０７はメニューコマンドやＷｅｂページ中のリンクやボタンに対する入力に応じた処理を実行する。例えば、Ｗｅｂページ中のリンクがクリックされた場合、そのリンク先のＷｅｂページの取得をデータ受信部１５０９に指示する。印刷制御部１５１０はＷｅｂページの印刷やレイアウト変更などの処理を実行する。印刷制御部１５１０は予めＷｅｂブラウザ１５０２の一部として組み込まれていても、後から追加可能なプラグイン形式の何れでもかまわない。グラフィックエンジン１５０４はオペレーティングシステムの描画処理を制御するモジュールであり、印刷制御部１５１０からの描画命令を仲介する役割を担う。プリンタドライバ１５０５はグラフィックエンジン１５０４によって仲介される描画命令を受けて、ＰＤＬデータに変換して出力するモジュールである。プリンタ１５０６はＰＤＬデータによる印刷が可能な電子写真方式あるいはインジェット方式のプリンタである。
【００４８】
＜コンピュータのハードウェアブロック図＞
図１５（Ｂ）はコンピュータ１５０１のハードウェアブロックを説明する図である。ＣＰＵ１５２１はＲＯＭ１５２３あるいはＨＤＤ１５２４に記憶されたプログラムをＲＡＭ１５２２にロードし、実行する。実行されるプログラムには、Ｗｅｂブラウザや印刷制御部１５１０を実現するためのプログラムを含む。さらに、システムバス１５２７に接続される各デバイスをＣＰＵ１５２１が統括的に制御する。ＲＡＭ１５２２は、ＣＰＵ１５２１の主メモリ、ワークエリアとして機能する。ＲＯＭ１５２３には電源ＯＮ時に実行されるブートプログラムが格納され、ＨＤＤ１５２４にはオペレーティングシステムとアプリケーションプログラム、データファイル等が格納される。ＮｅｔｗｏｒｋＩＦ１５２５はローカルエリアネットワークに接続し、外部装置との入出力を担う。ＤｉｓｐｌａｙＩＦ１５２６はディスプレイとのインターフェース部で、ディスプレイに表示する画像データを出力する。
【００４９】
＜段組みレイアウトの処理フロー＞
図１６を用いて、ホストコンピュータ上のＷｅｂブラウザによる段組みレイアウト処理フローについて説明する。図１６の処理フローはＲＡＭ１５２２にロードされた図１５（Ａ）の印刷制御部１５１０をＣＰＵ１５２１が実行することにより実現される。第１の実施形態とは異なり、第２の実施形態ではＷｅｂページの新たなダウンロードは不要であり、ページ形成部１５０８に保持されたＷｅｂページが印刷時そのまま利用可能な点が異なる。本フローでは図４および図５のフローと異なる点を中心に説明する。
【００５０】
本フローはＷｅｂブラウザのメニュー等（図示しない）において、印刷指示が実行された後の印刷制御部１５１０の処理を示すものである。ステップＳ１６０１において、印刷制御部１５１０は印刷ＵＲＬのＷｅｂページが複数のレイアウトを有するか否か判定する。この処理は図４のステップＳ４００５に該当する。Ｙｅｓの場合はステップＳ１６０２へ進み、Ｎｏの場合はフローを終了する。
【００５１】
ステップＳ１６０２において、印刷制御部１５１０は印刷用紙の指定よりページサイズを取り出す。印刷用紙サイズの指定は図示しないＷｅｂブラウザの印刷画面により設定された値を用いる。指定されたページサイズが論理ページのサイズとして扱われる。
【００５２】
ステップＳ１６０３からＳ１６１１は図５のステップＳ５００３からＳ５０１１に対応する。ステップ１６０９の処理がグラフィックエンジン１５０４を仲介して為される点を除くと処理に関して違いが無いため、詳細な説明は割愛する。なお、第２の実施形態ではエコプリント設定は割愛したが、同様に印刷画面等に設定を追加することにより実現できることは自明である。
【００５３】
本実施形態によれば、印刷対象のデータがＰＤＬデータではなくＨＴＭＬデータとして与えられている点、文書の変換処理をＷｅｂブラウザあるはそのプラグインにより実行する点において実施形態１と相違する。しかしながらそれらの点を除けば同様の効果を奏する。また実施形態１との相違により、ＨＴＭＬデータを改めて取得する必要がない点で、より効率的であり、またいったんＰＤＬ化の処理を経ることがない点においても効率的である。
【００５４】
［実施形態３］
第３の実施形態では、第１の実施形態で説明した段組みレイアウトをクラウドシステムとプリンタで協調動作して行う方法を示す。
【００５５】
＜クラウドサーバを含むシステム構成図＞
図１７は本実施形態のレイアウトシステムのシステム構成図である。クラウドサーバ１７０２とプリンタ１７０１はインターネットを介して接続される。レイアウタ１７０３は図２（Ａ）のレイアウタ２０３と全く同じ機能を有し、この部分が全てプリンタ１７０１からオフロードされてクラウドサーバに委ねられることになる。クラウドサーバ側の通信部１７０４とプリンタ側の通信部１７０５がｈｔｔｐプロトコルを用いてレイアウタ１７０３とプリンタ１７０１の通信を仲介する。ジョブ制御部による段組みレイアウト依頼が通信部１７０４、１７０５を介してクラウドにＰＯＳＴされる。ＰＯＳＴするとは、クライアントから、指定したＷｅｂサーバに対してデータとともにリクエストを送信することであり、ここではデータとして、段組みレイアウト依頼を示すコードと、印刷対象のＨＴＭＬデータあるいはＰＤＬデータとを含む。クラウドサーバ側では、上述した方法で、段組み数を計算し、段組みレイアウトが適用されたＰＤＬデータを生成する。レイアウト変換が完了したらＰＯＳＴに対するＡｃｋコマンドと変換済みＰＤＬデータのＵＲＬを返却する。プリンタ１７０１はそのＵＲＬに対するＧＥＴを実行して、変換済みのＰＤＬデータを取得する。その他、レイアウタ１７０３を含む各モジュールの処理は第１の実施形態と全く同じであるため省略する。レイアウタ１７０３にはＷｅｂブラウザに相当する機能の大部分が必要になるため、処理負荷が重く、本実施形態のようにクラウドサーバ側に負荷を移す構成も合理的である。
【００５６】
［その他の実施例］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2015039824.tif 000003
【図２】
2015039824.tif 000004
【図３】
2015039824.tif 000005
【図４】
2015039824.tif 000006
【図５】
2015039824.tif 000007
【図６】
2015039824.tif 000008
【図７】
2015039824.tif 000009
【図８】
2015039824.tif 000010
【図９】
2015039824.tif 000011
【図１０】
2015039824.tif 000012
【図１１】
2015039824.tif 000013
【図１２】
2015039824.tif 000014
【図１３】
2015039824.tif 000015
【図１４】
2015039824.tif 000016
【図１５】
2015039824.tif 000017
【図１６】
2015039824.tif 000018
【図１７】
2015039824.tif 000019