〔第1実施形態〕
図1は、本発明の第1実施形態を示す情報処理装置を適用可能なWebページ印刷システムの一例を示すシステム構成図である。
図1に示すように、Webページ印刷システムは、本発明の情報処理装置としての端末102と、プリンタ103と、サーバ101とが通信媒体を介して通信可能に構成される。なお、端末102は、パーソナルコンピュータ,ワークステーション等のコンピュータで構成される。
図2は、図1に示した端末102のハードウェア構成の一例を示すブロック図である。
図2において、201はCPUであり、ROM209又はデータ記憶部203(例えば、ハードディスク)からRAM202に読み出したプログラムを実行して端末102を統括制御する。なお、データ記憶部203は、後述するフローチャートに対応するプログラムを格納している。
205は出力装置であり、CPU201の制御により各種表示を行う。204は入力装置で、キーボードやポインティングデバイス(本実施形態では、マウス)等の各種入力装置に対応する。
206は通信インタフェースであり、通信ネットワーク207を介してインターネットやイントラネット等への接続を制御する。
なお、端末102は、通信ネットワーク207を介して、図1に示したサーバ101又はインターネットやイントラネットへ接続して図示しないサーバからWEBサイトの情報(HTMLデータ等)を取得して出力装置205に表示するクライアントとして機能可能である。
また、端末102は、通信ネットワーク207を介してプリンタ103に印刷データを送信して、印刷出力することが可能である。
図3は、図1に示した端末102のソフトウェア構成の一例を示すソフトウェア構成図である。
図3において、301はソース取得部であり、図1に示したサーバ101又はインターネットやイントラネット上の図示しないサーバからWEBページのソースを取得してソース記憶部302に記憶させるソース取得処理を実行する。
304はレイアウト生成部であり、ソース記憶部302に記憶されるソースに対して、階層化したタグ情報から表示用レイアウトを生成するレイアウト生成処理を実行する。
303はレイアウト変更部であり、変更操作されたレイアウトに合わせて階層化したタグ情報の構造を変更するレイアウト変更処理を実行する。
306はチェック要素まとめ部であり、表示情報へのチェックの有無を判断して必要要素をまとめるチェック要素まとめ処理を実行する。
307は印刷制御部であり、印刷設定を考慮した構成にまとめた要素を変換して印刷データをプリンタ103に送信する印刷処理を実行する。
305は画面設定変更部であり、印刷時の設定(印刷設定)を変更する設定変更処理を実行する。
なお、上記301,303,304〜307に示す各機能部は、図2に示した端末102のCPU201がデータ記憶部203に格納されるプログラムをRAM202上にロードして実行することにより実現される。
また、ソース記憶部302は、RAM202又はデータ記憶部203上に実現される。
以下、図4〜図25を参照して、本発明のWebページ印刷処理動作について説明する。
図4は、本発明における第1の制御処理手順の一例を示すフローチャートであり、本発明のWebページ印刷処理動作に対応する。なお、このフローチャートの処理は、図3に示した端末102の各機能部等により実行される。即ち、このフローチャートの処理は、図2に示した端末102のCPU201がデータ記憶部203に記憶されるプログラムをRAM202にロードして実行することにより実現される。なお、図中、Step401〜Step418は各ステップを示す。
まず、端末102のCPU201が処理を開始すると、Step401において、ソース取得部301は、サーバよりソース(図5)を取得して(画像ファイル等の要素内容も取得)、ソース記憶部302に格納する。
図5は、本発明の情報処理装置で扱うソースの一例を示す模式図である。なお、ソースは構造化言語(例えば、XML,HTML等)で記述された階層化された要素(例えば、タグデータ)で構成されるものであれば、どのようなデータ形式であってもよい。
次に、Step402において、レイアウト変更部303は、階層化したタグ情報から表示用レイアウトを生成する(レイアウト生成処理)。ここで、図6のフローチャートを参照して、Step403のレイアウト生成処理について説明する。
図6は、本発明における第2の制御処理手順の一例を示すフローチャートであり、図4のStep403のレイアウト生成処理に対応する。なお、このフローチャートの処理は、図3に示した端末102のレイアウト生成部304により実行される。即ち、このフローチャートの処理は、図2に示した端末102のCPU201がデータ記憶部203に記憶されるプログラムをRAM202にロードして実行することにより実現される。なお、図中、Step601〜Step614は各ステップを示す。
まず、Step601において、レイアウト生成部304は、レイアウト生成部304に記憶されるソースから一行読み込み、該読み込んだ行に'<'があるか否かを判定し、'<'がないと判定した場合には、Step601に処理を戻し、次の一行を読み込む。
一方、Step602において、Step601で読み込んだ行に'<'があると判定した場合には、レイアウト生成部304は、Step603に処理を進める。
Step603では、レイアウト生成部304は、Step601で読み込んだ行において'<'と'>'で囲まれた文字列を要素名として、RAM202内のスタック(図7)に格納(保存)し、Step604において、上記要素名と要素内容をソース記憶部302内に生成されるソースファイルに保存する。
図7は、図6に示すレイアウト生成処理におけるスタックの推移例を示す模式図である。
次に、Step605において、レイアウト生成部304は、レイアウト生成部304に記憶されるソースから次の一行読み込みを行い、Step606において、読み込む行がない(最後)かどうか判定し、一行読み込めた(最後でない)と判断した場合には、Step608に処理を進める。
Step608では、レイアウト生成部304は、Step605で読み込んだ行に'<'が有るか否かを判定し、'<'がないと判定した場合には、Step605に処理を戻し、次の一行を読み込む。
一方、Step608で、Step605で読み込んだ行に'<'があると判定した場合には、レイアウト生成部304は、Step609に処理を進める。
Step609では、レイアウト生成部304は、Step605で読み込んだデータにおいて要素名('<'と'>'(又は'</'と'>')で囲まれた文字列)と要素内容を取得する。
次に、Step610において、レイアウト生成部304は、Step609で取得した要素名がスタックの最上位と同じでないか否かを判定し、同じでないと判定した場合には、Step611において、スタックの最上位の子要素として、Step609で取得した要素名とその要素内容をソースファイルに追加保存する。
次に、Step612において、レイアウト生成部304は、Step609で取得した要素名をスタックに格納し、Step605へ処理を戻し、次の一行を読み込む。
一方、Step610において、Step609で取得した要素名がスタックの最上位と同じであると判定した場合には、レイアウト生成部304は、Step613において、スタックの最上位の要素の終了タグとして、Step609で取得した要素名とその要素をソースファイルに追加保存する。
次に、Step614において、スタックの最上位を削除し、Step605へ処理を戻し、次の一行を読み込む。
以上、Step605〜Step614の処理を、ソールに読み込む行がなくなるまで繰り返すと、ソース記憶部302内のソースファイルには図8に示すようなデータが保存される。
図8は、本発明におけるソースファイルの一例を示す模式図である。
そして、Step606において、読み込む行がない(最後)と判断した場合には、レイアウト生成部304は、Step607に処理を進める。
Step607では、レイアウト生成部304は、ソールファイルに保存した要素名を表示したレイアウト生成画面(図9)を出力装置205に表示し、本フローチャートの処理を終了する。
図9は、本発明におけるレイアウト生成画面の一例を示す模式図である。
図9において、1601はチェックボックスであり、表示される要素名毎に設けられ、入力装置204によりチェック操作可能である。
1602は設定ボタンであり、設定変更を行う場合に入力装置204により押下指示する。1603はプレビューボタンであり、プレビューを行う場合に入力装置204により押下指示する。1604は印刷ボタンであり、印刷を行う場合に入力装置204により押下指示する。
以下、図4のフローチャートの説明に戻る。
次に、Step403において、CPU201は、RAM202上に記憶されるプレビューフラグ(以下、Pf)を「False」に設定する。なお、Pfは、後述するチェック要素まとめ処理(Step407,Step410)を連続して行われることを防ぐ為のフラグである。
次に、Step404において、CPU201は、チェック検知(チェックボックスへのチェック操作の検知)があったか否かを判定し、チェック検知があるまでStep404の処理を繰り返す。
そして、Step404で、チェック検知があったと判定した場合には、CPU201は、Step405に処理を進める。
Step405では、CPU201は、印刷ボタン押下検知(印刷ボタン1604の押下操作の検知)があったか否かを判定し、印刷ボタン押下検知があったと判定した場合には、Step406に処理を進める。
Step406では、CPU201は、Pfの状態を判定し、Pfが「True」と判断した場合には、Step408へ処理を進める。
一方、Step406で、Pfが「False」と判断した場合には、CPU201は、Step407へ処理を進める。
Step407では、チェック要素まとめ部306が、表示情報へのチェックの有無を判断して必要要素をまとめ(チェック要素まとめ処理)、Step408へ処理を進める。
次に、Step408では、印刷制御部307が、印刷設定を考慮した構成にまとめた要素を変換して、プリンタに送信する(印刷処理)。その後、本フローチャートの処理を終了する。
一方、Step405において、印刷ボタン押下検知がなかったと判定した場合には、CPU201は、Step409に処理を進める。
Step409では、CPU201は、プレビューボタン押下検知(プレビューボタン1603の押下操作の検知)があったか否かを判定し、プレビューボタン押下検知があったと判定した場合には、Step410に処理を進める。
Step410では、チェック要素まとめ部306が、チェック要素まとめ処理(Step407と同一)を実行し、Step411へ処理を進める。
Step411では、CPU201は、印刷設定を考慮した構成にまとめた要素を変換して表示する(プレビュー処理)。
次に、Step412において、CPU201は、Pfを「True」とし、Step404に処理を戻す。
一方、Step409において、プレビューボタン押下検知がなかったと判定した場合には、CPU201は、Step413に処理を進める。
Step413では、CPU201は、レイアウト変更検知(マウス等により要素を移動させる操作の検知)があったか否かを判定し、レイアウト変更検知があったと判定した場合には、Step414に処理を進める。
Step414では、レイアウト生成部304が、変更したレイアウトに合わせて前記階層化したタグ情報の構造を変更する(レイアウト変更処理)。
次に、Step415において、CPU201は、Pfを「False」とし、Step404に処理を戻す。
一方、Step413において、レイアウト変更操作検知がなかったと判定した場合には、Step416に処理を進める。
Step416では、CPU201は、設定変更検知(設定ボタン1602の押下操作の検知)があったか否かを判定し、設定変更検知があったと判定した場合には、Step417に処理を進める。
Step417では、画像設定変更部305が、印刷時の設定を変更する(設定変更処理)。
次に、Step415において、CPU201は、Pfを「False」とし、Step404に処理を戻す。
一方、Step416において、レイアウト変更ボタン押下検知がなかったと判定した場合には、CPU201は、そのままStep404に処理を戻す。
以下、図10のフローチャートを参照して、Step414のレイアウト変更処理について説明する。
図10は、本発明における第3の制御処理手順の一例を示すフローチャートであり、図4のStep414のレイアウト変更処理に対応する。なお、このフローチャートの処理は、図3に示した端末102のレイアウト変更部303により実行される。即ち、このフローチャートの処理は、図2に示した端末102のCPU201がデータ記憶部203に記憶されるプログラムをRAM202にロードして実行することにより実現される。なお、図中、Step701〜Step703は各ステップを示す。
まず、Step701において、レイアウト変更部303は、操作者が入力装置204(例えばマウス)を用いてクリックしたページ印刷画面上の要素を取得し、該取得した要素を、入力装置204の動きに合わせてページ印刷画面上で移動させる。
次に、Step702において、レイアウト変更部303は、Step701で取得した要素を、操作者が入力装置204(例えばマウス)のボタンをリリースしたポイント(移動先)に挿入するように制御する。
次に、Step703において、レイアウト変更部303は、Step701,Step702で変更された画面レイアウトに合わせて、ソールファイルを変更し、本フローチャートの処理を終了する。
なお、図11に示したページ印刷画面において、「メニュー」1802を「地図」1801の上に移動させる操作(レイアウト変更操作)が行われた場合、ページ印刷画面は、図12に示すようにレイアウト変更される。また、ソースファイルは、図8から図13のように変更される。
図11は、レイアウト変更前のページ印刷画面の一例を示す模式図である。
図12は、レイアウト変更後のページ印刷画面の一例を示す模式図である。
図13は、レイアウト変更後のソースファイルの一例を示す模式図である。
以下、図14のフローチャートを参照して、Step407,Step410のチェック要素まとめ処理について説明する。
図14は、本発明における第4の制御処理手順の一例を示すフローチャートであり、Step407,Step410のチェック要素まとめ処理に対応する。なお、このフローチャートの処理は、図3に示した端末102のチェック要素まとめ部306により実行される。即ち、このフローチャートの処理は、図2に示した端末102のCPU201がデータ記憶部203に記憶されるプログラムをRAM202にロードして実行することにより実現される。なお、図中、Step801,Step802は各ステップを示す。
まず、Step801において、チェック要素まとめ部306は、印刷用タグ作成処理(図15)を実行する。
次に、Step802において、チェック要素まとめ部306は、Step801の印刷用タグ作成処理(図15)で使用したRAM202内のスタックを解放し、本フローチャートの処理を終了する。
以下、図15のフローチャートを参照して、印刷用タグ作成処理について説明する。
図15は、本発明における第5の制御処理手順の一例を示すフローチャートであり、図14のStep801の印刷タグ作成処理に対応する。なお、このフローチャートの処理は、図3に示した端末102のチェック要素まとめ部306により実行される。即ち、このフローチャートの処理は、図2に示した端末102のCPU201がデータ記憶部203に記憶されるプログラムをRAM202にロードして実行することにより実現される。なお、図中、Step901〜Step910は各ステップを示す。
まず、Step901において、チェック要素まとめ部306は、ソースファイルから子どもの個数を取得する。
次に、Step902において、チェック要素まとめ部306は、子供の個数が「0」より大きいか否かを判定し、子供の個数が「0」より大きいと判断した場合には、Step903に処理を進める。
Step903では、チェック要素まとめ部306は、ソースファイルより子供を1つ取得し(以下、処理対象の子供と呼ぶ)、処理対象の子供に対応する要素のチェックボックスにチェックがあるか否かを判定する。
Step903では、処理対象の子供に対応する要素のチェックボックスにチェックがあると判断した場合には、Step904に処理を進める。
Step904では、チェック要素まとめ部306は、処理対象の子供の内容をデータ記憶部203内に作成された印刷ファイルに保存する。
次に、Step905において、チェック要素まとめ部306は、処理対象の子供の要素名をスタックにpushする。
次に、Step906において、チェック要素まとめ部306は、処理対象の子供を親として設定し、Step907において、印刷用タグ作成処理(自身)を再帰呼び出しする。そして、チェック要素まとめ部306は、Step907の印刷用タグ作成処理が終了すると、Step908に処理を進める。
一方、Step903において、処理対象の子供に対応する要素のチェックボックスにチェックがないと判断した場合には、チェック要素まとめ部306は、そのままStep908に処理を進める。
Step908では、チェック要素まとめ部306は、処理対象を次の子供に移し、Step909において、子供の個数をデクリメントし(Step909)、Step902に処理を戻す。
そして、Step902において、残りの子供の個数が「0」以下と判定した場合には、Step910において、チェック要素まとめ部306は、Step905でスタックにpushした子供の要素名をスタックからpopして、本フローチャートの処理を終了する。
図16は、チェック要素まとめされた印刷ファイルの一例を示す模式図である。
以下、図17のフローチャートを参照して、図4のStep408の印刷処理について説明する。
図17は、本発明における第6の制御処理手順の一例を示すフローチャートであり、図4のStep408の印刷処理に対応する。なお、このフローチャートの処理は、図3に示した端末102の印刷制御部307により実行される。即ち、このフローチャートの処理は、図2に示した端末102のCPU201がデータ記憶部203に記憶されるプログラムをRAM202にロードして実行することにより実現される。なお、図中、Step1001〜Step1021は各ステップを示す。
まず、Step1001において、印刷制御部307は、データ記憶部203に格納されている印刷設定を取得する。
次に、Step1002において、印刷制御部307は、データ記憶部203に格納されている印刷ファイルからデータを取得し、Step1003において、1行読み込む。
次に、Step1004において、印刷制御部307は、Step1003で読み込んだデータに'<'があるか否かを判定し、'<'がないと判定した場合には、Step1103に処理を戻し、次の行を読み込む。
一方、Step1004において、印刷制御部307は、Step1003で読み込んだデータに'<'があると判定した場合には、Step1005に処理を進める。
Step1005において、印刷制御部307は、RAM202内に作成される印刷ページに要素内容を追加し、Step1006において、RMA202内に確保されるスタックに要素名を保存する。
次に、Step1007において、印刷制御部307は、データの次の1行を読み込み、Step1008において、Step1007で読み込んだ行がデータの最後の行か否かを判定し、最後の行でないと判定した場合には、Step110に処理を進める。
Step1010では、印刷制御部307は、Step1007で読み込んだ行に'<'があるか否かを判定し、'<'がないと判定した場合には、Step1007に処理を戻し、次の行を読み込む。
一方、Step1010において、印刷制御部307は、Step1007で読み込んだデータに'<'があると判定した場合には(Step1011でY)、Step1011に処理を進める。
Step1011では、印刷制御部307は、要素名と要素内容を取得し、Step1012に処理を進める。
Step1012では、印刷制御部307は、スタックが空でないか否かを判定し、空であると判定した場合には(Step1012でN)、Step1013において、次ページに移行させ、Step1014に処理を進める。
一方、Step1012において、スタックが空でないと判定した場合には(Step1012でY)、印刷制御部307は、Step1014に処理を進める。
次に、Step1014において、印刷制御部307は、Step1011で取得した要素名がスタックの最上位と同じでないか判定し、取得した要素名がスタックの最上位と同じでないと判定した場合には(Step1014でY)、Step1015に処理を進める。
Step1015では、印刷制御部307は、Step1011で取得した要素が画像でないか判定し、取得した要素が画像であると判定した場合には(Step1015でN)、Step1019において、画像印刷処理(詳細は後述する図25に示す)を実行し、Step1020に処理を進める。
一方、Step1015において、Step1011で取得した要素が画像でないと判定した場合には(Step1015でY)、Step1016に処理を進める。
Step1016では、印刷制御部307は、設定されているページ長を印刷ページと要素内容の合計が超えていないか判定し、設定されているページ長を印刷ページと要素内容の合計が超えていないと判定した場合(Step1016でY)には、Step1017において、印刷ページに要素内容を追加し、Step1020に処理を進める。
一方、Step1016において、設定されているページ長を印刷ページと要素内容の合計が超えていると判定した場合(Step1016でN)には、Step1018において、次ページに要素内容を追加保存し、Step1020に処理を進める。
Step1020では、印刷制御部307は、取得した要素名をスタックに保存し、Step1007に処理を戻し、次の1行を読み込む。
また、Step1014において、Step1011で取得した要素名がスタックの最上位と同じであると判定した場合には(Step1014でN)、Step1021において、印刷制御部307は、スタックの最上位を削除し、Step1007に処理を戻し、次の1行を読み込む。
そして、Step1008において、Step1007で読み込んだ行がデータの最後の行であると判定した場合には、Step1009において、印刷制御部307は、RAM202内の印刷ページから印刷設定(後述する図23に示す片面or両面2602、画像の向き2603、1枚に印刷するページ数2604等)を考慮した印刷データを生成してプリンタ103に送信し、本フローチャートの処理を終了する。
図18,図19は、図10のStep1009において、プリンタに送信された印刷データに基づいて印刷された印刷物の一例を示す模式図である。
以下、図20を参照して、図4のStep411のプレビュー処理について説明する。
図20は、本発明における第7の制御処理手順の一例を示すフローチャートであり、図4のStep411のプレビュー処理に対応する。なお、このフローチャートの処理は、図3に示した端末102の印刷制御部307により実行される。即ち、このフローチャートの処理は、図2に示した端末102のCPU201がデータ記憶部203に記憶されるプログラムをRAM202にロードして実行することにより実現される。なお、図中、Step1101〜Step1121は各ステップを示す。
まず、Step1101において、印刷制御部307は、データ記憶部203に格納されている印刷設定を取得する。
次に、Step1102において、印刷制御部307は、データ記憶部203に格納されている印刷ファイルからデータを取得し、Step1003において、1行読み込む。
次に、Step1104において、印刷制御部307は、Step1103で読み込んだデータに'<'があるか否かを判定し、'<'がないと判定した場合には(Step1104でN)、Step1103に処理を戻し、次の行を読み込む。
一方、Step1104において、印刷制御部307は、Step1003で読み込んだデータに'<'があると判定した場合には(Step1104でY)、Step1105に処理を進める。
Step1105において、印刷制御部307は、RAM202内に作成されるタブに要素内容を追加し、Step1106において、スタックに要素名を保存する。
次に、Step1107において、印刷制御部307は、データの次の1行を読み込み、Step1108において、Step1107で読み込んだ行がデータの最後の行か否かを判定し、最後の行でないと判定した場合には(Step1108でN)、Step1110に処理を進める。
Step1110では、印刷制御部307は、Step1007で読み込んだ行に'<'があるか否かを判定し、'<'がないと判定した場合には(Step1110でN)、Step1107に処理を戻し、次の行を読み込む。
一方、Step1110において、印刷制御部307は、Step1007で読み込んだデータに'<'があると判定した場合には(Step1110でY)、Step1011に処理を進める。
Step1111では、印刷制御部307は、要素名と要素内容を取得し、Step1112に処理を進める。
Step1112では、印刷制御部307は、スタックが空でないか否かを判定し、空である(Step1112でN)と判定した場合には、Step1113において、次タブに移行させ、Step1114に処理を進める。
一方、Step1012において、スタックが空でないと判定した場合には(Step1112でY)、印刷制御部307は、Step1114に処理を進める。
次に、Step1114において、印刷制御部307は、Step1111で取得した要素名がスタックの最上位と同じでないか判定し、取得した要素名がスタックの最上位と同じでないと判定した場合には(Step1114でY)、Step1115に処理を進める。
Step1115では、印刷制御部307は、Step1111で取得した要素が画像でないか判定し、取得した要素が画像であると判定した場合には(Step1015でN)、Step1119において、画像印刷処理(詳細は後述する図25に示す)を実行し、Step1120に処理を進める。
一方、Step1115において、Step1111で取得した要素が画像でないと判定した場合には(Step1115でY)、Step1116に処理を進める。
Step1116では、印刷制御部307は、設定されているページ長を印刷ページと要素内容の合計が超えていないか判定し、設定されているページ長を印刷ページと要素内容の合計が超えていないと判定した場合(Step1116でY)には、Step1117において、タブに要素内容を追加し、Step1120に処理を進める。
一方、Step1116において、設定されているページ長を印刷ページと要素内容の合計が超えていると判定した場合(Step1116でN)には、Step1018において、次ページに要素内容を追加保存し、Step1120に処理を進める。
Step1120では、印刷制御部307は、取得した要素名をスタックに保存し、Step1107に処理を戻し、次の1行を読み込む。
また、Step1114において、Step1111で取得した要素名がスタックの最上位と同じであると判定した場合には(Step1114でN)、Step1121において、印刷制御部307は、スタックの最上位を削除し、Step1107に処理を戻し、次の1行を読み込む。
そして、Step1108において、Step1107で読み込んだ行がデータの最後の行であると判定した場合には、Step1109において、印刷制御部307は、RAM202内のタブから印刷設定(後述する図23に示す片面or両面2602、画像の向き2603、1枚に印刷するページ数2604等)を考慮したタブデータを生成して、タブ毎にディスプレイ(出力装置205)に表示し、本フローチャートの処理を終了する。
図21,図22は、図11のStep1109において、タブ毎に印刷データに基づいてディスプレイ(出力装置205)に表示されたプレビューの一例を示す模式図である。
以下、図4のStep417の設定変更処理について説明する。
まず、画像設定変更部305は、画像設定画面(図23)を出力装置205に表示し、入力装置204からの入力を受け付ける。
図23は、画像設定画面の一例を示す模式図である。
そして、画像設定画面のOKボタン2605の押下操作を検知すると、画像設定変更部305は、画像設定画面から印刷設定(画像設定2601、片面or両面2602、画像の向き2603、1枚に印刷するページ数2604)を取得し、画像設定変更処理(図24)を実行して、取得した印刷設定をデータ記憶部203に保存する。
以下、画像設定変更処理について図24のフローチャートを用いて説明する。
図24は、本発明における第8の制御処理手順の一例を示すフローチャートであり、画像設定変更処理に対応する。なお、このフローチャートの処理は、図3に示した端末102の画像設定変更部305により実行される。即ち、このフローチャートの処理は、図2に示した端末102のCPU201がデータ記憶部203に記憶されるプログラムをRAM202にロードして実行することにより実現される。なお、図中、Step1201〜Step1204は各ステップを示す。
まず、Step1201において、画像設定変更部305は、画像設定画面(図23)から取得された画像設定2601が「画像固定」に設定されているか、「画像縮小」に設定されているかを判定し、「画像固定」に設定されていると判定した場合には、Step1202において、印刷を「固定」に設定する(RAM202内に設定)。
一方、Step1201において、画像設定2601が「画像縮小」に設定されていると判定した場合には、Step1203において、画像設定変更部305は、印刷を「縮小」に設定する(RAM202内に設定)。
なお、図示しないが、画像設定変更部305は、片面or両面2602、画像の向き2603、1枚に印刷するページ数2604等の他の印刷設定についても、それぞれ画像設定画面で設定された値に設定する(RAM202内に設定)。
そして、Step1204において、RAM202内の印刷設定をデータ記憶部203に保存し、本フローチャートの処理を終了する。
以下、図25を参照して、図17のStep1019,図20のStep1119の画像印刷処理について説明する。
図25は、本発明における第9の制御処理手順の一例を示すフローチャートであり、図17のStep1019,図20のStep1119の画像印刷処理に対応する。なお、このフローチャートの処理は、図3に示した端末102の印刷制御部307により実行される。即ち、このフローチャートの処理は、図2に示した端末102のCPU201がデータ記憶部203に記憶されるプログラムをRAM202にロードして実行することにより実現される。なお、図中、Step1301〜Step1305は各ステップを示す。
まず、Step1301において、印刷制御部307は、画像が印刷ページに収まるか否かを判定し、収まると判定した場合には(Step1301でY)、Step1305において、印刷ページに要素内容を追加し、本フローチャートの処理を終了する。
一方、Step1301において、画像が印刷ページに収まらないと判定した場合には(Step1301でN)、Step1302において、印刷制御部307は、画像設定が「固定」であるか否かを判定する。
Step1302において、画像設定が「固定」であると判断した場合には、印刷制御部307は、Step1303において、次ページへ移行し、Step1305に処理を進める。
Step1302において、画像設定が「固定」でない(「縮小」である)と判断した場合には、印刷制御部307は、Step1304において、ページ内に収まるように画像を縮小し、Step1305に処理を進める。
そして、Step1305において、印刷制御部307は、印刷ページに要素内容を追加し、本フローチャートの処理を終了する。
なお、画像が印刷ページに収まるかどうかの判断基準は、現在の印刷ページの残りサイズと画像のサイズを比較することで行うものとする。
なお、図21に示したプレビュー例は、画像設定が「縮小」である場合に対応し、図22に示したプレビュー例は、画像設定が「固定」である場合に対応する。
なお、固定ボタン2401を入力装置204で押下操作すると、印刷制御部307は、現在選択されているタブの画像設定を「縮小」から「固定」に変更して再表示するように制御する。
また、縮小ボタン2402を入力装置204で押下操作すると、印刷制御部307は、現在選択されているタブの画像設定を「固定」から「縮小」に変更して再表示するように制御する。
以上説明したように、本実施形態によれば、端末102が適切な項目ごとに印刷レイアウトをまとめるため、印刷後に利用者の選別の手間を減らすことができる。
さらに、利用者は必要な項目を判断してチェックボックスにより選択することができるため、印刷ページ数を少なくすることができる。
また、レイアウト変更で、印刷項目の構成を変更することができ、利用者にとって印刷後のページを見やすく構成することができる。
さらに、印刷時に、設定されているページ長と印刷項目とを比較して、印刷項目がページ長を超える場合には、次ページに印刷されるので、印刷項目が複数のページにまたがることを防ぐことができる。
〔第2実施形態〕
上記第1実施形態では、図4のStep401のソース取得処理において、タグ要素名と要素内容(画像ファイル等)をサーバから取得する構成について説明したが、Step401のソース取得処理において、タグ要素名のみを取得するように構成してもよい。この構成の場合、印刷処理時及びプレビュー処理時にタグの要素内容をサーバから取得するように構成する。
〔第3実施形態〕
本実施形態では、図4のStep401のソース取得処理においては、タグ要素内容はサーバから取得しないように構成し、さらに、印刷処理時にタグの要素内容をサーバから取得するが、プレビュー処理時にタグの要素内容をサーバから取得しないように構成する。
図26は、本発明の第3実施形態におけるプレビュー表示の一例を示す模式図である。
本実施形態では、上述したように、プレビュー表示の際には、要素内容をサーバから取得していないため、図26の2701,2702に示すように画像(要素内容)は表示されない。
これにより、プレビュー処理を迅速に行うことが可能となる。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能であり、具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
以下、図27に示すメモリマップを参照して本発明に係る情報処理装置で読み取り可能なデータ処理プログラムの構成について説明する。
図27は、本発明に係る情報処理装置で読み取り可能な各種データ処理プログラムを格納する記録媒体(記憶媒体)のメモリマップを説明する図である。
なお、特に図示しないが、記録媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報,作成者等も記憶され、かつ、プログラム読み出し側のOS等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、インストールするプログラムやデータが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
本実施形態における図4,図6,図10,図14,図15,図17,図20,図24,図25に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、CD−ROMやフラッシュメモリやFD等の記録媒体により、あるいはネットワークを介して外部の記録媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
以上のように、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
プログラムコードを供給するための記録媒体としては、例えば、フレキシブルディスク,ハードディスク,光ディスク,光磁気ディスク,CD−ROM,CD−R,DVD−ROM,磁気テープ,不揮発性のメモリカード,ROM,EEPROM,シリコンディスク等を用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのソフトウェアによって表されるプログラムをネットワーク上のサーバ,データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。