以下、情報処理装置等の実施形態について図面を参照して説明する。なお、実施の形態において同じ符号を付した構成要素は同様の動作を行うので、再度の説明を省略する場合がある。
(実施の形態1)
図1は、本実施の形態における情報処理装置のブロック図である。
情報処理装置1は、レイアウト情報格納部101、削減指示受付部102、削除候補オブジェクト検出部103、削減ページ情報取得部104、出力部105、オブジェクト削除指示受付部106、およびオブジェクト削除部107を具備する。
レイアウト情報格納部101には、1以上のオブジェクトが配置された1以上のページを備えたレイアウト情報が格納され得る。オブジェクトとは、情報処理装置1がページ上に配置する情報の構成要素であり、例えば、文字列や、動画像や静止画像等の画像や3Dデータ等のデータである。画像のデータは、ビットマップデータであっても良いし、ベクターデータであっても良い。オブジェクトは、動的に表示内容等が変化するページ上に配置可能なアプリケーションソフトウェアのデータ等であっても良い。オブジェクトは、タグと関連づけられたデータにより構成されていてもよい。具体的には、オブジェクトは、タグと、タグの要素とにより構成されてもよいし、タグと、タグ内に設定されたリンク先を示す情報が示すデータにより構成されてもよい。オブジェクトは、通常、属性を有している。この属性は、どのような属性であっても良い。例えば、オブジェクトは予め指定された属性を有していても良い。この属性を示す情報は、オブジェクトに含まれていても良いし、オブジェクトと対応付けられて管理されていても良い。また、例えば、上述したようにオブジェクトがタグ付けられたデータである場合、オブジェクトに付けられたタグをオブジェクトの属性と考えても良い。また、オブジェクトに付けられたタグに対応付けられた属性を、オブジェクトの属性と考えても良い。例えば、あるオブジェクトに対して、オブジェクトの項目についての属性を示すタグとして、「<価格>」というタグが付けられている場合、このオブジェクトのタグをオブジェクトの属性としてもよい。また、このオブジェクトのタグである「価格」がこのオブジェクトの属性値となる。また、例えば、オブジェクトの属性は、データの構造や形式等についての属性であっても良い。また、データが示す内容に基づく属性であっても良い。また、データの用途等に基づく属性であっても良い。具体的には、文字列データ、画像データ、3Dデータ等のデータタイプについての属性であっても良い。また、JPEGやTIFF等のデータの形式等であっても良い。また、商品写真や、風景写真等の、撮影内容等のデータの内容についての属性であっても良い。また、40文字未満、41文字以上等の文字数やデータサイズについての属性であっても良い。また幅が300ピクセル未満、高さが500ピクセル未満、幅が10cm等の画像のサイズについて属性であっても良い。また、オブジェクトの一部をオブジェクトの内容に基づく属性と考えても良い。例えば、データの含まれる所定の文字列を属性と考えても良い。オブジェクトは、識別情報やオブジェクト自身の属性を示す情報等を有していても良いし、有していなくても良い。オブジェクトは、グループ化されていても良い。また、オブジェクトは階層化されていても良い。オブジェクト間のグループ関係については、グループ関係を管理する情報等を用いて管理される。1以上のオブジェクトは、汎用性が高いことから、XML(extensible markup language)を用いて記述されることが好ましい。
レイアウト情報とは、例えば、オブジェクトが配置された1以上のページを用いて構成される情報である。レイアウト情報を文書を示す情報である文書情報と考えても良い。レイアウト情報は、通常、オブジェクトと、オブジェクトが配置される位置の情報を含む。また、レイアウト情報は、通常、ページを示す情報を有している。オブジェクトが配置される位置の情報とは、例えば、オブジェクトの配置される領域を示す情報である。オブジェクトが配置される位置の情報は、オブジェクトの配置される位置を指定する1以上の座標情報と考えても良い。例えば、オブジェクトが配置される位置の情報は、オブジェクトの中心やオブジェクトの4隅の一つ以上の座標情報等である。ただし、オブジェクトの情報はレイアウト情報に含まれていなくてもよい。例えば、レイアウト情報内には、ページ上に配置されているオブジェクトの配置先を示す情報、例えばリンク先を示す情報が格納されており、オブジェクト自身の情報は別のファイル等で管理されていてもよい。このような場合、オブジェクトは図示しない記録媒体であるオブジェクト格納部等に格納される。オブジェクトは、フレームやボックスやレイアウト枠等と呼ばれるオブジェクトを配置するための配置領域に配置されていても良い。このような場合、オブジェクトが配置される位置は、オブジェクトが配置されている配置領域の位置と考えて良い。また、オブジェクトと、オブジェクトが配置される配置領域とは、図示しない管理情報等により対応付けて管理される。ただし、配置領域に配置せずに、直接ページ上にオブジェクトを配置するようにしても良い。レイアウト情報格納部101は、不揮発性の記録媒体でも、揮発性の記録媒体でも良い。
削減指示受付部102は、レイアウト情報のページを削減する指示である削減指示を受け付ける。削減指示は、例えば、レイアウト情報を用いて出力される文書のページ数を削減する指示と考えても良い。削減指示は、例えば、レイアウト情報に含まれる複数のページに対するページを削減する指示である。削減指示は命令等の情報と考えて良い。複数のページは、レイアウト情報を構成する全てのページであっても、レイアウト情報を構成する一部のページであっても良い。削減指示は、単にページを削減することを指示する指示であっても良いし、削減後の目標となるページ数を指定する情報である削減ページ指定情報を含んでも良い。なお、削減ページ指定情報は、結果的に削減後のページ数を指定することが可能な情報であればよく、ここでは、削減するページ数を指定する情報も含むものと考える。また、削減指示は削減の対象となる複数のページの範囲を指定する情報を含んでも良い。削減の対象とは、当該対象となるページのいずれかを対象としてページの削減処理が実行されることを意味する。また、削減候補を決定する際に用いられるオブジェクトの属性を指定する情報である削減属性指定情報を含んでも良い。削減属性指定情報はユーザが指定する属性を示す情報である。また、削減属性指定情報は、当該削減属性指定情報が指定する属性同士が、一致するか否かを判断する際の判断条件を指定する情報、例えば閾値や一致する範囲を指定する情報等を含んでも良い。削減指示の受付とは、例えば、入力手段からの受付や、他の機器等から送信される入力信号の受信や、記録媒体等からの情報の読み出し等である。削減指示の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。削減指示受付部102は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
削除候補オブジェクト検出部103は、削減指示受付部102が受け付けた削減指示に応じて、レイアウト情報の1以上のページに配置されたオブジェクトのうちの、削除すべき候補となる1以上のオブジェクトである削除候補オブジェクトを検出する。削除候補オブジェクト検出部103は、ページに配置されている静止画像、動画像、または3Dデータであるオブジェクトの中から、削除候補オブジェクトを検出する。
削除候補オブジェクト検出部103は、例えば、同一ページ内に、予め指定された属性が一致する複数のオブジェクトが配置されている場合に、当該一致する複数のオブジェクトの少なくとも一つである削除候補オブジェクトを検出する。また、ページに配置されたオブジェクトが例えば一以上のグループにグループ化されている場合、削除候補オブジェクト検出部103は、同一グループ内に含まれる、予め指定された属性が一致する複数のオブジェクトの少なくとも一つを、削除候補オブジェクトとして検出する。ここで述べる一致する複数のオブジェクトの少なくとも一つは、一致する複数のオブジェクトのうちの、一つのオブジェクトを残した他のオブジェクトであっても良い。ここで述べる判断の対象となる属性は、上述したようなオブジェクトの属性である。
予め指定された属性は、工場出荷時や初期設定等によりデフォルトで指定されている属性であっても良い。また、削減指示が指定する属性であっても良い。すなわち、削除候補オブジェクト検出部103は、レイアウト情報の1以上のページに配置されたオブジェクトのうちの、削減指示が指定する属性を有するオブジェクトの中から、1以上の削除候補オブジェクトを検出してもよい。削減指示が指定する属性とは、具体的には、削減指示に含まれる削減属性指定情報が指定する属性である。予め指定された属性は、1つであっても複数であっても良い。また、ここでは、「ファイル形式」や、「サイズ」等の属性そのものが予め指定されてもよいし、属性に加えて、「JPEG」や、「12cm」等の属性の値が指定されてもよい。例えば、予め指定された属性が「ファイル形式」である場合、後述するようにファイル形式同士が一致するオブジェクトか存在するか否かが判断されることとなる。また、予め指定された属性が「ファイル形式がJPEG」である場合、ファイル形式がともに「JPEG]であるオブジェクトが存在するか否かが判断されることとなる。
属性が一致とは、具体的には、属性の値が一致することである。つまり、予め指定された属性が一致とは、複数のオブジェクトの予め指定した属性の値が一致することである。ここで述べる一致とは、完全一致であってもよいし部分一致であってもよい。また、属性同士の類似度が一定以上である場合を一致としても良い。類似度は、例えば文字列間の文字の異なる割合や、サイズ等を示す数値間の値の差等である。複数の属性のうちの完全一致する属性の割合を類似度と考えてもよい。また、属性同士の値の差が所定の値より小さい場合に属性が一定であると考えても良い。また、複数のオブジェクトの予め指定された属性が、いずれも予め指定された同じグループに属する値である場合に属性が一致すると判断してもよい。また、ここでは、予め指定された一以上の属性が全て一致しているか否かを判断し、全ての属性が一致する場合に、属性が一致していると判断しても良い。また、予め指定された一以上の属性の少なくとも一つが一致している場合に、属性が一致していると判断しても良い。ここで述べる属性については、適宜属性の値と考えても良い。
削除候補オブジェクト検出部103が、ページに配置されているオブジェクトの予め指定された属性を、どのように検出するかは問わない。削除候補オブジェクト検出部103がオブジェクト自身の属性を判断して、属性の情報を取得しても良いし、オブジェクトが有するタグ等の属性を示す情報から、オブジェクトの属性を取得しても良い。
削除候補オブジェクト検出部103は、複数の削除候補オブジェクトや、複数の削除候補オブジェクトの組を検出しても良い。例えば、予め指定された属性を切り替えて削除候補オブジェクトの検出を行うことで、属性別に、複数の削除候補オブジェクトや、複数の削除候補オブジェクトの組を検出しても良い。
削除候補オブジェクト検出部103は、削除候補オブジェクトを削除した場合のページ数が、削減指示受付部102が受け付けた削減ページ指定情報が指定する削減後のページ数となる削除候補オブジェクトを検出するようにしても良い。具体的には、後述する削減ページ情報取得部104が取得した削減ページ数情報が示す削減後のページ数が、削減指示受付部102が受け付けた削減ページ指定情報が指定する削減後のページ数となる削除候補オブジェクトを検出する。例えば、削除候補オブジェクト検出部103が削除候補オブジェクトを新たに検出する毎に、既に当該削除候補オブジェクトと、既に検出済の削除候補オブジェクトとをレイアウト情報が示すページ上から削除する。そして、当該削除したオブジェクトが配置されている位置を他のオブジェクトで詰めた場合のページ数が、削減ページ指定情報が指定するページ数と一致した時点で削除候補オブジェクトの検出を終了しても良い。また、レイアウト情報が示す全てのページから予め削除候補オブジェクトを検出するようにし、その検出した削除候補オブジェクトについて、一以上のオブジェクトの組み合わせを決定し、各組み合わせに含まれる削除候補オブジェクトを削除した場合のページ数を示す情報を後述する削減ページ情報取得部104により、各組み合わせ毎にそれぞれ取得して、削減ページ情報取得部104が取得した削減後のページ数が、削減ページ指定情報が指定する削減後のページ数が指定するページ数と一致する場合の削除候補オブジェクトの組み合わせを、削除候補オブジェクト検出部103が、最終的な削除候補オブジェクトとして検出するようにしても良い。削除候補オブジェクト検出部103は、削除候補オブジェクトを削除した結果、レイアウト情報が示すページ数が、削減ページ指定情報が指定する削減後のページ数となれば、複数の削除候補オブジェクトや、複数の削除候補オブジェクトの組を検出しても良い。なお、後述する削減ページ数情報が、削減されるページ数を示す情報である場合、ここで述べる削減後のページ数は、現在のレイアウト情報を構成するページのページ数から、当該削減ページ数情報が指定する削減するページ数を減算したページ数となる。なお、予め、ユーザ等により指定されているページに配置されているオブジェクト等については削除候補オブジェクトの対象から除外できるようにしても良い。
削除候補オブジェクト検出部103は、通常、MPUやメモリ等から実現され得る。削除候補オブジェクト検出部103が検出した削除候補オブジェクト、もしくはこのオブジェクトを示す情報は、例えば、図示しない記憶媒体等に記憶される。削除候補オブジェクト検出部103の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
削減ページ情報取得部104は、削除候補オブジェクトを削除した場合において、削除候補オブジェクトが配置されていた領域を、削除されていないオブジェクトで詰めた場合のページ数に関する情報である削減ページ数情報を取得する。削減ページ情報取得部104は、オブジェクトを詰めることで発生する空白のページを削除した場合の削除ページ数情報を取得する。具体的には、削減ページ情報取得部104は、削除候補オブジェクト検出部103が検出した削除候補オブジェクトを削除したと仮定した場合のおける模擬的な削減ページ数情報を取得する。実際の削減対象オブジェクトの削除を行わなくて良い。削除候補オブジェクトが配置されていた領域を、削除されていないオブジェクトのうちのどのオブジェクトで、どのように詰めるかは問わない。例えば、予め指定した規則に従って削除したオブジェクトの位置を他のオブジェクトで詰めるようにしても良い。例えば、削除候補オブジェクトが配置されている領域に対して予め指定された方向、例えば、上下左右のいずれかに配置されていたオブジェクトを、削除候補オブジェクトが配置されていた領域上に移動させることで、オブジェクトの配置を詰めるようにしてもよい。また、予めオブジェクトに順番を付与しておき、削除候補オブジェクトが削除された場合、その削除候補オブジェクトに続く順番のオブジェクトで、削除されたオブジェクトが配置されていた領域を詰めるようにしても良い。ただし、オブジェクトを詰めた場合に、オブジェクトがページ内に収まらない場合、オブジェクトを詰めないようにしても良い。オブジェクトを詰める際には、他のオブジェクトとの間隔が所定の値に保たれるように移動させることが好ましい。また、削除候補オブジェクトの配置の変更に伴って、他のオブジェクトが移動した場合、当該他のオブジェクトが配置されていた領域を詰めるように、新たに他のオブジェクトを移動させる、つまりオブジェクトの順番に詰めていく。なおこの配置の変更においては、複数のページにわたって、オブジェクトの配置を詰めるようにする。例えば、2ページ目のオブジェクトが削除された場合に、3ページ目の先頭のオブジェクトが、2ページ目に移動するようにする。また、オブジェクトがグループ化されている場合、まず、1のグループ内において、削除候補オブジェクトが削除されると、この削除されたオブジェクトが配置されていた領域を詰めるように、同じグループ内の他のオブジェクトを移動させる。そして、同じグループに属するオブジェクト全体が配置されている領域が縮小された場合、この縮小されたことにより発生するオブジェクトが配置されていない領域を詰めるように、他のグループのオブジェクト全体の位置を順次移動させるようにしても良い。なお、オブジェクトが文字列のオブジェクトのように、オブジェクトが配置される領域の形状が変形されても、内容自体が変化しないオブジェクトである場合には、オブジェクトを詰める際に、オブジェクトの内容を保った状態でオブジェクトが配置される領域の形状を変形しても良い。なお、各オブジェクトが配置領域に配置されている場合、オブジェクトの削除とともに、配置領域の削除を行うようにしても良い。また、オブジェクトを詰める場合、各オブジェクトが配置されている配置領域の位置を移動させるようにしても良い。また、移動が不可であるオブジェクトについては、移動が不可であることを示す情報を付与するようにし、この情報が付与されている場合、オブジェクトの位置を変更しないようにしてもよい。削減ページ情報取得部104は、通常、MPUやメモリ等から実現され得る。削減ページ情報取得部104の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
出力部105は、削除候補オブジェクト検出部103が検出した削除候補オブジェクトに関する情報を出力する。削除候補オブジェクトに関する情報とは、具体的には、削除候補オブジェクトを示す情報である。削除候補オブジェクトを示す情報は、例えば、削除候補オブジェクトの識別情報等である。また、削除候補オブジェクトに関する情報は、削除候補オブジェクトを検出する際に用いた属性を示す情報であってもよい。例えば、「JPEGの画像が削除対象となるオブジェクトである」ことを示す情報等であっても良い。また、また、削除候補オブジェクト検出部103が検出した削除候補オブジェクトが、複数の削除候補オブジェクト、あるいは削除候補オブジェクトの複数の組である場合、これらを全て、出力してよい。また、削除候補オブジェクトに関する情報は、削除候補オブジェクト検出部103が検出した削除候補オブジェクトを削除した場合のページ数に関する情報を出力するようにしてもよい。ページ数に関する情報とは、削減されるページ数を示す情報や、削減後のページ数を示す情報である。出力部105は、このページ数に関する情報を、削除候補オブジェクトに関する情報と対応付けて出力しても良い。これにより、どのオブジェクトを削除すると、ページ数がどのように削減されるかをユーザが把握することが可能となる。この削除候補オブジェクトを削除した場合のページ数は、削減ページ情報取得部104により算出することが可能である。例えば、削除候補オブジェクトを指定する情報を削減ページ情報取得部104に与えた場合に、削減ページ情報取得部104が演算して出力する削減ページ数情報がこのページ数を示す情報である。ここで述べる出力とは、ディスプレイへの表示、プロジェクターを用いた投影、プリンタへの印字、音出力、外部の装置への送信、記録媒体への蓄積、他の処理装置や他のプログラム等への処理結果の引渡し等を含む概念である。出力部105は、ディスプレイやプリンタ等の出力デバイスを含むと考えても含まないと考えても良い。出力部105は、出力デバイスのドライバーソフトまたは、出力デバイスのドライバーソフトと出力デバイス等で実現され得る。
オブジェクト削除指示受付部106は、削除候補オブジェクト検出部103が検出した削除候補オブジェクトを削除する指示であるオブジェクト削除指示を受け付ける。例えば出力部105が出力した削除候補オブジェクトを参照して、ユーザがキーボードやマウス等を用いて入力する削除候補オブジェクトを削除する指示であるオブジェクト削除指示を受け付ける。オブジェクト削除指示は、削除候補オブジェクト検出部103が検出した削除候補オブジェクトが一つあるいは一組である場合等においては、単に削除を指示する情報を有するものであっても良い。また、削除候補オブジェクト検出部103が検出した削除候補オブジェクトが複数あるいは複数の組である場合等においては、削除候補オブジェクト検出部103が検出した削除候補オブジェクトの一つあるいは複数の組を指定する情報と、削除を指示する情報とを含む情報であることが好ましい。また、削除候補オブジェクトが複数検出された場合、その一部だけを削除する指示を受け付けても良い。ここで述べる受付とは、例えば、入力手段からの受付や、他の機器等から送信される入力信号の受信や、記録媒体等からの情報の読み出し等である。オブジェクト削除指示の入力手段は、テンキーやキーボードやマウスやメニュー画面によるもの等、何でも良い。オブジェクト削除指示受付部106は、テンキーやキーボード等の入力手段のデバイスドライバーや、メニュー画面の制御ソフトウェア等で実現され得る。
オブジェクト削除部107は、オブジェクト削除指示受付部106が受け付けたオブジェクト削除指示が指定する削除候補オブジェクトを、レイアウト情報格納部101に格納されているレイアウト情報から削除する。また、削除候補オブジェクトを削除するとともに、削除された削除候補オブジェクト以外のオブジェクトを、削除されたオブジェクトが配置されていた領域を詰めるように移動させる。また、削除候補オブジェクトの削除を行い、さらに削除された領域を削除されていない他のオブジェクトで詰めていくことで空白のページが発生した場合、当該空白のページを削除する。なお、オブジェクトが配置領域に配置されている場合、削除候補オブジェクトの削除とともに、配置領域の削除も行う。また、オブジェクトが配置領域に配置されている場合に、オブジェクトを詰める際には、各オブジェクトが配置されている配置領域の位置を移動させるようにする。ここでの削除は、オブジェクトの完全な削除でなくても良く、オブジェクトがページ上に配置されていない状態となるようにする処理であればよい。例えば、リンクされて配置されている削除候補オブジェクトについては、リンク情報を削除する処理等であっても良い。また、削除候補オブジェクトの一部だけを削除する指示をオブジェクト削除指示受付部106が受け付けた場合、オブジェクト削除部107は、その指示を受けたオブジェクトだけを削除しても良い。オブジェクト削除部107は、通常、MPUやメモリ等から実現され得る。オブジェクト削除部107の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
次に、情報処理装置の動作について図2のフローチャートを用いて説明する。
(ステップS200)削減指示受付部102は、ページ数の削減指示を受け付けたか否かを判断する。受け付けた場合、ステップS201に進み、受け付けていない場合、ステップS200に戻る。なお、ここでは、削減指示が、削減後のページ数を指定する情報を含む場合を例に挙げて説明する。
(ステップS201)削除候補オブジェクト検出部103は、カウンターkに1を代入する。
(ステップS202)削除候補オブジェクト検出部103は、レイアウト情報格納部101に格納されているページの削減対象となるレイアウト情報が示すページに配置されているk番目のオブジェクトが、既に削除候補オブジェクトとして検出されたオブジェクトであるか否かを判断する。例えば、削除候補オブジェクトが格納されている記録媒体等に、一致するオブジェクトが格納されているか否かを判断し、一致するものが格納されている場合、既に検出された削除候補オブジェクトであると判断し、格納されていない場合、既に検出された削除候補オブジェクトでないと判断する。既に検出された削除候補オブジェクトであると判断した場合、ステップS212に進み、既に検出された削除候補オブジェクトでないと判断した場合、ステップS203に進む。
(ステップS203)削除候補オブジェクト検出部103は、k番目のオブジェクトが有する予め指定された属性を有するか否かを判断する。この予め指定された属性は、ステップS201において受け付けた削減指示に含まれる削減属性指定情報等により指定される属性であっても良いし、図示しない記録媒体等に予め格納されている属性であっても良い。属性を有する場合、ステップS204に進み、有さない場合、ステップS212に進む。
(ステップS204)削除候補オブジェクト検出部103は、k番目のオブジェクトが有する予め指定された属性の値を取得する。
(ステップS205)削除候補オブジェクト検出部103は、カウンターmに0を代入する。
(ステップS206)削除候補オブジェクト検出部103は、カウンターmの値を1インクリメントする。
(ステップS207)削除候補オブジェクト検出部103は、k番目のオブジェクトが配置されているページと同じページ内に、m番目のオブジェクトが配置されているか否かを判断する。なお、過去にk番目のオブジェクトとして利用されたオブジェクトについては、m番目のオブジェクトとしては、カウントしないようにしてもよい。例えば、過去にk番目のオブジェクトとして利用されたオブジェクトについては、フラグの情報等を付加するようにし、このフラグが付いているオブジェクトは、同じページに配置されていてもm番目のオブジェクトとしてカウントしないようにすればよい。同一ページ内に存在する場合、ステップS208に進み、存在しない場合、ステップS212に進む。
(ステップS208)削除候補オブジェクト検出部103は、m番目のオブジェクトが、既に削除候補オブジェクトとして検出されたオブジェクトであるか否かを判断する。ただし、過去にk番目のオブジェクトとして利用されたオブジェクトは、m番目のオブジェクトとして用いないようにしてもよい。既に検出された削除候補オブジェクトであると判断した場合、ステップS206に戻り、既に検出された削除候補オブジェクトでないと判断した場合、ステップS209に進む。
(ステップS209)削除候補オブジェクト検出部103は、m番目のオブジェクトが有する予め指定された属性の値を取得する。この属性は、ステップS204において説明した属性を同じ属性である。
(ステップS210)削除候補オブジェクト検出部103は、ステップS204において取得したk番目のオブジェクトの属性の値と、ステップS209において取得したk番目のオブジェクトの属性の値とが一致するか否かを判断する。一致すると判断した場合、ステップS211に進み、一致しないと判断した場合、ステップS206に戻る。
(ステップS211)削除候補オブジェクト検出部103は、m場目のオブジェクトを削除候補オブジェクトとして検出し、m番目のオブジェクトを示す情報を、削除候補オブジェクトを示す情報として、図示しない記憶媒体等に蓄積する。ここで述べる蓄積は一時記憶と考えても良い。なお、m番目のオブジェクトを削除候補オブジェクトとして検出する代わりに、k番目のオブジェクトを削除候補オブジェクトとして検出し蓄積してもよい。そして、ステップS215に進む。
(ステップS212)削除候補オブジェクト検出部103は、カウンターkの値を1インクリメントする。
(ステップS213)削除候補オブジェクト検出部103は、k番目のオブジェクトが存在するか否かを判断する。存在する場合、ステップS202に戻り、存在しない場合、ステップS214に進む。
(ステップS214)出力部105は、ステップS201において受け付けた削減指示が指示するページ数にならないことを示す出力を行う。そして、処理を終了する。
(ステップS215)削減ページ情報取得部104は、既に蓄積された削除候補オブジェクトを削除した場合のページ数を取得する。
(ステップS216)削除候補オブジェクト検出部103は、ステップS215において削減ページ情報取得部104が取得したページ数が、ステップS201において受け付けた削減指示が指示するページ数であるか否かを判断する。指示するページ数である場合、ステップS217に進み、指示するページ数でない場合、ステップS206に戻る。
(ステップS217)出力部105は、削除候補オブジェクトに関する出力を行う。例えば、ステップS211において蓄積した削除候補オブジェクトを示す情報等を、削除指示が指示するページ数に削減するために、削除すべきオブジェクトを示す情報として表示する。
(ステップS218)オブジェクト削除指示受付部106は、削除候補オブジェクト検出部103が検出した削除候補オブジェクトについての削除指示を受け付けたか否かを判断する。受け付けた場合、ステップS219に進み、受け付けていない場合、ステップS220に進む。
(ステップS219)オブジェクト削除部107は、削除候補オブジェクト検出部103が検出した削除候補オブジェクトを、レイアウト情報格納部101に格納されているレイアウト情報が示すページ上から削除する。具体的には、ステップS214において図示しないメモリ等に蓄積された削除候補オブジェクトを示す情報を読み出し、当該読み出した情報が示すオブジェクトをレイアウト情報が示すページ上から削除する。そして、処理を終了する。
(ステップS220)出力部105は、削除候補オブジェクトに関する出力を終了するか否かを判断する。例えば、図示しない受付部等を介してユーザ等から終了する指示を受け付けた場合、終了することを判断する。出力を終了する場合、処理を終了し、終了しない場合、ステップS220に戻る。
なお、図2のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
なお、上記のフローチャートに示すような処理の代わりに、例えば以下のような処理を行うようにしても良い。
まず、レイアウト情報が示す各ページにs個のオブジェクトが配置されていたとすると、このs個(sは1以上の整数)のオブジェクトから、1からs個までのオブジェクトを取り出す場合の組み合わせを求める。そして、組み合わせの一つについて、当該組み合わせを構成する全てのオブジェクトが削除候補オブジェクトを検出する際の条件を満たしているか否かを判断する。この条件は、実質的に、上記のフローチャートにおいて行われる判断と同様の判断を行うための条件である。具体的には、1つの組み合わせに含まれる一のオブジェクトについて、s個のオブジェクトの中に、当該一のオブジェクトと同一ページ内に配置されているオブジェクトであって、予め指定された属性の値が当該一のオブジェクトと一致し、なおかつ当該一のオブジェクトと同じ組み合わせ内に含まれないオブジェクトが存在するか否かを判断する。この処理を1つの組み合わせの全てのオブジェクトについて繰り返す。そして、1つの組の全てのオブジェクトについて、このような条件を満たすオブジェクトが存在するという判断結果が得られた場合に、上述したステップS215と同様に、この組み合わせに含まれる全てのオブジェクトを削除した場合のページ数を取得し、このページ数が、ステップS216と同様に、削減指示が指示するページ数と一致するか否かを判断する。そして、削減指示が指示するページ数と一致した場合、このオブジェクトの組み合わせが、削除候補オブジェクトの組み合わせとなるため、この組み合わせに含まれる1以上のオブジェクトを示す情報を、削除候補オブジェクトの組の情報として蓄積する。そして、同様の処理を、上述した全ての組み合わせについて繰り返し行うことで、削除指示が指定するページ数となるよう削減することが可能な削除候補オブジェクトの組み合わせを得ることができる。そして、出力部105は、このようにして得られた削除候補オブジェクトの組み合わせを出力する。なお、1つの組み合わせに含まれる1以上のオブジェクトについて上記のような条件を満たすオブジェクトが存在しなかった場合や、一つの組み合わせに含まれる全てのオブジェクトを削除した場合のページ数が、削減指示が指示するページ数と一致しなかった場合には、その組み合わせを構成するオブジェクトは、削除候補オブジェクトの組み合わせでないと判断される。
このようにすることで、削除候補オブジェクトの組み合わせを複数ユーザに提示することができるため、ユーザが好ましいオブジェクトの削除の仕方を選択することが可能となる。
以下、本実施の形態における情報処理装置の具体的な動作について説明する。ここでは、説明を簡単にするための全ページ数が4ページであるレイアウト情報を例に挙げて説明する。また、このレイアウト情報は、商品についての説明を行う文書を示すレイアウト情報である。
図3は、レイアウト情報が示すページに配置されているオブジェクトを管理するオブジェクト管理表である。オブジェクト管理表は、「オブジェクトID」、「項目」、「ページ」、「左上座標」、「右下座標」、「データ」という属性を有している。「オブジェクトID」は、オブジェクトの識別情報である。「T01〜T12」は文字列のオブジェクト(以下文字列オブジェクトと称す)である。また、「P01〜P12」は画像のオブジェクト(以下画像オブジェクトと称す)である。「項目」は、オブジェクトの項目を示す属性であり、ここではオブジェクトが商品についてのどのような情報を示しているかを表す情報である。例えば、オブジェクトがXML形式のデータである場合、「項目」はオブジェクトに付けられたタグとしてもよい。この場合、オブジェクトのタグ同士が一致する場合、オブジェクトの属性が一致することとなる。「ページ」は、各オブジェクトが配置されているページを示す情報である。「左上座標」は、ページに配置されているオブジェクトの左上の座標、「右下座標」は、ページに配置されているオブジェクトの右下の座標である。なお、座標の値xL1〜xL12、yL1〜yL12、xR1〜xR12、yR1〜yR12は、予め指定された座標であるとする。「データ」は、オブジェクトを構成するデータである。
図4は、レイアウト情報格納部101に格納されているレイアウト情報が示すページの表示例を示す図である。各ページには、図3において示した複数の文字オブジェクトT01〜T12および画像オブジェクトP01〜P12が配置されている。なお、文字オブジェクトT01〜T12および画像オブジェクトP01〜P12は、図3の「オブジェクトID」が「T01」〜「T12」および「P01」〜「P12」であるオブジェクトに対応しているものとする。なお、文字オブジェクトについては、便宜上、オブジェクトの範囲を示すため、点線により枠線を示している。ただし、実際には枠線を表示する必要はない。
ここでは、予め、図3に示した「項目」という属性の値が一致するオブジェクトを削除候補オブジェクトに指定する情報が、図示しない記憶媒体等に蓄積されているものとする。
まず、ユーザが、キーボードやマウス等を操作して、図4に示したレイアウト情報のページ数を3ページに削減する指示を、情報処理装置1に与えたとする。削減指示受付部102は、ページ数を3ページに削減する削減指示を受け付ける。
次に、削除候補オブジェクト検出部103は、図3に示したオブジェクトのうちの1番目のオブジェクトが、予め指定されている「項目」という属性を有しているか否かを判断する。ここでは、1番目のオブジェクトである「オブジェクトID」が「T01」であるオブジェクトが、「項目」という属性を有しているため、この「項目」という属性「商品見出し」という属性値を取得する。
次に、削除候補オブジェクト検出部103は、まず、2番目のオブジェクトが、1番目のオブジェクトと同じページに配置されているか否かを判断する。ここではオブジェクト管理表の「ページ」属性の値が一致するため、同じページに配置されていると判断される。このため、2番目のオブジェクトの「項目」属性の値が、1番目のオブジェクトの「項目」属性の値「商品見出し」と一致するか否かを判断する。ここでは、属性の値を構成する文字列のうちの、数字を除く部分が一致する場合、属性が一致すると判断するものとする。2番目のオブジェクトの「項目」属性の値が、「主画像」であるため、ここでは一致しないと判断する。
このため、3番目以降のオブジェクトについても、2番目のオブジェクトと同様に、「項目」属性の値が1番目のオブジェクトと一致するか否かを判断する処理を行う。ここでは、6番目のオブジェクトについての、「項目」属性の値が1番目のオブジェクトと一致するか否かを判断する処理が終了した時点で「項目」属性の値が1番目のオブジェクトと一致するオブジェクトが検出されなかったとする。
ここでは、1番目のオブジェクトと同じページに配置されているオブジェクトは5つであり、1番目のオブジェクトと同じページに配置されている6つ目のオブジェクトは検出されないため、1番目のオブジェクトと「項目」属性が一致するオブジェクトを同じページ内で検出する処理を終了する。そして、2番目のオブジェクト以降のオブジェクトについても同様の処理を繰り返す。ここでは、2番目および3番目のオブジェクトについて上記と同様の処理を繰り返した結果、2番目および3番目のオブジェクトと「項目」属性の値が一致するオブジェクトが、同じページ内に存在しなかったとする。
つぎに、削除候補オブジェクト検出部103は、「オブジェクトID」が「P02」である4番目のオブジェクトについて、「項目」属性の値「説明画像1」を取得する。そして、この「項目」属性の値が一致するオブジェクトが、同じページに存在するか否かを、上記と同様に順番に判断していく。
ここで、「オブジェクトID」が「P03」である6番目のオブジェクトについては、「ページID」が「1」であるため、1番目のオブジェクトと同じページに配置されていると判断される。さらに、6番目のオブジェクトの「項目」属性の値が「説明画像2」であり、4番目のオブジェクトの「項目」属性が「説明画像1」であり、数字を除いた部分がともに「説明画像」であって一致することから、「項目」属性が一致すると判断される。このため、4番目のオブジェクトと6番目のオブジェクトとは、同一ページに配置されており、所定の属性である「項目」属性が一致すると判断されることから、削除候補オブジェクト検出部103は、6番目のオブジェクトを削除候補オブジェクトとして検出する。そして、検出した6番目のオブジェクトの「オブジェクトID」を図示しないメモリ等に蓄積する。
次に、削減ページ情報取得部104は、削除候補オブジェクト検出部103が検出した削除候補オブジェクトを全て削除した場合のページ数を算出する。例えば、ここでは、オブジェクトが削除された場合、削除されたオブジェクトの右側、左下側、下側の順番で、それぞれの位置に配置されたオブジェクトを、削除された領域を詰めるように、移動させるように予め指定されているものとする。
ここでは、「オブジェクトID」が「P03」である6番目のレコードのオブジェクトP03だけが削除候補オブジェクトとして検出されているとすると、削減ページ情報取得部104は画像オブジェクトP03を1ページから削除した場合のページを模擬的に構成し、ページ数をカウントする。
図5は、「オブジェクトID」が「P03」である6番目のレコードのオブジェクトP03を削除した場合にオブジェクトが移動する状態を模擬的に示す図である。図5において矢印で示すように、オブジェクトP03以降のオブジェクトの配置が、オブジェクトP03の位置を詰めるように変化する。また、オブジェクトP03を削除しただけでは、ページ数が削減指示が指定するページ数である3ページに達しないことが分かる。
このため、情報処理装置1は、同様の処理を各ページについて実行する。このような処理を繰り返した結果、削除候補オブジェクト検出部103により、「オブジェクトID」が「P03」、「P06」、「P09」、「P12」が、削除対象オブジェクトとして検出されたとする。
図6は、削除候補オブジェクト検出部103が検出し、図示しない記憶媒体等に蓄積した削除候補オブジェクトを管理する削除候補オブジェクト管理表である。削除候補オブジェクト管理表は、削除候補オブジェクトの「オブジェクトID」によって、削除候補オブジェクトを管理している。
次に、削減ページ情報取得部104は、図6に示した削除候補オブジェクト管理表で管理されている削除候補オブジェクトを全て削除した場合のページ数を上記と同様にカウントする。
図7は、「オブジェクトID」が「P03」、「P06」、「P09」、「P12」であるオブジェクトP03,P06,P09,P12を削除した場合のページの状態を模擬的に示す図である。図7に示すように、削除したオブジェクトの位置を、同一ページに存在する他のオブジェクトや、連続する他のページに存在するオブジェクトで詰めるようにしたことで、文書の4ページ目にはオブジェクトが1つも配置されていない状態となる。このため、削減ページ情報取得部104は、削除候補オブジェクトを削減したと仮定した場合のページ数が3ページであることを示す結果を出力する。
この結果によって、削除候補オブジェクト検出部103は、削除候補オブジェクトの検出を終了し、出力部105は、図6に示したような削除候補オブジェクト管理表に管理されている削除候補オブジェクトを示す情報、例えばオブジェクトIDや、削除の対象となったオブジェクトの属性値を示す「説明画像」という文字列等を、図示しないモニタ等に出力する。
図8は、出力部105による、削除候補オブジェクトを通知する出力例を示す図である。
ユーザが、例えばこの出力部105が出力している削除候補オブジェクトを削除する指示を、マウスやキーボード等を操作して入力すると、この削除指示を、オブジェクト削除指示受付部106が受け付け、オブジェクト削除部107が、削除候補オブジェクトをレイアウト情報のページ上から削除する。
以上、本実施の形態によれば、ページ数を削減するためにどのようなオブジェクトを削除したらよいかを、ユーザに提案することができる。このため、ページ削減のために、オブジェクトを手動で削除しながらページ数の調整を試行錯誤する処理が不要となり、ページ数を削減する処理の効率化および高速化を図ることができる。
例えば、同一のページに一致する所定の属性を有するオブジェクトが配置されていた場合、当該オブジェクトの少なくとも一方を削除することを、ユーザに提案することができる。特に、この所定の属性をオブジェクトに付けられたタグとした場合、同一ページに一致するタグが付けられたオブジェクトが配置されている場合、このオブジェクトの少なくとも一方を削除候補オブジェクトとして提案する情報を、ユーザに対して出力することができる。通常、同様の内容や同様の項目等に対して同じタグが付与されるため、このような処理により、同様の項目が他にも存在しているようなオブジェクトを削除候補として提案することが可能となる。
また、特に、ユーザが指定したページ数となるようにするために削除すべき削除候補オブジェクトを提案することができるため、ユーザは、文書のページ数を所定のページ数に削減するためには、どのページを削減すればよいか等を容易に知ることができる。
(実施の形態2)
本実施の形態の情報処理装置は、上記実施の形態1において説明した情報処理装置において、削除候補オブジェクト検出部103が検出した削除候補オブジェクトを削除した場合の出版に関する費用を算出し、出力するようにしたものである。
図9は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。
情報処理装置2は、レイアウト情報格納部101、削減指示受付部102、削除候補オブジェクト検出部103、削減ページ情報取得部104、オブジェクト削除指示受付部106、オブジェクト削除部107、費用算出部208、および出力部209を具備する。
レイアウト情報格納部101、削減指示受付部102、削除候補オブジェクト検出部103、削減ページ情報取得部104、オブジェクト削除指示受付部106、オブジェクト削除部107の構成については、上記実施の形態と同様であるのでここでは詳細な説明を省略する。
費用算出部208は、削除候補オブジェクト検出部103が検出した削除候補オブジェクトを削除した場合の、レイアウト情報の出版に関する費用を、削減ページ数情報を用いて算出する。具体的には、図示しない格納部等に予め格納されている、出版物のページ数と、出版に関する費用との関係を示す式等に、削減ページ数情報が示す削減ページ数の値を代入することで出版に関する費用を算出する。出版に関する費用は、出版に関する費用であればどのような費用であっても良い。例えば、印刷費用であっても良いし、最終的に製本された場合の費用であっても良い。また、算出する費用は1冊当たりの費用であっても良いし、全体の費用であっても良い。出版物のページ数と、出版に関する費用との関係を示す式は、例えば、印刷費用を、用紙代金と、削減ページ数情報が示すページ数に削減した後のページ数との積で示した式である。また、出版に関する費用は、ページを削減した場合に削減できるコストであっても良い。例えば、このような削減されるコストは、削減前のページ数から算出した印刷費用と、削減ページ数情報が示すページ数に削減した場合の印刷費用との差を示す式で表される。ここで述べるページ数は、印刷されるページが見開きページであるか否か等を設定する情報に応じて調整されるようにしても良い。例えば、見開きページについては、出版に関する費用を算出する際には、1ページを2ページとカウントするようにしても良い。また、これらの印刷費用を算出するや、削減できるコストを算出する式において、インク代等の印刷に必要となる費用を乗算、あるいは加算した式を、印刷費用や削減できるコストを算出する式として用いても良い。また、出版物のページ数と、出版に関する費用との関係を示す式は、出版に関する費用を、出版物の出版部数と、出版物のページ数との積で示した式であっても良い。この場合、出版部数の値は、図示しない受付部等を介してユーザから受け付けても良いし、図示しない記録媒体等に記憶されている予め指定されている値を読み出しても良い。また、その他の要素、例えば、印刷の基本料金や、ページサイズや、色数、インク代金等に関連するパラメータを含む式であっても良い。これらのパラメータの値は、図示しない受付部等を介してユーザから受け付けても良いし、図示しない記録媒体等に記憶されている予め指定されている値を読み出しても良い。また、出版に関する費用を算出する際に、ページサイズとページ数との関係が予め指定した関係になった場合に、算出する式やパラメータを変更しても良い。例えば、通常、印刷においては、大きな紙に、複数のページを割り付けて印刷するため、印刷するページ数と、印刷するページのサイズが、割付に最適な数となった時点で、費用算出に利用する式やパラメータ等を適宜変更するようにしても良い。例えば、A4サイズのページを8枚印刷する場合には、1枚の大きな紙に割り付けて印刷可能であるため、A4サイズのページを8枚印刷する際の専用として設けられた式を用いて費用を算出し、それ以外の場合には、1ページ当たりの料金をページ数にあわせて加算する式により費用を算出するようにしても良い。なお、削減指示受付部102が、削除候補オブジェクトの属性を指定する情報である削減属性指定情報を複数含むオブジェクト削除指示を受け付けた場合、削除候補オブジェクト検出部103が、各削減属性指定情報が指定する属性について、それぞれ、削除候補オブジェクトを検出するようにし、削減ページ情報取得部104が、各削減属性指定情報が指定する属性について、それぞれ、削減ページ数情報を取得するようにし、費用算出部208が、各削減属性指定情報が指定する属性について、それぞれ、費用を算出するようにしても良い。そして、後述する出力部209が、各削減属性指定情報が指定する属性別に、費用算出部208が算出した費用を出力するようにしてもよい。これにより、ユーザにより指定された属性について、オブジェクトを削除した場合の費用を算出することが可能となる。この結果、ユーザは、どの属性を削減の条件として利用した場合に、出版に必要な費用がどのようになるかを知ることができる。費用算出部208が費用を算出するタイミング等は問わない。例えば、削減ページ情報取得部104が削減ページ数情報を取得した場合に費用を算出しても良い。また、オブジェクト削除指示受付部106が削除指示を受け付けた場合に、費用を算出しても良い。なお、オブジェクト削除指示受付部106が一部の削除候補オブジェクトを削除する削除指示を受け付けた場合、この削除指示が指定するオブジェクトだけを削除した場合の出版に関する費用を算出しても良い。この場合、費用の算出前に、削減ページ情報取得部104は、削除指示が指定するオブジェクトだけを削減した場合の削減ページ数情報を取得するようにし、費用算出部208は、この削減ページ数情報を用いて費用を算出すればよい。
なお、上記においては、主として、出版が紙媒体等の物理媒体に対して行われる場合の費用について説明しているが、費用算出部208が算出する出版に関する費用は、出版が紙媒体等に対して行われる場合の費用に限るものではなく、出版が、WEBページや、ソフトウェア等で読み込んで表示可能な電子ファイルや、いわゆる電子ペーパーや電子ブック等の、電子媒体等に対して行われる場合の費用と考えても良い。なお、電子媒体等に出版する場合には、上記のような費用の算出の際に、上述したような紙代やインク代等の要素は考慮しないようにしてもよい。なお、電子媒体等への出版は、電子媒体等への印刷と考えてもよい。
費用算出部208は、通常、MPUやメモリ等から実現され得る。費用算出部208の処理手順は、通常、ソフトウェアで実現され、当該ソフトウェアはROM等の記録媒体に記録されている。但し、ハードウェア(専用回路)で実現しても良い。
出力部209は、費用算出部208が算出した費用を示す情報を出力する。具体的には、削除候補オブジェクトと対応付けて、当該削除候補オブジェクトが削除された場合に算出した費用を示す情報を出力する。費用を示す情報は例えば金額である。なお、出力部209のその他の構成及び処理については、上記実施の形態1と同様であるのでここでは説明を省略する。
次に、図10のフローチャートを用いて、情報処理装置2の動作について説明する。なお、図2と同一符号は、同一または相当する処理ステップを示している。
(ステップS1001)費用算出部208は、ステップS215において取得した削減ページ数情報を用いて、出版に関する費用の算出を行う。例えば削減ページ数情報が示す削減後のページ数を、予め用意されているパラメータ等とともに、予め指定した費用を算出する式に代入して、費用を算出する。
(ステップS1002)出力部209は、削除候補オブジェクトに関する出力、およびステップS1001において取得した出版に関する費用の出力を行う。例えば、ステップS211において蓄積した削除候補オブジェクトを示す情報等を、削除指示が指示するページ数に削減するために、削除すべきオブジェクトを示す情報として表示する。
なお、図10のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
なお、削除指示の受け付けに応じて、費用の算出を行う場合、図2に示したフローチャートにおいて、ステップS219の直前に、費用算出部208が、ステップS215において取得した削減ページ数情報を用いて、出版に関する費用の算出するステップと、出力部209が、費用算出部208が算出した費用の出力を行うステップと、再度削除を実行する指示を受け付けたか否かを判断するステップとを加え、再度削除を実行する指示を受け付けた場合にだけ、ステップS219に進み、受け付けなかった場合、処理を終了するようにしてもよい。再度削除を実行する指示を受け付けたか否かを判断する処理は、削除を実際に実行して良いかを確認する処理と考えて良い。
さらに、削除指示が、削除候補オブジェクトの一部の削除を指示する情報であった場合、費用算出部208が、出版に関する費用の算出するステップの直前に、削減ページ情報取得部104が削除指示により削除されたページだけを削除した場合の削減ページ数情報を取得する処理を行うようにしてもよい。
次に、本実施の形態の具体例について説明する。
まず、上記実施の形態の具体例と同様に、削除候補オブジェクト検出部103が削除候補オブジェクトを検出する処理を、削減ページ情報取得部104が取得した削減ページ数情報が、削減指示により指定されるページ数と一致するまで繰り返したとする。そして、削減ページ情報取得部104が取得した削減ページ数情報が、削減指示により指定されるページ数と一致した時点で、費用算出部208は出版に関する費用の算出を行う。具体的には、削減ページ情報取得部104が取得した削減ページ数情報と、レイアウト情報を用いて出版する書籍の出版部数を指定する情報とを用いて、以下のようにして、費用を算出する。なお、ここでは例として、出版が紙媒体に対する出版である場合を例に挙げて説明する。
例えば、1ページ当たりの印刷費用が、a円、発行部数がb部とする(ただし、a,bは正の整数であるとする)。この場合、削減ページ情報取得部104が取得した削減ページ数が示すページ数に削減した場合のページ数をtページとすると、出版に関する費用である印刷費用pの算出式は、
p=a×b×t
となる。
ここでは、削減ページ数情報が示すページ数、即ち削減指示が指定するページ数が、200ページ、予め指定されている1ページ当たりの印刷費用が10円/枚、予め指定されている発行部数が1000冊であったとすると、上記の式から算出される印刷費用は、2,000,000円となる。
そして、出力部209は、図11に示すように、削除候補オブジェクトに関する出力と、費用算出部208が算出した費用とをモニタ等に表示する。
なお、削減されない場合の印刷費用を上記と同様の式を用いて算出して、当該算出した削減前の印刷費用と、上記で算出した削減後の印刷費用との差分を、削減されるコストを示す値段として、表示するようにしても良い。
なお、上記具体例においては、出版が紙媒体に対して行われる場合の出版費用を算出する例について説明したが、本実施の形態においては、紙媒体以外に対して出版を行う場合の費用を算出するようにしても良い。例えば、電子媒体の一つであるWEBページに出版を行う場合の例について説明する。例えば、HTML等を用いて記述されたWEBページの1ページに対して、レイアウト情報を構成する1ページの情報を表示する場合の掲載料がQ円(Qは正の値)、削減ページ情報取得部104が取得した削減ページ数が示すページ数を削減した場合のページ数をtページとすると、出版費用Rの算出式は、
R=Q×t
となる。
従って、例えば、削減ページ数情報が示すページ数、即ち削減指示が指定するページ数が、10ページ、予め指定されているWEBページの1ページ当たりの出版費用が4万円/ページであったとすると、上記の式から算出される出版費用は、400,000円となる。そして、この算出した費用を上記と同様にモニタ等に出力するようにしてよい。
なお、削減されない場合の電子媒体への出版費用を上記と同様の式を用いて算出して、当該算出した削減前の出版費用と、上記で算出した削減後の出版費用との差分を、削減されるコストを示す値段として、表示するようにしても良い。また、出版した電子媒体に対する閲覧数に制限をかけることができる場合、予め指定された閲覧数に応じた料金を、上記の出版費用Rに乗算して得られた費用を出版費用としても良い。また、出版に関する費用の算出式は上記式以外の式であっても良いことは言うまでもない。
以上、本実施の形態によれば、削減指示に応じて検出された削減候補となるオブジェクトに関する情報と、当該削減候補となるオブジェクトを削除した場合の、出版に関する費用とを、ユーザに提示することができる。これにより、ユーザは、ページ数だけでなく、費用面からも、削減候補となるオブジェクトの削除が適切であるか否かを判断することが可能となり、より適切なページの削減が可能となる。
なお、本実施の形態における費用の算出を、レイアウト情報を印刷する指示を受け付けた場合に行うようにしてもよい。例えば、情報処理装置2に、更に、レイアウト情報を印刷する指示である印刷指示を受け付ける印刷指示受付部(図示せず)と、印刷指示に応じて、レイアウト情報を印刷する印刷部(図示せず)とを設け、費用算出部208の代わりに、現在のレイアウト情報のページ数を用いて印刷費用を算出する印刷費用算出部(図示せず)を設けるようにし、出力部209は、印刷指示受付部が印刷指示を受け付けた場合に、費用算出部が印刷費用を示す情報を出力するようにしても良い。なお、ここで述べる印刷は、紙媒体等の物理的な媒体への印刷に限るものではなく、電子的な印刷も含む概念である。
なお、上記各実施の形態において、各処理(各機能)は、単一の装置(システム)によって集中処理されることによって実現されてもよく、あるいは、複数の装置によって分散処理されることによって実現されてもよい。
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりする情報や、各構成要素が処理で用いるしきい値や数式、アドレス等の情報等は、上記説明で明記していない場合であっても、図示しない記録媒体において、一時的に、あるいは長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、あるいは、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、あるいは、図示しない読み出し部が行ってもよい。
また、上記各実施の形態では、情報処理装置がスタンドアロンである場合について説明したが、情報処理装置は、スタンドアロンの装置であってもよく、サーバ・クライアントシステムにおけるサーバ装置であってもよい。後者の場合には、出力部や受付部は、通信回線を介して入力を受け付けたり、画面を出力したりすることになる。
また、上記各実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、あるいは、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをCPU等のプログラム実行部が読み出して実行することによって、各構成要素が実現され得る。
なお、上記各実施の形態における情報処理装置を実現するソフトウェアは、以下のようなプログラムである。つまり、このプログラムは、コンピュータを、レイアウト情報格納部に格納された、1以上のオブジェクトが配置された1以上のページを備えたレイアウト情報の、ページを削減する指示である削減指示を受け付ける削減指示受付部と、前記削減指示に応じて、前記レイアウト情報の1以上のページに配置されたオブジェクトのうちの、削除すべき候補となる1以上のオブジェクトである削除候補オブジェクトを検出する削除候補オブジェクト検出部と、前記削除候補オブジェクト検出部が検出した削除候補オブジェクトに関する情報を出力する出力部として機能させるためのプログラムである。
なお、上記プログラムにおいて、上記プログラムが実現する機能には、ハードウェアでしか実現できない機能は含まれない。例えば、情報を取得する取得部や、情報を出力する出力部などにおけるモデムやインターフェースカードなどのハードウェアでしか実現できない機能は、上記プログラムが実現する機能には含まれない。
また、このプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、あるいは分散処理を行ってもよい。
図12は、上記プログラムを実行して、上記実施の形態による情報処理装置を実現するコンピュータの外観の一例を示す模式図である。上記実施の形態は、コンピュータハードウェア及びその上で実行されるコンピュータプログラムによって実現されうる。
図12において、コンピュータシステム900は、CD−ROM(Compact Disk Read Only Memory)ドライブ905、FD(Floppy(登録商標) Disk)ドライブ906を含むコンピュータ901と、キーボード902と、マウス903と、モニタ904とを備える。
図13は、コンピュータシステム900の内部構成を示す図である。図13において、コンピュータ901は、CD−ROMドライブ905、FDドライブ906に加えて、MPU(Micro Processing Unit)911と、ブートアッププログラム等のプログラムを記憶するためのROM912と、MPU911に接続され、アプリケーションプログラムの命令を一時的に記憶すると共に、一時記憶空間を提供するRAM(Random Access Memory)913と、アプリケーションプログラム、システムプログラム、及びデータを記憶するハードディスク914と、MPU911、ROM912等を相互に接続するバス915とを備える。なお、コンピュータ901は、LANへの接続を提供する図示しないネットワークカードを含んでいてもよい。
コンピュータシステム900に、上記実施の形態による情報処理装置の機能を実行させるプログラムは、CD−ROM921、またはFD922に記憶されて、CD−ROMドライブ905、またはFDドライブ906に挿入され、ハードディスク914に転送されてもよい。これに代えて、そのプログラムは、図示しないネットワークを介してコンピュータ901に送信され、ハードディスク914に記憶されてもよい。プログラムは実行の際にRAM913にロードされる。なお、プログラムは、CD−ROM921やFD922、またはネットワークから直接、ロードされてもよい。
プログラムは、コンピュータ901に、上記実施の形態による情報処理装置の機能を実行させるオペレーティングシステム(OS)、またはサードパーティプログラム等を必ずしも含んでいなくてもよい。プログラムは、制御された態様で適切な機能(モジュール)を呼び出し、所望の結果が得られるようにする命令の部分のみを含んでいてもよい。コンピュータシステム900がどのように動作するのかについては周知であり、詳細な説明は省略する。
本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。