(57)【要約】【課題】ひとつのリフロー形式の電子文書データを印刷前にプレビュー表示する場合、リフローのレイアウト結果を全ページ表示すると、内容確認の手間が増え、使いづらい。【解決手段】リフロー形式の電子文書データのレイアウト結果が、特徴のあるレイアウト属性を全ページより少ないページ数で包含するように、ページを抽出してプレビュー表示する。【選択図】図１２
2014174900.tif 000002
【特許請求の範囲】
【請求項１】
複数ページを含む文書データのプレビュー画像を生成する画像処理装置であって、
複数ページのレイアウトに関する情報を取得する取得手段と、
前記取得された情報に基づいて、文書データのページごとのレイアウトにおいてページ間の変化があるページを特定する特定手段と、
前記特定されたページの前記文書データのプレビュー画像を生成する生成手段と、
前記生成されたプレビュー画像を送信先に送信する送信手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記特定手段は、各ページに含まれるレイアウト属性を抽出し、該抽出したレイアウト属性を全体として含むページ群を前記変化があるページとして特定することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記特定手段は、各ページに含まれるレイアウト属性の分布を抽出し、該レイアウト属性の分布の組み合わせによって前記変化があるページを特定することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記特定手段は、前記レイアウト属性の分布に従って、各ページの並び順をソートし、同じ属性を有するページをグループ化し、グループの先頭ページを用いて前記変化があるページを特定することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記特定手段は、複数の属性を含むページを、各属性を有する別個のページとして扱うことによって前記変化があるページを特定することを特徴とする請求項１から４のいずれか一項に記載の画像処理装置。
【請求項６】
前記特定手段は、相互に相関の高いレイアウトの属性を有する複数のページを、前記変化があるページとして特定することを特徴とする請求項１から５のいずれか一項に記載の画像処理装置。
【請求項７】
前記特定手段は、前記相互に相関の高いレイアウトの属性を有する複数のページを結合した単一のページとして扱い、前記結合した単一のページに新たな属性を付加することを特徴とする請求項６に記載の画像処理装置。
【請求項８】
前記特定手段は、第１ページと最終ページとを変化があるページとして予め特定することを特徴とする請求項１から７のいずれか一項に記載の画像処理装置。
【請求項９】
前記特定手段は、第１ページに含まれるレイアウト属性を記憶手段に記憶し、以降のページに対して、記憶しているレイアウト属性と異なるレイアウト属性を有するページを前記第１ページとともに変化があるページとして特定し、該異なるレイアウト属性を前記記憶手段に記憶することを特徴とする請求項１から３のいずれか一項に記載の画像処理装置。
【請求項１０】
前記生成手段は、前記特定手段によって特定されていないページを含む前記文書データのプレビュー画像を生成し、
前記送信手段は、前記生成されたプレビュー画像と、前記特定手段によって特定された変化があるページを識別する情報とを送信先に送信する
ことを特徴とする請求項１から９のいずれか一項に記載の画像処理装置。
【請求項１１】
前記文書データはリフロー型の文書データであることを特徴とする請求項１から１０のいずれか一項に記載の画像処理装置。
【請求項１２】
前記文書データは、固定的なレイアウトを有さない文書データであることを特徴とする請求項１から１１のいずれか一項に記載の画像処理装置。
【請求項１３】
前記文書データは、処理を行う装置の基準となる値からの相対的な値によってレイアウトが特定されることを特徴とする請求項１から１２のいずれか一項に記載の画像処理装置。
【請求項１４】
前記文書データを、請求項１から１３のいずれか一項に記載の画像処理装置に送信する送信手段と、
前記生成されたプレビュー画像を受信する受信手段と、
前記受信されたプレビュー画像を表示する表示手段と、
を有することを特徴とする印刷装置。
【請求項１５】
前記表示手段は、レイアウトのテンプレートを表示し、
前記送信手段は、前記表示されたテンプレートの選択に応じたレイアウトに関する情報を前記画像処理装置に送信することを特徴とする請求項１４に記載の印刷装置。
【請求項１６】
前記受信されたプレビュー画像を表示するモードと、前記送信した文書データの全てのページのプレビュー画像とを表示するモードとを切り替える切り替え手段をさらに有することを特徴とする請求項１４または１５に記載の印刷装置。
【請求項１７】
前記受信手段は、前記画像処理装置の特定手段によって特定されたページおよび特定されていないページを含むページのプレビュー画像と、前記特定されたページを識別する情報とを受信し、
前記表示手段は、前記受信手段で受信した情報とプレビュー画像とに基づいて前記切り替え手段によって切り替えられたモードに応じたプレビュー画像を表示することを特徴とする請求項１６に記載の印刷装置。
【請求項１８】
複数ページを含む文書データのプレビュー画像を生成する画像処理装置であって、
複数ページのレイアウトに関する情報を取得する取得手段と、
前記取得された情報に基づいて、文書データのページごとのレイアウトにおいてページ間の変化があるページを特定する特定手段と、
前記特定されたページの前記文書データのプレビュー画像を生成する生成手段と、
前記生成されたプレビュー画像を表示する表示手段と、
を有することを特徴とする画像処理装置。
【請求項１９】
印刷対象のリフロー型の文書データを入力する入力手段と、
前記文書データの印刷レイアウトを選択する選択手段と、
前記選択手段で選択された印刷レイアウトに従った前記文書データの印刷プレビュー画面を表示する表示手段と
前記表示手段で全ページの印刷プレビュー画面を表示するか、前記全ページより少ないページ数であってレイアウトに特徴を有するページの印刷プレビュー画面を表示するかを切り替える切り替え手段と
を有することを特徴とする印刷装置。
【請求項２０】
複数ページを含む文書データのプレビュー画像を生成する画像処理方法であって、
複数ページのレイアウトに関する情報を取得する取得ステップと、
前記取得された情報に基づいて、文書データのページごとのレイアウトにおいてページ間の変化があるページを特定する特定ステップと、
前記特定されたページの前記文書データのプレビュー画像を生成する生成ステップと、
前記生成されたプレビュー画像を送信先に送信する送信ステップと、
を有することを特徴とする画像処理方法。
【請求項２１】
複数ページを含む文書データのプレビュー画像を生成する画像処理方法であって、
複数ページのレイアウトに関する情報を取得する取得ステップと、
前記取得された情報に基づいて、文書データのページごとのレイアウトにおいてページ間の変化があるページを特定する特定ステップと、
前記特定されたページの前記文書データのプレビュー画像を生成する生成ステップと、
前記生成されたプレビュー画像を表示する表示ステップと、
を有することを特徴とする画像処理方法。
【請求項２２】
印刷対象のリフロー型の文書データを入力する入力ステップと、
前記文書データの印刷レイアウトを選択する選択ステップと、
前記選択ステップで選択された印刷レイアウトに従った前記文書データの印刷プレビュー画面を表示する表示ステップと
前記表示ステップで全ページの印刷プレビュー画面を表示するか、レイアウトに特徴を有するページのみの印刷プレビュー画面を表示するかを切り替える切り替えステップと
を有することを特徴とする印刷方法。
【請求項２３】
コンピュータを、請求項１から１３のいずれか一項、または、請求項１８に記載の画像処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リフロー型の電子文書データの印刷画像をプレビュー表示するための画像処理装置、画像処理方法、およびプログラムに関する。
【背景技術】
【０００２】
情報携帯端末の高性能化に伴い、複数端末間で文書を共有する場面が増加している。情報携帯端末で共有する文書として、ＩＤＰＦ（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｄｉｇｉｔａｌ  Ｐｕｂｌｉｓｈｉｎｇ  Ｆｏｒｕｍ）が規定するＥＰＵＢという電子文書データのフォーマットが存在する。ＥＰＵＢは各種の情報携帯端末、特に多種多様なスマートフォンやタブレット端末で文書を共有し閲覧する際の電子文書データとして優れている。ＥＰＵＢの備える「リフロー型」という特徴が、さまざまなサイズの情報携帯端末の端末画面に表示するのに適切だからである。リフロー型とは、固定的なレイアウトを有していないフォーマットのことである。リフロー型のフォーマットでは、画面のサイズや文字サイズに応じてページ内に表示されるレイアウトを変えることが可能である。リフロー型の電子文書データでは、例えば文字サイズを変動することでページ内に表示される文字数も変動される。このようにリフロー型の電子文書データは、主として情報携帯端末の端末画面に表示することを想定しているが、リフロー型の電子文書データを何かしらの媒体、例えば紙媒体に出力するという利用形態も考えられる。
【０００３】
所定のデータを紙媒体に出力する際のプレビュー表示を行う技術として特許文献１の技術がある。特許文献１はリフロー型の電子文書データを印刷する技術ではなく、バリアブルプリントに関する技術である。バリアブルプリントとは、同じ印刷レイアウトにおいて個々のデータ項目を印刷ページ毎に変える形態の印刷のことである。特許文献１の技術は、印刷画像をプレビュー表示する際に、レイアウトを行い、コンテンツの面積という特定のレイアウト尺度に基づき、標準ページと変化の大きいページとを抽出してプレビュー表示する、という技術である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２１６１８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
リフロー型の電子文書データ（以下ではＥＰＵＢとして説明する）では、固定的なレイアウトが定まっていない。そのため、ＥＰＵＢ形式のコンテンツを印刷する場合には、なんらかのページレイアウトをＥＰＵＢ形式のコンテンツに当てはめる必要がある。固定的なレイアウトが定まっていないので、一般にユーザは、ＥＰＵＢ形式のコンテンツの印刷を実行する前に、ページレイアウトが適切か否かをプレビュー表示を用いて確認することになる。
【０００６】
しかしながら、リフロー型の電子文書データの印刷画像を確認するために好適なプレビュー表示を行う技術が存在していないという課題がある。特許文献１の技術は、固定的なレイアウトが定まっていない形式のデータのプレビュー表示に適しておらずプレビュー表示すべきページの抽出漏れが生じてしまう。
【課題を解決するための手段】
【０００７】
本発明は、複数ページを含む文書データのプレビュー画像を生成する画像処理装置であって、複数ページのレイアウトに関する情報を取得する取得手段と、前記取得された情報に基づいて、文書データのページごとのレイアウトにおいてページ間の変化があるページを特定する特定手段と、前記特定されたページの前記文書データのプレビュー画像を生成する生成手段と、前記生成されたプレビュー画像を送信先に送信する送信手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、リフロー型の電子文書データを印刷する際に、適切なプレビュー表示をすることができる。
【図面の簡単な説明】
【０００９】
【図１】印刷装置のハードウェア構成を示す図である。
【図２】サーバ装置のハードウェア構成と印刷装置と連結構成を示す図である。
【図３】サーバ装置のモジュールを示す図である。
【図４】サーバ装置と印刷装置との連携したフローチャートを示す図である。
【図５】ＥＰＵＢのフォーマットを示す図である。
【図６】ＥＰＵＢ形式のコンテンツのフォーマットを示す図である。
【図７】ＥＰＵＢのＣＳＳの例と適用表示例を示す図である。
【図８】テンプレート選択のＵＩ例を示す図である。
【図９】テンプレート適用の表示例を示す図である。
【図１０】テンプレートを適用した文書のレイアウト例を示す図である。
【図１１】テンプレートを適用した文書のＵＩ表示例を示す図である。
【図１２】テンプレートを適用した文書の特徴ページの抽出と、ＵＩ表示例とを示す図である。
【図１３】特徴ページの抽出処理を示すフローチャートである。
【図１４】属性分布と処理手順とを説明する図である。
【図１５】属性分布の処理手順を説明する図である。
【図１６】属性分布の処理手順を説明する図である。
【図１７】テンプレートを適用した文書のレイアウト例を示す図である。
【図１８】特徴ページの抽出処理を示すフローチャートである。
【図１９】属性分布の処理手順を説明する図である。
【図２０】プレビュー画像の生成と特徴ページの抽出処理のフローチャートを示す図である。
【図２１】属性分布の処理手順を説明する図である。
【発明を実施するための形態】
【００１０】
以下、具体的な実施例を説明するに先立って、ＥＰＵＢなどのリフロー型の電子文書フォーマットを印刷する際にプレビュー表示する際に生じ得る点について補足して説明する。以下、リフロー型の電子文書フォーマットとしてＥＰＵＢを用いる場合を例に挙げて明細書全般を説明することとする。
【００１１】
ＥＰＵＢは固定的なレイアウトを有していないため、ＥＰＵＢ形式のコンテンツ（以下、ＥＰＵＢコンテンツと称する）を印刷する際にはページレイアウトを特定するためのパラメータを指定する必要がある。例えば、ページレイアウトのパラメータとしては「フォントフェイス」、「フォントサイズ」、「ページマージン」などがあげられる。しかしながら、これらの値だけを知ってもユーザは印刷物の最終的なページレイアウトを想像できないのが普通である。そのため、ページレイアウトのパラメータをＥＰＵＢコンテンツに当てはめた印刷ページの印刷画像をプレビュー表示する必要がある。
【００１２】
ここで、印刷装置に直接ＥＰＵＢコンテンツのデータをＵＳＢメモリなどの媒体を使って入力し、ＰＣ等の外部機器を介さず、印刷装置の操作パネルから直接ＥＰＵＢコンテンツを印刷することを考える。
【００１３】
印刷装置はオフィスで共用の装置として利用されることが多いので、印刷装置を占有する時間は短いことが求められる。また、一般に印刷装置の操作系は高速なレスポンスが望めないことが多い。よって、印刷装置上で直接ＥＰＵＢコンテンツを印刷する場合、効率よくページレイアウトを確認して印刷作業を進めることが求められる。
【００１４】
前述のように、固定的なレイアウトを前もって持たないリフロー型のＥＰＵＢコンテンツでは、印刷プレビューが印刷装置上で必要となる。一般的に、印刷プレビューにおいては、全ページをプレビュー対象として表示する。しかし、印刷装置を占有する時間を短くする観点から見れば、全ページをプレビューすることは効率が悪い。この効率の悪さは、特に、ページ数が多いＥＰＵＢコンテンツの印刷プレビューで顕著となる。例えば、レイアウトした結果が１００ページになったとして、そのうちの多くは文字による本文コンテンツが続くだけのページが多数存在するかもしれない。そのような類似したページを、ひたすらめくる動作を行い表示して内容確認することは、表示画面の比較的小さい印刷装置上での操作方法としては得策ではない。レイアウトが不定であるＥＰＵＢコンテンツを特定のレイアウトに従ってページ構築する場合、全ページの中から特徴となるページだけを取り出して印刷画像をプレビュー表示で確認できれば、必要最小限の確認と操作時間で印刷処理に進むことが可能となる。
【００１５】
以下、本発明を実施するための各種の実施例について図面を用いて説明する。なお、以下の実施例において示す構成は一例にすぎず、本発明は図示された構成に限定されるものではない。
【実施例１】
【００１６】
＜印刷装置のシステム構成＞
本実施例に係るシステムを説明する。図１は印刷装置のコントローラ１００の構成を説明するブロック図である。コントローラ１００は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、内部記憶装置１０４、操作部Ｉ／Ｆ１０５、ネットワークＩ／Ｆ１０６、圧縮部１０７、外部記憶装置Ｉ／Ｆ１０８、ＲＩＰ１０９を有する。また、コントローラ１００は、伸張部１１１、画像処理部１１２、プリンタＩ／Ｆ１１３を有する。コントローラ１００は、各Ｉ／Ｆを通じて操作部１１０、外部記憶装置１２０、ＷＡＮやＬＡＮなどのネットワーク１３０、プリンタ部１４０と接続する。操作部１１０はタッチパネルディスプレイに代表されるように、表示画面を有する。
【００１７】
このような印刷装置において、ユーザが操作部１１０からＥＰＵＢコンテンツの印刷プレビュー開始を指示する。すると、コントローラ１００に接続された外部記憶装置（ＵＳＢメモリなど）１２０あるいは内部記憶装置（ハードディスクなど）１０４からユーザによって指定されたＥＰＵＢコンテンツのデータが読み込まれる。
【００１８】
コントローラ１００は不図示のスキャナ部やプリンタ部１４０と電気的に接続されており、一方ではＬＡＮやＷＡＮなどのネットワーク１３０を介して外部の装置などと接続されている。これにより画像データやデバイス情報の入出力が可能となっている。
【００１９】
ＣＰＵ１０１は、ＲＯＭ１０２に記憶された制御プログラム等に基づいて接続中の各種デバイスとのアクセスを統括的に制御すると共に、コントローラ内部で行われる各種処理についても統括的に制御する。ＲＡＭ１０３は、ＣＰＵ１０１が動作するためのシステムワークメモリであり、かつ画像データを一時記憶するためのメモリでもある。ＲＯＭ１０２には装置のブートプログラムなどが格納されている。内部記憶装置１０４は一般的にはハードディスクドライブであり、システムソフトウェアや画像データを格納することが可能となっている。
【００２０】
操作部Ｉ／Ｆ１０５は、システムバス２２０と操作部１１０とを接続するためのインタフェイス部である。この操作部Ｉ／Ｆ１０５は、操作部１１０に表示するための画像データをシステムバス２２０から受取り操作部１１０に出力すると共に、操作部１１０から入力された情報をシステムバス２２０へと出力する。
【００２１】
ＮｅｔｗｏｒｋＩ／Ｆ１０６はＷＡＮやＬＡＮなどのネットワーク１３０及びシステムバス２２０に接続し、情報の入出力を行う。圧縮部１０７は、送信前の画像データの解像度を所定の解像度やプリンタ能力に合わせた解像度に変換する。なお圧縮及び伸張にあたってはＪＢＩＧ(Joint Bi-lebel Image experts Group)、ＭＭＲ(Modified Modified READ)などの方式が用いられる。また、ＭＲ(modified READ：relative element address designate)、ＭＨ(modified huffman)などの方式が用いられる。画像バス２３０は画像データをやり取りするための伝送路であり、ＰＣＩバス又はＩＥＥＥ１３９４で構成されている。
【００２２】
伸張部１１１は、圧縮された画像データを伸張した後にラスタ展開して画像処理部１１２に送る。
【００２３】
画像処理部１１２は、伸張部１１１から送られた画像データを受取り、この画像データに付随させられている属性データを参照しながら画像データに画像処理を施す。画像処理後の画像データは、プリンタＩ／Ｆ１１３を介してプリンタ部１４０に出力される。
【００２４】
プリンタ部１４０は、コントローラ１００から受取った画像データを用紙上に形成する画像形成デバイスである。また、プリンタ部１４０には、異なる用紙サイズ又は異なる用紙向きを選択可能とする複数の用紙カセットが設けられている。排紙トレイには印刷後の用紙が排出される。
【００２５】
図２は、印刷装置のコントローラ１００とクラウド上のサーバ装置２００が、インターネットであるネットワーク１３０を介して接続されている状態を示すブロック図である。なお、本実施例では印刷装置の送信先であるクラウド上のサーバ装置２００は、インターネットを通じて接続されているものとして説明するが、ＬＡＮなどのローカルなネットワークを通じて接続されていてもよい。
【００２６】
本実施例では、プレビュー確認するための印刷画像を示す印刷画像データを生成する機構は、クラウドのサーバ装置上に設ける。クラウド側に印刷装置の機能を一部委譲することで、機能拡張をクラウド上だけで容易にすることができる。
【００２７】
サーバ装置２００は、Ｎｅｔｗｏｒｋ Ｉ／Ｆ２０１を介してネットワーク１３０と接続し、さらにネットワーク１３０の先には印刷装置のコントローラ１００が存在している。
【００２８】
サーバ装置２００は他に、内部記憶装置（ハードディスクなど）２０４から読み込んだシステムソフトウェアや、本実施例の説明する印刷プレビュー生成プログラムをＣＰＵ２０２で実行する。ＲＯＭ２０５には、サーバ装置２００のブートプログラムなどが保存され、ＲＡＭ２０３はサーバ装置２００のワークメモリに使用される。
【００２９】
このような構成により、印刷装置のコントローラ１００は、クラウド側のサーバ装置２００に対してＥＰＵＢコンテンツを含む文書ファイルの印刷用のプレビュー画像データの生成を依頼し、その結果を再びネットワーク経由で受け取ることが可能となる。
【００３０】
図３はクラウド側のサーバ装置２００内に含まれるモジュールの一例を記載したブロック図である。サーバ装置２００は、リクエスト受付部３０１、リクエスト解析部３０２、レイアウト部３０３、レイアウト特徴解析部３０４、特徴ページ判定部３０５、およびプレビュー画像生成部３０６を有する。
【００３１】
リクエスト受付部３０１は、印刷装置からの印刷対象となる複数ページを含む文書データのプレビュー画像生成リクエストを受け付ける。リクエスト受付部３０１は、送信されたリクエストに含まれる文書データを取得し、内部記憶装置２０４に保存する。リクエスト解析部３０２は、受け付けたリクエストを解析する。リクエスト解析部３０２は、ＥＰＵＢコンテンツの文書データのファイル展開や、ＥＰＵＢコンテンツの文書データに付加されるレイアウト設定に記載される情報を解析する。
【００３２】
レイアウト部３０３は、リクエスト解析部３０２による解析によって展開したＥＰＵＢ文書データをリクエスト解析部３０２による解析によって得られたレイアウト設定に従ってページ領域にレイアウトする。レイアウト特徴解析部３０４は、レイアウト部３０３と並行してレイアウトの特徴となる情報を解析する。特徴ページ判定部４５は、ページが特徴ページか否かを判定し、プレビューすべき特徴ページを抽出する。特徴ページとは、レイアウトに特徴を有するページのことである。詳細については後述する。
【００３３】
プレビュー画像生成部３０６は、レイアウト部３０３が生成したレイアウトに従ってＥＰＵＢコンテンツを展開し、プレビュー画像として印刷装置の可読なフォーマットに変換したデータを生成する。
【００３４】
以上説明した図３の各モジュールは、クラウド側のサーバ装置２００のＣＰＵ２０２が内部記憶装置２０４に格納されているプログラムを実行することで実現される。
【００３５】
次に、印刷装置のコントローラ１００とサーバ装置２００とのやり取りのフローを図４を用いて説明する。印刷装置のコントローラ１００側の処理がステップＳ４０１からＳ４０６に対応し、クラウド側のサーバ装置２００の処理がステップＳ４１１からＳ４１５に対応する。
【００３６】
ステップＳ４０１において、コントローラ１００は、操作部Ｉ／Ｆ１０５を介して、ユーザから文書ファイルと印刷レイアウトとの指定を受け付ける。指定を受けた印刷レイアウトに基づいて当該印刷レイアウトを示す印刷レイアウト情報が決定される。印刷レイアウトについては後述する。
【００３７】
ステップＳ４０２において、印刷装置は指定を受け付けた文書ファイルがＥＰＵＢコンテンツのデータであるか否かを判定する。この判定は、例えば文書ファイルの拡張子を参照することによって行われる。ＥＰＵＢコンテンツのデータであるとコントローラ１００が判定した場合は、コントローラ１００は印刷用のプレビュー画像生成のリクエストをネットワーク経由でサーバ装置２００に送信する。このリクエストには、文書ファイルと印刷レイアウト情報とが含まれる。
【００３８】
サーバ装置２００のリクエスト受付部３０１は、ステップＳ４１１において、コントローラ１００から送信されたプレビュー画像生成のリクエストを受け付ける。ステップＳ４１２において、リクエスト解析部３０２は、受け付けたリクエストを解析し、リクエストに含まれる文書ファイルと、レイアウト情報とを取得する。
【００３９】
ステップＳ４１３においてレイアウト部３０３は、ステップＳ４１２にて取得したＥＰＵＢコンテンツの文書ファイルを、ステップＳ４１２にて取得したレイアウト情報に沿ってレイアウトする。プレビュー画像生成部３０６はレイアウトに従って配置されたＥＰＵＢコンテンツの各ページのプレビュー画像データを生成する。また、レイアウト部３０３は、ＥＰＵＢコンテンツの文書ファイルをレイアウトする際に、各属性の分布を示す情報を生成する。各属性分布を示す情報は、ステップＳ４１４の処理で用いられる。詳細については後述する。ステップＳ４１４では、特徴ページ判定部３０５は、レイアウト部３０３、レイアウト特徴解析部３０４と連携して、特徴ページを抽出する。ステップＳ４１４の詳細については後述する。ステップＳ４１５において、サーバ装置２００は、生成されたプレビュー画像データと、特徴ページを示す特徴ページ情報とを印刷装置のコントローラ１００に返信する。なお、ステップＳ４１５においては、全てのページについての生成されたプレビュー画像データを印刷装置に送信してもよいし、特徴ページ情報によって識別されるページについてのプレビュー画像データのみを送信してもよい。特徴ページ情報によって識別されるページについてのプレビュー画像データのみを送信する場合、サーバ装置２００は、次の処理をしてもよい。すなわち、コントローラ１００からの特徴ページ以外のページのプレビュー画像データの送信依頼に応じて未送信のページのプレビュー画像データを送信してもよい。
【００４０】
次に、コントローラ１００側の処理について説明を続ける。ステップＳ４０２においてＥＰＵＢコンテンツのデータではないと判定した場合、ステップＳ４０３においてコントローラ１００は印刷装置内においてプレビュー画像データを生成する。ステップＳ４０２では、説明を簡素化するためにＥＰＵＢコンテンツであるか否かを判定基準として説明したが、ステップＳ４０２は、印刷装置自身でプレビュー画像が生成可能な文書形式であるか否かを判定している処理ともいえる。印刷装置自身でプレビュー画像が生成可能であるとは、コントローラ１００がそのデータフォーマットに対応しているか、または文書のデータ量などから総合的に判定することができる。また、予めＥＰＵＢ形式などのリフロー型の所定の形式の文書については、印刷装置自身でプレビュー画像が生成可能であってもサーバー装置側に処理を委譲するように設定がされていてもよい。
【００４１】
ステップＳ４０２でＥＰＵＢコンテンツでないと判定した場合、すなわち、印刷装置自身でプレビュー画像が生成可能な文書形式であると判定した場合、ステップＳ４０３で印刷装置内においてプレビュー画像を生成する。典型例としては、ＰＤＦファイルなどのように各ページのレイアウトが定まっている非リフロー型の文書形式の場合には、ステップ４０３において、印刷装置は、印刷装置内部においてプレビュー画像データを生成してもよい。
【００４２】
ステップＳ４０３を通過する場合およびサーバ装置２００側の処理を通過する場合のいずれの場合においても、ステップＳ４０４において、コントローラ１００は、生成されたプレビュー画像データを受信する。そして、コントローラ１００は、受信したプレビュー画像データに従ってプレビュー画像を操作部１１０に表示する。ステップＳ４０５において、コントローラ１００は操作部１１０を介するユーザ入力により「抽出プレビュー」が選択されるか判定する。抽出プレビューが選択された場合、ステップＳ４０６においてコントローラ１００は、抽出プレビューを操作部１１０に表示する。抽出プレビューの詳細については後述する。
【００４３】
なお、上記の処理においては、抽出プレビューがユーザによって指定された場合に抽出プレビューを行う例を説明しているが、デフォルトで抽出プレビューを行う処理であってもよい。この場合、ステップＳ４０６は、プレビュー画面を切り替える処理としてもよい。
【００４４】
＜印刷レイアウト＞
次に、ＥＰＵＢフォーマットの文書データの印刷レイアウトについて説明する。
【００４５】
図５はリフロー形式の文書データであるＥＰＵＢファイルの最小の構造を模式的に表した図である。
【００４６】
ルートとなる５０１の下に、テキストのエンコーディングを記載するmimetype５０２が含まれる。また、ルートとなる５０１の下に、コンテンツの場所を示すcontainer.xml５０４を格納するフォルダMETA-INF５０３、および文書コンテンツを格納するフォルダOEBPS５０５が含まれる。さらにフォルダOEBPS５０５の下には、コンテンツの構造を示すpackage.opf５０６（ファイル名は任意）、目次情報を保持するnav.xhtml５０７が含まれる。また、フォルダOEBPS５０５の下には文書の内容そのものを保持するcontent.xhtml５０８（ファイル名は任意）、表示するためのスタイル情報を保持するＣＳＳスタイルシートstylesheet.css５０９が含まれる。
【００４７】
図６は、図５のコンテンツ部分にあたるＸＨＴＭＬ５０８の内容の一例である。６０１はＸＨＴＭＬ文書全体を示す。６０２は<h1>〜</h1>で章名を記述し、６０３は、<p>〜</p>で区切られる本文テキストを記述している。前述したＥＰＵＢフォーマットにおいては、このようにコンテンツをＸＨＴＭＬ形式で記述する。例えば、６０２の「章名」の文字列は、“<h1>Lorem ipsum</h1>”のように記述する。６０３の「本文テキスト」の文字列は、“<p>Dolor sit amet…</p>”のように記述する。なお、その他のリフロー形式の文書としては、ＨＴＭＬ形式やマイクロソフト社のワード形式等も該当し、それぞれで定義された形式で記述される。本実施例ではＥＰＵＢを主体として記載を行うが、これら他フォーマットであっても、リフローの表示形式をとる限り、同様の考え方が可能である。
【００４８】
図７は、ＥＰＵＢで使用されるスタイル情報ＣＳＳ（Cascading Style Sheets）の一例を示す図である。ＣＳＳは図５のstylesheet.css５０９に記述されている。ＣＳＳにさらにベースフォントサイズ情報が加わることで、後述するようにＥＰＵＢのレイアウトが変化する。ＣＳＳの目的は、ＸＨＴＭＬの表示レイアウトを定義することである。定義されたスタイルは、ＸＨＴＭＬの表示系（本実施例で言えばＥＰＵＢのプレビュー画像への変換処理）によって解釈され、文書の実際の画面への表示イメージあるいは印刷イメージへのラスタライズに使用される。７０１はＣＳＳファイル全体を示す。「p」７０２は、先述した図６のＸＨＴＭＬで記載されるＥＰＵＢにおいて、「本文テキスト」の表示スタイルを定義するものである。「font-family」７０３はフォントの種類を示しており、「font-size」７０４はフォントサイズを示している。ここで「font-size: 100%;」というのは、ＥＰＵＢコンテンツを表示するビューア（以下、ＥＢＰＵビューアという）の決める既定のフォントサイズの１００％で本文を表示する、という意味である。「h1」７０５は先述した図６のＸＨＴＭＬで記載される「章名」の表示スタイルを定義するものである。７０６は７０３同様にフォントの種類を示しており、７０７は７０４同様にフォントサイズを示す。ここで「font-size: 1.6em;」というのは、ＥＰＵＢビューアの決める既定のフォントサイズにおける「M」文字の高さの１．６倍で該当の項目（ここでは章名）を表示する、という意味である。他にもＣＳＳには多様なスタイルを定義することができるがここでは省略する。
【００４９】
図６のＥＰＵＢコンテンツに対して、ＣＳＳ７０１を与えるだけでは、まだフォントサイズは確定しない点に留意されたい。なぜなら、ＣＳＳ中には「font-size」７０４や７０７のように、フォントサイズが相対値で指定されているためである。フォントサイズを確定し、それをベースに文字を組版し、その結果、ページのレイアウトを確定する必要がある。
【００５０】
そのために、ＥＰＵＢ表示系では、ベースフォントサイズを決定する必要がある。上記のような相対的なフォントサイズを指定されているＥＰＵＢ（よいＥＰＵＢの多くはそのように作られている）に、表示系自身が決定するベースフォントサイズを与える。図７ではベースフォントサイズを１４ポイントにした例と、１０ポイントにした例が比較として描かれている。
【００５１】
１４ポイントのベースフォントサイズを与えると、ページ７１１に示すように、大きめの文字でページ内に文字がフローされ、レイアウトが確定する。
【００５２】
１０ポイントのベースフォントサイズを与えると、ページ７２１に示すように、１４ポイントより小さ目の文字でページ内に文字がフローされ、レイアウトが確定する。
【００５３】
このようなベースフォントサイズの決定は、ＥＰＵＢの印刷レイアウトの決定事項の一つである。つまり、サーバ装置２００側でプレビュー画像を生成する際には、ＣＳＳのみならず、このようなベースフォントサイズのような印刷レイアウトを示す印刷レイアウト情報を伝える必要がある。その他の印刷レイアウトを示す情報として、例えば、ページサイズや、ページの向き、ページ番号の印刷有無なども図５に示す構造のＥＰＵＢ文書ファイルには含まれない独自の指定である。
【００５４】
これらのＥＰＵＢ文書ファイルに含まれない印刷レイアウト情報を、印刷装置の操作部１１０から指定する必要がある。一般に、印刷装置で詳細な数値設定を避けるために、各種パラメータをセットにしたテンプレートが使われることが多い。操作部１１０上でユーザが選択するのは、パラメータのセットであるテンプレートである。そして選択されたテンプレートに規定されているパラメータを各パラメータの値に分解し、印刷レイアウト情報として、印刷装置のコントローラ１００からサーバ装置２００に送信される。
【００５５】
図８は、操作部１１０によるテンプレート選択画面の一例である。８０１は操作部の画面に表示される領域を示している。８０２はテンプレート１の見栄えを示し、８０３はそのテンプレートを特定する名前「Ｔｅｍｐｌａｔｅ１」を示している。９０４はテンプレート２の見栄えを示し、９０５はテンプレートを特定する名前「Ｔｅｍｐｌａｔｅ２」を示している。どちらもＡ４サイズの用紙を出力サイズとしている。
【００５６】
図９は、図８のテンプレートを前述のサンプルとなるＥＰＵＢコンテンツ６０１に適用した例である。コンテンツ６０１にＴｅｍｐｌａｔｅ１を適用すると、画面９０１が操作部に表示される。Ｔｅｍｐｌａｔｅ１を適用した場合、コンテンツの１ページ目は９０２のようになり、コンテンツの２ページ目は９０３のようになる。また、コンテンツ６０１にＴｅｍｐｌａｔｅ２を適用すると、画面９１１が操作部に表示される。Ｔｅｍｐｌａｔｅ２を適用した場合、コンテンツの１ページ目は９１２のようになり、コンテンツの２ページ目は９１３のようになる。このように、リフロー型のコンテンツにページ表現としてのテンプレートを与えて、異なる見栄えの印刷プレビュー画面を得ることができる。
【００５７】
図１０は、図８のＴｅｍｐｌａｔｅ２を使って、一つの文書をレイアウトした結果である。レイアウトの結果、この文書は１０ページに展開されている。
【００５８】
図１０の全ページ数が１０ページのレイアウト結果を、印刷装置の操作部１１０で印刷用にプレビューすると、図１１のようになる。印刷措置の操作部１１０の表示領域は限られているので、ここでは２ページを同時に表示するのが限界である例を用いている。画面１０１１は印刷プレビューを開始した初期表示で、先頭のＰａｇｅ１とＰａｇｅ２が表示されている。「前のページを表示する」ボタン１１０２、「次のページを表示する」ボタン１１０３を使用して、連続するページを移動しながらプレビューすることができる。画面１１１１は画面１１０１においてボタン１１０３を押下して後続のページＰａｇｅ３，Ｐａｇｅ４を表示したところである。同じく画面１１１２は画面１１１１の状態においてボタン１１０３を押下して後続のページＰａｇｅ５，Ｐａｇｅ６を表示したところである。
【００５９】
このように、ＥＰＵＢのリフロー型のデータはテキストコンテンツが中心であることが多く、もし、この例に挙げたようなコンテンツの場合、Ｐａｇｅ１からＰａｇｅ７までは、ほとんど見た目の変わらないページが連続している。そのため、１ページずつめくりながらプレビューをすることは操作の手間と時間がかかる割に、得られる情報は少ない。ここでいう情報とは、プレビューを見ることによるユーザへのフィードバックであり、例えば、本文のフォントサイズが大きすぎるとか、図のサイズが大きすぎるとか、図と文字のサイズのバランスが悪い、とかいったレイアウトの見栄えの情報である。
【００６０】
ここで、図１０の文書をプレビューする場合、ユーザは「レイアウトの見栄えの情報」が得られれば十分なのであるから、図１２（ａ）のように、文書中で特徴的なページを抽出した一部を見れば、その役割は十分に果たせる。図１２（ａ）では、特徴のあるページとして、Ｐａｇｅ１，Ｐａｇｅ８、Ｐａｇｅ１０が抽出されている。
【００６１】
また、この抽出したページを操作部１１０にプレビューする方法としては、図１２（ｂ）のような方法が考えられる。ここでは、図１１の全ページの印刷プレビューモードと抽出プレビューモードとを切り替えるための切り替えボタン１２０２が備えられている。このボタン１２０２を押下すれば、抽出プレビューを表示中であれば全ページプレビューに、全ページプレビューを表示中であれば抽出プレビューに、表示を切り替えることができる。
【００６２】
画面１２０１は抽出されたＰａｇｅ１，Ｐａｇｅ８を表示しており、ここでボタン１１０３を押下すると画面１２１１に表示が移行し、後続の抽出Ｐａｇｅ１０を表示することになる。
【００６３】
ここで「特徴的なページ」を抽出するためのコンテンツの属性を挙げる。
【００６４】
属性としては、次の２種類のグループに分けられる。
１．コンテンツの表現に独立して与えられる属性（以後「コンテンツレイアウト属性」と称する）
これは、コンテンツを表示する場合に、ＥＰＵＢに含まれるＸＨＴＭＬコンテンツの各タグにＣＳＳによって与えられる属性の集合となる。例として、下記のものが含まれる（カッコ内は＜ＨＴＭＬタグ名＞、ＣＳＳスタイル名）：
・フォントスタイル (font-family)
・フォントサイズ (font-size)
・段落見栄え(引用、段落間隔) (blockquote)
・縦書き・横書き(text-orientation)
・イメージへのテキスト回り込み(float)
・段組数(column-count)
・文字方向(writing-mode)
２．ページの表現に与えられる属性（以後「ページレイアウト属性」と称する）
これは、コンテンツをページレイアウトに展開する場合に、ページに付与する付加的なレイアウト属性となる。１ページに１パターンの表現が与えられ、ページ間での差異が発生するのが特徴である。例として、下記のものが含まれる（カッコ内は＜ＨＴＭＬタグ名＞、ＣＳＳスタイル名）：
・イメージ・表・囲み記事等の有無(<img>, <tb>, border, column-rule)
・左右対称なページ装飾。例として「柱、区切り線、ヘッダ・フッタ、ページ番号」
・章末での改段・改ページ(break-after, break-before)
・ルビ・傍点の有無での行間の差異(<ruby>, <strong>)
・ページ向きの差異(height/width)
・文字方向・段組の変化 (text-orientation, column-count)
【００６５】
上記「左右対称なページ装飾」については、ＥＰＵＢコンテンツであるＸＨＴＭＬをページレイアウトに展開する際に、ＸＨＴＭＬに記載されているコンテンツとは別に、ページ装飾として独自にページレイアウト処理系がページに描画する属性である。例えば、ＥＰＵＢレイアウト処理系によって、１ページをＪＰＥＧ画像にレイアウト展開した後に、ページの下端にページ番号文字列を追加描画する、という方法で実現される。この実現手段については、さまざまな方法で可能であるが、その詳細は本書では省略する。
【００６６】
ここに挙げる属性は、ＥＰＵＢを構成する、あるいは独自にページレイアウトを構成する場合の要素の一例にすぎず、これ以外にも類似の性格を持つコンテンツ属性は同様に抽出対象になることは言うまでもない。
【００６７】
＜特徴ページ抽出処理＞
前述の図１２（ａ）のような特徴ページの抽出を実行するための処理について、図１３のフローチャートに基づいて説明する。
【００６８】
図１３は、図４のステップＳ４１４の「特徴ページの抽出」の具体的な処理を表したフローチャートである。本例では、図４のステップＳ４１３のプレビュー画像生成処理によって、図１０に示す１０ページにコンテンツがレイアウトされたプレビュー画像が生成されている状態を参照して説明する。
【００６９】
図１４（ａ）は、図１０に示した、１０ページにレイアウトされたコンテンツに、どのように特徴的な属性が分布しているかを表した図である。前述の属性のそれぞれが各ページに分布している状態を黒丸によって示している。例えば、章のタイトルである＜ｈ１＞の属性は、「Ｌｏｒｅｍ  ｉｐｕｓｕｍ」という文字列で第１ページに存在しており、本文となる＜ｐ＞は全ページに存在している。また文中の図イメージが＜ｉｍｇ＞として第８ページに存在しており、それ以外のページは＜ｉｍｇ＞なしのページとなっている。＜ｉｍｇ＞にテキストを回り込ませる＜ｆｌｏａｔ＞属性も同じく第８ページに存在している。最後に表コンテンツが＜ｔｂ＞として第１０ページに存在しており、それ以外のページは＜ｔｂ＞なしページとなっている。
【００７０】
また、ページ番号がページ領域上の左右に偶数ページと奇数ページで振り分けられており、それが交互に登場することが示されている。
【００７１】
この図１４（ａ）に示す「属性の分布」の情報は、ＥＰＵＢコンテンツがページレイアウトされる過程で、どのコンテンツを、どのページにレイアウトしたか、という結果を持ってステップＳ４１３において生成される。
【００７２】
このような属性の分布を持つコンテンツの特徴ページを抽出する方法を、図１３のフローチャートと付随する図で説明する。
【００７３】
図１３に示す処理は、図３のサーバ装置内のレイアウト部３０３、レイアウト特徴解析部３０４および特徴ページ判定部３０５によって実行される。より具体的には、サーバ装置２００のＣＰＵ２０２が内部記憶装置２０４に格納されているプログラムを実行することで実現される。
【００７４】
ステップＳ１３０１において、レイアウト部３０３はまず、所望のレイアウトに対するＥＰＵＢコンテンツを展開処理しながら、全ページ中、各属性が何度登場しているかをカウントする。図１４（ａ）の表中、右端の数値が、各属性の登場する数を示している。例えば、＜ｈ１＞は１回、＜ｐ＞は１０回、という具合である。
【００７５】
ステップＳ１３０２において、レイアウト特徴解析部３０４は、属性の登場回数で、属性の並びをソートする。図１４（ｂ）は図１４（ａ）の並びをソートした状態を示している。登場回数の少ない属性（＜ｈ１＞、＜ｉｍｇ＞等）ほど、表の上の行に寄せられている。
【００７６】
ステップＳ１３０３において、レイアウト特徴解析部３０４は、ソートされた各ページの属性の分布を、属性有りを「１」、なしを「０」としてビットフラグで表す。図１４（ｂ）のようにソートされた場合には、図１４（ｂ）の下端の数値（２進数）のようになる。各ビットフラグは各ページに関連付けられる。
【００７７】
ステップＳ１３０４において、レイアウト特徴解析部３０４は、ある属性が他の属性と独立して登場していない場合、上位のビットを無効化してページを重複してビットフラグのリスト中に挿入する。図１５は、上位のビットを無効化してページを重複してビットフラグのリスト中に挿入した状態を示している。例えば、＜ｆｌｏａｔ＞属性は第８ページにしか登場していない。しかしながら、第８ページの＜ｆｌｏａｔ＞属性のさらに上位に位置する属性＜ｉｍｇ＞のビットが１になってしまっている。後述するように、本実施例では最上位のビットが１である場合にグルーピングを行うので、第８ページの＜ｆｌｏａｔ＞属性は＜ｉｍｇ＞の属性に覆い隠された属性と便宜上言うことができる。属性の抽出漏れを防ぐために＜ｆｌｏａｔ＞属性を便宜上属性として扱う必要がある。そこで、第８ページのうち上位に位置する＜ｉｍｇ＞属性を削除して（表中、白丸の部分）、削除した状態の第８ページを別個のページとして重複して再挿入する。
【００７８】
ステップＳ１３０５において、レイアウト特徴解析部３０４は、ビットフラグ中「１」である最上位ビットが同じページをグループにする。図１６はこの状態を示している。ステップＳ１３０４で重複して挿入した第８ページは＜ｉｍｇ＞のビットが０になっているものとみなして、それぞれ、先頭のビットの位置ごとに、ページをグループ化している。
【００７９】
ステップＳ１３０６において、レイアウト特徴解析部３０４は、各グループ内でビットフラグ中に「１」を多く含む順、すなわち含んでいる属性の数が多い順にソートする。
【００８０】
ステップＳ１３１１において、特徴ページ判定部３０５は、図１６の各グループにインデックスを付け、先頭グループからループを開始する。
【００８１】
ステップＳ１３１２において、特徴ページ判定部３０５は、先頭のグループを取り出したら、そのグループの中でも先頭のページを取り出す。これはすなわち、グループの中でもっとも多くの属性を含んでいるページを取り出すことと等しい。このようにソート、グルーピングを行い、同じグループ内の先頭ページを取り出して後述する特徴ページの判定処理を行うことにより、全ての属性を網羅する際に必要なページ数を少なくすることができる。
【００８２】
ステップＳ１３１３において、特徴ページ判定部３０５は、ステップＳ１３１２で取り出したページに関連付けられているビットフラグを、抽出済みフラグ（初期値は０）にＯＲ演算で加算する。抽出済みフラグは、ステップＳ１３０３においてビットフラグ表現された際の同一の桁を有するフラグである。つまり、ステップＳ１３１３の処理は、全ての属性を抽出したかを判定している処理とも言える。ステップＳ１３１３において、特徴ページ判定部３０５は、抽出済みフラグのすべてのビットが「１」になったか否かを判定する。
【００８３】
ステップＳ１３１３において、抽出済みフラグのすべてのビットが「１」にないないと判定した場合、ステップＳ１３２３において、特徴ページ判定部３０５はステップＳ１３１２で取り出したページ番号をリストＬに保存する。リストＬには、特徴ページの候補となる候補ページのページ番号が保存される。次に、ステップＳ１３２４において、特徴ページ判定部３０５は、処理を次のページのグループに進める。
【００８４】
ステップＳ１３１４において、すべてのビットが「１」になったと判定した場合、ステップＳ１３２１において、特徴ページ判定部３０５は、リストＬに保存したページ番号から重複を取り除く。例えば、図１６の例では、第８ページは＜ｉｍｇ＞属性の有無に応じて２つのページ番号がリストＬに保存されるので、重複ページとして一方が取り除かれる。
【００８５】
ステップＳ１３２２において、特徴ページ判定部３０５は、リストＬに保存したページ番号をページ番号順に昇順ソートする。そして、処理を修了する。
【００８６】
以上の処理でリストＬに保存されたページ番号が、抽出プレビューで表示されるページとなる。つまり、図４に示すステップＳ４１５においては、リストＬに保存されたページ番号が特徴ページ情報として印刷装置に送信されることになる。リストＬに保存されたページ番号は、抽出したレイアウト属性を全体として含むページ群のページ番号ともいえる。
【００８７】
以上のとおり、本実施例によれば、印刷装置を操作して直接リフロー型の文書データを印刷する場合にも、特徴的なレイアウトを有するページのみを印刷装置側でプレビュー表示することが可能となる。したがって印刷プレビューの確認を短時間で済ますことが可能となる。
【実施例２】
【００８８】
実施例２では、実施例１で説明した例とは異なるレイアウトの場合に対応する処理を説明する。
【００８９】
図１７は、図１０で説明したレイアウトとは異なるＥＰＵＢレイアウトの一例である。この例では、＜ｈ１＞要素が２度登場する。第１ページの「Ｌｏｒｅｍ  ｉｐｕｓｕｍ」と第４ページの「Ｅｘｃｅｐｔｅｕｒ  ｓｉｎｔ」である。そして、この＜ｈ１＞要素にはＣＳＳの「ｂｒｅａｋ−ｂｅｆｏｒｅ」属性が付与されているため、直前で改ページを行う。そのため、第３ページには余白が十分あるにもかかわらず改ページして、第４ページは先頭から新しい＜ｈ１＞要素とそれに本文が続いている。
【００９０】
この改ページのような属性の場合、改ページした個所の連続する２ページが並んで見えていないと、プレビューしても改ページの効果の判別が付かない場合がある。つまり相互に相関の高いレイアウトの属性を有するページであるといえる。そのため、この図１７の例でいえば、第３ページと第４ページを対にして抽出プレビュー表示すべきである。
【００９１】
このような対のページを表示するために、図１８と付随する図をもとに説明する。図１８は、実施例１の図４のＳ４１４の特徴ページの抽出処理の詳細な処理を示す図である。
【００９２】
図１８のフローチャートの処理フローは、図３のサーバ装置内の各モジュールによって実行される。具体的にはサーバ装置２００のＣＰＵ２０２が内部記憶装置２０４に格納されているプログラムを実行することで実現される。
【００９３】
図１９（ａ）は、図１７のレイアウトにおける属性の分布を表した表である。ここでは、前述の「コンテンツレイアウト属性とページレイアウト属性」を分けて２つの表としている。なお、ここではページ番号の属性の説明を省略している。ここで注目すべきは、コンテンツレイアウト属性の「章名（＜ｈ１＞）前のページレイアウト属性の章改ページの有無である。図１９（ａ）では、第３ページに章改ページ有が属性として含まれている。この属性は、第３ページと第４ページの間に効力を持つ。表中ではこの効力を明示すべく矩形で囲んでいる。この第３ページと第４ページとを対にして抽出してプレビューする処理を説明する。
【００９４】
図１８のフローチャートで、ステップＳ１８０１において、レイアウト特徴解析部３０４は、属性の特性をベースに対となるページを特定する。図１９（ａ）で矩形で囲んだ処理がこのステップＳ１８０１の処理に該当する。なお、本実施例では、章改ページに着目しているが属性の特性に応じて対となるページの組み合わせは適宜設定することができる。
【００９５】
ステップＳ１８０２において、レイアウト特徴解析部３０４は、ステップＳ１８０１で特定した対となるページの属性を1つのページの属性として扱えるように結合する。この、結合された情報を含む属性分布の情報をペアページ情報と呼ぶ。すなわち、レイアウト特徴解析部３０４は、ステップＳ１８０２において、ペアページ情報を生成する。図１９（ａ）の対となるページ、すなわち第３ページと第４ページとをマージした結果が図１９（ｂ）である。図１９（ａ）の第３ページ、第４ページの情報がひとつにまとめられて「３−４」というペアページが生成されている。これら２ページは常にペアで扱うことを示している。「３−４」というペアページには、いずれかのページに含まれている属性についてのビットが立っている状態となっている。また、対となる要因となった改ページの属性を、「章改ページ有」から「章改ページ無」に変化する２ページをまとめて、単一の新しい属性「章改ページ」に変換しビットを１にしている。
【００９６】
このようなペアページを含むペアページ情報を、属性分布の情報として作成することにより、その後の処理は前述の実施例１のフローに従って、ステップＳ１３０１〜Ｓ１３２４を通過させることで、ペアページを含めてページの抽出を行うことが可能となる。ステップＳ１８０３は、ステップＳ１３０１〜Ｓ１３２４の処理と同様である。
【００９７】
ステップＳ１８０４において、レイアウト特徴解析部３０４と特徴ページ判定部３０５とは、ステップＳ１８０３で抽出ページをいったん生成したうえで、Ｓ１８０２で生成したペアページ情報に基づいて、ペアページを元ページに分解する。つまり、「３−４ページ」を「第３ページ」と「第４ページ」に分解して、各々のページが特徴ページとして抽出されるようにする。
【００９８】
＜実施例２の効果＞
レイアウトの属性の見栄えを確認するために、対のページを必要とする場合でも、抽出プレビューに対のページとして含めることが可能になる。従って、ページ間で変化する属性の確認把握が容易になる。
【実施例３】
【００９９】
実施例１、２では、まずレイアウトに従ったプレビュー画像データを全ページ分生成し、各ページにおける各属性の有無を示すフラグの計算により、抽出するページを決定する処理を説明した。
【０１００】
ここでは、より簡単にページの抽出を行う方法を図４と図２０とのフローチャートをもとに説明する。
【０１０１】
実施例３におけるサーバ装置と印刷装置との連携したフローチャートは、図４のステップＳ４１３とＳ４１４とを１つにまとめた処理となる。その他の処理は、実施例１で説明した図４と同じであるため説明は省略する。
【０１０２】
図２０のフローチャートは、実施例３におけるプレビュー画像の生成と特徴ページの抽出処理の詳細な処理を示す図である。
【０１０３】
ステップＳ２００１において、レイアウト部３０３とプレビュー画像生成部３０６とはまず、ＥＰＵＢコンテンツの先頭のページから処理を開始して、レイアウトに沿って１ページをプレビュー画像データとして生成する。ステップＳ２００２において、レイアウト部３０３は、ページレイアウトに使用した特徴的な属性を抽出する。ステップＳ２００３において、レイアウト特徴解析部３０４は、ステップＳ２００２にて抽出した特徴的な属性の組み合わせをビットフラグとして表現する。
【０１０４】
特徴的な属性とその組み合わせをビットフラグとして表現する例について説明する。再び図１０のレイアウト例をサンプルとして説明する。この文書のレイアウトにおいて、１ページ目から順にレイアウトしていくと、図２１の表のように各ページの属性が登場する。例えば第１ページには、まずコンテンツレイアウト属性として＜ｈ１＞が登場し、続いて＜ｐ＞が登場する。さらにページレイアウト属性として「ページ番号が右側に付られる」というレイアウト要素が登場する。次の第２ページでは、コンテンツレイアウト属性として＜ｐ＞が存在しており、ページレイアウト属性として「ページ番号が左側に付られる」というレイアウト要素が登場する。ページが進んで、第８ページでは新たにページレイアウト属性として＜ｉｍｇ＞が登場し、コンテンツレイアウト属性として＜ｆｌｏａｔ＞が登場している。さらに第１０ページではページレイアウト属性として＜ｔｂ＞が登場している。
【０１０５】
前述のステップＳ２００３では、この抽出した属性の組み合わせをビットフラグで順次表現する。すると、図２１の下端にあるように、属性が増えるたびにケタの増えていく２進数表現のフラグとなる。属性＜ｈ１＞と属性＜ｐ＞と属性「ページ番号が右側に付られる」の存在する第１ページは「１１１」で表現される。第２ページは同様に「０１０１」で表現される。このような形で、属性が増えるたびに桁数が増えていく。
【０１０６】
ステップＳ２００４においては、レイアウト特徴解析部３０４は、ページを順次レイアウトする間に取得した属性の組み合わせビットフラグを、システムで保持している属性総和フラグ（初期値は０）とＯＲ論理和を取る。そして、ＯＲ論理和する前と後とで変化があるかどうかを判定する。例えば、第１ページ「１１１」と第２ページ「０１０１」をＯＲ論理和すると「１１１１」である。この状態では、第３ページについて属性総和フラグはＯＲしても変化しない状態となる。従って、後述するステップＳ２００８、Ｓ２００９を介して次ページ処理を進めることになり、以降のページでは属性総和フラグが変化しないまま第８ページまで進む。第８ページでは新しい属性がＯＲ論理和され、属性総和フラグが「１１１１１１」となる、という具合に処理は進む。
【０１０７】
ステップＳ２００４で変化がある場合、ステップＳ２００６において、レイアウト特徴解析部３０４は、ステップＳ２００３で表現されるフラグと属性総和フラグとをＯＲ論理和して新しい属性総和フラグとして保持する。ステップＳ２００７において、特徴ページ判定部３０５は、現在の処理対象のページを抽出ページと決定し、システムで保持する抽出ページリストにページ番号を追加する。
【０１０８】
ステップＳ２００４において、レイアウト特徴解析部３０４は属性総和フラグに変化がないと判定した場合、ステップ２５０８に処理を進める。
【０１０９】
ステップＳ２００８において、特徴ページ判定部３０５は、処理を終えたページが最終ページかどうかを判定し、最終ページであれば処理を終了する。最終ページでなければ、ステップＳ２００９において、特徴ページ判定部３０５は、処理対象のページを次のページに進め、ステップＳ２００１から処理を繰り返す。
【０１１０】
＜実施例３の効果＞
実施例３では、複雑なフラグを蓄積した計算や、全ページでの属性の分布状態を考慮せず、簡単な処理で特徴ページの抽出を行うことができる。処理のための計算量やメモリ量の制約される環境での実装には、実施例３の手法が有効である。
【実施例４】
【０１１１】
実施例１および３では、純粋に属性のフラグの計算によりページを抽出する処理を説明した。しかし、第１ページ(先頭ページ)は文書の始まりとして無条件に表示した方が、文書の概要をつかむためのプレビューには有用な場合が多い。また、文書の末尾のページも無条件に表示したほうがよい場合もある。
【０１１２】
そのような場合に対応する処理を説明する。図１３のフローチャートにおいて特徴ページ判定部３０５は、ステップＳ１３１２からステップＳ１３１５の処理に際して、初期状態で文書の先頭ページと末尾のページとをリストＬに挿入しておく。そして抽出済みフラグにもそれらページに含まれる属性のビットフラグをＯＲ論理和したものを初期状態として処理を開始すればよい。
【０１１３】
＜実施例４の効果＞
文書の概要をつかむ場合に重要な意味を持つことが多い先頭ページと末尾ページとを必ず抽出プレビュー対象に含むことができ、抽出プレビュー表示をする際に文書の概要がつかみやすくなる。
【実施例５】
【０１１４】
実施例１では、ＥＰＵＢコンテンツを処理する装置として、印刷装置そのものではなくクラウド側のサーバ装置を用いる例を説明した。しかし、ＥＰＵＢコンテンツの処理にクラウド側のサーバ装置が必須なわけではなく、印刷装置内のコントローラにおいて同等のＥＰＵＢコンテンツのプレビュー生成、および抽出プレビューの選択処理を行うこととしてもかまわない。
【０１１５】
＜実施例５の効果＞
コントローラ内で処理することにより、クラウドとの通信の時間を省き、より高速に処理を行うことができる。
【０１１６】
＜その他の実施例＞
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【図１】
2014174900.tif 000003
【図２】
2014174900.tif 000004
【図３】
2014174900.tif 000005
【図４】
2014174900.tif 000006
【図５】
2014174900.tif 000007
【図６】
2014174900.tif 000008
【図７】
2014174900.tif 000009
【図８】
2014174900.tif 000010
【図９】
2014174900.tif 000011
【図１０】
2014174900.tif 000012
【図１１】
2014174900.tif 000013
【図１２】
2014174900.tif 000014
【図１３】
2014174900.tif 000015
【図１４】
2014174900.tif 000016
【図１５】
2014174900.tif 000017
【図１６】
2014174900.tif 000018
【図１７】
2014174900.tif 000019
【図１８】
2014174900.tif 000020
【図１９】
2014174900.tif 000021
【図２０】
2014174900.tif 000022
【図２１】
2014174900.tif 000023