JP2013161196A - ウェブ(Web)ページ印刷システム、方法、及び、プログラム - Google Patents
ウェブ(Web)ページ印刷システム、方法、及び、プログラム Download PDFInfo
- Publication number
- JP2013161196A JP2013161196A JP2012021404A JP2012021404A JP2013161196A JP 2013161196 A JP2013161196 A JP 2013161196A JP 2012021404 A JP2012021404 A JP 2012021404A JP 2012021404 A JP2012021404 A JP 2012021404A JP 2013161196 A JP2013161196 A JP 2013161196A
- Authority
- JP
- Japan
- Prior art keywords
- html
- print data
- information
- web page
- 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.)
- Pending
Links
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Information Transfer Between Computers (AREA)
Abstract
【課題】インターネットに展開するプリントサービスにおいて、クライアントの意図するWebページ画面に忠実な印刷データの生成を行う。
【解決手段】WebブラウザーでWebページ画面を印刷する際に、HTML内の動的な要素を、静的な要素に置換する処理を行ってから送受信を行う。これにより、クライアント端末が表示するWebページ画面と、プリントサーバー上で生成される印刷データの差異を少なくすることができる。
【選択図】図6
【解決手段】WebブラウザーでWebページ画面を印刷する際に、HTML内の動的な要素を、静的な要素に置換する処理を行ってから送受信を行う。これにより、クライアント端末が表示するWebページ画面と、プリントサーバー上で生成される印刷データの差異を少なくすることができる。
【選択図】図6
Description
本発明は、印刷制御装置、印刷制御方法及び、コンピュータプログラムに関する。本発明は、特に、Web(ウェブ)ページ画面を印刷する際の印刷データ生成方法及びコンピュータプログラムに関する。
近年、クラウドサービスとして、インターネット上にサービスを公開するビジネスが展開されている。インターネット上のプリントサービスとして、プリントサーバーの機能を提供することが求められている。例えば、大規模なデータセンターにプリントサーバーを配置し、クラウドサービスとしてプリントサービスを提供することで、顧客ごとのハードウェアの管理が不要となる。また、サーバの負荷に応じてリソースを追加するようなことも容易であるという様々なメリットがある。
このプリントサービスは、多種のプリンターに対応しており、受信した文書データや画像データを、印刷先のプリンターが処理するのに適した形式の印刷データに変換することができる。これによりユーザーは、文書データや画像データを容易に印刷することができる。しかし、ユーザーが、Webページの画面等を印刷する際には、ブラウザーで表示している画面を一度文書データとして保存し、プリントサービスに送信しなければならない。そのため、プリントサービスは、ブラウザー上で動作する、プリントサービスとのデータ通信含む印刷指示プログラムを提供する。ユーザーは、プリントサービスから、このプログラムを取得し、ブラウザー上で実行させることで、画面に表示中のページのリソースURLをプリントサービスへ送信する。プリントサービスは、ブラウザーから受信したURLを元にリソースサーバーから取得したHTMLをレンダリングし、生成した画面をプリンターの印刷に適した印刷データに変換する。また、印刷指示プログラムは、印刷先プリンターに印刷データの印刷を指示する。これにより、ユーザーは、Webページ画面の印刷の際にも、容易に印刷が可能となる。
しかしながら、ユーザーが印刷したいWebページ画面は、内容に動画やFlash等の動的な要素が含まれており、ユーザーの操作に因って、画面が、初期状態から変更されている場合がある。そのため、ユーザーが印刷したい意図する画面と、プリントサービスが、ブラウザー上で動作するデータ送信プログラムから受信したURLから取得したHTMLをレンダリングした画面とでは差異が発生してしまう。
このような問題を解決することを目的として、従来技術として、ブラウザーが、HTML内の動画プログラムを解釈し、動画からキャプチャーした複数の静止画像を表示し、ユーザーが、その中から印刷に使用する静止画を選択するという方法がある(例えば、特許文献1)。
特許文献1の方法では、ユーザーが複数の静止画から選択するステップが必要となる。加えて、ブラウザーキャプチャした複数の静止画像の中に、ユーザーの意図する画像が含まれていない場合には、プリントサービスは、ユーザーの意図しない印刷データを生成してしまう。つまり、特許文献1の方法では、印刷実行の容易さと、印刷データの再現性においては、有効な手段とは言えない。
そこで、本発明は、インターネットに展開するプリントサービスを利用したWebページの印刷において、ユーザーの意図するWebページ画面を、より忠実に再現した印刷データを生成するための印刷制御装置及び、プログラムを提供する。
本発明の印刷制御装置は、クライアント端末からの指示に基づいて印刷ジョブおよびプリンターを管理する。前記印刷制御装置は、前記クライアント端末から印刷文書に関するデータを受信する手段と、URLを元にリソースサーバーからHTMLを取得する手段と、HTMLを解釈し、印刷データを生成する手段と、前記クライアント端末のブラウザー上で実行可能なプログラムを公開する手段と、を備える。また、前記プログラムは、前記クライアント端末のブラウザー上で実行され、前記ブラウザーで表示中のHTMLからあらかじめ定められた要素を抽出する手段と、前記抽出した要素に対応する、前記ブラウザーに表示中の画面の一部をキャプチャーする手段と、前記キャプチャー画面によって前記抽出した要素を置換する手段と、前記置換済HTMLを前記印刷制御装置に送信する手段とを備えることを特徴とする。
本発明の印刷制御装置及びプログラムによれば、印刷制御装置が受信するHTMLには、動画が含まれない。つまり、動画やFlashの要素が、ユーザーが印刷したい時点に、キャプチャーされた静止画像として含まれている。よって、ユーザーの操作に因って、初期状態から変更されているWebページ画面を印刷する場合においても、印刷制御装置は、ユーザーの意図するWebページ画面に対して、より忠実な印刷データを生成することができる。
以下、本発明を実施するための最良の形態について図面を用いて説明する。
(第1実施形態)
図1は、本発明の実施形態の全体構成を示す図である。
図1は、本発明の実施形態の全体構成を示す図である。
図1において、プリントサーバー(印刷制御装置)104と、リソースサーバー103と、クライアント端末101〜102と、プリンター105〜106とは、ネットワーク107〜109を介して接続されている。図1において、クライアント端末101、プリンター105〜106は、複数台接続されている。ネットワーク107〜109は、例えば、インターネット等のLAN、WAN、電話回線、専用デジタル回線、ATMやフレームリレー回線、ケーブルテレビ回線、データ放送用無線回線等のいずれかである。または、ネットワーク107〜109は、これらの組み合わせにより実現されるいわゆる通信ネットワークである。ネットワーク107〜109は、データの送受信が可能であればよい。クライアント端末101〜102からプリントサーバー104、プリンター105〜106への通信手段、プリンター105〜106からプリントサーバー104への通信手段は異なっていてもよい。
クライアント端末101〜102は、例えば、デスクトップパソコン、ノートパソコン、モバイルパソコン、PDA(パーソナルデータアシスタント)等であるが、プログラムの実行環境が内蔵された携帯電話であってもよい。クライアント端末101〜102は、Webブラウザー(インターネットブラウザー、WWWブラウザー、World Wide Webの利用に供するブラウザー)等のプログラムを実行する環境を内蔵している。
リソースサーバー103は、クライアント端末101〜102のWebブラウザーからの要求に対して、HTMLを返す。プリントサーバーは、クライアント端末104のWebブラウザーからの印刷指示プログラム取得要求を受けると、クライアント端末101〜102のWebブラウザー上で実行可能な、印刷指示プログラムを返す。クライアント端末101〜102のWebブラウザーは、プリントサーバー104上の印刷指示プログラムを示すURLにアクセスすることで、プログラムを実行することができる。また、プリントサーバー104は、クライアント端末101〜102のWebブラウザー上で実行される印刷指示プログラムから、印刷対象のHTMLを含めた印刷データ生成要求を受けて、HTMLを解釈し、印刷先プリンター105〜106に適した形の印刷データを生成する。この際、プリントサーバー104は、自ら保持している印刷データへの変換を行う変換モジュールを使って印刷データ(PDL)を生成する。なお、プリントサーバー104が備える変換モジュールは、様々なデータを受け付けることができ、受け付けたデータを出力対象のプリンター105〜106に適合したデータに変換する機能を備える。また、プリンター105〜106は、印刷指示プログラムからの指示を受けて、プリントサーバー104から印刷データを取得し、印刷を行う。
ここで、本願が想定する印刷の流れの一例について説明する。例えば、ユーザーはクライアント端末101〜102のWebブラウザーを使ってリソースサーバー103にアクセスし、任意のWebページ画面を表示している状況で、プリントサーバー104上に公開されている印刷指示プログラムを実行する。印刷指示プログラムは、クライアント端末101〜102のWebブラウザーで表示中のHTMLを解析し、あらかじめ定められた要素を抽出する。ここで、抽出対象となる要素は、例えば、<video>や、<embed>等の動的に変化する要素である。印刷指示プログラムは、抽出した要素の表示座標を取得し、表示範囲の画面を静止画像としてキャプチャーする。さらに、印刷指示プログラムは、キャプチャーで取得した静止画像で、対応する抽出要素を置換する。ここで、静止画像は、例えば、<img>等の静的な要素として挿入される。印刷指示プログラムは、置換済みのHTMLを含めた印刷データ生成要求をプリントサーバー104へ送信する。ここで、印刷データ生成要求には、印刷先のプリンター情報、印刷設定情報等も含まれる。プリントサーバー104は、印刷指示プログラムからの印刷データ生成要求に従って、受信したHTMLを解釈し、印刷データに変換し、保持しておく。
クライアント端末101〜102のWebブラウザーは、印刷指示プログラムによって、プリンター105〜106にプルプリントジョブを登録する。プリンター105〜106は、このプルプリントジョブの内容に従って、プリントサーバー104に印刷データ取得要求を送信する。プリントサーバー104は、プリンター105〜106からの印刷データ取得要求を受けると、生成した印刷データをプリンター105〜106へ送信する。
図2は、本発明の実施形態におけるクライアント端末101〜102、プリントサーバー104、リソースサーバー103とプリンター103のハードウェア構成図である。
図2において、CPU202は、装置全体の制御を行い、ハードディスク(HDD)205に格納されているアプリケーションプログラム、OS等を実行し、RAM203にプログラムの実行に必要な情報、ファイル等を一時的に格納する制御を行う。ROM204は、記憶手段であり、内部には、基本I/Oプログラム等のプログラム、印刷処理の際に使用する印刷データ、プリンター情報等の各種データを記憶する。RAM204は、一時記憶手段であり、CPU202の主メモリ、ワークエリア等として機能する。ハードディスク(HDD)205は外部記憶手段の一つであり、大容量メモリとして機能する。外部記憶手段は、Webブラウザー等のアプリケーションプログラム、プリントサーバープログラム、リソースサーバープログラム、OS、関連プログラム等を格納している。
ディスプレイ206は、表示手段であり、キーボード207から入力したコマンドや、プリンター105〜106のステータス等を表示したりするものである。外部装置I/F208は、プリンター、USB機器、周辺機器を接続するためのI/Fである。キーボード207は、指示入力手段として機能する。システムバス201は、印刷システムのプリントサーバー104、リソースサーバー103、クライアント端末101〜102内におけるデータの流れを司るものである。ネットワークインタフェースカード(NIC)209は、ネットワーク107〜109を介して外部装置とのデータのやり取りを行う。なお、上記コンピュータの構成はその一例であり、図2の構成例に限定されるものではない。例えば、データやプログラムの格納先は、その特徴に応じてROM、RAM、HDDなどで変更することも可能である。
コントローラー210は、プリンターの制御系を司る機器である。CPU211は、装置全体の制御を行い、システムバス216に接続される各種デバイスとのアクセスを統括的に制御する。この制御は、ROM213に記憶された制御プログラム等、あるいはディスクコントローラ(DKC)218を介して接続された外部メモリ223に記憶された制御プログラムやリソースデータ(資源情報)等に基づいて行われる。RAM212は、CPU211の主メモリ、ワークエリア等として機能し、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。
外部記憶手段は223、大容量メモリとして機能し、プルプリントアプリケーションプログラム及び関係プログラム等を格納している。操作パネル(操作部)222は、プルプリントの操作を行うユーザインタフェースやプルプリント切り替えボタンが配置される。また、プリンターの動作モード等の設定やプリンターの動作状況の表示、複写指定等の操作を行うためのボタンおよび液晶パネルやLED等の表示部も配置される。ネットワークインタフェースカード(NIC)220は、該インタフェースを介して外部装置とのデータのやり取りを行う。
なお、本図で示したプリントエンジンは既知の印刷技術を利用するものであり、好適な実施系として例えば電子写真方式(レーザービーム方式)やインクジェット方式、昇華方(熱転写)方式等が挙げられる。ラスタコントローラは、PDL言語・PDF言語である印刷データを画像データに変換するコントローラーである。機器I/Fは、USB等で接続可能な外部機器との接続I/Fである。
図3は、本発明の実施形態のモジュール構成図である。
プリントサーバー104は、印刷ジョブを管理する印刷ジョブ管理サービス301を備えている。印刷ジョブ管理サービス301は、他のサービス、または他のプログラムから投入される印刷データをストレージ302に管理する。印刷データのデータフォーマットは、PDLまたは、PDF等の形式である。ストレージ302はプリントサーバー104の情報処理装置に内蔵するHDDまたは、外部接続しているHDD、または、ネットワークストレージ等の記憶装置である。プリント管理サービス303はプリンター105〜106を管理し、各プリンターに対しプリンター情報を管理する。印刷データ生成サービス304は、文書データを、プリンター管理サービスで管理されるプリンター情報を参照し、プリンター105〜106に適合する印刷データを生成する。
Webアプリケーション305は、クライアント端末101〜102上で動作しているWebブラウザー306で表示可能なWebページを生成し、Webブラウザー306からのリクエストに応答し、生成したWebページ及び、印刷指示プログラムを返信する。Webサービス307は、プリンター105〜106のプルプリントアプリケーション308からの印刷ジョブ取得リクエストに対し印刷データを返し、また印刷処理におけるジョブのステータスを受け取る。プリンター105〜106のプルプリントアプリケーション308は、Webブラウザー306からのプリンター制御コマンド(例えば、プリンターへの印刷実行指示コマンド)、または、印刷指示コマンドを受け付ける。
印刷ジョブ管理サービス301、プリンター管理サービス303、Webアプリケーション305、Webサービス307はそれぞれ独立したプログラムであり、それぞれ別々の情報処理装置に配置することが可能である。これらのプログラムはそれぞれネットワーク107〜109に繋がった複数の情報処理装置に配置され、プログラム間で通信を行う。またこれらのプログラムを同一の情報処理装置に配置することも可能である。
リソースサーバー103のWebアプリケーション309は、クライアント端末101〜102上で動作しているWebブラウザー306で表示可能なWebページを生成し、Webブラウザー306からのリクエストに応答し、生成したWebページを返信する。このWebページは、Webブラウザー306からのリクエスト内容に応じて、ストレージ310に管理されているリソースデータから選択または、生成される。
図4は、本発明の実施形態に関連する装置群のソフトウェア構成図である。
図4の(A)において、プリントサーバー104に含まれる印刷ジョブ管理サービス301の印刷ジョブ管理部401は、印刷ジョブの管理を行う。すなわち、印刷ジョブ管理部401は、Webサービス307から印刷データの取得リクエストを受け取ると、ストレージから指定の印刷データを取得し、Webサービスに渡す。プリンター管理サービス303のプリンター情報管理部402は、プリンター105〜106のモデル等の情報を管理する。Webアプリケーション305は、リクエスト受付部403にて、Webブラウザー306から、印刷対象のHTMLを含む印刷指示リクエストを受け付けると、その旨をプリンター管理サービス402に通知する。その通知を受けとったプリンター管理サービス303は、プリンター情報に基づいて対象のプリンターのモデルを決定する。また、HTML解釈部404は、Webブラウザー306から受け取った印刷リクエストに含まれる印刷対象のHTMLを解釈し、画像データとする。印刷データ生成サービス304の印刷データ変換部405は、画像データを印刷データに変換する。なお、Webブラウザー306から受信した印刷指示リクエストには、プリンターの情報が含まれるので、その情報に基づいて印刷データ生成サービス304の印刷データ変換部405は、画像データを印刷データに変換し、ストレージ302に保持する。
Webサービス307のリクエスト受付部406は、プルプリントアプリケーション308からの印刷データ取得リクエストや、印刷ジョブのステータスを受け付ける。リクエスト受付部406が、印刷データ取得リクエストを受けた場合、印刷データ取得部407が、印刷ジョブ管理サービス301に印刷データ取得リクエストを出す。印刷ステータス受信部408は、リクエスト受付部406が印刷ジョブのステータスを受けると、そのステータスをプリンター管理サービス303に通知する。
図4の(B)において、プルプリントアプリケーション308のWebサービス受付部409は、Webブラウザー306からの印刷指示コマンド等を受ける。Webサービス送信部410は、Webサービス307へ印刷ジョブ取得リクエスト、または印刷ステータスの通知を行う。Webブラウザー306から印刷リクエスト等を受けると、印刷データ取得部411は、Webサービス送信部410を通してWebサービス307から印刷データを取得し、印刷データ送信部412に送る。印刷データ送信部412は、コントローラー210に印刷データを送信する。印刷制御部413は、印刷ジョブのステータスをコントローラー210から受け取り、Webサービス307に通知する。プルプリントコントローラー414は、プルプリントアプリケーション308全体の動作管理を行うものであり、各部への動作指示等は、このコントローラー経由で行う。
図4の(C)において、リソースサーバー103のWebアプリケーション103では、リクエスト受付部415が、Webブラウザー306からWebページ取得のためのリクエストを受け付ける。ページ生成部416は、リクエストの内容に従ってWeb画面を生成し、返信する。
図4の(D)において、クライアント端末101〜102のWebブラウザー306では、リクエスト送信部417が、リクエスト受付部415にWebページ取得リクエストを送信し、HTMLを取得する。さらに、HTML解釈部418が、取得したHTMLを解釈し、画面に表示を行う。また、ユーザー操作により、リクエスト送信部417を通してリクエスト受付部403から、印刷指示プログラムを取得すると、プログラム実行部419が、印刷指示プログラムが実行する。プログラム実行部419は、HTML解釈部418を通して、表示中のHTMLを解析し、印刷指示プログラムに定められた要素を抽出する。プログラム実行部419は、表示画面内の抽出した要素の表示領域をキャプチャーし、静止画像要素として、HTML内の該当する要素を置換する。プログラム実行部419は、HTML置換処理が完了すると、リクエスト送信部417を通して、リクエスト受付部403に置換済みHTMLと、印刷先プリンターの情報を送信する。さらに、プログラム実行部は、Webサービス受付部409に印刷データ取得指示を送信する。
図5は、本発明の実施形態によって管理される情報の例である。
図5の(A)において、プリンター情報501は、プリントサーバー104で管理する複数のプリンター105〜106のプリンター情報を管理している。プリンター名502、プリンター識別情報503、ステータス504、モデル505等を含む。プリンター識別情報503は、各プリンター105〜106をユニークに識別する情報であり、IPアドレスや、MACアドレスや、URI等である。ステータス504は、プリンターのステータスであり、用紙切れ、ジャム、カバーオープン、トナーなし、排紙ビンフル、ハードディスクフル、その他エラーがある。また、他のステータスとして、ウォーミングアップ中、キャリブレーション中、初期化中、オフライン、スリープ中、印刷中、印刷可能、状態不明等のステータスがある。また、モデル505は、プリンターのモデルを表し、モデル毎に適合する印刷データを生成するため等に参照される。
図5の(B)において、印刷ジョブ情報506は、プリントサーバー104の印刷ジョブ管理部401で管理されるストレージ307に保存されているジョブの管理情報である。印刷ジョブ情報506は、ジョブを識別するためのジョブID507、ドキュメント名508、印刷ステータス509等を含む。印刷ステータス509には、待機中、転送中、印刷中、キャンセル中、正常終了、キャンセル終了、エラー終了等のステータスがある。
図5の(C)において、印刷キュー情報510は、プリンター105〜106のプルプリントアプリケーション308で管理される印刷ジョブ情報である。印刷キュー情報510は、印刷ジョブを識別するためのジョブID511、印刷データの取得先URI512等、印刷データの取得部が印刷データ取得時に使用する情報を含む。
図6は、本発明の実施形態に係る各装置の動作フローである。なお、本願のフローチャートは、各装置のCPUがメモリから関連するプログラムを読みだして実行することにより実現される。
図6の(A)において、クライアント端末101〜102は、S601において、Webブラウザー306上で、HTMLの画面表示を行う。HTML画面表示は、S602で、リクエスト送信部417を通して、リソースサーバー103からHTML取得を行い、S603で、HTML解釈部418にて、HTMLをレンダリングし、S604において、画面への表示を行う。クライアント端末101〜102は、HTML画面表示の後、印刷したいタイミングで、S605にて、リクエスト送信部417を通して、プリントサーバー104から印刷指示プログラムを取得する。S606では、プログラム実行部419が、プリントサーバー104から取得した印刷指示プログラムを実行し、S607のHTML置換に移る。HTML置換処理では、まず、S608にて、クライアント端末101〜102のWebブラウザー306が、HTML置換処理を実行できるか否かを判断する。Webブラウザー306が、HTML置換処理を実行できないものである場合、HTML置換処理を終了する。Webブラウザー306が、HTML置換処理を実行できるものであると判断された場合は、S609にて、表示中のHTML内から、置換対象要素を検索する。ここで、置換対象要素は、印刷実行プログラム内にあらかじめ決められている、Webブラウザー306の画面上で、動的に変化する要素である。S610にて、置換対象が見つからなかった場合は、HTML置換処理を終了する。S610にて、置換対象が見つかった場合は、S611にて、S612〜S614の処理を繰り返す。S612で、Webブラウザー306が、置換対象要素の画面上の表示座標を取得し、S613で、取得した座標領域内を静止画像としてキャプチャーする。さらに、S614で、Webブラウザー306は、置換対象要素を、キャプチャーによって取得した静止画像データを含む静的要素で置換する。全ての置換対象要素に対して、S612〜S614の処理を行い、HTML置換処理を終了する。次にS615で、Webブラウザー306は、リクエスト送信部417を通して、HTML置換処理で置換済みのHTMLをプリントサーバー104へ送信する。さらに、S616では、S615でのプリントサーバー104から返信の内容を使用して、プリンター105〜106に対して、印刷指示を送信する。
図6の(B)において、プリントサーバー104は、印刷指示プログラムの送信、印刷データの生成、印刷データの送信を行う。印刷指示プログラムの送信では、プリントサーバー104は、S617において、リクエスト受付部403でプログラム取得リクエストを受け付けると、S618において、ストレージ302内に保持しているプログラムを返信する。また、印刷データの生成処理は、S619でリクエスト受付部403が、HTMLと、印刷先プリンター情報を含む、印刷データ生成要求を受け付けると、S620にて、HTML解釈部404が、受信したHTMLをレンダリングする。S621では、印刷データ変換部405が、印刷先プリンター情報を元に、レンダリング後の画像データを、印刷先プリンターに適合する形の印刷データに変換し、ストレージ302に保持する。このとき、印刷ジョブ管理部401が、生成した印刷データについての情報を管理し、URI等の印刷データの取得に必要な情報を、Webブラウザー306に返信する。印刷データの送信では、S622にて、リクエスト受付部406が、プリンター105〜106から印刷データ取得要求を受け付けると、S623で、リクエストに含まれる情報を元に、印刷ジョブ管理部401が、ストレージから該当する印刷データを取得し、プリンター105〜106へ返信する。
本実施形態では、クライアント端末101〜102のWebブラウザー306で表示されている画面内の動的な要素、例えば、動画やFLASH等の表示領域を、それをキャプチャーした静止画像で置き換える。つまり、HTMLの解釈結果が静的なものとなり、解釈者が別の場合でも、同様の画面を結果として得ることができる。これにより、クライアント端末101〜102のWebブラウザー306上で印刷対象とするWebページ画面と、プリントサーバー104で、クライアント端末101〜102から受信したHTMLを解釈して生成する印刷データとの間の差異を少なくすることができる。
(第2実施形態)
続いて、本発明の第2実施形態について説明する。第2実施形態では、クライアント端末101〜102のWebブラウザー306は、印刷対象のWebページ画面のリソースサーバー103上の場所を示すリソースURLと、置換情報(MAP)を、プリントサーバー104に送信する。プリントサーバー104が、受信したURLにアクセスし、リソースサーバー103からHTMLを取得し、置換情報(MAP)に従って置換処理を行った後、印刷データを生成する。第1実施形態では、クライアント端末101〜102のWebブラウザー306が表示中のHTML全てをプリントサーバー104に送信するのに対して、第2実施形態では、ネットワーク上を流れるデータ量を抑えることができる。
続いて、本発明の第2実施形態について説明する。第2実施形態では、クライアント端末101〜102のWebブラウザー306は、印刷対象のWebページ画面のリソースサーバー103上の場所を示すリソースURLと、置換情報(MAP)を、プリントサーバー104に送信する。プリントサーバー104が、受信したURLにアクセスし、リソースサーバー103からHTMLを取得し、置換情報(MAP)に従って置換処理を行った後、印刷データを生成する。第1実施形態では、クライアント端末101〜102のWebブラウザー306が表示中のHTML全てをプリントサーバー104に送信するのに対して、第2実施形態では、ネットワーク上を流れるデータ量を抑えることができる。
図7は、第2実施形態における、クライアント端末101〜102、プリントサーバー102の動作フローと、HTMLの置換情報のための管理情報である。図7に示す、動作フロー、管理情報以外の、構成、動作フロー等は、すべて実施例1と同様である。
図7の(A)において、クライアント端末101〜102は、S601において、Webブラウザー306上で、HTMLの画面表示を行う。クライアント端末101〜102は、HTML画面表示の後、印刷したいタイミングで、S701にて、リクエスト送信部417を通して、プリントサーバー104から印刷指示プログラムを取得する。S702では、プログラム実行部が、プリントサーバーから取得した印刷指示プログラムを実行し、S703のHTML置換に移る。HTML置換処理では、まず、S704にて、クライアント端末101〜102のWebブラウザー306が、HTML置換処理を実行できるか否かを判断する。Webブラウザー306が、HTML置換処理を実行できないものである場合、HTML置換処理を終了する。Webブラウザー306が、HTML置換処理を実行できるものであると判断された場合は、S705にて、表示中のHTML内から、置換対象要素を検索する。ここで、置換対象要素は、印刷実行プログラム内にあらかじめ決められている、Webブラウザー306の画面上で、動的に変化する要素である。S706にて、置換対象が見つからなかった場合は、HTML置換処理を終了する。S706にて、置換対象が見つかった場合は、S707にて、S708〜S711の処理を繰り返す。S708で、Webブラウザー306が、置換対象要素の画面上の表示座標を取得し、S709で、取得した座標領域内を静止画像としてキャプチャーする。さらに、S710で、Webブラウザー306は、置換対象要素を、キャプチャーによって取得した静止画像データを含む静的要素で置換する。ここで、Webブラウザー306は、置換した要素と、置換要素にいついての情報を、置換情報を(MAP)701として記憶する。置換情報(MAP)701は、ここでは、置換対象の要素名702、置換対象要素の出現順703、置換要素704から成る。この置換情報(MAP)701は、HTMLから置換対象要素を一意に決定でき、決定した置換対象要素を置換する要素を決定できる情報であれば良く、本実施例と同じ内容である必要はない。全ての置換対象要素に対して、S708〜S711の処理を行い、HTML置換処理を終了する。次にS704で、Webブラウザー306は、リクエスト送信部417を通して、印刷対象のHTMLを取得するためのURLと、HTML置換時に記憶した、置換情報(MAP)701をプリントサーバー104へ送信する。さらに、S705では、S704でプリントサーバー104からの返信内容を使用して、プリンターに対して、印刷指示を送信する。
図7の(B)において、プリントサーバー104は、クライアント端末101〜102のWebブラウザー306から受信したURL、置換情報データを用いて印刷データの生成を行う。S712でリクエスト受付部403が、URLと、置換情報(MAP)701、印刷先プリンター情報を含む、印刷データ生成要求を受け付けると、S713にて、URLにアクセスし、リソースサーバー103からHTMLを取得する。プリントサーバー104は、S714で、取得したHTMLに対して、Webブラウザー306から受信した置換情報(MAP)701の全ての要素について、S715〜S716の処理を実行する。まず、S715にてHTML解釈部404が、要素名702と、出現順703から置換対象要素を決定する。次に、S716で、決定した置換対象要素を置換要素704で置換する。S714の置換処理の後、HTML解釈部404は、S717で、HTMLをレンダリングする。さらにS718では、印刷データ変換部405が、印刷先プリンター情報を元に、レンダリング後の画像データを、印刷先プリンターに適合する形の印刷データに変換し、ストレージ302に保持する。このとき、印刷ジョブ管理部401が、生成した印刷データについての情報を管理し、URI等の印刷データの取得に必要な情報を、Webブラウザー306に返信する。印刷データの送信では、リクエスト受付部406が、プリンター105〜106から印刷データ取得要求を受け付けると、リクエストに含まれる情報を元に、印刷ジョブ管理部401が、ストレージ302から該当する印刷データを取得し、プリンター105〜106へ返信する。
このように、第2実施形態によれば、プリントサーバー側で、HTMLの取得を行うため、印刷対象のHTMLのデータサイズが大きい場合に、ネットワーク上を流れるデータ量を抑えることができ、クライアント端末およびネットワークに負荷がかからず、インターネットに展開するクラウドサービスに適用することができる。
101〜102・・クライアント端末、103・・リソースサーバー、104・・プリントサーバー(印刷制御装置)、105〜106・・プリンター、107〜109・・ネットワーク
Claims (2)
- Webブラウザーに表示されたWebページをサーバに送信し、印刷データに変換して印刷を実行するWebページ印刷方法であって、Webページを公開するリソースサーバーと、Webページを表示するWebブラウザーを有するクライアント端末と、Webページを構成するHTMLと外部情報から印刷データを生成するプリントサーバーと、印刷データを取得し、印刷を行うプリンターから構成されるシステムにおいて、
Webブラウザーは、HTMLを解釈し、その内容を画面に表示する手段と、HTML内の要素から、あらかじめ定められた置換対象要素を抽出する手段と、前記抽出した置換対象要素に対応する、表示画面を静止画像として取得する手段と、前記HTMLについて、前記取得した静止画像を含む要素で、前記置換対象要素を置換する手段と、前記置換後のHTMLと、印刷先プリンターの情報を、プリントサーバーに送信する手段と、を有し、
プリントサーバーは、WebブラウザーからHTMLと、印刷プリンター情報を受信する手段と、HTMLを解釈し、印刷データに変換する手段と、プリンターから、印刷データの取得要求を受け付ける手段と、前記印刷データ取得要求に対して、対象の前記変換後の印刷データを送信する手段と、を有する、
HTMLとプリンター情報から印刷データを生成することを特徴とするWebページ印刷システム。 - Webページを公開するリソースサーバーと、Webページを表示するWebブラウザーを有するクライアント端末と、Webページを構成するHTMLと外部情報から印刷データを生成するプリントサーバーと、印刷データを取得し、印刷を行うプリンターから構成されるシステムにおいて、
Webブラウザーは、HTMLを解釈し、その内容を画面に表示する手段と、HTML内の要素から、あらかじめ定められた置換対象要素を抽出する手段と、前記抽出した置換対象要素に対応する、表示画面を静止画像として取得する手段と、前記HTMLについて、前記取得した静止画像を含む要素と、前記置換対象要素を関連づけて置換情報として記憶する手段と、前記置換情報と、HTMLを取得するためのURL、印刷先プリンターの情報を、プリントサーバーに送信する手段と、を有し、
プリントサーバーは、Webブラウザーから置換情報と、URL、印刷プリンター情報を受信する手段と、前記URLにアクセスし、HTMLを取得する手段と、前記取得したHTMLについて、前記置換情報に従って、置換処理を行う手段と、前記置換後のHTMLを解釈し、印刷データに変換する手段と、プリンターから、印刷データの取得要求を受け付ける手段と、前記印刷データ取得要求に対して、対象の前記変換後の印刷データを送信する手段と、を有する、HTMLとプリンター情報から印刷データを生成することを特徴とするWebページ印刷システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012021404A JP2013161196A (ja) | 2012-02-03 | 2012-02-03 | ウェブ(Web)ページ印刷システム、方法、及び、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012021404A JP2013161196A (ja) | 2012-02-03 | 2012-02-03 | ウェブ(Web)ページ印刷システム、方法、及び、プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2013161196A true JP2013161196A (ja) | 2013-08-19 |
Family
ID=49173405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012021404A Pending JP2013161196A (ja) | 2012-02-03 | 2012-02-03 | ウェブ(Web)ページ印刷システム、方法、及び、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2013161196A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9667831B2 (en) | 2014-11-13 | 2017-05-30 | Konica Minolta, Inc. | Information processing apparatus, printing method, and non-transitory computer-readable recording medium for generating print data corresponding to a display image |
US20230032207A1 (en) * | 2021-07-30 | 2023-02-02 | Canon Kabushiki Kaisha | Information processing apparatus, control method thereof, and storage medium |
-
2012
- 2012-02-03 JP JP2012021404A patent/JP2013161196A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9667831B2 (en) | 2014-11-13 | 2017-05-30 | Konica Minolta, Inc. | Information processing apparatus, printing method, and non-transitory computer-readable recording medium for generating print data corresponding to a display image |
US20230032207A1 (en) * | 2021-07-30 | 2023-02-02 | Canon Kabushiki Kaisha | Information processing apparatus, control method thereof, and storage medium |
US11836396B2 (en) * | 2021-07-30 | 2023-12-05 | Canon Kabushiki Kaisha | Information processing apparatus that converts an element that cannot be converted into print data by external apparatus control method thereof, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8531711B2 (en) | Print server, control method thereof, client terminal, printing system, and computer-readable medium | |
US20120236359A1 (en) | Information processing apparatus, control method for information processing apparatus, and storage medium | |
JP2017033143A (ja) | 画像形成装置、制御方法、およびプログラム | |
KR20140074826A (ko) | 화상 처리 장치와 그 제어 방법, 및 기억 매체 | |
US8621110B2 (en) | Image forming apparatus and control method therefor | |
JP2009064429A (ja) | Snmpを用いてドキュメント処理装置の構成をクローン化するシステムおよび方法 | |
JP6136703B2 (ja) | 情報処理プログラムおよび情報処理装置 | |
JP6079161B2 (ja) | 印刷処理装置、印刷処理方法、及び印刷処理プログラム | |
US20130201522A1 (en) | Network printer management system, network printer management apparatus, and method for controlling the same | |
JP4045800B2 (ja) | プリントシステム及び方法 | |
JP2008192133A (ja) | 区切りページ出力システムおよび方法。 | |
US9691010B2 (en) | Information processing apparatus, distributed printing system, and method of controlling printing | |
JP2013161196A (ja) | ウェブ(Web)ページ印刷システム、方法、及び、プログラム | |
JP2013042466A (ja) | 情報処理装置、情報処理方法およびプログラム | |
US9836255B2 (en) | Image forming apparatus, non-transitory computer-readable storage medium storing operation control program, and operation control method | |
JP7479867B2 (ja) | 印刷装置とその制御方法、及びプログラム | |
JP2015022682A (ja) | 印刷システム、方法、及びプログラム | |
JP5298725B2 (ja) | 画像処理装置、画像処理方法、画像処理システムおよびプログラム | |
US9813582B2 (en) | Printing system capable of printing in any one of plural image forming apparatuses over network, image forming apparatus, and printing method | |
JP6504958B2 (ja) | 通信装置、画像処理システム、制御方法、及び、プログラム | |
JP2016081336A (ja) | 印刷システム及び印刷制御プログラム | |
JP2017220723A (ja) | 印刷システム、印刷制御装置、画像形成装置、及びその制御方法とプログラム | |
JP5696744B2 (ja) | 画像処理装置、画像処理方法、画像処理システムおよびプログラム | |
US20120229849A1 (en) | Client apparatus and control method thereof | |
US20120268780A1 (en) | Information processing apparatus and image output system |