(57)【特許請求の範囲】
【請求項１】
ウェブユーザがウェブページキャプチャー画面印刷サービス用エージェント（以下、キャプチャー印刷エージェントとする）１０に含まれたウェブブラウザ搭載モジュール１１を介して、前記キャプチャー印刷エージェント１０をウェブブラウザに搭載させる第１過程（Ｓ１０）と、
前記キャプチャー印刷エージェント１０がウェブブラウザに搭載された状態でウェブユーザの印刷要請があると、前記キャプチャー印刷エージェント１０に含まれたウェブブラウザ制御モジュール１２がウェブページの全体サイズと現在のウェブブラウザ画面に表示された領域のウェブページのサイズとを求めて、ウェブブラウザの画面を横及び縦方向に自動スクロールする回数を計算する第２過程（Ｓ１２）と、
前記第２過程（Ｓ１２）に続いて、前記キャプチャー印刷エージェント１０に含まれたスクロールキャプチャーモジュール１３が前記ウェブブラウザ制御モジュール１２により計算されたスクロール回数に応じて、ウェブブラウザの画面を横及び縦方向に自動スクロールさせてウェブページの全体領域をウィンドウ運営体制のＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）サブシステム機能のうち、ＤＣ（Ｄｅｖｉｃｅ  Ｃｏｎｔｅｘｔ）のメタファイルＤＣを利用して複数のメタファイル断片でキャプチャーする第３過程（Ｓ１４）と、
前記第３過程（Ｓ１４）に続いて、前記キャプチャー印刷エージェント１０に含まれたクリップモジュール１４がキャプチャーされた複数のメタファイル断片から不要なグラフィック要素を除去し、純粋なウェブページ内容のみを含む２次メタファイルを得る第４過程（Ｓ１６）と、
前記第４過程（Ｓ１６）に続いて、前記キャプチャー印刷エージェント１０に含まれたキャプチャー画面印刷モジュール１５が前記クリップモジュール１４により得られた２次メタファイルを組み合せて、一つのウェブページ画面で印刷又は保存する第５過程（Ｓ１８）と
からなることを特徴とするウェブページキャプチャー画面の印刷方法。
【請求項２】
前記第２過程（Ｓ１２）では、
前記ウェブブラウザ制御モジュール１２が、ウェブブラウザがＨＴＭＬファイル形態のウェブページを解析して生成するＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）ツリーを得、このＤＯＭツリーのノードの中からウェブページを表すＤＯＭノード（ＨＴＭＬ上のＢＯＤＹ又はＨＴＭＬタグに該当）を求めて、このノードの全体サイズと現在のウェブブラウザ画面上に表示される領域のサイズとをピクセル単位で得て、ウェブページの実際の全体サイズとウェブページの内容のうち現在のウェブブラウザに表示されている領域のサイズを求めて、ウェブブラウザの画面を横及び縦方向に自動スクロールする回数を計算することを特徴とする請求項１に記載のウェブページキャプチャー画面の印刷方法。
【請求項３】
前記第５過程（Ｓ１８）では、
前記キャプチャー画面印刷モジュール１５が、不要なグラフィック要素が除去され純粋なウェブページ内容のみを含むキャプチャーされたウェブページ画面の断片、すなわち前記２次メタファイル断片を部分的に互いに重ねて（Ｌａｙｅｒｅｄ）組み合せることを特徴とする請求項１に記載のウェブページキャプチャー画面の印刷方法。
【請求項４】
前記第５過程（Ｓ１８）では、
前記キャプチャー画面印刷モジュール１５は、各２次メタファイル断片を１〜３ピクセル程度互いに重ねて組み合せることを特徴とする請求項３に記載のウェブページキャプチャー画面の印刷方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウェブページ印刷方法に関し、さらに詳細には、ウェブブラウザ画面をスクロールさせてウェブページの全体領域を複数の断片でキャプチャーした後、キャプチャーされたウェブページ画面の断片を組み合せて一つのウェブページ画面で印刷又は保存できるようにするウェブページキャプチャー画面の印刷方法に関する。
【背景技術】
【０００２】
ウェブユーザがウェブブラウザを利用して特定ウェブサーバに接続してウェブページをウェブブラウザにロードしたとき、ウェブブラウザは、ウェブユーザのモニター解像度によって特定の画面サイズでウェブページを表示し、通常、ウェブページの全体サイズのうち一部のみを画面に表示し、その代わりにスクロールバーなどのユーザインタフェースを提供して、ユーザがウェブページの他の部分も見ることができるようにする。
【０００３】
例えば、ウェブユーザのモニター解像度が６００×４００に設定されており、図１に示したように、全体サイズが１０００×１３００であるウェブページがウェブブラウザにロードされると、ウェブブラウザは、図２に示すように、ウェブページの全体サイズのうち一部のみを６００×４００のサイズで画面に表示し、ウェブユーザは、横又は縦スクロールバーを利用してウェブページの全体サイズのうち、残りの他の部分を見ることができる。
【０００４】
このようにウェブブラウザがウェブページの全体サイズのうち一部のみを画面に表示する状態で、ウェブユーザは、ウェブブラウザから提供する印刷機能やその他の印刷プログラムを介して、現在のウェブページを印刷することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、現在開発されているウェブブラウザの印刷機能やその他の印刷プログラムを利用して、ウェブブラウザ画面に表示されたウェブページを印刷する場合には、画面キャプチャー機能を利用してキャプチャーした画面をビットマップ形式に変換して印刷するから、印刷物の品質が落ちる。また、ビットマップを生成できる最大サイズは、ウェブユーザコンピュータシステムのメモリ容量によって制限を受けるために、ウェブページが長い場合、正常に印刷されない可能性が大きい。一例として、ウェブブラウザから提供される印刷機能を使用して、図３のようなウェブページを印刷する場合、図４のように、ウェブユーザが現在のウェブブラウザ画面を介して見ているウェブページを同様に印刷できない。図４を見ると、図３にてウェブユーザが実際に印刷しよとする内容が全く印刷されないことを確認することができる。
【０００６】
これとは異なり、上記のウェブブラウザ画面に表示されたウェブページ印刷物の品質を改善するための方案として、キャプチャーした画面をＥＭＦ（Ｅｎｈａｎｃｅｄ  Ｍｅｔａ  Ｆｉｌｅ）に変換して印刷する技術が紹介されている。しかしながら、この場合、ウェブページの全体サイズが現在のウェブユーザのモニター解像度よりかなり大きいと、図５に示したように、ウェブユーザのモニター画面から外れる内容は印刷されない。
【０００７】
参考に、前記ＥＭＦのようなメタファイルは、ラスター形態のグラフィック要素（ビットマップ等）とベクトル形態のグラフィック要素（線、図形、文字等）とを共に保存するフォーマットで、ウェブブラウザから提供するウェブ画面レンダリングインタフェースを利用すると、ウェブページに含まれたＨＴＭＬ要素をベクトル形態のグラフィック要素とラスター形態のグラフィック要素とにそれぞれ分離して抽出することができる。すなわち、ウェブページに含まれたビットマップは、ラスター形態に保存され、ウェブページに含まれた文字、線、図形などは、それぞれベクトル形態にそれぞれ保存される。
【０００８】
本発明は、上記のような従来の問題点を解決するためのものであって、本発明の目的は、ウェブブラウザ画面に表示されるウェブページの全体サイズがウェブユーザのモニター解像度より大きい場合、ウェブブラウザの画面を横及び縦方向に自動スクロールさせて、ウェブページの全体領域を複数の断片でキャプチャーした後、キャプチャーされたウェブページ画面の断片を組み合せて一つのウェブページ画面で印刷又は保存できるようにするウェブページキャプチャー画面の印刷方法に関する。
【課題を解決するための手段】
【０００９】
上記の目的を達成すべき、本発明によるウェブページキャプチャー画面の印刷方法は、ウェブユーザがウェブページキャプチャー画面印刷サービス用エージェント（以下、キャプチャー印刷エージェントとする）に含まれたウェブブラウザ搭載モジュールを介して、前記キャプチャー印刷エージェントをウェブブラウザに搭載させる第１過程と、前記キャプチャー印刷エージェントがウェブブラウザに搭載された状態でウェブユーザの印刷要請があると、前記キャプチャー印刷エージェントに含まれたウェブブラウザ制御モジュールがウェブページの全体サイズと現在のウェブブラウザ画面に表示された領域のウェブページのサイズとを求めて、ウェブブラウザの画面を横及び縦方向に自動スクロールする回数を計算する第２過程と、前記第２過程に続いて、前記キャプチャー印刷エージェントに含まれたスクロールキャプチャーモジュールが前記ウェブブラウザ制御モジュールにより計算されたスクロール回数に応じて、ウェブブラウザの画面を横及び縦方向に自動スクロールさせてウェブページの全体領域をウィンドウ運営体制のＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）サブシステム機能のうち、ＤＣ（Ｄｅｖｉｃｅ  Ｃｏｎｔｅｘｔ）のメタファイルＤＣを利用して複数のメタファイル断片でキャプチャーする第３過程と、前記第３過程に続いて、前記キャプチャー印刷エージェントに含まれたクリップモジュールがキャプチャーされた複数のメタファイル断片から不要なグラフィック要素を除去し、純粋なウェブページ内容のみを含む２次メタファイルを得る第４過程と、前記第４過程に続いて、前記キャプチャー印刷エージェントに含まれたキャプチャー画面印刷モジュールが前記クリップモジュールにより得られた２次メタファイルを組み合せて、一つのウェブページ画面で印刷又は保存する第５過程とからなることを特徴とする。
【００１０】
本発明者は、ウェブユーザがウェブブラウザを介して見ているウェブページを画面と同一に印刷しつつ印刷品質を向上させることのできる機能を提供するために、キャプチャーされたウェブページ画面の断片を部分的に互いに重ねて（Ｌａｙｅｒｅｄ）組み合せることによって、一つのウェブページ画面で印刷又は保存するＬＭＦ（Ｌａｙｅｒｅｄ  Ｍｅｔａ  Ｆｉｌｅ）という技術を開発した。
【００１１】
本発明者の開発したＬＭＦ技術は、ウェブユーザがウェブブラウザを介して見ているウェブページをビットマップではないグラフィック命令とグラフィックデータとを共に保存する方式でウェブページをキャプチャーし保存及び印刷できる技術であって、公知のＥＭＦ（Ｅｎｈａｎｃｅｄ  Ｍｅｔａ  Ｆｉｌｅ）技術を応用した形態で、ウェブページを印刷する時に印刷品質を低下せず、かつウェブページのグラフィックデータを保存するために使用した。
【００１２】
マイクロウィンドウ運営体制では、ＧＤＩ（Ｇｒａｐｈｉｃ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ）というサブシステムを介してグラフィック作業を処理するが、このＧＤＩでは、ＤＣ（Ｄｅｖｉｃｅ  Ｃｏｎｔｅｘｔ）というデータ構造体でフォント、色相、太さ、紋、出力方法など、出力に関するすべての情報を管理する。ＤＣには、画面出力のためのディスプレイＤＣ、印刷のためのプリンタＤＣ、ビットマップ出力に用いられるメモリＤＣ、グラフィック情報取得のためのメタファイルＤＣなどがある。これらの中でメタファイルＤＣを使用する場合、アプリケーション（ａｐｐｌｉｃａｔｉｏｎ）において出力のためにＧＤＩで行うグラフィック命令に対する情報を取得することができるが、本発明では、このメタファイルＤＣとウェブブラウザから提供するウェブブラウザ画面レンダリングインタフェースとを共に使用して、ウェブブラウザが画面に出力しているウェブページの内容をキャプチャーする。この技術を使用すると、ビットマップを使用する方式とは異なってはるかに少ないメモリを使用して、より多くのグラフィック情報を保存することができる。
【００１３】
メタファイルには、アプリケーションで行ったグラフィック命令を識別することのできる唯一のＩＤ値で表し、該当グラフィック命令を行うのに必要なパラメータと関連したデータをデータ構造体形式で保存する。例えば、アプリケーションにおいて線を引く作業をメタファイルで保存すると、メタファイルには、「ＥＭＲ＿ＬＩＮＥＴＯ」という整数値でアプリケーションが行ったグラフィック命令が線引きであることを表し、線を引く位置値（横、縦）をパラメータとして保存する。
【００１４】
本発明では、このようなＬＭＦ技術でウェブブラウザが画面に表示しているウェブページの内容をキャプチャーするために、自体開発したエージェント形式のモジュールをウェブブラウザに搭載させる。前で説明したように、ＥＭＦ技術とウェブブラウザが提供するウェブ画面レンダリングインタフェースを利用して、ウェブブラウザが表示しているウェブ画面をキャプチャーするが、ウェブ画面レンダリングインタフェースは、現在のウェブブラウザの画面を入力されたＤＣに描く機能を提供する。このとき、本発明では、ウィンドウ運営体制から提供する色々なＤＣの中からメタファイルＤＣを入力として、ウェブブラウザの現在画面をそのままキャプチャーする。ところが、マイクロソフトウィンドウ運営体制の特性上、実行中の各プロセスは、別途の独立したアドレス領域で動作するため、本発明では、ＡｃｔｉｖｅＸ、ＢＨＯ（Ｂｒｏｗｓｅｒ  Ｈｅｌｐｅｒ  Ｏｂｊｅｃｔ）、ツールバー、ツールバーボタン、フッキング（Ｈｏｏｋｉｎｇ）モジュールなどのようなウェブブラウザ拡張モジュールを使用して、自体開発したエージェントモジュールをウェブブラウザのようなアドレス空間に搭載させる。このようにエージェントモジュールをウェブブラウザに搭載しないと、前で説明したようにマイクロソフトウィンドウ運営体制の特性上、ウェブブラウザが提供するウェブ画面レンダリングインタフェース及びメタファイル技術を利用することができないため、ウェブ画面を正しくキャプチャーすることができない。
【００１５】
このようにエージェントモジュールがウェブブラウザに搭載されると、エージェントモジュールは、ウェブブラウザが提供するウェブ画面レンダリングインタフェースとウェブページに対するＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）ツリー構造に対する情報を獲得する。ＤＯＭツリー構造は、ウェブブラウザがウェブサーバに接続してＨＴＭＬファイル形態のウェブページをダウンロードして画面に表示するためにＨＴＭＬファイルを解析するが、このとき、ＨＴＭＬファイルの各タグをそれぞれオブジェクト形態にした資料構造である。
【００１６】
図２に示したように、ウェブブラウザは、実際のウェブページのうち一部のみをウェブブラウザ画面に表示するが、ウェブユーザの望むことは、ウェブページの全体内容を印刷することであるから、現在のウェブブラウザ画面のみを印刷することは意味がない。また、ウェブブラウザから提供するウェブ画面レンダリングインタフェースは、ウェブページ全体をＤＣに出力することではなく、現在のウェブブラウザに表示されたウェブ画面のみをＤＣに描くため、単純にウェブブラウザが提供するウェブ画面レンダリングインタフェースのみを利用しては、ウェブユーザの望むウェブページ全体を印刷することができない。
【００１７】
したがって、本発明では、ウェブページ全体に対する画面をキャプチャーするために、ウェブブラウザの機能を利用して強制的にウェブ画面を特定位置にスクロールさせ続けつつウェブ画面の断片を取得した後、この画面の断片を再度組み合せてウェブページ全体を得る方式を使用する。そして、このようにウェブページ全体の画面の断片を得るために、ウェブブラウザの画面を何回スクロールさせなければならないかを知るために、前で取得したＤＯＭ情報を利用して、ウェブブラウザがロードしているウェブページの実際サイズをピクセル単位で得る。そして、現在のウェブブラウザの画面サイズを得てこの両値でウェブページ全体をウェブブラウザ画面に表示するために、横及び縦方向に何回スクロールしなければならないかを計算する。
【００１８】
その後、クリップモジュールを使用して１次に生成されたメタファイルからウェブページと関連のないグラフィック要素（ウェブブラウザの画面の一部）を除去して２次メタファイルを生成する。こういう一連の全過程を終えると、ウェブページが複数の断片でキャプチャーされる。これらの断片は、ＤＯＭツリー構造を介して求めた実際のウェブページ上での座標と共に資料構造形態に保存され、これは、ＬＭＦモジュールにおいて位置情報とキャプチャーしたウェブページ画面の断片を組み合せて、一つのウェブページのように保存及び印刷可能なように管理され、このようにキャプチャーされたウェブページ画面は、ファイルに保存して後に使用することもできる。
【発明の効果】
【００１９】
本発明によれば、ウェブブラウザ画面に表示されるウェブページをキャプチャーした画面をビットマップ形式に変換して、印刷する際の印刷物の品質低下問題、ビットマップの最大サイズの制限によってウェブページが長くなる場合、ウェブユーザが現在のウェブブラウザ画面を介して見ているウェブページを同一に印刷できない問題、印刷物の品質を改善するためにキャプチャーした画面をＥＭＦ（Ｅｎｈａｎｃｅｄ  Ｍｅｔａ  Ｆｉｌｅ）に変換して、印刷する時のウェブページの全体サイズが現在のウェブユーザのモニター解像度より大きい場合、ウェブユーザのモニター画面から外れる内容は印刷されない問題をすべて解消できる。
【図面の簡単な説明】
【００２０】
【図１】全体サイズが１０００×１３００であるウェブページを示した実施の形態である。
【図２】モニター解像度が６００×４００に設定された場合、図１のウェブページを表示したウェブブラウザ画面である。
【図３】特定サイズのウェブページを表示したウェブブラウザ画面である。
【図４】図３に表示されたウェブページをウェブブラウザの印刷機能を介して印刷プレビューした画面である。
【図５】ウェブページの全体サイズがモニター解像度より大きい場合、該当ウェブページの印刷状態を示した実施の形態である。
【図６】本発明によるウェブページキャプチャー画面印刷サービス用エージェントの実施の形態である。
【図７】本発明によるウェブページキャプチャー画面の印刷方法を示したフローチャートである。
【図８】ウェブブラウザがＨＴＭＬファイル形態のウェブページを画面に表示する過程を示した実施の形態である。
【図９】ウェブブラウザ画面の横及び縦方向スクロール回数を示した実施の形態である。
【図１０】現在のウェブブラウザ画面の初期スクロール位置をウェブページの開始点へ移動した状態を示した実施の形態である。
【図１１】ウェブページの開始点からウェブブラウザの画面を横及び縦方向に自動スクロールさせて、ウェブページの全体領域を複数の断片でキャプチャーする過程を示した実施の形態である。
【図１２】図１１に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。
【図１３】図１１に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。
【図１４】図１１に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。
【図１５】図１１に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。
【図１６】図１１に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。
【図１７】図１１に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。
【図１８】図１１に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。
【図１９】図１１に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。
【図２０】ウェブブラウザから提供するウェブ画面レンダリングインタフェースを利用して、各スクロール位置でのウェブブラウザ画面をメタファイル断片に作る過程を示した実施の形態である。
【図２１】図１２のキャプチャー画面に対応するメタファイルを示した実施の形態である。
【図２２】図２１のメタファイルから不要なグラフィック要素を除去し純粋なウェブページ内容のみを含む２次メタファイルを得る過程を示した実施の形態である。
【図２３】図１２〜図１９のキャプチャー画面に対応する２次メタファイルを示した実施の形態である。
【図２４】図２３の複数の２次メタファイルを組み合せて一つのウェブページ画面を生成する過程を示した実施の形態である。
【発明を実施するための形態】
【００２１】
以下、本発明の実施の形態を、添付された図面を参照してさらに詳細に説明する。
【００２２】
図６は、本発明によるウェブページキャプチャー画面印刷サービス用エージェント（以下、キャプチャー印刷エージェントとする）１０であり、本発明によるウェブページキャプチャー画面の印刷方法は、ウェブ開発者あるいはウェブユーザによりウェブブラウザに搭載される前記キャプチャー印刷エージェント１０が駆動することによって行われる。
【００２３】
前記キャプチャー印刷エージェント１０は、ウェブブラウザ搭載モジュール１１、ウェブブラウザ制御モジュール１２、スクロールキャプチャーモジュール１３、クリップ（Ｃｌｉｐｐｉｎｇ）モジュール１４、キャプチャー画面印刷モジュール１５を含んで構成される。
【００２４】
前記ウェブブラウザ搭載モジュール１１は、前記キャプチャー印刷エージェント１０をウェブブラウザに搭載させる機能を果たし、通常のウェブブラウザから提供するＡｃｔｉｖｅＸ、ＢＨＯ（Ｂｒｏｗｓｅｒ  Ｈｅｌｐｅｒ  Ｏｂｊｅｃｔ）、ツールバー、ツールバーボタン、フッキング（Ｈｏｏｋｉｎｇ）モジュールなどのようなウェブブラウザ拡張モジュールを使用して作ることができる。
【００２５】
例えば、ＡｃｔｉｖｅＸ技術を使用してウェブ開発者がウェブブラウザＨＴＭＬに前記キャプチャー印刷エージェント１０を搭載させることができ、ウェブブラウザのＢＨＯ、ツールバー、ツールバーボタンのうちの何れか一つの技術を使用してウェブユーザが設置プログラムとして前記キャプチャー印刷エージェント１０をウェブブラウザに搭載させることができる。
【００２６】
前記ウェブブラウザ制御モジュール１２は、前記キャプチャー印刷エージェント１０がウェブブラウザに搭載された状態でウェブユーザの印刷要請があると、ウェブページの全体サイズと現在のウェブブラウザ画面に表示された領域のウェブページのサイズを求めて、ウェブブラウザの画面を横及び縦方向に自動スクロールする回数を計算する。
【００２７】
前記スクロールキャプチャーモジュール１３は、前記ウェブブラウザ制御モジュール１２により計算されたスクロール回数に応じて、ウェブブラウザの画面を横及び縦方向に自動スクロールさせて、ウェブページの全体領域を複数の断片、すなわち複数のメタファイル断片でキャプチャーする。
【００２８】
前記クリップモジュール１４は、キャプチャーしたウェブページ画面の断片、すなわち複数のメタファイル断片から不要なグラフィック要素を除去し、純粋なウェブページ内容のみを含む２次メタファイルを得る。
【００２９】
前記キャプチャー画面印刷モジュール１５は、前記クリップモジュール１４により得られた２次メタファイルを組み合せて、一つのウェブページ画面で印刷又は保存する。
【００３０】
前記２次メタファイルのようなメタファイルは、前記したように、ウェブページに含まれた線、図形、文字などのグラフィック要素をベクトル形態に保存する特性があるので、前記２次メタファイルを単純に付けて出力すると、印刷又は保存の際、各２次メタファイル断片間に離隔が発生するが、これを補正するために前記キャプチャー画面印刷モジュール１５は、各２次メタファイル断片を部分的に、例えば１〜３ピクセル程度互いに重ねて組み合せる機能も行う。
【００３１】
上記のように、前記キャプチャー画面印刷モジュール１５は、不要なグラフィック要素が除去され、純粋なウェブページ内容のみを含むキャプチャーされたウェブページ画面の断片、すなわち前記２次メタファイル操作を部分的に互いに重ねて組み合せることによって、一つのウェブページ画面で印刷又は保存するので、本発明者は、前記キャプチャー画面印刷モジュール１５をＬＭＦ（Ｌａｙｅｒｅｄ  Ｍｅｔａ  Ｆｉｌｅ）モジュールと名づける。
【００３２】
以下、上記のように構成される本発明によるキャプチャー印刷エージェント１０を駆動させることによって、本発明によるウェブページキャプチャー画面の印刷方法が行われる過程を具体的に説明する。
【００３３】
ウェブユーザがウェブブラウザを利用して特定ウェブサーバに接続してウェブページをウェブブラウザにロードするとき、前記キャプチャー印刷エージェント１０のウェブブラウザ搭載モジュール１１が前記キャプチャー印刷エージェント１０をウェブブラウザに搭載させる（Ｓ１０）。
【００３４】
このとき、ＡｃｔｉｖｅＸ技術を使用すると、ウェブユーザが前記ウェブページに接続する際、ウェブブラウザＨＴＭＬに前記キャプチャー印刷エージェント１０が搭載されるようにすることができ、これとは異なり、ウェブブラウザのＢＨＯ、ツールバー、ツールバーボタンのうちの何れか一つの技術を使用してウェブユーザが設置プログラムとして前記キャプチャー印刷エージェント１０をウェブブラウザに搭載させることができる。
【００３５】
上記のように、前記キャプチャー印刷エージェント１０がウェブブラウザに搭載された状態でウェブユーザの印刷要請があると、前記ウェブブラウザ制御モジュール１２は、ウェブページの全体サイズと現在のウェブブラウザ画面に表示された領域のウェブページのサイズとを求めて、ウェブブラウザの画面を横及び縦方向に自動スクロールする回数を計算する（Ｓ１２）。
【００３６】
以下、前記ウェブブラウザ制御モジュール１２によりスクロール回数が計算される過程（Ｓ１２）を具体的に説明する。
【００３７】
ウェブブラウザは、ウェブサーバに接続してＨＴＭＬファイル形態のウェブページをダウンロードして画面に表示するためにＨＴＭＬファイルを解析するが、このとき、ＨＴＭＬファイルに定義されたタグを内部的に一つのオブジェクト（Ｏｂｊｅｃｔ）形態に管理する。また、これらのオブジェクトは、親と子供の関係があるから、ウェブブラウザの内部的にこれらのオブジェクトをトリー形態に管理するが、これをＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）ツリーという。そして、ＤＯＭツリーにおいて各オブジェクトは、ＨＴＭＬファイルで一つのタグに対応し、ＤＯＭノードと呼ぶ。このＤＯＭノードは、ＨＴＭＬファイルにＣＳＳ（ｃａｓｃａｄｉｎｇ  ｓｔｙｌｅ  ｓｈｅｅｔｓ）ファイル形態に設定したタグのスタイル情報とこのノードが現在のウェブブラウザ上に表示されているピクセル単位の位置値、このノードが対応するタグ名及びＨＴＭＬソース情報などの多様な情報を提供する。参考に、図８は、ウェブブラウザがＨＴＭＬファイル形態のウェブページを解析してＤＯＭツリーを生成し、このＤＯＭツリーをウェブユーザが見ることのできるグラフィック形態に画面に表示する過程を示している。
【００３８】
前記ウェブブラウザ制御モジュール１２は、このようなウェブブラウザからＤＯＭツリーを得、このＤＯＭツリーのノードの中からウェブページを表すＤＯＭノード（ＨＴＭＬ上のＢＯＤＹ又はＨＴＭＬタグに該当）を求めて、このノードの全体サイズと現在のウェブブラウザ画面上に表示される領域のサイズをピクセル単位で得る。
【００３９】
このノードの全体サイズを求めると、ウェブページの実際の全体サイズをピクセル単位に求めることができ、ウェブブラウザの画面上に表示される領域のサイズを求めると、ウェブページの内容の中で現在のウェブブラウザに表示されている領域のサイズを求めることができる。
【００４０】
このとき求められる値は、ウェブブラウザのウィンドウサイズではなくウェブブラウザのウィンドウ内でもウェブページが表示される領域のみのサイズが求められる。
【００４１】
例えば、図２に示したように、ウェブブラウザがウェブページの一部領域を表示しているが、ここで求められる値は、図２にて点線ボックスで表示された領域のサイズが求められる。図２は、ウェブユーザのモニター解像度が６００×４００に設定されており、図１に示したように、全体サイズが１０００×１３００であるウェブページがウェブブラウザにロードされるとき、前記ウェブページの全体サイズのうちの一部が６００×４００のサイズで画面に表示される状態を示す。
【００４２】
図２に示すように、全体サイズが１０００×１３００であるウェブページのうちの一部が６００×４００のサイズでウェブブラウザに表示される場合、前記ウェブブラウザ制御モジュール１２がＤＯＭツリーにおいてウェブページＤＯＭノードから全体サイズを求めると、ウェブページのサイズである横１０００ピクセル、縦１３００ピクセルという値を得ることができる。また、ウェブページＤＯＭノードにおいて現在のウェブページに表示される領域のサイズを求めると、横６００、縦４００ピクセルの値を得ることができる。
【００４３】
現在のウェブブラウザ画面上に表示されるウェブページが横に６００ピクセルであるから、ウェブページ全体を画面に表示するためには、１０００／６００＝２回の横方向スクロールが必要であることが分かる。同じ方法でウェブページ全体のサイズを現在のウェブブラウザ上に表示される領域のサイズで割り算すると、総スクロールしなければならない回数が求められる。
【００４４】
すなわち、横＝１０００／６００から２回が必要であり、縦＝１３００／４００から４回が必要であることが分かる。したがって、全体的には、図９に示したように、横スクロール回数（２回）×縦スクロール回数（４回）＝総８回スクロールしなければウェブページ全体の内容をウェブブラウザ上に表示できないことが分かる。
【００４５】
上記のように、前記ウェブブラウザ制御モジュール１２によりウェブブラウザ画面に対する横及び縦方向への自動スクロール回数が計算されると（Ｓ１２）、次に前記スクロールキャプチャーモジュール１３は、計算されたスクロール回数に応じてウェブブラウザの画面を横及び縦方向に自動スクロールさせて、ウェブページの全体領域を複数の断片、すなわち複数のメタファイル断片でキャプチャーする（Ｓ１４）。
【００４６】
このとき、図２に示したように、ウェブブラウザがウェブページの一部領域を表示すると、前記スクロールキャプチャーモジュール１３は、前記ウェブブラウザ制御モジュール１２がウェブブラウザから求めたＤＯＭツリーとこのＤＯＭツリーから得たＤＯＭノードから求められるウェブページの座標値を利用して、図１０に示したように、現在のウェブブラウザ画面の初期スクロール位置をウェブページの開始点である（０，０）の位置に移動した後、図１１に示したように、ウェブページの開始点からウェブブラウザの画面を横及び縦方向に(1)、(2)、(3)、(4)、(5)、(6)、(7)、(8)の順に自動スクロールさせて、ウェブページの全体領域を図１２〜図１９に示したような８個の断片でキャプチャーする。
【００４７】
また、図２０に示したように、毎スクロールの際にウェブブラウザから提供するウェブ画面レンダリングインタフェースを利用して、各スクロール位置上でのウェブブラウザ画面を前記したようにメタファイル断片に作る。このようなメタファイル断片には、実際のウェブページ内容とは関係のないグラフィック要素が含まれている。一例として、図２１に示したように、実際のウェブページ内容、すなわち純粋なウェブページ内容と関係のない不要なスクロールバー、不要な外郭線が含まれている。
【００４８】
上記のように、前記スクロールキャプチャーモジュール１３がウェブブラウザの画面を横及び縦方向に自動スクロールさせて、ウェブページの全体領域を複数の断片、すなわち複数のメタファイル断片でキャプチャーすると（Ｓ１４）、次に前記クリップモジュール１４がキャプチャーされたウェブページ画面の断片、すなわち複数のメタファイル断片から不要なグラフィック要素を除去し、純粋なウェブページ内容のみを含む２次メタファイルを得る（Ｓ１６）。
【００４９】
図２２は、前記クリップモジュール１４が図２１に示したメタファイルから純粋なウェブページ内容と関係のない不要なスクロールバー、不要な外郭線を除去して２次メタファイルを得る過程を示しており、図２３は、このような過程を経て得た図１２〜図１９のキャプチャー画面に対応する２次メタファイルを示している。
【００５０】
これらの２次メタファイル断片は、前記ウェブブラウザ制御モジュール１２がウェブブラウザから求めたＤＯＭツリーとこのＤＯＭツリーから得たＤＯＭノードから求められる実際のウェブページ上の座標と共に資料構造形態に保存され、以後、前記キャプチャー画面印刷モジュール１５により位置情報とキャプチャーしたウェブページ画面の断片を組み合せて一つのウェブページのように保存及び印刷可能なように管理され、ファイルで保存して後に使用することもできる。
【００５１】
上記のように、前記クリップモジュール１４により２次メタファイルが得られると、次に前記キャプチャー画面印刷モジュール１５が、図２４に示したように、前記クリップモジュール１４により得られた２次メタファイルを組み合せて一つのウェブページ画面で印刷又は保存する（Ｓ１８）。
【００５２】
このとき、前記２次メタファイルのようなメタファイルは、前記したようにウェブページに含まれた線、図形、文字などのグラフィック要素をベクトル形態に保存する特性があるので、前記２次メタファイルを単純に付けて出力すると、印刷又は保存の際、各２次メタファイル断片間に離隔が発生するので、これを補正するために前記キャプチャー画面印刷モジュール１５は、各２次メタファイル断片を部分的に、例えば１〜３ピクセル程度互いに重ねて組み合せる。図２４の場合、(1)、(2)、(3)、(4)、(5)、(6)、(7)、(8)のメタファイルをそれぞれ互いに当接する部分で１〜３ピクセル重ねて組み合せることが好ましく、例えば(1)番メタファイルと(2)番メタファイルとが互いに当接する部分、すなわち(1)番メタファイルの右側と(2)番メタファイルの左側とを１〜３ピクセル程度互いに重ねて組み合せ、(1)番メタファイルと(3)番メタファイルとが互いに当接する部分、すなわち(1)番メタファイルの下端と(3)番メタファイルの上端とを１〜３ピクセル程度重ねて組み合せ、残りの他のメタファイルもこのような方式で重ねて組み合せる。
【００５３】
以上説明した本発明によるウェブページキャプチャー画面の印刷方法は、上述の実施の形態に限定されず、以下の特許請求の範囲で請求する本発明の要旨から逸脱せずに本発明の属する分野における通常の知識を有する者であれば、誰でも多様に変更して実施できる範囲までその技術的思想がある。
【符号の説明】
【００５４】
１０      キャプチャー画面印刷サービス用エージェント
１１      ウェブブラウザ搭載モジュール
１２      ウェブブラウザ制御モジュール
１３      スクロールキャプチャーモジュール
１４      クリップモジュール
１５      キャプチャー画面印刷モジュール
【図１】
0005455714.tif 000002
【図２】
0005455714.tif 000003
【図３】
0005455714.tif 000004
【図４】
0005455714.tif 000005
【図５】
0005455714.tif 000006
【図６】
0005455714.tif 000007
【図７】
0005455714.tif 000008
【図８】
0005455714.tif 000009
【図９】
0005455714.tif 000010
【図１０】
0005455714.tif 000011
【図１１】
0005455714.tif 000012
【図１２】
0005455714.tif 000013
【図１３】
0005455714.tif 000014
【図１４】
0005455714.tif 000015
【図１５】
0005455714.tif 000016
【図１６】
0005455714.tif 000017
【図１７】
0005455714.tif 000018
【図１８】
0005455714.tif 000019
【図１９】
0005455714.tif 000020
【図２０】
0005455714.tif 000021
【図２１】
0005455714.tif 000022
【図２２】
0005455714.tif 000023
【図２３】
0005455714.tif 000024
【図２４】
0005455714.tif 000025