JP2011186784A - ウェブページキャプチャー画面の印刷方法 - Google Patents

ウェブページキャプチャー画面の印刷方法 Download PDF

Info

Publication number
JP2011186784A
JP2011186784A JP2010051431A JP2010051431A JP2011186784A JP 2011186784 A JP2011186784 A JP 2011186784A JP 2010051431 A JP2010051431 A JP 2010051431A JP 2010051431 A JP2010051431 A JP 2010051431A JP 2011186784 A JP2011186784 A JP 2011186784A
Authority
JP
Japan
Prior art keywords
screen
web page
web
web browser
capture
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010051431A
Other languages
English (en)
Other versions
JP5455714B2 (ja
Inventor
Jun Yong Ko
ジュンヨン コー
Nak Cheol Sung
ナクチョル スン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Designmade Co Ltd
Original Assignee
Designmade Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Designmade Co Ltd filed Critical Designmade Co Ltd
Priority to JP2010051431A priority Critical patent/JP5455714B2/ja
Publication of JP2011186784A publication Critical patent/JP2011186784A/ja
Application granted granted Critical
Publication of JP5455714B2 publication Critical patent/JP5455714B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

【課題】ウェブブラウザ画面に表示されるウェブページの全体サイズがモニター画面より大きい場合でも、全体画面をもれなく印刷する。
【解決手段】ウェブブラウザ画面に表示されるページが大きくて全体を画面表示できない場合、画面を自動スクロールしてページ全体を区分けて表示させることで、ページ全体のビットマップデータを複数の断片の集合として収集し、これら断片を組み合わせて1つのウェブページ画面として印刷またはファイル保存できるようにする。
【選択図】図6

Description

本発明は、ウェブページ印刷方法に関し、さらに詳細には、ウェブブラウザ画面をスクロールさせてウェブページの全体領域を複数の断片でキャプチャーした後、キャプチャーされたウェブページ画面の断片を組み合せて一つのウェブページ画面で印刷又は保存できるようにするウェブページキャプチャー画面の印刷方法に関する。
ウェブユーザがウェブブラウザを利用して特定ウェブサーバに接続してウェブページをウェブブラウザにロードしたとき、ウェブブラウザは、ウェブユーザのモニター解像度によって特定の画面サイズでウェブページを表示し、通常、ウェブページの全体サイズのうち一部のみを画面に表示し、その代わりにスクロールバーなどのユーザインタフェースを提供して、ユーザがウェブページの他の部分も見ることができるようにする。
例えば、ウェブユーザのモニター解像度が600×400に設定されており、図1に示したように、全体サイズが1000×1300であるウェブページがウェブブラウザにロードされると、ウェブブラウザは、図2に示すように、ウェブページの全体サイズのうち一部のみを600×400のサイズで画面に表示し、ウェブユーザは、横又は縦スクロールバーを利用してウェブページの全体サイズのうち、残りの他の部分を見ることができる。
このようにウェブブラウザがウェブページの全体サイズのうち一部のみを画面に表示する状態で、ウェブユーザは、ウェブブラウザから提供する印刷機能やその他の印刷プログラムを介して、現在のウェブページを印刷することができる。
しかしながら、現在開発されているウェブブラウザの印刷機能やその他の印刷プログラムを利用して、ウェブブラウザ画面に表示されたウェブページを印刷する場合には、画面キャプチャー機能を利用してキャプチャーした画面をビットマップ形式に変換して印刷するから、印刷物の品質が落ちる。また、ビットマップを生成できる最大サイズは、ウェブユーザコンピュータシステムのメモリ容量によって制限を受けるために、ウェブページが長い場合、正常に印刷されない可能性が大きい。一例として、ウェブブラウザから提供される印刷機能を使用して、図3のようなウェブページを印刷する場合、図4のように、ウェブユーザが現在のウェブブラウザ画面を介して見ているウェブページを同様に印刷できない。図4を見ると、図3にてウェブユーザが実際に印刷しよとする内容が全く印刷されないことを確認することができる。
これとは異なり、上記のウェブブラウザ画面に表示されたウェブページ印刷物の品質を改善するための方案として、キャプチャーした画面をEMF(Enhanced Meta File)に変換して印刷する技術が紹介されている。しかしながら、この場合、ウェブページの全体サイズが現在のウェブユーザのモニター解像度よりかなり大きいと、図5に示したように、ウェブユーザのモニター画面から外れる内容は印刷されない。
参考に、前記EMFのようなメタファイルは、ラスター形態のグラフィック要素(ビットマップ等)とベクトル形態のグラフィック要素(線、図形、文字等)とを共に保存するフォーマットで、ウェブブラウザから提供するウェブ画面レンダリングインタフェースを利用すると、ウェブページに含まれたHTML要素をベクトル形態のグラフィック要素とラスター形態のグラフィック要素とにそれぞれ分離して抽出することができる。すなわち、ウェブページに含まれたビットマップは、ラスター形態に保存され、ウェブページに含まれた文字、線、図形などは、それぞれベクトル形態にそれぞれ保存される。
本発明は、上記のような従来の問題点を解決するためのものであって、本発明の目的は、ウェブブラウザ画面に表示されるウェブページの全体サイズがウェブユーザのモニター解像度より大きい場合、ウェブブラウザの画面を横及び縦方向に自動スクロールさせて、ウェブページの全体領域を複数の断片でキャプチャーした後、キャプチャーされたウェブページ画面の断片を組み合せて一つのウェブページ画面で印刷又は保存できるようにするウェブページキャプチャー画面の印刷方法に関する。
上記の目的を達成すべき、本発明によるウェブページキャプチャー画面の印刷方法は、ウェブユーザがウェブページキャプチャー画面印刷サービス用エージェント(以下、キャプチャー印刷エージェントとする)に含まれたウェブブラウザ搭載モジュールを介して、前記キャプチャー印刷エージェントをウェブブラウザに搭載させる第1過程と、前記キャプチャー印刷エージェントがウェブブラウザに搭載された状態でウェブユーザの印刷要請があると、前記キャプチャー印刷エージェントに含まれたウェブブラウザ制御モジュールがウェブページの全体サイズと現在のウェブブラウザ画面に表示された領域のウェブページのサイズとを求めて、ウェブブラウザの画面を横及び縦方向に自動スクロールする回数を計算する第2過程と、前記第2過程に続いて、前記キャプチャー印刷エージェントに含まれたスクロールキャプチャーモジュールが前記ウェブブラウザ制御モジュールにより計算されたスクロール回数に応じて、ウェブブラウザの画面を横及び縦方向に自動スクロールさせてウェブページの全体領域をウィンドウ運営体制のGDI(Graphic Device Interface)サブシステム機能のうち、DC(Device Context)のメタファイルDCを利用して複数のメタファイル断片でキャプチャーする第3過程と、前記第3過程に続いて、前記キャプチャー印刷エージェントに含まれたクリップモジュールがキャプチャーされた複数のメタファイル断片から不要なグラフィック要素を除去し、純粋なウェブページ内容のみを含む2次メタファイルを得る第4過程と、前記第4過程に続いて、前記キャプチャー印刷エージェントに含まれたキャプチャー画面印刷モジュールが前記クリップモジュールにより得られた2次メタファイルを組み合せて、一つのウェブページ画面で印刷又は保存する第5過程とからなることを特徴とする。
本発明者は、ウェブユーザがウェブブラウザを介して見ているウェブページを画面と同一に印刷しつつ印刷品質を向上させることのできる機能を提供するために、キャプチャーされたウェブページ画面の断片を部分的に互いに重ねて(Layered)組み合せることによって、一つのウェブページ画面で印刷又は保存するLMF(Layered Meta File)という技術を開発した。
本発明者の開発したLMF技術は、ウェブユーザがウェブブラウザを介して見ているウェブページをビットマップではないグラフィック命令とグラフィックデータとを共に保存する方式でウェブページをキャプチャーし保存及び印刷できる技術であって、公知のEMF(Enhanced Meta File)技術を応用した形態で、ウェブページを印刷する時に印刷品質を低下せず、かつウェブページのグラフィックデータを保存するために使用した。
マイクロウィンドウ運営体制では、GDI(Graphic Device Interface)というサブシステムを介してグラフィック作業を処理するが、このGDIでは、DC(Device Context)というデータ構造体でフォント、色相、太さ、紋、出力方法など、出力に関するすべての情報を管理する。DCには、画面出力のためのディスプレイDC、印刷のためのプリンタDC、ビットマップ出力に用いられるメモリDC、グラフィック情報取得のためのメタファイルDCなどがある。これらの中でメタファイルDCを使用する場合、アプリケーション(application)において出力のためにGDIで行うグラフィック命令に対する情報を取得することができるが、本発明では、このメタファイルDCとウェブブラウザから提供するウェブブラウザ画面レンダリングインタフェースとを共に使用して、ウェブブラウザが画面に出力しているウェブページの内容をキャプチャーする。この技術を使用すると、ビットマップを使用する方式とは異なってはるかに少ないメモリを使用して、より多くのグラフィック情報を保存することができる。
メタファイルには、アプリケーションで行ったグラフィック命令を識別することのできる唯一のID値で表し、該当グラフィック命令を行うのに必要なパラメータと関連したデータをデータ構造体形式で保存する。例えば、アプリケーションにおいて線を引く作業をメタファイルで保存すると、メタファイルには、「EMR_LINETO」という整数値でアプリケーションが行ったグラフィック命令が線引きであることを表し、線を引く位置値(横、縦)をパラメータとして保存する。
本発明では、このようなLMF技術でウェブブラウザが画面に表示しているウェブページの内容をキャプチャーするために、自体開発したエージェント形式のモジュールをウェブブラウザに搭載させる。前で説明したように、EMF技術とウェブブラウザが提供するウェブ画面レンダリングインタフェースを利用して、ウェブブラウザが表示しているウェブ画面をキャプチャーするが、ウェブ画面レンダリングインタフェースは、現在のウェブブラウザの画面を入力されたDCに描く機能を提供する。このとき、本発明では、ウィンドウ運営体制から提供する色々なDCの中からメタファイルDCを入力として、ウェブブラウザの現在画面をそのままキャプチャーする。ところが、マイクロソフトウィンドウ運営体制の特性上、実行中の各プロセスは、別途の独立したアドレス領域で動作するため、本発明では、ActiveX、BHO(Browser Helper Object)、ツールバー、ツールバーボタン、フッキング(Hooking)モジュールなどのようなウェブブラウザ拡張モジュールを使用して、自体開発したエージェントモジュールをウェブブラウザのようなアドレス空間に搭載させる。このようにエージェントモジュールをウェブブラウザに搭載しないと、前で説明したようにマイクロソフトウィンドウ運営体制の特性上、ウェブブラウザが提供するウェブ画面レンダリングインタフェース及びメタファイル技術を利用することができないため、ウェブ画面を正しくキャプチャーすることができない。
このようにエージェントモジュールがウェブブラウザに搭載されると、エージェントモジュールは、ウェブブラウザが提供するウェブ画面レンダリングインタフェースとウェブページに対するDOM(Document Object Model)ツリー構造に対する情報を獲得する。DOMツリー構造は、ウェブブラウザがウェブサーバに接続してHTMLファイル形態のウェブページをダウンロードして画面に表示するためにHTMLファイルを解析するが、このとき、HTMLファイルの各タグをそれぞれオブジェクト形態にした資料構造である。
図2に示したように、ウェブブラウザは、実際のウェブページのうち一部のみをウェブブラウザ画面に表示するが、ウェブユーザの望むことは、ウェブページの全体内容を印刷することであるから、現在のウェブブラウザ画面のみを印刷することは意味がない。また、ウェブブラウザから提供するウェブ画面レンダリングインタフェースは、ウェブページ全体をDCに出力することではなく、現在のウェブブラウザに表示されたウェブ画面のみをDCに描くため、単純にウェブブラウザが提供するウェブ画面レンダリングインタフェースのみを利用しては、ウェブユーザの望むウェブページ全体を印刷することができない。
したがって、本発明では、ウェブページ全体に対する画面をキャプチャーするために、ウェブブラウザの機能を利用して強制的にウェブ画面を特定位置にスクロールさせ続けつつウェブ画面の断片を取得した後、この画面の断片を再度組み合せてウェブページ全体を得る方式を使用する。そして、このようにウェブページ全体の画面の断片を得るために、ウェブブラウザの画面を何回スクロールさせなければならないかを知るために、前で取得したDOM情報を利用して、ウェブブラウザがロードしているウェブページの実際サイズをピクセル単位で得る。そして、現在のウェブブラウザの画面サイズを得てこの両値でウェブページ全体をウェブブラウザ画面に表示するために、横及び縦方向に何回スクロールしなければならないかを計算する。
その後、クリップモジュールを使用して1次に生成されたメタファイルからウェブページと関連のないグラフィック要素(ウェブブラウザの画面の一部)を除去して2次メタファイルを生成する。こういう一連の全過程を終えると、ウェブページが複数の断片でキャプチャーされる。これらの断片は、DOMツリー構造を介して求めた実際のウェブページ上での座標と共に資料構造形態に保存され、これは、LMFモジュールにおいて位置情報とキャプチャーしたウェブページ画面の断片を組み合せて、一つのウェブページのように保存及び印刷可能なように管理され、このようにキャプチャーされたウェブページ画面は、ファイルに保存して後に使用することもできる。
本発明によれば、ウェブブラウザ画面に表示されるウェブページをキャプチャーした画面をビットマップ形式に変換して、印刷する際の印刷物の品質低下問題、ビットマップの最大サイズの制限によってウェブページが長くなる場合、ウェブユーザが現在のウェブブラウザ画面を介して見ているウェブページを同一に印刷できない問題、印刷物の品質を改善するためにキャプチャーした画面をEMF(Enhanced Meta File)に変換して、印刷する時のウェブページの全体サイズが現在のウェブユーザのモニター解像度より大きい場合、ウェブユーザのモニター画面から外れる内容は印刷されない問題をすべて解消できる。
全体サイズが1000×1300であるウェブページを示した実施の形態である。 モニター解像度が600×400に設定された場合、図1のウェブページを表示したウェブブラウザ画面である。 特定サイズのウェブページを表示したウェブブラウザ画面である。 図3に表示されたウェブページをウェブブラウザの印刷機能を介して印刷プレビューした画面である。 ウェブページの全体サイズがモニター解像度より大きい場合、該当ウェブページの印刷状態を示した実施の形態である。 本発明によるウェブページキャプチャー画面印刷サービス用エージェントの実施の形態である。 本発明によるウェブページキャプチャー画面の印刷方法を示したフローチャートである。 ウェブブラウザがHTMLファイル形態のウェブページを画面に表示する過程を示した実施の形態である。 ウェブブラウザ画面の横及び縦方向スクロール回数を示した実施の形態である。 現在のウェブブラウザ画面の初期スクロール位置をウェブページの開始点へ移動した状態を示した実施の形態である。 ウェブページの開始点からウェブブラウザの画面を横及び縦方向に自動スクロールさせて、ウェブページの全体領域を複数の断片でキャプチャーする過程を示した実施の形態である。 図11に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。 図11に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。 図11に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。 図11に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。 図11に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。 図11に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。 図11に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。 図11に示したウェブページ全体領域の一部をスクロールキャプチャーしたウェブブラウザ画面である。 ウェブブラウザから提供するウェブ画面レンダリングインタフェースを利用して、各スクロール位置でのウェブブラウザ画面をメタファイル断片に作る過程を示した実施の形態である。 図12のキャプチャー画面に対応するメタファイルを示した実施の形態である。 図21のメタファイルから不要なグラフィック要素を除去し純粋なウェブページ内容のみを含む2次メタファイルを得る過程を示した実施の形態である。 図12〜図19のキャプチャー画面に対応する2次メタファイルを示した実施の形態である。 図23の複数の2次メタファイルを組み合せて一つのウェブページ画面を生成する過程を示した実施の形態である。
以下、本発明の実施の形態を、添付された図面を参照してさらに詳細に説明する。
図6は、本発明によるウェブページキャプチャー画面印刷サービス用エージェント(以下、キャプチャー印刷エージェントとする)10であり、本発明によるウェブページキャプチャー画面の印刷方法は、ウェブ開発者あるいはウェブユーザによりウェブブラウザに搭載される前記キャプチャー印刷エージェント10が駆動することによって行われる。
前記キャプチャー印刷エージェント10は、ウェブブラウザ搭載モジュール11、ウェブブラウザ制御モジュール12、スクロールキャプチャーモジュール13、クリップ(Clipping)モジュール14、キャプチャー画面印刷モジュール15を含んで構成される。
前記ウェブブラウザ搭載モジュール11は、前記キャプチャー印刷エージェント10をウェブブラウザに搭載させる機能を果たし、通常のウェブブラウザから提供するActiveX、BHO(Browser Helper Object)、ツールバー、ツールバーボタン、フッキング(Hooking)モジュールなどのようなウェブブラウザ拡張モジュールを使用して作ることができる。
例えば、ActiveX技術を使用してウェブ開発者がウェブブラウザHTMLに前記キャプチャー印刷エージェント10を搭載させることができ、ウェブブラウザのBHO、ツールバー、ツールバーボタンのうちの何れか一つの技術を使用してウェブユーザが設置プログラムとして前記キャプチャー印刷エージェント10をウェブブラウザに搭載させることができる。
前記ウェブブラウザ制御モジュール12は、前記キャプチャー印刷エージェント10がウェブブラウザに搭載された状態でウェブユーザの印刷要請があると、ウェブページの全体サイズと現在のウェブブラウザ画面に表示された領域のウェブページのサイズを求めて、ウェブブラウザの画面を横及び縦方向に自動スクロールする回数を計算する。
前記スクロールキャプチャーモジュール13は、前記ウェブブラウザ制御モジュール12により計算されたスクロール回数に応じて、ウェブブラウザの画面を横及び縦方向に自動スクロールさせて、ウェブページの全体領域を複数の断片、すなわち複数のメタファイル断片でキャプチャーする。
前記クリップモジュール14は、キャプチャーしたウェブページ画面の断片、すなわち複数のメタファイル断片から不要なグラフィック要素を除去し、純粋なウェブページ内容のみを含む2次メタファイルを得る。
前記キャプチャー画面印刷モジュール15は、前記クリップモジュール14により得られた2次メタファイルを組み合せて、一つのウェブページ画面で印刷又は保存する。
前記2次メタファイルのようなメタファイルは、前記したように、ウェブページに含まれた線、図形、文字などのグラフィック要素をベクトル形態に保存する特性があるので、前記2次メタファイルを単純に付けて出力すると、印刷又は保存の際、各2次メタファイル断片間に離隔が発生するが、これを補正するために前記キャプチャー画面印刷モジュール15は、各2次メタファイル断片を部分的に、例えば1〜3ピクセル程度互いに重ねて組み合せる機能も行う。
上記のように、前記キャプチャー画面印刷モジュール15は、不要なグラフィック要素が除去され、純粋なウェブページ内容のみを含むキャプチャーされたウェブページ画面の断片、すなわち前記2次メタファイル操作を部分的に互いに重ねて組み合せることによって、一つのウェブページ画面で印刷又は保存するので、本発明者は、前記キャプチャー画面印刷モジュール15をLMF(Layered Meta File)モジュールと名づける。
以下、上記のように構成される本発明によるキャプチャー印刷エージェント10を駆動させることによって、本発明によるウェブページキャプチャー画面の印刷方法が行われる過程を具体的に説明する。
ウェブユーザがウェブブラウザを利用して特定ウェブサーバに接続してウェブページをウェブブラウザにロードするとき、前記キャプチャー印刷エージェント10のウェブブラウザ搭載モジュール11が前記キャプチャー印刷エージェント10をウェブブラウザに搭載させる(S10)。
このとき、ActiveX技術を使用すると、ウェブユーザが前記ウェブページに接続する際、ウェブブラウザHTMLに前記キャプチャー印刷エージェント10が搭載されるようにすることができ、これとは異なり、ウェブブラウザのBHO、ツールバー、ツールバーボタンのうちの何れか一つの技術を使用してウェブユーザが設置プログラムとして前記キャプチャー印刷エージェント10をウェブブラウザに搭載させることができる。
上記のように、前記キャプチャー印刷エージェント10がウェブブラウザに搭載された状態でウェブユーザの印刷要請があると、前記ウェブブラウザ制御モジュール12は、ウェブページの全体サイズと現在のウェブブラウザ画面に表示された領域のウェブページのサイズとを求めて、ウェブブラウザの画面を横及び縦方向に自動スクロールする回数を計算する(S12)。
以下、前記ウェブブラウザ制御モジュール12によりスクロール回数が計算される過程(S12)を具体的に説明する。
ウェブブラウザは、ウェブサーバに接続してHTMLファイル形態のウェブページをダウンロードして画面に表示するためにHTMLファイルを解析するが、このとき、HTMLファイルに定義されたタグを内部的に一つのオブジェクト(Object)形態に管理する。また、これらのオブジェクトは、親と子供の関係があるから、ウェブブラウザの内部的にこれらのオブジェクトをトリー形態に管理するが、これをDOM(Document Object Model)ツリーという。そして、DOMツリーにおいて各オブジェクトは、HTMLファイルで一つのタグに対応し、DOMノードと呼ぶ。このDOMノードは、HTMLファイルにCSS(cascading style sheets)ファイル形態に設定したタグのスタイル情報とこのノードが現在のウェブブラウザ上に表示されているピクセル単位の位置値、このノードが対応するタグ名及びHTMLソース情報などの多様な情報を提供する。参考に、図8は、ウェブブラウザがHTMLファイル形態のウェブページを解析してDOMツリーを生成し、このDOMツリーをウェブユーザが見ることのできるグラフィック形態に画面に表示する過程を示している。
前記ウェブブラウザ制御モジュール12は、このようなウェブブラウザからDOMツリーを得、このDOMツリーのノードの中からウェブページを表すDOMノード(HTML上のBODY又はHTMLタグに該当)を求めて、このノードの全体サイズと現在のウェブブラウザ画面上に表示される領域のサイズをピクセル単位で得る。
このノードの全体サイズを求めると、ウェブページの実際の全体サイズをピクセル単位に求めることができ、ウェブブラウザの画面上に表示される領域のサイズを求めると、ウェブページの内容の中で現在のウェブブラウザに表示されている領域のサイズを求めることができる。
このとき求められる値は、ウェブブラウザのウィンドウサイズではなくウェブブラウザのウィンドウ内でもウェブページが表示される領域のみのサイズが求められる。
例えば、図2に示したように、ウェブブラウザがウェブページの一部領域を表示しているが、ここで求められる値は、図2にて点線ボックスで表示された領域のサイズが求められる。図2は、ウェブユーザのモニター解像度が600×400に設定されており、図1に示したように、全体サイズが1000×1300であるウェブページがウェブブラウザにロードされるとき、前記ウェブページの全体サイズのうちの一部が600×400のサイズで画面に表示される状態を示す。
図2に示すように、全体サイズが1000×1300であるウェブページのうちの一部が600×400のサイズでウェブブラウザに表示される場合、前記ウェブブラウザ制御モジュール12がDOMツリーにおいてウェブページDOMノードから全体サイズを求めると、ウェブページのサイズである横1000ピクセル、縦1300ピクセルという値を得ることができる。また、ウェブページDOMノードにおいて現在のウェブページに表示される領域のサイズを求めると、横600、縦400ピクセルの値を得ることができる。
現在のウェブブラウザ画面上に表示されるウェブページが横に600ピクセルであるから、ウェブページ全体を画面に表示するためには、1000/600=2回の横方向スクロールが必要であることが分かる。同じ方法でウェブページ全体のサイズを現在のウェブブラウザ上に表示される領域のサイズで割り算すると、総スクロールしなければならない回数が求められる。
すなわち、横=1000/600から2回が必要であり、縦=1300/400から4回が必要であることが分かる。したがって、全体的には、図9に示したように、横スクロール回数(2回)×縦スクロール回数(4回)=総8回スクロールしなければウェブページ全体の内容をウェブブラウザ上に表示できないことが分かる。
上記のように、前記ウェブブラウザ制御モジュール12によりウェブブラウザ画面に対する横及び縦方向への自動スクロール回数が計算されると(S12)、次に前記スクロールキャプチャーモジュール13は、計算されたスクロール回数に応じてウェブブラウザの画面を横及び縦方向に自動スクロールさせて、ウェブページの全体領域を複数の断片、すなわち複数のメタファイル断片でキャプチャーする(S14)。
このとき、図2に示したように、ウェブブラウザがウェブページの一部領域を表示すると、前記スクロールキャプチャーモジュール13は、前記ウェブブラウザ制御モジュール12がウェブブラウザから求めたDOMツリーとこのDOMツリーから得たDOMノードから求められるウェブページの座標値を利用して、図10に示したように、現在のウェブブラウザ画面の初期スクロール位置をウェブページの開始点である(0,0)の位置に移動した後、図11に示したように、ウェブページの開始点からウェブブラウザの画面を横及び縦方向に(1)、(2)、(3)、(4)、(5)、(6)、(7)、(8)の順に自動スクロールさせて、ウェブページの全体領域を図12〜図19に示したような8個の断片でキャプチャーする。
また、図20に示したように、毎スクロールの際にウェブブラウザから提供するウェブ画面レンダリングインタフェースを利用して、各スクロール位置上でのウェブブラウザ画面を前記したようにメタファイル断片に作る。このようなメタファイル断片には、実際のウェブページ内容とは関係のないグラフィック要素が含まれている。一例として、図21に示したように、実際のウェブページ内容、すなわち純粋なウェブページ内容と関係のない不要なスクロールバー、不要な外郭線が含まれている。
上記のように、前記スクロールキャプチャーモジュール13がウェブブラウザの画面を横及び縦方向に自動スクロールさせて、ウェブページの全体領域を複数の断片、すなわち複数のメタファイル断片でキャプチャーすると(S14)、次に前記クリップモジュール14がキャプチャーされたウェブページ画面の断片、すなわち複数のメタファイル断片から不要なグラフィック要素を除去し、純粋なウェブページ内容のみを含む2次メタファイルを得る(S16)。
図22は、前記クリップモジュール14が図21に示したメタファイルから純粋なウェブページ内容と関係のない不要なスクロールバー、不要な外郭線を除去して2次メタファイルを得る過程を示しており、図23は、このような過程を経て得た図12〜図19のキャプチャー画面に対応する2次メタファイルを示している。
これらの2次メタファイル断片は、前記ウェブブラウザ制御モジュール12がウェブブラウザから求めたDOMツリーとこのDOMツリーから得たDOMノードから求められる実際のウェブページ上の座標と共に資料構造形態に保存され、以後、前記キャプチャー画面印刷モジュール15により位置情報とキャプチャーしたウェブページ画面の断片を組み合せて一つのウェブページのように保存及び印刷可能なように管理され、ファイルで保存して後に使用することもできる。
上記のように、前記クリップモジュール14により2次メタファイルが得られると、次に前記キャプチャー画面印刷モジュール15が、図24に示したように、前記クリップモジュール14により得られた2次メタファイルを組み合せて一つのウェブページ画面で印刷又は保存する(S18)。
このとき、前記2次メタファイルのようなメタファイルは、前記したようにウェブページに含まれた線、図形、文字などのグラフィック要素をベクトル形態に保存する特性があるので、前記2次メタファイルを単純に付けて出力すると、印刷又は保存の際、各2次メタファイル断片間に離隔が発生するので、これを補正するために前記キャプチャー画面印刷モジュール15は、各2次メタファイル断片を部分的に、例えば1〜3ピクセル程度互いに重ねて組み合せる。図24の場合、(1)、(2)、(3)、(4)、(5)、(6)、(7)、(8)のメタファイルをそれぞれ互いに当接する部分で1〜3ピクセル重ねて組み合せることが好ましく、例えば(1)番メタファイルと(2)番メタファイルとが互いに当接する部分、すなわち(1)番メタファイルの右側と(2)番メタファイルの左側とを1〜3ピクセル程度互いに重ねて組み合せ、(1)番メタファイルと(3)番メタファイルとが互いに当接する部分、すなわち(1)番メタファイルの下端と(3)番メタファイルの上端とを1〜3ピクセル程度重ねて組み合せ、残りの他のメタファイルもこのような方式で重ねて組み合せる。
以上説明した本発明によるウェブページキャプチャー画面の印刷方法は、上述の実施の形態に限定されず、以下の特許請求の範囲で請求する本発明の要旨から逸脱せずに本発明の属する分野における通常の知識を有する者であれば、誰でも多様に変更して実施できる範囲までその技術的思想がある。
10 キャプチャー画面印刷サービス用エージェント
11 ウェブブラウザ搭載モジュール
12 ウェブブラウザ制御モジュール
13 スクロールキャプチャーモジュール
14 クリップモジュール
15 キャプチャー画面印刷モジュール

Claims (4)

  1. ウェブユーザがウェブページキャプチャー画面印刷サービス用エージェント(以下、キャプチャー印刷エージェントとする)10に含まれたウェブブラウザ搭載モジュール11を介して、前記キャプチャー印刷エージェント10をウェブブラウザに搭載させる第1過程(S10)と、
    前記キャプチャー印刷エージェント10がウェブブラウザに搭載された状態でウェブユーザの印刷要請があると、前記キャプチャー印刷エージェント10に含まれたウェブブラウザ制御モジュール12がウェブページの全体サイズと現在のウェブブラウザ画面に表示された領域のウェブページのサイズとを求めて、ウェブブラウザの画面を横及び縦方向に自動スクロールする回数を計算する第2過程(S12)と、
    前記第2過程(S12)に続いて、前記キャプチャー印刷エージェント10に含まれたスクロールキャプチャーモジュール13が前記ウェブブラウザ制御モジュール12により計算されたスクロール回数に応じて、ウェブブラウザの画面を横及び縦方向に自動スクロールさせてウェブページの全体領域をウィンドウ運営体制のGDI(Graphic Device Interface)サブシステム機能のうち、DC(Device Context)のメタファイルDCを利用して複数のメタファイル断片でキャプチャーする第3過程(S14)と、
    前記第3過程(S14)に続いて、前記キャプチャー印刷エージェント10に含まれたクリップモジュール14がキャプチャーされた複数のメタファイル断片から不要なグラフィック要素を除去し、純粋なウェブページ内容のみを含む2次メタファイルを得る第4過程(S16)と、
    前記第4過程(S16)に続いて、前記キャプチャー印刷エージェント10に含まれたキャプチャー画面印刷モジュール15が前記クリップモジュール14により得られた2次メタファイルを組み合せて、一つのウェブページ画面で印刷又は保存する第5過程(S18)と
    からなることを特徴とするウェブページキャプチャー画面の印刷方法。
  2. 前記第2過程(S12)では、
    前記ウェブブラウザ制御モジュール12が、ウェブブラウザがHTMLファイル形態のウェブページを解析して生成するDOM(Document Object Model)ツリーを得、このDOMツリーのノードの中からウェブページを表すDOMノード(HTML上のBODY又はHTMLタグに該当)を求めて、このノードの全体サイズと現在のウェブブラウザ画面上に表示される領域のサイズとをピクセル単位で得て、ウェブページの実際の全体サイズとウェブページの内容のうち現在のウェブブラウザに表示されている領域のサイズを求めて、ウェブブラウザの画面を横及び縦方向に自動スクロールする回数を計算することを特徴とする請求項1に記載のウェブページキャプチャー画面の印刷方法。
  3. 前記第5過程(S18)では、
    前記キャプチャー画面印刷モジュール15が、不要なグラフィック要素が除去され純粋なウェブページ内容のみを含むキャプチャーされたウェブページ画面の断片、すなわち前記2次メタファイル断片を部分的に互いに重ねて(Layered)組み合せることを特徴とする請求項1に記載のウェブページキャプチャー画面の印刷方法。
  4. 前記第5過程(S18)では、
    前記キャプチャー画面印刷モジュール15は、各2次メタファイル断片を1〜3ピクセル程度互いに重ねて組み合せることを特徴とする請求項3に記載のウェブページキャプチャー画面の印刷方法。
JP2010051431A 2010-03-09 2010-03-09 ウェブページキャプチャー画面の印刷方法 Expired - Fee Related JP5455714B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010051431A JP5455714B2 (ja) 2010-03-09 2010-03-09 ウェブページキャプチャー画面の印刷方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010051431A JP5455714B2 (ja) 2010-03-09 2010-03-09 ウェブページキャプチャー画面の印刷方法

Publications (2)

Publication Number Publication Date
JP2011186784A true JP2011186784A (ja) 2011-09-22
JP5455714B2 JP5455714B2 (ja) 2014-03-26

Family

ID=44792971

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010051431A Expired - Fee Related JP5455714B2 (ja) 2010-03-09 2010-03-09 ウェブページキャプチャー画面の印刷方法

Country Status (1)

Country Link
JP (1) JP5455714B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105739873A (zh) * 2016-03-10 2016-07-06 努比亚技术有限公司 一种截屏方法及终端
CN111918115A (zh) * 2020-08-05 2020-11-10 深圳Tcl新技术有限公司 编辑内容处理方法、装置、设备及可读存储介质
CN113672180A (zh) * 2021-08-23 2021-11-19 维沃移动通信有限公司 打印管理方法和装置

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109271092A (zh) * 2018-09-21 2019-01-25 真相网络科技(北京)有限公司 网页快照保存方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105739873A (zh) * 2016-03-10 2016-07-06 努比亚技术有限公司 一种截屏方法及终端
CN105739873B (zh) * 2016-03-10 2018-12-04 努比亚技术有限公司 一种截屏方法及终端
CN111918115A (zh) * 2020-08-05 2020-11-10 深圳Tcl新技术有限公司 编辑内容处理方法、装置、设备及可读存储介质
CN113672180A (zh) * 2021-08-23 2021-11-19 维沃移动通信有限公司 打印管理方法和装置

Also Published As

Publication number Publication date
JP5455714B2 (ja) 2014-03-26

Similar Documents

Publication Publication Date Title
US20110221766A1 (en) Method for printing a captured screen of web pages
JP2007179061A (ja) 移動通信端末機のサムネールイメージブラウジング方法
JP4966533B2 (ja) 印刷システム、印刷方法、印刷プログラムおよび記録媒体
KR101707283B1 (ko) 화상 처리 장치, 화상 처리 방법 및 기억 매체
JP5455714B2 (ja) ウェブページキャプチャー画面の印刷方法
KR20090074580A (ko) 화면 캡쳐 장치 및 방법
KR101345726B1 (ko) 웹페이지 캡쳐 화면 인쇄 방법
US8751923B2 (en) Image processing apparatus, image processing method, and storage medium
JP6566850B2 (ja) 情報処理システム、情報処理システムの制御方法、情報処理装置およびプログラム
JP2009223658A (ja) 操作表示システムと操作表示システムのためのプログラム
JP6107246B2 (ja) 画像処理装置、画像処理装置の制御方法、および画像処理装置の制御プログラム
JP4621551B2 (ja) 画像データの取得方法、画像データ取得装置、およびプログラム
JP2008085502A (ja) 画像転送装置、方法およびプログラム
KR20100031784A (ko) 웹페이지 캡쳐 화면 인쇄 방법
JP5181608B2 (ja) 情報処理装置および情報処理装置のプログラム
US9483443B2 (en) Tiled display list
JP3991061B1 (ja) 画像処理システム
US20160140112A1 (en) Information processing system, information processing method, data, information processing device, display device, display method, program, and information storage medium
JP2006252024A (ja) 印刷設定制御プログラム
JP2004192394A (ja) 情報処理装置
US20090058874A1 (en) Image display device
JP5353288B2 (ja) 画面管理装置、画面管理システム、画面管理方法、画面管理プログラム、及びそのプログラムを記録した記録媒体
JP2006072915A (ja) 情報処理装置
JP2004213305A (ja) 印刷制御システムおよび情報処理装置および印刷制御方法およびプログラム
JP2011210186A (ja) 携帯端末、プログラム、解析処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130225

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20131210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131211

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140107

R150 Certificate of patent or registration of utility model

Ref document number: 5455714

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees