(57)【特許請求の範囲】
【請求項１】
ユーザ装置と、前記ユーザ装置とネットワークを介して通信する印刷サーバとを備える印刷システムであって、
前記印刷サーバは、
前記ユーザ装置から印刷要求とともに送信された、前記ユーザ装置のＷｅｂブラウザで表示されたＷｅｂページのＨＴＭＬを解釈する解釈手段と、
前記解釈の結果得られる前記ＨＴＭＬに含まれる外部データ参照の命令に従い前記外部データを取得する際に該外部データを取得できなかった場合、該外部データを取得させるスクリプトを前記ユーザ装置に送信するスクリプト送信手段と、
前記ユーザ装置が前記印刷サーバから受信した前記スクリプトを実行することで取得した外部データを該ユーザ装置から取得し、取得された外部データと前記ＨＴＭＬとに基づいて、前記ユーザ装置のＷｅｂブラウザで表示されたＷｅｂページに対応する印刷データを生成する生成手段とを備える
ことを特徴とする印刷システム。
【請求項２】
前記ユーザ装置は、
前記印刷サーバが取得できなかった外部データを、該印刷サーバから送信される前記スクリプトを実行することにより取得する取得手段を備える
ことを特徴とする請求項１に記載の印刷システム。
【請求項３】
前記ユーザ装置は、
前記印刷サーバから受信したスクリプトを実行することで前記外部データを取得できない場合に、前記Ｗｅｂブラウザで表示されたＷｅｂページのＨＴＭＬを取得して前記印刷サーバに対して送信する送信手段を備え、
前記印刷サーバが備える前記解釈手段は、前記送信手段から受信したＨＴＭＬを解釈する
ことを特徴とする請求項１または請求項２に記載の印刷システム。
【請求項４】
前記印刷サーバは、さらに、
印刷プレビュー画像を含む印刷設定画面データを生成して前記ユーザ装置に送信する設定画面送信手段を備える
ことを特徴とする請求項１乃至３のいずれか１項に記載の印刷システム。
【請求項５】
前記印刷サーバが備える前記スクリプト送信手段は、予め前記Ｗｅｂブラウザに登録された該Ｗｅｂブラウザで表示されたＷｅｂページの印刷に関する処理を行うスクリプトを前記印刷サーバから取得するプログラムを実行した前記ユーザ装置からの要求に応じて、前記ユーザ装置に対して、前記ＷｅｂページのＨＴＭＬを送信させるスクリプトを送信する
ことを特徴とする請求項１乃至４のいずれか１項に記載の印刷システム。
【請求項６】
前記印刷サーバは、さらに、
前記ユーザ装置に対して、前記プログラムを前記Ｗｅｂブラウザに登録するために用いる画面データを配信する配信手段を備える
ことを特徴とする請求項５に記載の印刷システム。
【請求項７】
ユーザ装置とネットワークを介して通信する印刷サーバであって、
前記ユーザ装置から印刷要求とともに送信された、前記ユーザ装置のＷｅｂブラウザで表示されたＷｅｂページのＨＴＭＬを解釈する解釈手段と、
前記解釈の結果得られる前記ＨＴＭＬに含まれる外部データ参照の命令に従い前記外部データを取得する際に該外部データを取得できなかった場合、該外部データを取得させるスクリプトを前記ユーザ装置に送信するスクリプト送信手段と、
前記ユーザ装置が前記印刷サーバから受信した前記スクリプトを実行することで取得した外部データを該ユーザ装置から取得し、取得された外部データと前記ＨＴＭＬとに基づいて、前記ユーザ装置のＷｅｂブラウザで表示されたＷｅｂページに対応する印刷データを生成する生成手段とを備える
ことを特徴とする印刷サーバ。
【請求項８】
ユーザ装置とネットワークを介して通信する印刷サーバの制御方法であって、
前記ユーザ装置から印刷要求とともに送信された、前記ユーザ装置のＷｅｂブラウザで表示されたＷｅｂページのＨＴＭＬを解釈する工程と、
前記解釈の結果得られる前記ＨＴＭＬに含まれる外部データ参照の命令に従い前記外部データを取得する際に該外部データを取得できなかった場合、該外部データを取得させるスクリプトを前記ユーザ装置に送信する工程と、
前記ユーザ装置が前記印刷サーバから受信した前記スクリプトを実行することで取得した外部データを該ユーザ装置から取得し、取得された外部データと前記ＨＴＭＬとに基づいて、前記ユーザ装置のＷｅｂブラウザで表示されたＷｅｂページに対応する印刷データを生成する工程とを有する
ことを特徴とする制御方法。
【請求項９】
請求項８に記載の制御方法をコンピュータに実行させる
ことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷システム、印刷サーバ、制御方法およびコンピュータプログラムに関する。
【背景技術】
【０００２】
Ｗｅｂブラウザのブックマークには、ブックマークレットというプログラムを登録することができる。ブックマークレットを実行すると、ブックマークレットを提供したＷｅｂサイトからスクリプトがダウンロードされ、表示中のＷｅｂページに読み込まれる。
【０００３】
ユーザは、ブックマークレットを実行することによって、Ｗｅｂブラウザで表示中のＷｅｂページに対して、Ｗｅｂサイトが提供する様々な機能を利用することができる。例えば、表示中のＷｅｂページを自由に加工する機能を提供するブックマークレットが存在する。このブックマークレットを利用すると、表示中のＷｅｂページから不要な部分を削除した後、Ｗｅｂブラウザの印刷機能でＷｅｂページの必要な部分のみを印刷することができる。
【０００４】
Ｗｅｂブラウザの印刷機能は、ＯＳ（オペレーティングシステム）の機能で実現されている。例えば、Ｗｉｎｄｏｗｓ（登録商標）上で動作するＷｅｂブラウザで印刷を指示すると、選択されたプリンタに適合したプリンタドライバを使用して印刷データが生成され、ＯＳのプリントスプーラを介してプリンタに送信される。
【０００５】
Ｗｅｂページの情報を送信する方法として、特許文献１は、Ｗｅｂページの表示画面をキャプチャして、イメージデータとして送信するシステムを開示する。また、特許文献２は、ＷｅｂページのＨＴＭＬと、ＨＴＭＬに関連するすべてのファイルを一括して受け渡すシステムを開示する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−１１６６３０号公報
【特許文献２】特開平１１−１６１５３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１、特許文献２の方法は、一般的なＷｅｂブラウザの標準機能だけでは実現できないため、専用のＷｅｂブラウザを使用するか、または、Ｗｅｂブラウザとは別に、専用のプログラムをインストールする必要がある。専用のＷｅｂブラウザやプログラムは、プラットフォームごとに用意する必要があるため、Ｗｅｂブラウザが動作するすべてのプラットフォームをカバーするためには多大な開発コストがかかる。また、携帯端末のように、メモリが少なく、ＣＰＵの性能も低い端末では、Ｗｅｂブラウザ以外のプログラムが動作させられないケースもあり得る。
【０００８】
ここで、ブックマークレットを使用すれば、Ｗｅｂブラウザの標準機能だけで、表示中のＷｅｂページのＨＴＭＬを、サーバに送信することが可能である。ブックマークレットを実行することによって、サーバからスクリプトがダウンロードされ、表示中のＷｅｂページに読み込まれる。Ｗｅｂページに読み込まれたスクリプトによって、ＨＴＭＬがサーバに送信される。
【０００９】
Ｗｅｂブラウザのセキュリティ仕様により、Ｗｅｂページに読み込まれたスクリプトから、表示中のＨＴＭＬの中で参照している画像等の外部ファイルにアクセスすることはできない場合がある。この場合には、ＨＴＭＬを受信したサーバがＨＴＭＬを解釈して、ＨＴＭＬの中で参照している外部ファイルを取得する必要がある。
【００１０】
外部ファイルは、ＨＴＭＬ内で、以下の例のような記述で参照されるファイルである。
・画像ファイル：<IMG src="http://can.jp/img /img.jpg">
・スタイルシートファイル：<LINK href=" http://can.jp/css/style.css" rel="stylesheet" type="text/css">
・スクリプトファイル：<script type="text/javascript" src=" http://can.jp/js/aaa.js">
【００１１】
しかし、サーバが外部ファイルを取得することができない場合がある。例えば、サーバは、会員制のＷｅｂページなど、外部ファイルを取得する際にＷｅｂブラウザで保持するＣｏｏｋｉｅを必要とするＷｅｂサイトからは、外部ファイルを取得することができない。また、サーバは、Ｗｅｂブラウザのセキュリティ仕様により、Ｗｅｂページに読み込まれたスクリプトから、Ｗｅｂブラウザで保持するＣｏｏｋｉｅにアクセスすることはできない。したがって、Ｃｏｏｋｉｅをサーバに送信することもできない。
【００１２】
Ｗｅｂサイト側でアクセス元のクライアントをＩＰアドレス等で制限しているような場合も、サーバ側からのアクセスが許可されていなければ、サーバは外部ファイルを取得することができない。
【００１３】
また、別の課題として、Ｗｅｂブラウザが、一度取得した外部ファイルを再取得することができない場合がある。例えば、ＨＴＭＬの中で参照している画像ファイルを動的に生成し、一度しか返さないようなＷｅｂサイトの場合、Ｗｅｂブラウザが一度取得した画像ファイルを再取得することができない。グラフなどの画像イメージを最新のデータに基づいて動的に生成するようなＷｅｂサイトが、これに該当する。このようなＷｅｂサイトでは、ＨＴＭＬを取得するたびに、ＨＴＭＬ内で参照する画像ファイルの名前が変更され、同じ名前のファイルは二度と取得できない。
【００１４】
本発明は、上述した課題の内少なくとも１つの課題を解決するものである。そして、本発明では、ユーザ装置のＷｅｂブラウザで表示中のＷｅｂページの印刷処理を、ユーザ装置に専用のプログラムをインストールすることなく実現する印刷システムの提供を目的とする。
【課題を解決するための手段】
【００１５】
本実施形態の印刷システムは、ユーザ装置と、前記ユーザ装置とネットワークを介して通信する印刷サーバとを備える。前記印刷サーバは、前記ユーザ装置から印刷要求とともに送信された、前記ユーザ装置のＷｅｂブラウザで表示されたＷｅｂページのＨＴＭＬを解釈する解釈手段と、前記解釈の結果得られる前記ＨＴＭＬに含まれる外部データ参照の命令に従い前記外部データを取得する際に該外部データを取得できなかった場合、該外部データを取得させるスクリプトを前記ユーザ装置に送信するスクリプト送信手段と、前記ユーザ装置が前記印刷サーバから受信した前記スクリプトを実行することで取得した外部データを該ユーザ装置から取得し、取得された外部データと前記ＨＴＭＬとに基づいて、前記ユーザ装置のＷｅｂブラウザで表示されたＷｅｂページに対応する印刷データを生成する生成手段とを備える。
【発明の効果】
【００１６】
本実施形態の印刷システムによれば、ＯＳが印刷機能を持たないようなシンクライアント端末において、Ｗｅｂブラウザの標準機能で、表示中のＷｅｂページを印刷することができる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態の印刷システムの構成例を示す図である。
【図２】Ｗｅｂページ印刷サーバとプリンタのハードウェア構成例である。
【図３】クライアント端末の機能ブロック図の例である。
【図４】Ｗｅｂページ印刷サーバの機能ブロック図の例である。
【図５】Ｗｅｂページを構成するＨＴＭＬの例と、外部ファイルリストの例を示す図である。
【図６】印刷システムの動作処理の例を説明する図である。
【図７】印刷システムの動作処理の他の例を説明する図である。
【図８】Ｗｅｂブラウザの動作処理の例を説明するフローチャートである。
【図９】Ｗｅｂページ印刷サーバの動作処理の例を説明する図である。
【図１０】印刷設定ページの例を示す図である。
【図１１】Ｗｅｂページの印刷処理の例を説明するシーケンス図である。
【図１２】ブックマークレットインストールページの例である。
【図１３】ＨＴＭＬの画面表示例を示す図である。
【発明を実施するための形態】
【００１８】
図１は、本実施形態の印刷システムの構成例を示す図である。図１に示す印刷システムは、インターネット１００を介して接続されたシステム１０１乃至１０３を備える。システム１０１は、企業などのイントラネット内のシステム、すなわちローカルシステムである。
【００１９】
システム１０１は、クライアント端末１０４とプリンタ１０５とを備える。クライアント端末１０４とプリンタ１０５とは、不図示の通信回線を介して接続されている。通信回線は、例えば、ＬＡＮ、ＷＡＮ、電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等のいずれか又はこれらの組み合わせにより実現される通信ネットワークである。ＬＡＮは、Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋの略称である。ＷＡＮは、Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋの略称である。また、ＡＴＭは、Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅの略称である。図１においては、クライアント端末１０４とプリンタ１０５は、それぞれ一台ずつであるが、クライアント端末１０４とプリンタ１０５とが、それぞれ複数台であってもよい。
【００２０】
クライアント端末１０４は、本実施形態のユーザ装置である。クライアント端末１０４は、例えば、デスクトップパソコン、ノートパソコン、モバイルパソコン、ＰＤＡ（パーソナルデータアシスタント）等である。クライアント端末１０４が、プログラムの実行環境が内蔵された携帯電話であってもよい。プリンタ１０５は、ネットワークに接続が可能なプリンタ（例えば、レーザープリンタ等）やＭＦＰ（Multifunction Peripheral）である。
【００２１】
システム１０２、１０３は、データセンターに設けられたシステムである。システム１０２、１０３は、例えば、クラウドネットワーク上に設けられている。システム１０２は、Ｗｅｂページ印刷サーバ１０６を備える。Ｗｅｂページ印刷サーバ１０６は、本実施形態の印刷サーバである。Ｗｅｂページ印刷サーバ１０６は、クライアント装置とネットワークを介して通信する。例えば、Ｗｅｂページ印刷サーバ１０６は、クライアント端末１０４からＷｅｂページ印刷リクエストを受けて印刷データを生成し、プリンタ１０５に送信する。システム１０３は、Ｗｅｂサイト１０７を備える。Ｗｅｂサイト１０７は、クライアント端末１０４からのリクエストを受けて、Ｗｅｂページを返す。
【００２２】
図２は、Ｗｅｂページ印刷サーバとプリンタのハードウェア構成例を示す図である。図２（Ａ）は、Ｗｅｂページ印刷サーバ１０６のハードウェア構成例を示す。Ｗｅｂページ印刷サーバ１０６は、ＣＰＵ２０１、ＲＡＭ２０２、ＲＯＭ２０３、ＬＡＮアダプタ２０４、ビデオアダプタ２０５、入力部（キーボード）２０６、入力部（マウス）２０７、ハードディスク２０８、ＣＤ−ＲＯＭドライブ２０９を備える。ＣＰＵ２０１乃至ＣＤ−ＲＯＭドライブ２０９は、システムバス２００を介して互いに接続されている。システムバス２００は、例えば、ＰＣＩバス、ＡＧＰバス、及びメモリバス等を有する。なお、図２（Ａ）では、各バス間の接続用チップやキーボードインタフェース、いわゆるＳＣＳＩやＡＴＡＰＩのような入出力用インタフェースは省略されている。
【００２３】
ＣＰＵ２０１は、オペレーションシステムのプログラムやアプリケーションプログラムに基づく四則演算、比較演算等の各種の演算やハードウェアの制御を行う。ＲＡＭ２０２には、ハードディス２０８や、ＣＤ−ＲＯＭドライブ２０９に装着されたＣＤ−ＲＯＭやＣＤ−Ｒ等の記憶媒体から詠み出されたオペレーションシステムのプログラムやアプリケーションプログラム等が記憶されている。ＣＰＵ２０１が、これらのプログラムを実行する。
【００２４】
ＲＯＭ２０３には、オペレーションシステムと協働してハードディスク２０８等へのデータの入出力を制御する、いわゆるＢＩＯＳ等が記憶される。ＬＡＮアダプタ２０４は、ＣＰＵ２０１によって制御されるオペレーションシステムの通信プログラムと協働してネットワークを介して接続された外部装置との通信を行う。ビデオアダプタ２０５は、ディスプレイ装置に出力する画像信号を生成する。キーボード２０６やマウス２０７は、クライアント端末１０４への指示を入力するために用いられる。
【００２５】
ハードディスク２０８は、オペレーティングシステムやアプリケーションプログラム（例えば、本発明における印刷システムプログラム等）を記憶している。ＣＤ−ＲＯＭドライブ２０９は、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、及びＣＤ−Ｒ／Ｗ等の記憶媒体を装着して、アプリケーションプログラムをハードディスク２０８にインストールするために用いられる。なお、Ｗｅｂページ印刷サーバ１０６が、ＣＤ−Ｒドライブ、ＣＤ−Ｒ／Ｗドライブ、又はＤＶＤドライブ等を備えるようにしてもよい。
【００２６】
図２（Ｂ）は、プリンタ１０５のハードウェア構成例を示す。プリンタ１０５は、ＣＰＵ２１１、ＲＡＭ２１２、ＲＯＭ２１３、ＬＡＮアダプタ２１４、プリンタエンジン２１５、ハードディスク２１６、操作パネル２１７を備える。ＣＰＵ２１１乃至操作パネル２１７は、システムバス２１０を介して互いに接続されている。システムバス２１０は、図２（Ａ）中に示すシステムバス２００と同様である。
【００２７】
ＣＰＵ２１１は、ＲＡＭ２１２をワークメモリとして、ハードディスク２１６に格納されたソフトウェアを実行する。また、操作パネル２１７から入力されるユーザの指示に応じて、プリンタ１０５の動作を設定する。また、ＣＰＵ２１１は、ＬＡＮアダプタ２１４を介して、外部の機器から入力される印刷データに基づき画像データを生成し、プリンタエンジン２１５に供給して印刷を行う。ＲＯＭ２１３には、ハードディスク２１６等へのデータの入出力を制御する、いわゆるＢＩＯＳ等が記憶される。
【００２８】
図３は、クライアント端末の機能ブロック図の例である。クライアント端末１０４は、Ｗｅｂブラウザ３０１とインターネット一時ファイル記憶部３１１とを備える。Ｗｅｂブラウザ１０７は、Ｗｅｂサイト１０７からＷｅｂページを構成するＨＴＭＬ（Hypertext Markup Language ）と外部ファイルとを取得する。外部ファイルとは、ＨＴＭＬ内で参照される外部データのファイルである。外部ファイルは、例えば、画像ファイル、スタイルシートファイル、スクリプトファイルである。本実施形態において、外部ファイルは、画像ファイル、スタイルシートファイル、スクリプトファイルに限定されるものではなく、ＨＴＭ内で参照される任意のファイルであってもよい。インターネット一時ファイル記憶部３１１には、Ｗｅｂブラウザ１０７が取得したＨＴＭＬと外部ファイルとがインターネット一時ファイルとして記憶される。
【００２９】
Ｗｅｂブラウザ３０１は、Ｗｅｂページ表示部３０２、ＨＴＭＬ解釈部３０３、ＨＴＭＬ取得部３０４、外部ファイル取得部３０５、スクリプト実行部３０６、ブックマーク管理部３０７を備える。Ｗｅｂページ表示部３０２は、ＷｅｂページをＵＩ（User Interface）に表示する。ＨＴＭＬ取得部３０４は、Ｗｅｂページを構成するＨＴＭＬを取得する。ＨＴＭＬ解釈部３０３は、取得されたＨＴＭＬを解釈する。外部ファイル取得部３０５は、Ｗｅｂページを構成する外部ファイルを取得する。スクリプト実行部３０６は、Ｗｅｂページに含まれるスクリプトを実行する。ブックマーク管理部３０７は、ブックマークを管理する。
【００３０】
図４は、Ｗｅｂページ印刷サーバの機能ブロック図の例である。Ｗｅｂページ印刷サーバ１０６は、スクリプト送信部４０１、ＨＴＭＬ受信部４０２、外部ファイル取得部４０３、外部ファイル受信部４０４、ＨＴＭＬ解釈部４０５、外部ファイルリスト作成部４０６、外部ファイルリスト送信部４０７を備える。また、Ｗｅｂページ印刷サーバ１０６は、印刷データ生成部４０８、印刷データ送信部４０９、プレビューイメージ生成部４１０、印刷設定ページ送信部４１１、プリンタ管理部４１２を備える。また、Ｗｅｂページ印刷サーバ１０６は、ブックマークレットインストールページ送信部４１３、インターネット一時ファイル記憶部４２０を備える。本実施形態の制御方法は、Ｗｅｂページ印刷サーバ１０６が備える各処理部の機能によって実現される。また、本実施形態のコンピュータプログラムは、この制御方法をコンピュータに実行させる。
【００３１】
インターネット一時ファイル記憶部４２０には、Ｗｅｂページを構成するＨＴＭＬと外部ファイルとが、一時的に記憶される。スクリプト送信部４０１は、クライアント端末１０４にスクリプトを送信する。ＨＴＭＬ受信部４０２は、クライアント端末１０４からＨＴＭＬを受信する。ＨＴＭＬ解釈部４０５は、ＨＴＭＬを解釈する。
【００３２】
外部ファイル受信部４０４は、クライアント端末１０４から外部ファイルを受信する。外部ファイルリスト作成部４０６は、ＨＴＭＬ解釈部４０５が解釈したＨＴＭＬで参照されている外部ファイルのリストを作成する。外部ファイルリスト作成部４０６は、ＨＴＭＬに含まれる、外部データ参照の命令にしたがって、外部ファイルのリストを作成する。外部データ参照の命令は、外部ファイルの取得を指示する命令である。外部ファイル取得部４０３は、作成された外部ファイルのリストに含まれる外部ファイルをＷｅｂサイト１０７から取得する。また、外部ファイル取得部４０３は、外部ファイルリスト作成部４０６が作成した外部ファイルリストから、取得できた外部ファイルのＵＲＬを削除する。
【００３３】
外部ファイルリスト送信部４０７は、外部ファイルリスト作成部４０６が作成し、外部ファイル取得部４０３が更新した外部ファイルリストをクライアント端末１０４に送信する。印刷データ生成部４０８は、Ｗｅｂページから印刷データを生成する。印刷データ送信部４０９は、印刷データをプリンタ１０４に送信する。プレビューイメージ生成部４１０は、Ｗｅｂページからプレビューイメージを生成する。プレビューイメージは、印刷した時のイメージを確認するための印刷プレビュー画像である。
【００３４】
印刷設定ページ送信部４１１は、クライアント端末１０４にプレビューイメージを含む印刷設定ページ１００１を送信する。プリンタ管理部４１２は、プリンタ１０４を管理する。ブックマークレットインストールページ送信部４１３は、クライアント端末１０４にブックマークレットインストールページを送信する。
【００３５】
図５は、Ｗｅｂページを構成するＨＴＭＬの例と、外部ファイルリストの例を示す図である。図５（Ａ）は、Ｗｅｂページを構成するＨＴＭＬの例を示す。図５（Ｂ）は、外部ファイルリストの例を示す。図５（Ｂ）に示す外部ファイルリストは、Ｗｅｂページを構成するために必要なファイルのリストである。外部ファイルリストは、クライアント端末１０４のＷｅｂブラウザが備えるＨＴＭＬ解釈部３０３が、ＨＴＭＬを解釈することによって得られる。
【００３６】
図５（Ａ）に示す外部ファイルリスト５１０は、Ｗｅｂブラウザに表示される画像の画像ファイルのＵＲＬを含んでいる。画像ファイルのＵＲＬは、図５（Ａ）中のＩＭＧタグの、符号５０２乃至５０７で示すｓｒｃ属性から抽出される。また、外部ファイルリスト５１０は、ＬＩＮＫタグで指定された外部ファイルのＵＲＬが含まれる。
【００３７】
ＬＩＮＫタグで指定される外部ファイルには、Ｗｅｂページのレイアウトを指定するためのスタイルシートファイルなどがある。ＨＴＭＬ解釈部３０３は、ＢＡＳＥタグのｈｒｅｆ属性で指定されるＵＲＬ５０８に、ＬＩＮＫタグのｈｒｅｆ属性で指定される相対パス５０９を付加する。これにより、ＨＴＭＬ解釈部３０３は、ＬＩＮＫタグで指定される外部ファイルのＵＲＬを作成する。
【００３８】
スタイルシートファイルを適用するためには、図５（Ａ）のＨＴＭＬにＤＩＶタグを挿入して、スタイルを適用する範囲を細かく指定できるようにする必要があるが、図５（Ａ）においては、ＤＩＶタグを省略している。
【００３９】
図５（Ｂ）中に示す外部ファイルリストは、基本的に、Ｗｅｂページを構成するために必要なすべての外部ファイルを含む。例えば、図５（Ａ）のＨＴＭＬには含まれていないが、ＳＣＲＩＰＴタグでスクリプトファイルが指定されているようなＨＴＭＬの場合、スクリプトファイルのＵＲＬが外部ファイルリストに含まれる。また、スタイルシートファイル内で、さらに、別のスタイルシートファイルを参照しているような場合、参照しているスクリプトファイルのＵＲＬも外部ファイルリストに含まれる。
【００４０】
図１３は、図５（Ａ）のＨＴＭＬの画面表示例を示す図である。Ｗｅｂブラウザは、図５（Ａ）中のＨＴＭＬ５０１に含まれるＵＲＬ５０２乃至５０７が示す画像ファイルを取得し、画像１３０２乃至１３０７として表示する。図１３中に示す画像やテキストの配置は、ＵＲＬ５０８に相対パス５０９を付加して得られるＵＲＬが示すスタイルシートファイルを適用した結果である。
【００４１】
図６は、本実施形態の印刷システムの動作処理の例を説明するシーケンス図である。ユーザは、予め、Ｗｅｂページ印刷サーバ１０６が提供するブックマークレットを、Ｗｅｂブラウザ３０１のブックマークに登録しているものとする。具体的には、ブックマークレットインストールページ送信部４１３が、Ｗｅｂブラウザ３０１からの要求に応じて、図１２に示すブックマークレットインストールページ１２０１をＷｅｂブラウザ３０１に配信する配信手段として機能する。ブックマークレットインストールページ１２０１は、ブックマークレットをＷｅｂブラウザ３０１に登録するために用いる画面データである。ユーザが、リンク１２０２をＷｅｂブラウザ３０１に登録する。例えば、ユーザは、「Ｗｅｂページの印刷」をブックマークに登録する。
【００４２】
通常のブックマークには、ＷｅｂサイトのＵＲＬが設定されているが、リンク１２０２をブックマークとして登録すると、ブックマークとしてスクリプトが設定される。スクリプトが設定されたブックマークを、ブックマークレットと呼ぶ。本実施形態では、ブックマークレットは、予めＷｅｂブラウザ３０１に登録された、Ｗｅｂブラウザ３０１で表示されたＷｅｂページの印刷に関する処理を行うスクリプトをＷｅｂページ印刷サーバ１０６から取得するプログラムである。
【００４３】
ブックマーク「Ｗｅｂページの印刷」に設定されるスクリプト（スクリプトＡ）の内容を以下に示す。
javascript:((function() ｛
window. ＿print ＿home = 'http://can.jp';
var s = document.createElement('script');
s.setAttribute('type', 'text/javascript');
s.setAttribute('charset', 'UTF-8');
s.setAttribute('src', window. ＿print ＿home + '/js/print.js');
document.documentElement.appendChild(s);
｝)())
【００４４】
Ｗｅｂブラウザ３０１にＷｅｂページが表示されている状態で、ユーザが、ブックマークのリストからブックマーク「Ｗｅｂページの印刷」を選択すると、スクリプトＡが実行される。スクリプトＡには、表示中のＷｅｂページのＨＴＭＬの末尾に、以下の文（文Ａ）を挿入する処理が施されている。
<script type= ”text/javascript ” charset= ”UTF-8 ” src= ”http://ddd.jp/js/print.js ”>
文Ａは、ＵＲＬ(http://ddd.jp/js/print.js) で示されるスクリプトファイルを取得し、実行することを意味する。文Ａが表示中のＷｅｂページのＨＴＭＬに挿入されたことにより、Ｗｅｂブラウザ３０１は、ＵＲＬ(http://ddd.jp/js/print.js) で示されるスクリプトファイル(print.js)を取得して実行する。
【００４５】
図６を参照して説明する動作処理の例では、印刷対象のＷｅｂページに、Ｗｅｂページ印刷サーバ１０６で取得できない外部ファイルが含まれる。例えば、会員制のＷｅｂページなど、外部ファイルを取得する際にＷｅｂブラウザで保持するＣｏｏｋｉｅを必要とするＷｅｂサイトの場合、Ｗｅｂページ印刷サーバ１０６で外部ファイルを取得することができない。
【００４６】
まず、クライアント端末１０４のＷｅｂブラウザ３０１が、ユーザが指定したＷｅｂ
サイト１０７にアクセスしてＷｅｂページを取得する（ステップＳ６０１，Ｓ６０２）。Ｗｅｂページの取得処理には、実際には、ＨＴＭＬの取得と、ＨＴＭＬ内で参照している複数の外部ファイルを取得する複数のシーケンスが含まれるが、図中では省略している。
【００４７】
Ｗｅｂブラウザ３０１は、取得したＷｅｂページを表示する。Ｗｅｂページが表示されている状態で、ユーザがブックマーク「Ｗｅｂページの印刷」を選択する。これにより、。ブックマークレットが実行され、Ｗｅｂブラウザ３０１が、Ｗｅｂページ印刷サーバ１０６のスクリプト送信部４０１からスクリプトファイル（print.js）を取得する（ステップＳ６０３，Ｓ６０４）。すなわち、スクリプト送信部４０１は、ブックマークレットを実行したクライアント装置１０４からの要求に応じて、クライアント装置１０４に対して、ＷｅｂページのＨＴＭＬを送信させるスクリプトを送信する。
【００４８】
スクリプトファイル（print.js）には、図８のフローチャートで示す処理をＷｅｂブラウザ３０１に実行させるためのスクリプトが含まれている。図８のフローチャートで示す処理によって、クライアント端末１０４に印刷設定ページが表示される（図８のＳ８０８）。したがって、クライアント端末１０４によるブックマーク「Ｗｅｂページの印刷」の実行は、Ｗｅｂページ印刷サーバ１０６に対する印刷要求を行うことを意味する。
【００４９】
Ｗｅｂブラウザ３０１が、スクリプトファイル（print.js）に含まれるスクリプトを実行すると、ステップＳ６０５乃至Ｓ６１４のシーケンスが実行される。Ｗｅｂブラウザ３０１は、表示中のＷｅｂページのＨＴＭＬを取得し、Ｗｅｂページ印刷サーバ１０６に送信する（ステップＳ６０５）。例えば、Ｗｅｂブラウザ３０１は、図５（Ａ）中に示すＨＴＭＬ５０１を送信する。
【００５０】
Ｗｅｂブラウザ３０１からＨＴＭＬを受け取ったＷｅｂページ印刷サーバ１０６が、ＨＴＭＬを解釈する。すなわち、図４に示すＨＴＭＬ解釈部４０５が、クライアント装置１０４から印刷要求とともに送信された、Ｗｅｂブラウザ３０１で表示されたＷｅｂページのＨＴＭＬを解釈する解釈手段として機能する。そして、外部ファイルリスト作成部４０６が、ＨＴＭＬ解釈部４０５による解釈の結果得られるＨＴＭＬに含まれる外部データ参照の命令に従い、外部ファイルリストを作成する。具体的には、ＨＴＭＬ解釈部３０３が、図５（Ａ）のＨＴＭＬの、符号５０２乃至５０９で示す下線部分を抽出し、外部ファイルリスト作成部４０６が、この抽出結果を用いて、図５（Ｂ）に示す外部ファイルリストを作成する。
【００５１】
Ｗｅｂページ印刷サーバ１０６の外部ファイル取得部４０３が、作成された外部ファイルリストにしたがって、Ｗｅｂサイト１０７から外部ファイルを取得する（ステップＳ６０６，Ｓ６０７）。外部ファイルの取得は、実際には、複数の外部ファイルを取得する複数のシーケンスが含まれるが、図中では省略している。
【００５２】
Ｗｅｂページ印刷サーバ１０６は、Ｗｅｂサイト１０７から外部ファイルが取得できた場合、取得できた外部ファイルのＵＲＬを外部ファイルリストから削除する。すべての外部ファイルの取得を実行した結果、外部ファイルリストが空でなかった（取得できなかった外部ファイルがあった）場合、Ｗｅｂページ印刷サーバ１０６は、外部ファイルリストをＷｅｂブラウザ３０１に返す（ステップＳ６０８）。
【００５３】
Ｗｅｂページ印刷サーバ１０６からのレスポンスに外部ファイルのリストが含まれていた場合、Ｗｅｂブラウザ３０１は、リストに含まれる外部ファイルをＷｅｂサイト１０７から取得する（ステップＳ６０９，Ｓ６１０）。
【００５４】
リストに複数の外部ファイルが含まれる場合、外部ファイルの取得には、実際には、複数のシーケンスが含まれるが、図中では省略している。Ｗｅｂブラウザ３０１は、取得した外部ファイルを、Ｗｅｂページ印刷サーバ１０６に送信する（ステップＳ６１１，Ｓ６１２）。Ｗｅｂブラウザ３０１は、Ｗｅｂページ印刷サーバ１０６から印刷設定ページを取得し（ステップＳ６１３，Ｓ６１４）、表示する。
【００５５】
図７は、本実施形態の印刷システムの動作処理の他の例を説明する図である。図６のステップＳ６０８においてＷｅｂページ印刷サーバ１０６からＷｅｂブラウザ３０１に返される外部ファイルリストにＷｅｂサイト１０７から再取得できない外部ファイルが含まれる場合を想定する。例えば、ＨＴＭＬの中で参照している外部ファイルを動的に生成し、一度しか返さないようなＷｅｂサイト１０７の場合、Ｗｅｂブラウザ３０１は、外部ファイルを再取得することができない。つまり、Ｗｅｂブラウザ３０１は、図６のステップＳ６０９，Ｓ６１０において、当該外部ファイルリストを取得することができない。
【００５６】
この場合、図６のステップＳ６１１乃至６１４における処理に代えて、以下の図７のステップＳ７１１乃至Ｓ７２２が実行される。まず、Ｗｅｂブラウザ３０１が、表示中のＷｅｂページのＨＴＭＬをＷｅｂサイト１０７から再取得する（ステップＳ７１１，Ｓ７１２）。再取得されたＨＴＭＬは、図６のステップＳ６０５でＷｅｂブラウザ３０１からＷｅｂページ印刷サーバ１０６に対して送信されるＨＴＭＬとは異なるＨＴＭＬであり、参照される外部ファイルも異なる。Ｗｅｂブラウザ３０１が、再取得したＨＴＭＬをＷｅｂページ印刷サーバ１０６に送信する（ステップＳ７１３）。Ｗｅｂブラウザ３０１は、再取得したＨＴＭＬをＷｅｂブラウザ３０１の表示に反映する処理を行わない。したがって、Ｗｅｂブラウザ３０１の表示画面は更新されない。
【００５７】
すなわち、Ｗｅｂブラウザ３０１がＷｅｂページ印刷サーバ１０６から受信したスクリプトを実行することで外部ファイルを取得できない場合に、図３に示すＨＴＭＬ取得部３０４が、以下の処理を実行する送信手段として機能する。ＨＴＭＬ取得部３０４は、Ｗｅｂブラウザ３０１で表示されたＷｅｂページのＨＴＭＬを取得してＷｅｂページ印刷サーバ１０６に対して送信する。Ｗｅｂページ印刷サーバ１０６のＨＴＭＬ解釈部３０３が、クライアント端末１０４のＨＴＭＬ取得部３０４から受信したＨＴＭＬを解釈する。これにより、外部ファイルリストが再作成される。そして、Ｗｅｂページ印刷サーバ１０６のＷｅｂページ印刷サーバ１０６の外部ファイル取得部４０３が、再作成された外部ファイルリストにしたがって、Ｗｅｂサイト１０７から外部ファイルを取得する（ステップＳ７１４，Ｓ７１５）。
【００５８】
上述したステップＳ７１１乃至Ｓ７１５の処理によれば、以下の効果を奏することができる。図６のステップＳ６０８でＷｅｂブラウザ３０１に返される外部ファイルリストにＷｅｂサイト１０７から再取得できない外部ファイルが含まれる場合でも、Ｗｅｂページ印刷サーバ１０６にＨＴＭＬと外部ファイルとを提供できる。つまり、Ｗｅｂブラウザ３０１がＨＴＭＬを再取得し、Ｗｅｂページ印刷サーバ１０６が、Ｗｅｂブラウザ３０１により再取得されたＨＴＭＬに基づいて、該ＨＴＭＬが参照する外部ファイルを取得することができる。
【００５９】
ステップＳ７１６乃至Ｓ７２２におけるＷｅｂブラウザ３０１、Ｗｅｂページ印刷サーバ１０６が実行する処理は、図６のステップＳ６０８乃至Ｓ６１４と同様であるので、説明を省略する。図６および図７を参照して説明した実施形態では、Ｗｅｂブラウザ３０１は、図６のＳ６０４で取得されたスクリプトを実行することで、ステップＳ６０５、Ｓ６０９、Ｓ６１１、Ｓ６１３の処理を行う。しかし、Ｗｅｂページ印刷サーバ１０６が、Ｗｅｂブラウザ宛てのレスポンスにスクリプトを含めて、レスポンスを受け取ったＷｅｂブラウザ３０１がスクリプトを実行するようにしてもよい。
【００６０】
例えば、図６のステップＳ６０４で取得されたスクリプトがステップＳ６０５のシーケンスを実行し、以下に説明するように、ステップＳ６０８におけるレスポンスに含まれるスクリプトがステップＳ６０９、Ｓ６１１の処理を実行してもよい。すなわち、Ｗｅｂページ印刷サーバ１０６が外部ファイルを取得する際に、該外部ファイルを取得できなかった場合、図６のステップＳ６０８において、スクリプト送信部４０１が、該外部ファイルを取得させるスクリプトをクライアント端末１０４に送信する。
【００６１】
ステップＳ６０９，Ｓ６１０において、クライアント端末１０４のＷｅｂブラウザ３０１がＷｅｂページ印刷サーバ１０６から受信したスクリプトを実行することで、Ｗｅｂサイト１０７から外部ファイルを取得する。より具体的には、Ｗｅｂブラウザ３０１の外部ファイル取得部３０５が、Ｗｅｂページ印刷サーバ１０６が取得できなかった外部ファイルを、Ｗｅｂページ印刷サーバ１０６ら提供されるスクリプトを実行することにより取得する取得手段として機能する。
【００６２】
そして、図６のステップＳ６１１において、Ｗｅｂページ印刷サーバ１０６が、Ｗｅｂブラウザ３０１が取得した外部データをＷｅｂブラウザ３０１から取得する。なお、ウェｂブラウザ３０１が、ステップＳ６１２におけるレスポンスに含まれるスクリプトを実行することにより、ステップＳ６１３の処理を行なってもよい。図７についても同様である。
【００６３】
図８は、Ｗｅｂブラウザの動作処理の例を説明するフローチャートである。Ｗｅｂブラウザ３０１のスクリプト実行部３０６がステップＳ８０１乃至Ｓ８０８の処理を実行する。まず、Ｗｅｂブラウザ３０１が、表示中のＷｅｂページのＨＴＭＬを取得する（ステップＳ８０１）。続いて、Ｗｅｂブラウザ３０１が、ＨＴＭＬをＷｅｂページ印刷サーバ１０６に送信する（ステップＳ８０２）。続いて、Ｗｅｂブラウザ３０１が、Ｗｅｂページ印刷サーバ１０６から取得できなかった外部ファイルのリストを受信したかを判断する（ステップＳ８０３）。ステップＳ８０２におけるＨＴＭＬの送信に対する応答としてＷｅｂページ印刷サーバ１０６からレスポンスが返ってくるので、Ｗｅｂブラウザ３０１は、このレスポンスに取得できなかった外部ファイルのリストが含まれるかを判断する。Ｗｅｂページ印刷サーバ１０６からのレスポンスに、取得できなかった外部ファイルのリストが含まれていない場合、Ｗｅｂブラウザ３０１は、取得できなかった外部ファイルのリストを受信していないと判断して、ステップＳ８０８に進む。
【００６４】
Ｗｅｂページ印刷サーバ１０６からのレスポンスに、取得できなかった外部ファイルのリストが含まれている場合は、Ｗｅｂブラウザ３０１は、取得できなかった外部ファイルのリストを受信したと判断して、ステップＳ８０４に進む。ステップＳ８０４において、Ｗｅｂブラウザ３０１が、リストに含まれる外部ファイルをＷｅｂサイト１０７から取得する（ステップＳ８０４）。
【００６５】
次に、Ｗｅｂブラウザ３０１が、リストに含まれる外部ファイルを全て取得できたかを判断する（ステップＳ８０５）。リストに含まれる外部ファイルの一部または全部が取得できない場合、Ｗｅｂブラウザ３０１が、Ｗｅｂブラウザ３０１に表示中のＷｅｂページのＨＴＭＬを取得し（ステップＳ８０６）、ステップＳ８０２に戻る。
【００６６】
リストに含まれる外部ファイルを全て取得できた場合、Ｗｅｂブラウザ３０１が、取得した外部ファイルをＷｅｂページ印刷サーバ１０６に送信する（ステップＳ８０７）。続いて、Ｗｅｂブラウザ３０１が、印刷設定ページ１００１を表示する（ステップＳ８０８）。具体的には、Ｗｅｂブラウザ３０１は、Ｗｅｂページ印刷サーバ１０６から印刷設定ページ１００１を取得して表示する。
【００６７】
図９は、Ｗｅｂページ印刷サーバの動作処理の例を説明するフローチャートである。ＨＴＭＬ受信部４０２（図４）が、ステップＳ９０１の処理を実行する。ＨＴＭＬ解釈部４０５が、ステップＳ９０２の処理を実行する。外部ファイルリスト作成部４０６が、ステップＳ９０３の処理を実行する。外部ファイル取得部４０３が、ステップＳ９０４乃至Ｓ９０７の処理を実行する。外部ファイルリスト送信部４０７が、ステップＳ９０８、Ｓ９０９の処理を実行する。外部ファイル受信部４０４が、ステップＳ９１０、Ｓ９１１の処理を実行する。プレビューイメージ生成部４１０が、ステップＳ９１２の処理を実行する。印刷設定ページ送信部４１１が、ステップＳ９１３の処理を実行する。
【００６８】
まず、Ｗｅｂページ印刷サーバ１０６が、Ｗｅｂブラウザ３０１から表示中のＨＴＭＬを受信し、受信したＨＴＭＬをインターネット一時ファイルとしてインターネット一時ファイル記憶部４２０に保存する（ステップＳ９０１）。
【００６９】
次に、Ｗｅｂページ印刷サーバ１０６が、ステップＳ９０１において受信されたＨＴＭＬを解釈する。Ｗｅｂページ印刷サーバ１０６が、ＨＴＭＬの解釈結果に基づいて、ＨＴＭＬ内で参照している外部ファイルのリストを作成する（ステップＳ９０３）。
【００７０】
次に、Ｗｅｂページ印刷サーバ１０６が、ステップＳ９０３で作成した外部ファイルリストが示す外部ファイルをＷｅｂサイト１０７から取得する（ステップＳ９０４）。続いて、Ｗｅｂページ印刷サーバ１０６が、外部ファイルを取得できたかを判断する（ステップＳ９０５）。
【００７１】
外部ファイルを取得できなかった場合は、ステップＳ９０７に進む。外部ファイルが取得できた場合は、Ｗｅｂページ印刷サーバ１０６が、外部ファイルリストから、取得できた外部ファイルのＵＲＬを削除する（ステップＳ９０６）。ステップＳ９０６においては、Ｗｅｂページ印刷サーバ１０６は、さらに、取得できた外部ファイルをインターネット一時ファイルとして保存する。
【００７２】
次に、Ｗｅｂページ印刷サーバ１０６が、外部ファイルリストが示す全ての外部ファイルの取得を試みたかを判断する（ステップＳ９０７）。まだ取得を試みていない外部ファイルがある場合は、ステップＳ９０４に戻る。
【００７３】
全ての外部ファイルの取得を試みた場合は、ステップＳ９０８に進む。続いて、Ｗｅｂページ印刷サーバ１０６が、外部ファイルリストが空であるかを判断する（ステップＳ９０８）。外部ファイルリストが空である場合は、ステップＳ９１２へ進む。外部ファイルリストが空でない場合は、ステップＳ９０９に進む。
【００７４】
次に、Ｗｅｂページ印刷サーバ１０６が、外部ファイルリストをＷｅｂブラウザ３０１に返す（ステップＳ９０９）。続いて、Ｗｅｂページ印刷サーバ１０６が、Ｗｅｂブラウザ３０１からＨＴＭＬを受信したかを判断する（ステップＳ９１０）。ステップＳ９１０における判断処理は、図７のステップＳ７１３における、再取得されたＨＴＭＬの送信処理が行なわれたかを判断する処理である。ステップＳ９１０における判断処理を行なうのは、Ｗｅｂページ印刷サーバ１０６がＷｅｂブラウザ３０１から再取得されたＨＴＭＬを受信した場合には、再取得されたＨＴＭＬを解釈し、外部ファイルを取得する必要があるからである。Ｗｅｂページ印刷サーバ１０６が、Ｗｅｂブラウザ３０１からＨＴＭＬを受信したと判断した場合、Ｗｅｂページ印刷サーバ１０６は、インターネット一時ファイルのＨＴＭＬを上書きして、ステップＳ９０２に戻る。
【００７５】
Ｗｅｂページ印刷サーバ１０６が、Ｗｅｂブラウザ３０１からＨＴＭＬを受信しなかったと判断した場合は、ステップＳ９１１に進む。続いて、Ｗｅｂページ印刷サーバ１０６が、Ｗｅｂブラウザ３０１から外部ファイルを受信し（ステップＳ９１１）、インターネット一時ファイルとして保存する。
【００７６】
次に、Ｗｅｂページ印刷サーバ１０６が、インターネット一時ファイルとして保存されているＨＴＭＬと外部ファイルとに基づいて、プレビューイメージを生成する（ステップＳ９１２）。そして、Ｗｅｂページ印刷サーバ１０６が、作成したプレビューイメージを含む印刷設定ページ１００１を生成し、生成した印刷設定ページ１００１をＷｅｂブラウザ３０１に送信する（ステップＳ９１３）。すなわち、印刷設定ページ送信部４１１が、ステップＳ９１２において生成されたプレビューイメージを含む印刷設定画面データ（印刷設定ページ１００１）を生成してクライアント装置１０４に送信する設定画面送信手段として機能する。
【００７７】
図１０は、印刷設定ページの例を示す図である。クライアント端末１０４のＷｅｂブラウザ３０１が、Ｗｅｂページ印刷サーバ１０６から受け取った印刷設定ページ１００１を図１０に示すように画面表示する。印刷設定ページ１００１は、プレビューイメージ１００２、印刷ボタン１００３、キャンセルボタン１００４を含む。また、印刷設定ページ１００１は、印刷先のプリンタを選択するリストボックス１００５、印刷の向きを指定するラジオボタン１００６、両面印刷を指定するチェックボックス１００７を含む。ユーザが印刷ボタン１００３を押し下げすると、この押し下げ操作に応じて、Ｗｅｂページ印刷サーバ１０６に印刷リクエストが送信される。
【００７８】
図１１は、Ｗｅｂページの印刷処理の例を説明するシーケンス図である。図１０に示す印刷設定ページ１００１上で、印刷先のプリンタが選択され、印刷ボタン１００３が押下される（印刷指示が実行される）。印刷ボタン１００３の押下げ操作に応じて、クライアント端末１０４が、Ｗｅｂページ印刷サーバ１０６に対して、印刷データ生成リクエストを送信する（ステップＳ１１０１）。
【００７９】
印刷データ生成リクエストを受信したＷｅｂページ印刷サーバ１０６が、インターネット一時ファイルとして保存されているＨＴＭＬと外部ファイルとに基づいて、印刷データの生成を開始する。すなわち、図４に示す印刷データ生成部４０８が、図６のステップＳ６０７またはＳ６１１において取得された外部データと、図６のステップＳ６０４において取得されたＨＴＭＬとに基づいて、以下の処理を実行する生成手段として機能する。印刷データ生成部４０８は、クライアント端末１０４のＷｅｂブラウザ３０１で表示されたＷｅｂページに対応する印刷データを生成する。続いて、Ｗｅｂページ印刷サーバ１０６が、印刷リクエストをプリンタ１０５に送信するスクリプトを、クライアント端末１０４に返す（ステップＳ１１０２）。
【００８０】
ステップＳ１１０２においてクライアント端末１０４に対して返されるスクリプトには、プリンタ１０５が公開しているプルプリントの印刷リクエストを受け付けるためのインタフェースを呼び出す処理が記述されている。この印刷リクエストは、プリンタ１０５が印刷データを取得するためのＷｅｂページ印刷サーバ１０６のＵＲＬを含む。
【００８１】
クライアント端末１０４のＷｅｂブラウザ３０１が、スクリプトを実行し、プリンタ１０５に対して印刷リクエストを送信する（ステップＳ１１０３）。印刷リクエストを受信したプリンタ１０５が、クライアント端末に応答を返す（ステップＳ１１０４）。プリンタ１０５が、Ｗｅｂページ印刷サーバ１０６に印刷データリクエストを送信する（ステップＳ１１０５）。印刷データリクエストを受信したＷｅｂページ印刷サーバ１０６は、印刷データが生成済みであれば、印刷データをプリンタ１０５に送信する（ステップＳ１１０６）。プリンタ１０５が、印刷データを受信し、印刷処理を実行する。
【００８２】
本実施形態では、ＷｅｂページのＨＴＭＬとＨＴＭＬ内で参照する外部ファイルを同一のＷｅｂサイトが提供しているが、ＨＴＭＬと複数の外部ファイルが、それぞれ異なるＷｅｂサイトから提供されていてもよいことは言うまでもない。以上述べたように、本実施形態の印刷システムにおいては、サーバが外部ファイルを取得することができない場合、クライアントが外部ファイルを取得して、サーバに送信する。したがって、本実施形態の印刷システムによれば、ＯＳが印刷機能を持たないようなシンクライアント端末において、Ｗｅｂブラウザの標準機能のみで、表示中のＷｅｂページを印刷することができる。
【００８３】
また、本実施形態では、Ｗｅｂブラウザ３０１が一度取得した外部ファイルをＷｅｂサイト１０７から再取得することができない場合、クライアント端末１０４はＨＴＭＬを再取得して、Ｗｅｂページ印刷サーバ１０６に送信する。したがって、本実施形態の印刷システムによれば、Ｗｅｂブラウザ３０１がＷｅｂサイト１０７から外部ファイルを再取得することができない場合でも、Ｗｅｂブラウザが表示中のＷｅｂページを印刷することができる。
【００８４】
また、本実施形態では、Ｗｅｂページ印刷サーバ１０６が、プレビューイメージを生成し、クライアント装置１０４が、プレビューイメージを含む印刷設定ページをＷｅｂページ印刷サーバ１０６から取得して表示する。したがって、本実施形態の印刷システムによれば、ユーザは、プレビューイメージを確認してから印刷指示を行うことができる。
【００８５】
また、本実施形態では、Ｗｅｂページ印刷サーバ１０６が、ブックマークレットをインストールするためのＷｅｂページをクライアント端末１０４に対して提供する。したがって、本実施形態の印刷システムによれば、ユーザは、Ｗｅｂページ印刷サーバ１０６から提供されるＷｅｂページを用いて、Ｗｅｂブラウザのブックマークにブックマークレットを登録することができる。
【００８６】
また、Ｗｅｂページ印刷システム１０６は、Ｗｅｂブラウザ３０１を介して、プリンタ１０５に印刷リクエストを送信し、プリンタ１０５がＷｅｂページ印刷サーバ１０６から印刷データを取得する。したがって、本実施形態の印刷システムによれば、ファイアウォールによって、Ｗｅｂページ印刷サーバ１０６からプリンタ１０５に対して接続ができない環境であっても、印刷を行うことができる。
【００８７】
また、Ｗｅｂページ印刷サーバ１０６は、図９のステップＳ９０４乃至Ｓ９０７において、外部ファイルの取得を試みて、取得できた外部ファイルのＵＲＬを外部ファイルリストから削除する。他の実施形態では、Ｗｅｂページ印刷サーバ１０６が、Ｗｅｂページ印刷サーバ１０６内に外部ファイルがあるかどうかを判定して、外部ファイルがある場合は、外部ファイルの取得を試みないで、ステップＳ９０９に進むようにしてもよい。
【００８８】
なお、予め、外部ファイルが取得できないＵＲＬのリストをＷｅｂページ印刷サーバ１０６で登録しておき、Ｗｅｂページ印刷サーバ１０６が、リストに該当するＵＲＬの外部ファイルの取得を試みないようにしてもよい。
【００８９】
（その他の実施例）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００９０】
１０４  クライアント端末
１０６  Ｗｅｂページ印刷サーバ
１０７  Ｗｅｂサイト
【図１】
0005885527.tif 000002
【図２】
0005885527.tif 000003
【図３】
0005885527.tif 000004
【図４】
0005885527.tif 000005
【図５】
0005885527.tif 000006
【図６】
0005885527.tif 000007
【図７】
0005885527.tif 000008
【図８】
0005885527.tif 000009
【図９】
0005885527.tif 000010
【図１０】
0005885527.tif 000011
【図１１】
0005885527.tif 000012
【図１２】
0005885527.tif 000013
【図１３】
0005885527.tif 000014