(57)【要約】【課題】  構造化文書をある範囲ごとに繰り返しレンダリングする場合、構造化文書の背景情報に起因する問題が発生する。レンダリング範囲内に背景を表示した状態で処理を行うために、一定範囲ごとに繰り返しレンダリングしたものから印刷データを作成すると、印刷データ内に小さな背景が繰り返し現れた状態になり、ブラウザーによる表示と異なった見栄えの良くない印刷物になる。【解決手段】構造化文書の記載情報に含まれる背景情報と背景情報に付随する背景配置情報を解析し、構造化文書から不要な背景情報を削除し、背景情報以外の必要な情報を抽出、変換することで必要な領域の印刷データを生成する。この印刷データには不要な背景は含まれていないため、見栄えの良い印刷物が作成可能になる。【選択図】  図３
2010257220.tif 000002
【特許請求の範囲】
【請求項１】
構造化言語で記述された構造化文書を印刷する情報処理装置において、印刷領域を座標情報として取得する印刷領域取得工程と前記情報処理装置が表示する構造化文書の領域を座標情報として取得する表示領域取得工程と、前記表示領域取得工程で取得した領域に前記印刷領域取得工程で取得した領域が含まれているかを判定する領域判定工程と、前記印刷領域取得工程で取得した印刷領域をすべて表示するために前記情報処理装置の表示画面のスクロール制御をおこなうスクロール制御工程と、構造化文書を解析し構造化文書内の記載情報に含まれる背景情報と背景情報に付随する背景配置情報を解析する背景解析工程と、構造化文書から不要な背景情報を削除し、不要な背景情報以外の必要な情報を抽出した抽出データを出力するデータ抽出工程とを持ち、前記表示領域を第一中間データとして１つまたは複数作成する中間データ作成工程と前記中間データ作成工程が作成した１つまたは複数の第一中間データのうち前記印刷領域と重なる領域をクリップするクリップ工程とクリップした第二中間データを保存するクリップ領域保存工程と前記クリップ領域保存工程で保存した第二中間データを印刷する印刷制御工程を備えることを特徴とする構造化文書の印刷方法。
【請求項２】
前記第一中間データ及び第二中間データはレイアウト情報を持つデータフォーマットである事を特徴とする請求項１の印刷方法。
【請求項３】
前記スクロール制御工程は前記表示領域取得工程で取得した表示領域の座標情報を保存する表示領域保存工程を持ち、前記表示領域保存工程が保存した座標の表示領域を前記情報処理装置に表示したまま、前記情報処理装置に画面表示されない別の描画領域に前記印刷領域取得工程で取得した座標の領域のすべてを表示するために画面のスクロールの制御を行うことを特徴とする請求項１の印刷方法。
【請求項４】
前記データ抽出工程は前記表示領域取得工程及び前記印刷領域取得工程の前段で処理する事を特徴とする請求項１の印刷方法。
【請求項５】
前記データ抽出工程は前記表示領域取得工程及び前記印刷領域取得工程の後段で処理する事を特徴とする請求項１の印刷方法。
【請求項６】
前記クリップ工程は前記クリップ領域保存工程で保存された第二中間データを参照し、クリップ時には既にクリップした領域をクリップしないようにすることを特徴とする請求項１の印刷方法。
【請求項７】
構造化言語で記述された構造化文書を印刷する情報処理装置において、印刷領域を座標情報として取得する印刷領域取得手段と前記情報処理装置が表示する構造化文書の領域を座標情報として取得する表示領域取得手段と、前記表示領域取得手段で取得した領域に前記印刷領域取得手段で取得した領域が含まれているかを判定する領域判定手段と、前記印刷領域取得手段で取得した印刷領域をすべて表示するために前記情報処理装置の表示画面のスクロール制御をおこなうスクロール制御手段と、構造化文書を解析し構造化文書内の記載情報に含まれる背景情報と背景情報に付随する背景配置情報を解析する背景解析手段と、構造化文書から不要な背景情報を削除し、不要な背景情報以外の必要な情報を抽出した抽出データを出力するデータ抽出手段とを持ち、前記表示領域を第一中間データとして１つまたは複数作成する中間データ作成手段と前記中間データ作成手段が作成した１つまたは複数の第一中間データのうち前記印刷領域と重なる領域をクリップするクリップ手段とクリップした第二中間データを保存するクリップ領域保存手段と前記クリップ領域保存手段で保存した第二中間データを印刷する印刷制御手段を備えることを特徴とする構造化文書の印刷装置。
【請求項８】
構造化言語で記述された構造化文書を印刷する情報処理装置において、印刷領域を座標情報として取得する印刷領域取得手順と前記情報処理装置が表示する構造化文書の領域を座標情報として取得する表示領域取得手順と、前記表示領域取得手順で取得した領域に前記印刷領域取得手順で取得した領域が含まれているかを判定する領域判定手順と、前記印刷領域取得手順で取得した印刷領域をすべて表示するために前記情報処理装置の表示画面のスクロール制御をおこなうスクロール制御手順と、構造化文書を解析し構造化文書内の記載情報に含まれる背景情報と背景情報に付随する背景配置情報を解析する背景解析手順と、構造化文書から不要な背景情報を削除し、不要な背景情報以外の必要な情報を抽出した抽出データを出力するデータ抽出手順とを持ち、前記表示領域を第一中間データとして１つまたは複数作成する中間データ作成手順と前記中間データ作成手順が作成した１つまたは複数の第一中間データのうち前記印刷領域と重なる領域をクリップするクリップ手順とクリップした第二中間データを保存するクリップ領域保存手順と前記クリップ領域保存手順で保存した第二中間データを印刷する印刷制御手順を備えることを特徴とするコンピュータに実行させるためのプログラム。
【請求項９】
請求項８に記載のプログラムを格納したことを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は構造化文書の印刷方法に関し、構造化文書のすべてを一回の処理でレンダリングする機能を持ってなくても所望の印刷物を印刷するための方法である。
【背景技術】
【０００２】
近年、インターネット上のＷｅｂページにアクセスして様々な情報を得ることが可能となった。これらのＷｅｂページはＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）またはＸＨＴＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｋｅｕｐ  Ｌａｎｇｕａｇｅ）等のような構造化言語で記述された構造化文書である。この構造化文書に対応したブラウザーと呼ばれるソフトウェアでＷｅｂページをディスプレイ上に表示し、参照することが可能である。またこれらＷｅｂページを印刷する場合、ブラウザーでＷｅｂページをディスプレイ上で表示し、この表示中のページをブラウザーにて印刷する方法が一般的である。この場合、ブラウザーのレンダリング機能を用いて構造化文書を解析し印刷する。またＷｅｂページをスクロール移動しながら表示される画面のビットマップを作成し、作成した画面のビットマップをつなぎ合わせて（例えば、
【特許文献１】参照）選択領域の印刷データを作成する方法もある。
【０００３】
しかしながら、ブラウザーのレンダリング機能は表示領域に対して処理が行われるためにＷｅｂページが一度に表示できない大きさの場合はＷｅｂページすべてを一度にレンダリングすることができない問題がある。またＷｅｂページをスクロールしながら表示される画面のビットマップを作成し、作成した画面のビットマップをつなぎ合わせて印刷領域の印刷データを作成する場合には印刷データがビットマップのため印刷時に文字や画像などのオブジェクトの下端がきれてしまう場合や印刷領域を拡大すると文字がぼやけてしまう問題がある。
【０００４】
そのために構造化言語で記述されたＷｅｂページの一部もしくは全てを選択して印刷する場合、一般的に以下の手順で印刷機能を実現する。始めにレンダリング範囲を変更しながら構造化文書のレンダリングを繰り返す。レンダリングを繰り返すことで構造化文書内の印刷領域を複数個の分割データとして生成する。最後に複数個の分割データを結合することで印刷データを生成する。一回のレンダリング処理では処理できない大きさの印刷領域に対しても、レンダリング範囲を一定以下にし一定範囲のレンダリングを複数回繰り返す方法によって印刷領域の大小に関わらず、印刷データの生成が可能になる。また、印刷データにレイアウト情報を持たせることで、印刷領域を拡大しても文字がぼやける問題は発生しない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−１７１８５１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、構造化文書をある範囲ごとに繰り返しレンダリングする場合、構造化文書の背景情報に起因する新たな問題が発生する。構造化文書には背景情報があり、背景情報には背景の表示をどのような行うかの配置情報がある。具体的には“ｂａｃｋｇｒｏｕｎｄ−ａｔｔａｃｈｍｅｎｔ”や“ｂａｃｋｇｒｏｕｎｄ−ｐｏｓｉｔｉｏｎ”といった配置情報である。これらの配置情報は背景の表示の仕方を示しているが、構造化文書をレンダリングする際には背景情報に従いレンダリングする範囲内に背景を表示した状態で処理を行う。そのためにレンダリングする範囲と通常のブラウザーによる表示範囲の大きさや形が異なる場合は背景表示も異なったものになる。従って背景情報のある構造化文書を一定範囲ごとに繰り返しレンダリングしたものから印刷データを作成すると、印刷データ内に小さな背景が繰り返し現れた状態になり、ブラウザーによる表示と異なった見栄えの良くない印刷物になる。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、請求項１に記載の印刷方法は、構造化言語で記述された構造化文書を印刷する情報処理装置において、印刷領域を座標情報として取得する印刷領域取得工程と前記情報処理装置が表示する構造化文書の領域を座標情報として取得する表示領域取得工程と、前記表示領域取得工程で取得した領域に前記印刷領域取得工程で取得した領域が含まれているかを判定する領域判定工程と、前記印刷領域取得工程で取得した印刷領域をすべて表示するために前記情報処理装置の表示画面のスクロール制御をおこなうスクロール制御工程と、構造化文書を解析し構造化文書内の記載情報に含まれる背景情報と背景情報に付随する背景配置情報を解析する背景解析工程と、構造化文書から不要な背景情報を削除し、不要な背景情報以外の必要な情報を抽出した抽出データを出力するデータ抽出工程とを持ち、前記データ抽出工程から得られた前記抽出データを使用して前記表示領域を中間データとして１つまたは複数作成する中間データ作成工程と前記中間データ作成工程が作成した１つまたは複数の中間データのうち前記印刷領域と重なる領域をクリップするクリップ工程とクリップした中間データを保存するクリップ領域保存工程と前記クリップ領域保存工程で保存した中間データを印刷する印刷制御工程を備えることにより小さな背景データを削除する。
【発明の効果】
【０００８】
一度に構造化文書のすべてをレンダリングする機能を持っていないブラウザーであっても、印刷データ内に小さな背景が繰り返し現れることを防止でき、見栄えの良い印刷ができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態である構造化文書の印刷装置を含むネットワークシステムの構成図
【図２】本発明の一実施形態である構造化文書の印刷装置のＰＣ構成図
【図３】本発明の一実施形態である構造化文書の印刷装置のＰＣソフトウェア構成図
【図４】本実施形態における構造化文書ファイル全体
【図５】本実施形態における構造化文書ファイルをブラウザーで表示したときの表示領域
【図６】印刷領域がブラウザー上で表示される表示領域にすべて収まっている一例
【図７】印刷領域がブラウザー上で表示される表示領域に収まらない一例
【図８】表示領域を移動した時の一例
【図９】表示領域から背景情報を削除した時の一例
【図１０】印刷領域と重なる領域をクリップする一例
【図１１】ブラウザーの表示領域を右端に移動した時の一例
【図１２】クリップした領域をまとめた一例
【図１３】本実施形態における印刷領域をデータとしてクリップするフローチャート
【図１４】表示装置の描画領域とブラウザー上の表示領域を示した時の一例
【図１５】本実施形態における印刷領域をデータとしてクリップするフローチャート
【図１６】本発明の一実施形態である構造化文書の印刷装置のＰＣソフトウェア構成図
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【実施例１】
【００１１】
図１は、本発明の構造化文書の印刷装置を含むネットワークシステムの構成を示すブロック図である。図１でＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）１０１はインターネット１０２に接続され、インターネット１０２を介して複数のＷＷＷサーバー１０３からＷｅｂページをＰＣ１０１上へダウンロードして表示する。ＷｅｂページはＨＴＭＬやＸＨＴＭＬで記述された構造化文書である。
【００１２】
図２はＰＣ１０１の構成を示すブロック図である。ＣＰＵ２０１は、ＲＡＭ２０２、ＲＯＭ２０３或いはハードディスク２０４に格納されたプログラムに従ってデータや命令を演算、判断および制御を行う。ＲＡＭ２０２は、ＣＰＵ２０１が各種処理を行う際の一時記憶領域として使用される。ハードディスク２０４はオペレーティングシステム（ＯＳ）、ブラウザーやその他のアプリケーションソフト等を記録する。通信インターフェース２０５は、たとえばＵＳＢ、ＳＣＳＩや無線等のプリンタ１０４とのデータ通信を行うためのインターフェースや、インターネット１０２を介して外部ＷＷＷサーバー１０３とのデータ通信を行うためのネットワークインターフェースである。
【００１３】
表示装置２０６はＣＲＴや液晶ディスプレイとグラフィックコントローラとからなり、グラフィックユーザーインターフェース（ＧＵＩ）の表示を行う。マウス２０７、キーボード２０８はユーザ−がＰＣ１０１に対して各種指示を与えるための入力装置である。システムバス２０９は、ＣＰＵ２０１やＲＡＭ２０２、ＲＯＭ２０３、ハードディスク２０４等との間のデータのやり取りを行う。
【００１４】
図３はＰＣ１０１上のソフトウェアの構成を示すブロック図である。以下にＰＣ１０１上で動作するプログラムについて図３を用いて説明する。
【００１５】
ブラウザー３０１はＷｅｂページを表示するためのアプリケーションであり、ＷＷＷサーバー１０３上のＷｅｂページをＰＣ１０１上のハードディスク２０４へダウンロードし表示装置２０６へ表示する。ＷｅｂページはＨＴＭＬやＸＨＴＭＬ等の構造化文書ファイルであり、テキストや画像、背景情報等の構造化文書を構成する要素がタグを用いて記述されている。またこれら要素の表示スタイルを指定するＣａｓｃａｄｉｎｇ  Ｓｔｙｌｅ  Ｓｈｅｅｔ（以下ＣＳＳと略す）と呼ばれる別ファイルが構造化文書内に指定されている。ブラウザー３０１はこれらの構造化文書ファイルを解析し表示装置２０６へ表示する。
【００１６】
構造化文書印刷モジュール３１９はブラウザー３０１から呼び出されるプラグインソフトウェアであり、ユーザーがブラウザー３０１に対して、印刷を行った時に、この構造化文書印刷モジュール３１９が実行される。ユーザーがブラウザー３０１に対して、印刷を行った時、印刷領域取得部３０２はブラウザー３０１から構造化文書ファイルの印刷領域を取得する。表示領域取得部３０３はブラウザー３０１から構造化文書ファイルの表示領域を取得する。本実施形態での表示領域とはブラウザー３０１が表示領域と認識している領域であり、接続されている表示装置２０６に描画されている画面領域とは異なる場合もある。スクロール制御部３０４はブラウザー３０１からスクロール位置を受け取り、すべての印刷領域が表示されるようにスクロールを移動させ表示領域を変更させる。表示領域取得部３０３はスクロール制御部３０４がスクロールして表示領域を変更した場合には再度ブラウザー３０１から表示領域を取得する。印刷領域取得部３０２、表示領域取得部３０３及びスクロール制御部３０４は構造化文書ファイル以外にも後述する抽出データ３０９に対しても処理する。背景解析部３０５は構造化文書ファイルの背景に関する情報をブラウザー３０１から受け取り解析する。領域判定部３０６は表示領域内に印刷領域があるかを判定する。座標保存部３０７は領域判定部３０６から表示領域と印刷領域の座標情報を受け取り、スクロール制御部３０４に保存した座標情報を送信する。データ抽出部３０８は背景解析部３０５からの情報に従い構造化文書から不要なデータを削除し抽出データ３０９として抽出する。中間データ作成部３１０は表示領域をレンダリングして第一中間データ３１１を作成する。クリップ部３１２は中間データ作成部３１０で作成した第一中間データ３１１のうち表示領域内で印刷領域と重なる領域をクリップする。クリップ領域保存部３１３はクリップした領域をクリップした第二中間データ３１４として保存しておき、次回クリップ部３１２が第一中間データ３１１から領域をクリップする際にはクリップ領域保存部３１３が保存したクリップした第二中間データ３１４を元に同じ領域はクリップしないようにする。
【００１７】
第一中間データ３１１及び第二中間データはレイアウト情報を持ったデータであり、ＥＭＦ（Ｅｎｈａｎｃｅｄ  Ｍｅｔａ  Ｆｉｌｅ）、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）、ＸＰＳ（ＸＭＬ  Ｐａｐｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）などのフォーマット形式である。前述したフォーマット形式はレイアウト情報を持つデータの一例であり、ここでいう第一中間データ３１１及び第二中間データ３１４とはレイアウト情報を含むデータでありフォーマット形式を特定するものではない。
【００１８】
印刷制御部３１５はクリップ領域保存部３１３で保存された１つまたは複数のクリップした第二中間データ３１４をＯＳ３１６を介してプリンタドライバー３１７に対して描画処理を実行する。ＯＳ３１６は構造化文書印刷モジュール３１９がプリンタドライバー３１７から描画処理を行うためのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を提供する。またＯＳ３１６には印刷ジョブを管理するスプーラシステム、プリンタコマンドをポートへ出力するポートモニター等の各種制御ソフトウェアが含まれるが詳細については省略する。プリンタドライバー３１７は印刷処理により実行された描画処理にしたがって印刷データを作成し、プリンタコマンドに変換後、ＯＳ３１６を介してプリンタコマンドをプリンタ３１８に送信、プリンタ３１８が用紙へ記録する。
【００１９】
図４は本実施形態における構造化文書ファイル全体４０１を表す。図５の枠線で囲まれた部分は構造化文書ファイル全体４０１をブラウザー３０１上で表示した時に表示される表示領域５０１を表す。また背景画像５０２は構造化文書内で表示される背景を切り出したものであり、ブラウザー３０１上で表示した領域に追従し表示されるものである。図６は印刷領域６０１がブラウザー３０１上で表示される表示領域６０２にすべて収まっている場合、図７は印刷領域７０１がブラウザー３０１上で表示される表示領域７０２に収まらない場合をそれぞれ表す。図８はブラウザー３０１上の表示領域を構造化文書ファイルの左上が表示されるように移動した時に表示される表示領域８０２と印刷領域７０１と重なる印刷領域８０１を表す。図９はブラウザー３０１上の表示領域を構造化文書ファイルの左上が表示されるように移動した後にデータ抽出部３０８によって抽出される抽出データ３０９を表示領域９０２と印刷領域７０１と重なる印刷領域９０１として表したものである。図８は不要な背景情報を含んだ模式図であり、図９は不要な背景情報を削除した模式図である。
【００２０】
図１０は図９の模式図のように不要な背景情報を削除した抽出データ３０９において、図７の印刷領域７０１をスクロール移動しながらブラウザー３０１上の表示領域を移動させ、印刷領域と重なる領域をクリップする模式図である。図１１は図１０の表示領域１００３で印刷領域７０１と重なる印刷領域１１０１を表す。図１２の領域１２０１はクリップした領域をまとめた模式図である。
【００２１】
図１３は本実施形態における印刷領域を印刷制御部３１５に送信する中間データとしてクリップして保存するまでのフローチャートである。Ｓ１３０１で構造化文書において不要な背景情報が含まれるかを文書全体に対して行う。表示領域内に不要な背景情報が含まれていた場合はＳ１３０３で表示領域の不要な背景情報を削除した抽出データ３０９をデータ抽出部３０８にて作成する。Ｓ１３０１で表示領域内に不要な背景情報が含まれていない場合はＳ１３０２で構造化文書から表示領域の抽出データ３０９をデータ抽出部３０８にて作成する。Ｓ１３０２またはＳ１３０３で作成する抽出データ３０９のフォーマット形式は構造化文書で一般的に用いられるＨＴＭＬやＸＨＴＭＬ形式であるが、特にフォーマット形式は特定しない。Ｓ１３０２で作成した抽出データは構造化文書そのものでも良い。データの保存方法についてもＨＤＤ等の記憶媒体にファイルとして保存する場合やＲＯＭ等のメモリー空間に保持する場合もある。
【００２２】
Ｓ１３０４で表示領域取得部３０３はブラウザー３０１から表示領域６０２を取得する。Ｓ１３０５で表示領域６０２の座標情報を座標保存部３０７で保存する。Ｓ１３０６でブラウザー上の表示領域が抽出データ３０９の左上が表示されるようにスクロール移動させる。この時、表示装置２０６には座標保存部４０７にて保存された領域を描画した状態のままで、描画更新はおこなわない。
【００２３】
図１４はスクロール制御部は常に表示装置２０６上での描画更新を行わない例の本実施形態の処理開始時を表している。処理開始時の表示装置２０６上での描画画面は領域１４０１であり、Ｓ１３０６で抽出データの左上になるようにスクロール移動した表示領域が領域１４０３である。領域１４０３を表示領域取得部３０３に表示領域１４０２として渡す。印刷領域取得部３０２は領域１４０３内に含まれる印刷領域１４０４を受け取り処理する。
【００２４】
Ｓ１３０７で表示領域をブラウザーから取得し、Ｓ１３０８で印刷領域をブラウザーから取得し、Ｓ１３０９で表示領域に印刷領域が含まれているかを判定する。印刷領域取得部３０２と表示領域取得部３０３で得られた情報を用いて領域判定部３０６にて表示領域に印刷領域が含まれているかを判定する。図７の例で表示領域を構造化文書ファイルの左上にスクロール移動した場合の状態を示しているものが図８であり、表示領域８０１の中に印刷領域８０２が含まれた状態である。図９は表示領域９０２の中に印刷領域９０１が含まれた状態で背景情報は含まれておらず、背景情報を削除した抽出データ３０９の模式図である。表示領域内に印刷領域が含まれない場合は、Ｓ１３１４以降の表示領域のスクロール処理を行い、Ｓ１３０７に戻り表示領域の取得を再度行う。
【００２５】
Ｓ１３１０でクリップ部３１２は表示領域内にクリップ領域保存部３１３がクリップ保存した第二中間データ３１４が含まれているかを判定する。中間データ作成部３１０は表示領域取得部３０３から情報を受け取り、表示領域９０２を第一中間データ３１１として保存する。クリップ部３１２は印刷領域判定部と表示領域取得部３０３から情報を受け取り、表示領域９０２の中に含まれる印刷領域９０１をクリップ部３１２で第一中間データ３１１からクリップする。表示領域が１００２の場合、表示領域内にクリップ保存した第二中間データは含まれないためＳ１３１２で印刷領域１０１２をクリップ部３１２で第一中間データ３１１からクリップする。表示領域が１００３の場合、表示領域内に既に印刷領域１０１２の一部としてクリップした領域が第二中間データ３１４に含まれるため、Ｓ１３１１で印刷領域１０１１をクリップ部３１２で第一中間データ３１１からクリップする。印刷領域１０１１は印刷領域１０１２と印刷領域１１０１の重なった領域部分を印刷領域１１０１から削除したものである。表示領域１００３は表示領域１００２の表示領域をスクロール制御部３０４が右にスクロール移動させたものだが表示領域１００２の横幅の分だけ移動できないため移動できる横幅の分だけ右にスクロール移動させている。表示領域１００３と印刷領域７０１で重なる個所は図１１のように印刷領域１１０１の領域になるが、既に印刷領域１０１２と重なる個所をクリップした第二中間データとして保存している。そのため、表示領域１００３からＳ１３１１でクリップされる印刷領域は１０１１となる。Ｓ１３１１もしくはＳ１３１２でクリップされた第一中間データはＳ１３１３で既に保存されている第二中間データとクリップ領域保存部３１３で結合され新たな第二中間データとして保存される。
【００２６】
Ｓ１３１４以降の表示領域スクロール処理は最初にＳ１３１４でスクロール制御部３０４は表示領域を右にスクロールできるか判定する。抽出データの左上が表示された状態の表示領域１００１の場合、表示領域を右にスクロールできるため、Ｓ１３１６で表示領域１００１の横幅の分だけスクロールし、右に移動させた表示領域１００２を表示装置２０６上での描画更新は行わず新たな表示領域とする。表示領域１００２からスクロール移動では横幅の分だけ移動できないため、Ｓ１３１６で移動できる分だけ右に移動させ表示領域１００３を表示装置２０６上での描画更新は行わず新しい表示領域とする。表示領域１００２の場合はＳ１３１４で表示領域を右にスクロールできないと判定されるため、Ｓ１３１５でスクロールをいちばん左に移動させた後にＳ１３１７でスクロール制御部３０４は下スクロールできるか判定する。移動できるならばＳ１３１８で表示領域１００１の縦幅の分だけスクロールを下に移動させ表示領域１００４を表示装置２０６上での描画更新は行わず新しい表示領域とする。スクロール移動後はＳ１３０７で再度、表示領域取得部３０３はスクロール移動後の新しい表示領域を取得する。スクロール処理は構造化文書の全域に対して行い、表示領域が１００９の場合、右にも下にもスクロールできないため、処理が終了する。
【００２７】
図１３のフローチャートに従い、Ｓ１３０１からＳ１３１８の処理を繰り返すことで図７の印刷領域７０１は不要な背景情報を含まない形で全印刷領域を中間データとして出力することができる。図１２は印刷領域の抽出の流れを模式図として示したものであり、クリップ領域１２０１を印刷制御部３１５がＯＳ３１６を介してプリンタドライバー３１７に対して描画処理すれば印刷領域７０１をプリンタ３１８から印刷することができる。
【００２８】
本実施形態の図１３でのフローチャートでは第一中間データ、第二中間データと記載してあるが、通常レイアウト情報を含むＥＭＦ，ＰＤＦ，ＸＰＳ等のフォーマット形式をもちいる。また、本実施形態の機能を有するものであればフォーマット形式を特定するものではない。
【実施例２】
【００２９】
図１５はＰＣ１０１上のソフトウェアの構成を示すブロック図である。以下にＰＣ１０１上で動作するプログラムについて図１５を用いて説明する。
【００３０】
ブラウザー１５０１はＷｅｂページを表示するためのアプリケーションであり、ＷＷＷサーバー１０３上のＷｅｂページをＰＣ１０１上のハードディスク２０４へダウンロードし表示装置２０６へ表示する。ＷｅｂページはＨＴＭＬやＸＨＴＭＬ等の構造化文書ファイルであり、テキストや画像、背景情報等の構造化文書を構成する要素がタグを用いて記述されている。またこれら要素の表示スタイルを指定するＣＳＳと呼ばれる別ファイルが構造化文書内に指定されている。ブラウザー１５０１はこれらの構造化文書ファイルを解析し表示装置２０６へ表示する。
【００３１】
構造化文書印刷モジュール１５０２はブラウザー１５０１から呼び出されるプラグインソフトウェアであり、ユーザーがブラウザー１５０１に対して、印刷を行った時に、この構造化文書印刷モジュール１５０２が実行される。ユーザーがブラウザー１５０１に対して、印刷を行った時、印刷領域取得部１５０３はブラウザー１５０１から構造化文書ファイルの印刷領域を取得する。表示領域取得部１５０４はブラウザー１５０１から構造化文書ファイルの表示領域を取得する。スクロール制御部１５０５はブラウザー１５０１からスクロール位置を受け取り、すべての印刷領域が表示されるようにスクロールを移動させ表示領域を変更させる。表示領域取得部１５０４はスクロール制御部１５０５がスクロールして表示領域を変更した場合には再度ブラウザー１５０１から表示領域を取得する。背景解析部１５０６は表示領域取得部１５０４からの領域情報を参照して構造化文書ファイル内の表示領域について背景に関する情報をブラウザー１５０１から受け取り解析する。領域判定部１５０７は表示領域内に印刷領域があるかを判定する。データ抽出部１５０８は背景解析部１５０６からの情報に従い構造化文書から不要なデータを削除し抽出データ１５０９として抽出する。中間データ作成部１５１０は抽出データ１５０９を変換して表示領域の第一中間データ１５１１を作成する。第一中間データ１５１１はレイアウト情報を持ったデータであり、ＥＭＦ（Ｅｎｈａｎｃｅｄ  Ｍｅｔａ  Ｆｉｌｅ）、ＰＤＦ（Ｐｏｒｔａｂｌｅ  Ｄｏｃｕｍｅｎｔ  Ｆｏｒｍａｔ）、ＸＰＳ（ＸＭＬ  Ｐａｐｅｒ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）などのフォーマット形式である。前述したフォーマット形式はレイアウト情報を持つデータの一例であり、ここでいう第一中間データ１５１１とはレイアウト情報を含むデータでフォーマット形式を特定するものではない。
【００３２】
クリップ部１５１２は中間データ作成部１５１０で作成した第一中間データ１５１１のうち表示領域内で印刷領域と重なる領域をクリップする。クリップ領域保存部１５１３はクリップした領域をクリップした第二中間データ１５１４として保存しておき、次回クリップ部１５１２が第一中間データ１５１１から領域をクリップする際にはクリップ領域保存部１５１３が保存したクリップした第二中間データ１５１４を元に同じ領域はクリップしないようにする。
【００３３】
印刷制御部１５１５はクリップ領域保存部１５１３で保存された１つまたは複数のクリップした第二中間データ１５１４をＯＳ１５１６を介してプリンタドライバー１５１７に対して描画処理を実行する。ＯＳ１５１６は構造化文書印刷モジュール１５０２がプリンタドライバー１５１７から描画処理を行うためのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を提供する。またＯＳ１５１６には印刷ジョブを管理するスプーラシステム、プリンタコマンドをポートへ出力するポートモニター等の各種制御ソフトウェアが含まれるが詳細については省略する。プリンタドライバー１５１７は印刷処理により実行された描画処理にしたがって印刷データを作成し、プリンタコマンドに変換後、ＯＳ１５１６を介してプリンタコマンドをプリンタ１５１８に送信、プリンタ１５１８が用紙へ記録する。
【００３４】
図１６は本実施形態における印刷領域を印刷制御部３１５に送信する中間データとしてクリップして保存するまでのフローチャートである。
【００３５】
Ｓ１６０１でブラウザー上の表示領域を構造化文書ファイルの左上が表示されるようにスクロール移動させる。Ｓ１６０２で表示領域をブラウザーから取得し、Ｓ１６０３で印刷領域をブラウザーから取得し、Ｓ１６０４で表示領域に印刷領域が含まれているかを判定する。印刷領域取得部１５０３と表示領域取得部１５０４で得られた情報を用いて領域判定部１５０７にて表示領域に印刷領域が含まれているかを判定する。Ｓ１６０５で構造化文書の表示領域内において不要な背景情報が含まれるかを判定する。不要な背景情報が含まれなければＳ１６０７で構造化文書から抽出データ１５０９を作成する。Ｓ１６０５で不要な背景情報が含まれた場合、Ｓ１６０６で構造化文書から不要な背景情報を削除して抽出データ１５０９を作成する。Ｓ１６０７またはＳ１６０６で作成する抽出データ１５０９は構造化文書の表示領域から背景情報が削除されたものである。抽出データ１５０９は構造化文書フォーマットを変更しないデータでもフォーマットを変更したデータでも良い。Ｓ１６０８で中間データ作成部１５１０にて抽出データ１５０９をレイアウト情報を持った第一中間データ１５１１に変換保存する。Ｓ１６０９以降のフローは実施形態１でのＳ１３０９以降のフローと同等であるため、省略する。ただし、本実施形態では表示装置２０６への描画更新は常に行い、ブラウザー１５０１の表示領域と表示装置２０６の描画領域は同じものである。
【００３６】
図１６のフローチャートに従い、Ｓ１６０１からＳ１６１７の処理を繰り返すことで印刷領域の大きさに関わらず、不要な背景情報を含まない形で全印刷領域を中間データとして出力することができる。図１２は印刷領域の抽出の流れを模式図として示したものであり、クリップした第二中間データ１５１４を印刷制御部１５１５がＯＳ１５１６を介してプリンタドライバー１５１７に対して描画処理すれば印刷領域をプリンタ１５１８から印刷することができる。
【００３７】
本実施形態の図１６でのフローチャートでは中間データと記載してあるが、ＥＭＦ，ＰＤＦ，ＸＰＳ等のフォーマット形式でもよく、フォーマット形式を特定するものではない。
【００３８】
本実施形態では背景情報の削除を構造化文書の一部である表示領域に対して行っているが、背景情報の削除は構造化文書の全体に対して行ってもよい。
【実施例３】
【００３９】
本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵまたはＭＰＵ）が記録媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００４０】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【００４１】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施例の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれる。
【００４２】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリーに書きこまれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【符号の説明】
【００４３】
１０１  ＰＣ
１０２  インターネット
１０３  ＷＷＷサーバー
１０４  プリンタ
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  ハードディスク
２０５  通信インターフェース
２０６  表示装置
２０７  マウス
２０８  キーボード
２０９  システムバス
３０１  ブラウザー
３０２  印刷領域取得部
３０３  表示領域取得部
３０４  スクロール制御部
３０５  背景解析部
３０６  領域判定部
３０７  座標保存部
３０８  データ抽出部
３０９  抽出データ
３１０  中間ファイル作成部
３１１  第一中間データ
３１２  クリップ部
３１３  クリップ領域保存部
３１４  第二中間データ
３１５  印刷制御部
３１６  ＯＳ（スプーラを含む）
３１７  プリンタドライバー
３１８  プリンタ
３１９  構造化文書印刷モジュール
１５０１  ブラウザー
１５０２  構造化文書印刷モジュール
１５０３  印刷領域取得部
１５０４  表示領域取得部
１５０５  スクロール制御部
１５０６  背景解析部
１５０７  領域判定部
１５０８  データ抽出部
１５０９  抽出データ
１５１０  中間ファイル作成部
１５１１  第一中間データ
１５１２  クリップ部
１５１３  クリップ領域保存部
１５１４  第二中間データ
１５１５  印刷制御部
１５１６  ＯＳ（スプーラを含む）
１５１７  プリンタドライバー
１５１８  プリンタ
【図１】
2010257220.tif 000003
【図２】
2010257220.tif 000004
【図３】
2010257220.tif 000005
【図４】
2010257220.tif 000006
【図５】
2010257220.tif 000007
【図６】
2010257220.tif 000008
【図７】
2010257220.tif 000009
【図８】
2010257220.tif 000010
【図９】
2010257220.tif 000011
【図１０】
2010257220.tif 000012
【図１１】
2010257220.tif 000013
【図１２】
2010257220.tif 000014
【図１３】
2010257220.tif 000015
【図１４】
2010257220.tif 000016
【図１５】
2010257220.tif 000017
【図１６】
2010257220.tif 000018