(57)【要約】【課題】出力するファイルがオブジェクトを含み、前記オブジェクトに対してアニメーションが設定されている場合に、前記オブジェクトの遷移過程を踏まえて出力するようにファイルを変換する情報処理装置を提供すること。【解決手段】本発明は、アニメーションが設定されているオブジェクトを含むファイルを変換する情報処理装置であって、前記アニメーションにより遷移したオブジェクトの情報を計算する計算手段と、前記アニメーションにより遷移したオブジェクトの情報に基づいて、前記ファイルを変換する変換手段とを備えたことを特徴とする。【選択図】図５
2015001961.tif 000002
【特許請求の範囲】
【請求項１】
アニメーションが設定されているオブジェクトを含むファイルを変換する情報処理装置であって、
前記アニメーションにより遷移したオブジェクトの情報を計算する計算手段と、
前記アニメーションにより遷移したオブジェクトの情報に基づいて、前記ファイルを変換する変換手段と
を備えたことを特徴とする情報処理装置。
【請求項２】
前記ファイルを解析し、アニメーション情報を取得するファイル解析手段を更に備え、
前記計算手段は、前記アニメーション情報を用いて前記アニメーションにより遷移したオブジェクトの情報を計算することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記アニメーションにより遷移したオブジェクトの情報は、前記アニメーションによる状態遷移後のオブジェクトの位置、大きさ、外形、及び色を含むことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記変換手段は、前記アニメーションが設定されているオブジェクト毎の画像を生成することを特徴とする請求項１に記載の情報処理装置。
【請求項５】
前記計算手段は、前記アニメーションによる遷移前の状態と、前記アニメーションによる遷移後の状態との間の状態におけるオブジェクトの情報を計算し、
前記変換手段は、当該情報に基づいて、前記ファイルを変換することを特徴とする請求項１に記載の情報処理装置。
【請求項６】
アニメーションが設定されているオブジェクトを含むファイルを変換する情報処理方法であって、
前記アニメーションにより遷移したオブジェクトの情報を計算するステップと、
前記アニメーションにより遷移したオブジェクトの情報に基づいて、前記ファイルを変換するステップと
を備えたことを特徴とする情報処理方法。
【請求項７】
コンピュータを請求項１乃至５の何れか１項に記載の情報処理装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。具体的には、本発明は、アプリケーションデータの変換技術を適用した情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
マイクロソフト社のPowerPoint（登録商標）を初めとするプレゼンテーションアプリケーションでは、オブジェクトに対して、特定のエフェクト効果を付加することができる。例えば、アニメーション機能（以下「アニメーション」と略称する）によりオブジェクトをスライド上で動作させることで、より直感的なプレゼンテーションを実現することができる。
【０００３】
従来、情報処理装置や印刷装置において、このようなプレゼンテーションの資料をPDF(Portable Document Format)出力や紙出力する場合、アニメーションの情報を失った形で出力されてしまう。従って、出力結果からオブジェクトがアプリケーション上でどのような動作をしていたか判別できない。よって、一旦出力した画像からではユーザが情報を適切に読み取れないという課題があった。
【０００４】
この課題の例として、アニメーションの設定によりオブジェクトが重なって、出力後の画像からでは重なった下のオブジェクトの情報が読み取れない場合が想定される。この場合に対して、重なった下のオブジェクトの情報を読み取る為に、重なりあう複数のオブジェクトが上書きされる前後の状態を出力する技術が公開されている(特許文献１参照)。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開2009-65284号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来技術では以下の課題があった。
【０００７】
従来技術では、アニメーションによって上書きされるオブジェクトの前後の状態を出力するので、重なったオブジェクトに付加される情報を読み取ることはできるが、各オブジェクトのアプリケーション上での挙動（動き）まで読み取ることができなかった。
【０００８】
すなわち、従来技術では、アニメーションの設定によって、オブジェクトがどのタイミングで、どんなアニメーション(例えば、出現・消失・移動・拡縮等)をするのかといった、オブジェクトの状態遷移を読み取って反映することができなかった。例えば、これらの設定が付加されているオブジェクトについて、出現・消失オブジェクトは全て描画された状態で出力され、移動・拡縮オブジェクトは初期位置で元のサイズのまま出力されてしまうので、ユーザは出力物から適切な情報を得ることができなかった。
【課題を解決するための手段】
【０００９】
本発明は、アニメーションが設定されているオブジェクトを含むファイルを変換する情報処理装置であって、前記アニメーションにより遷移したオブジェクトの情報を計算する計算手段と、前記アニメーションにより遷移したオブジェクトの情報に基づいて、前記ファイルを変換する変換手段とを備えたことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、オブジェクトに対してアニメーションが設定されている場合であっても、そのオブジェクトの遷移過程を踏まえて出力することができるので、出力物からユーザは適切な情報を得ることができる。
【図面の簡単な説明】
【００１１】
【図１】実施例１に係るハードウェア構成図である。
【図２】実施例１に係るソフトウェアモジュール図である。
【図３】実施例１に係るファイルの内部構造を示す図である。
【図４】実施例１に係るページ内の各オブジェクトタグの内部構造を示す図である。
【図５】実施例１に係る情報処理装置が実行する処理のフローチャートである。
【図６】実施例１に係るアニメーションページ生成方法のフローチャートである。
【図７】実施例１に係る描画オブジェクトの除去方法のフローチャートである。
【図８】実施例１に係る描画オブジェクトの生成方法のフローチャートである。
【図９】実施例１に係る描画オブジェクトの追加方法のフローチャートである。
【図１０】図５のフローチャートを説明する為の具体例を示す図である。
【図１１】図６のフローチャートを説明する為の具体例を示す図である。
【図１２】実施例２による効果を示す図である。
【図１３】実施例２に係る情報処理装置が実行する処理のフローチャートである。
【図１４】実施例１に係るオブジェクト毎にＢＭＰ化された画像としてデータ転送する例を示す図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施形態について図面を用いて説明する。
【実施例１】
【００１３】
本実施例では、アニメーションが設定されているファイルに対して、情報処理装置がアニメーション毎のページを生成し、それらを印刷データ処理装置にて出力する例について述べる。
【００１４】
図１は、本発明の実施例１に係る情報処理装置100と、印刷データ処理装置110とのハードウェア構成の一例を示すブロック図である。
【００１５】
CPU101は、情報処理装置100のCentral Processing Unitである。後述する情報処理装置100のソフトウェア200はCPU101上で動作する。RAM102は、CPU101がアクセスできるRandom Access Memoryである。RAM102は後述する情報処理装置100のソフトウェア200の動作に必要なメモリの確保先として利用される。メモリ103は、出力対象となるアニメーション情報が含まれるファイルを格納する領域である。情報処理装置100又はネットワークIF104を介して接続されている他の情報処理装置（図示せず）で生成したファイルがメモリ103に格納される。当該ファイルの生成については、本発明の本質ではない為、詳細な説明は割愛する。尚、出力対象であるファイルを格納する領域としてのメモリ103は、RAM102のメモリサイズで許容されればRAM102で代替しても良く、ネットワークIF104を介して接続された外部メモリと代替しても良い。ネットワークIF104は、ネットワークを介して情報処理装置100を印刷データ処理装置110と接続してデータの送受信を行うインタフェースである。ROM105は、情報処理装置100のRead Only Memoryである。後述する情報処理装置のソフトウェア200のプログラムは、ROM105に格納されており、CPU101に読み込まれることで実行される。
【００１６】
CPU111は、印刷データ処理装置110のCentral Processing Unitである。後述する印刷データ処理装置110のソフトウェア210はこのCPU111上で動作する。RAM112は、CPU111がアクセスできるRandom Access Memoryである。RAM112は後述する印刷データ処理装置110のソフトウェア210の動作に必要なメモリの確保先として利用される。エンジン113は、情報処理装置100からネットワークIF114を介して受信しCPU111によって解釈された印刷用画像データを印刷用紙に印刷する印刷エンジンである。ネットワークIF114は、ネットワークを介して印刷データ処理装置110を情報処理装置100と接続してデータの送受信を行うインタフェースである。ROM115は、印刷データ処理装置110のRead Only Memoryである。後述する印刷データ処理装置110のソフトウェア210のプログラムは、ROM115に格納されており、CPU111に読み込まれることで実行される。尚、本実施例では、出力形式として印刷を前提としている為、システムのハードウェア構成として印刷データ処理装置110を明記しているが、本発明は紙以外の出力形式にも適用可能であることに留意されたい。その場合、印刷データ処理装置110は不要とすることができる。後述するソフトウェア210に関しても、同様の理由により、不要とすることができる。
【００１７】
図２は、本発明の実施例１に係る情報処理装置100と、印刷データ処理装置110とのソフトウェア構成の一例を示す図である。
【００１８】
情報処理装置100のソフトウェア200は、5つのソフトウェアモジュールで構成され、これらは全てCPU101上で動作する。管理部201は、情報処理装置100の全体処理を管理するモジュールである。ファイル解析部202は、メモリ103に格納されているファイルを解析し、アニメーション情報を取得するモジュールである。データ制御部203は、ファイル解析部202で取得したアニメーション情報を解釈し、アニメーションの効果に応じてデータを生成するモジュールである。データ変換部204は、データ制御部203で生成したファイルを出力に応じたデータ形式に変換するモジュールである。例えば、本実施例のように印刷データ処理装置110を用いて出力する場合、データ変換部204は、ファイルをPDLデータへと変換する。ネットワーク制御部205は、ネットワークの接続やデータの送受信を制御するモジュールであり、ネットワークIF104を通じてデータのやり取りを行う。
【００１９】
印刷データ処理装置110のソフトウェア210は、5つのソフトウェアモジュールで構成され、これらは全てCPU111上で動作する。管理部211は、印刷データ処理装置110の全体処理を管理するモジュールである。PDL解釈部212は、ネットワークIF114を介して受信したPDLデータを解釈するモジュールである。画像生成部213は、PDL解釈部212にて解釈した結果に基づき、出力画像を生成するモジュールである。エンジン制御部214は、エンジン113を制御するモジュールである。エンジン制御部214は、画像生成部213で生成した出力画像を用いて印刷する。ネットワーク制御部215は、ネットワークの接続やデータの送受信を制御するモジュールであり、ネットワークIF114を通じてデータのやり取りを行う。
【００２０】
図３は、メモリ103に格納されているファイル300の内部構造の一例を示す図である。ここでは、ファイル300はXML(Extensible Markup Language)で記述されているページ情報301によって構成されるものとしている。しかし、後述する必要な情報が取得できれば、ファイル300が他の言語で記述される場合でも本発明を適用できる。ページ情報301は、ファイル300の各ページに対応するページ情報である。
【００２１】
次に、ページ情報301内に記述される各タグについて説明する。
【００２２】
ページXMLタグ302は、ページ情報301の全体を包括するタグである。ページXMLタグ302で包括された情報は、アプリケーション上でのこのファイルの1ページに対応する。描画情報XMLタグ303は、ページ内の描画オブジェクトに関する情報を示すタグである。描画情報XMLタグ303は、ページ内に配置される描画オブジェクト数分、描画オブジェクトタグ304を持つ。描画オブジェクトタグ304は、ページ内の個々のオブジェクトに関する情報を示すタグである。アニメーション情報XMLタグ305は、ページ内のオブジェクトに付加されているアニメーション情報を示すタグである。アニメーション情報XMLタグ305は、アニメーションが設定されている数分、アニメーションオブジェクトタグ306を持つ。アニメーションオブジェクトタグ306は、アニメーションが付加されている個々のオブジェクトに関する情報を示すタグである。描画オブジェクトタグ304及びアニメーションオブジェクトタグ306については、図４を用いて詳述する。
【００２３】
図４は、描画オブジェクトタグ304と、アニメーションオブジェクトタグ306との内部構造の一例を示す図である。尚、ここでは説明を簡易化する為、描画オブジェクトタグ304が示す情報を描画オブジェクト、アニメーションオブジェクトタグ306が示す情報をアニメーション情報とする。
【００２４】
描画オブジェクトID401 は、描画オブジェクトを識別する為の固有IDである。描画オブジェクトは、描画オブジェクトID401によって識別される。後述するが、描画オブジェクトと、アニメーション情報とは、描画オブジェクトID401を用いて紐付けられる。位置情報402は、描画オブジェクトの位置座標である。尚、本明細書ではこれ以降、座標系の原点をページ左隅とするデバイス座標系に基づいて座標の説明を行うが、他の座標系に本発明を適用しても得られる効果に変わりはない。パス情報403は、描画オブジェクトの外形を示す情報である。例えば、後述する描画オブジェクト種類404が円であれば半径を表し、長方形であれば幅及び高さを表す等、描画オブジェクト種類404に対応付けられた値を持つ。描画オブジェクト種類404は、例えば、円、長方形、直線等といった、描画オブジェクトの種類である。色情報405は、描画オブジェクトに塗られている色情報である。描画グループID406は、描画オブジェクトがグループ指定されている場合のグループの固有IDである。複数の描画オブジェクトを1つのグループとして扱うことができ、同一のグループとなった描画オブジェクトにはそれぞれ、共通の描画グループIDが割り当てられる。
【００２５】
アニメーションID411は、描画オブジェクトに付加されるアニメーション情報を識別する為の固有IDである。対象描画オブジェクトID412は、アニメーション情報が付加されている描画オブジェクトを示す情報である。対象描画オブジェクトID412には、アニメーション情報が付加されている描画オブジェクトの描画オブジェクトID401が設定される。アニメーショングループID413は、アニメーション情報がグループ指定されている場合のグループの固有IDである。アニメーション情報は、描画オブジェクトと同様、グループ化することができ、同一グループに属するアニメーション情報にはそれぞれ、共通のアニメーショングループIDが割り当てられる。アニメーション効果414は、アニメーション情報の効果を示す情報である。例えば、アニメーションが移動アニメーションの場合、アニメーション効果には、オブジェクトが遷移する遷移量の情報が含まれる。
【００２６】
図５は、実施例１に係る情報処理装置100のソフトウェア200による処理の一例を示すフローチャートである。尚、図５に示す処理は、ROM105に記憶されたプログラムをCPU101が実行することによって実現される。尚、以下の説明では、説明を簡易化する為に、ファイル内にアニメーションが設定されているページが1ページのみであるファイルについて説明する。このファイルの例を図１０に示す。
【００２７】
ファイル1001は、アニメーションが設定されているページA1011を含む。ページA1011内には、4つの描画オブジェクトが存在する。描画オブジェクト2にアニメーションオブジェクト1が設定され、描画オブジェクト3にアニメーションオブジェクト2が設定され、描画オブジェクト4にアニメーションオブジェクト3が設定されている。アニメーションオブジェクト1は出現アニメーションが設定され、アニメーションオブジェクト2は消失アニメーションが設定され、アニメーションオブジェクト3は移動アニメーションが設定されている。画像1030は、ページA1011を通常出力した結果の画像である。尚、描画オブジェクト1031は描画オブジェクト1に対応し、描画オブジェクト1032は描画オブジェクト2に対応し、描画オブジェクト1033は描画オブジェクト3に対応し、描画オブジェクト1034は描画オブジェクト4に対応している。メモリ領域1021は、メモリ103やRAM102内のメモリ領域であり、アニメーションオブジェクトの情報と、それに紐付けされた対象描画オブジェクトの情報とが格納される。
【００２８】
ページB1012は、データ制御部203がページA1011のうちのアニメーション情報に従って新たに生成したページ情報である。メモリ領域1022は、データ制御部203が新たにページ生成した後のメモリ領域の状態であり、メモリ領域1021の後の状態である。ファイル1002は、ページB1012がファイル1001に追加された後のファイルの状態である。画像1040は、ページB1012を通常出力した結果の画像である。
【００２９】
同様に、ページC1013は、データ制御部203がページB1012のうちのアニメーション情報に従って新たに生成したページ情報である。メモリ領域1023は、データ制御部203が新たにページ生成した後のメモリ領域の状態であり、メモリ領域1022の後の状態である。ファイル1003は、ページC1013がファイル1002に追加された後のファイルの状態である。画像1050は、ページC1013を通常出力した結果の画像である。
【００３０】
尚、以降のファイル1004、ファイル1005、ページD1014、ページE1015、メモリ領域1024、メモリ領域1025、画像1060、画像1070についても、上記と同様である。ページ情報の生成の詳細については、図５、図６を用いて後述する。
【００３１】
ステップS501において、管理部201は、メモリ103からファイルを取得する。次いで、ステップS502に進む。
【００３２】
ステップS502において、ファイル解析部202は、取得したファイルを解析し、アニメーション情報が設定されているか否か判定する。尚、この判定においては、ファイル内のいずれかのページにアニメーション情報XMLタグ305が存在するか否かで判定することができる。図１０の例では、ファイル1001に含まれるページA1011内にアニメーション情報XMLタグが存在する為、ファイル1001はアニメーション情報が設定されていると判定される。ステップS502にてアニメーションが設定されていると判定された場合はステップS503へ、設定されていないと判定された場合はステップS508へ進む。尚、図１０の例ではアニメーションが設定されているページは1ページのみだが、アニメーションが設定されていると判定されたページが複数あった場合、後述するステップS503からステップS507の処理をそのページの数だけ繰り返す。
【００３３】
ステップS503において、ファイル解析部202は、各ページ情報301から全てのアニメーションオブジェクトタグ306を探索し、アニメーション効果414を取得する。次いで、ステップS504に進む。
【００３４】
ステップS504において、ファイル解析部202は、ステップS503の結果に基づいて、アニメーション効果として出現アニメーションが設定されているアニメーションオブジェクトタグ306があるか否かを判定する。図１０の例では、ページA1011における“アニメーションオブジェクト1”の情報から、“描画オブジェクト2”に出現アニメーションが設定されていることが判定される。判定の結果、出現アニメーションが設定されているアニメーションオブジェクトタグ306が存在した場合はステップS505へ、出現アニメーションが設定されているアニメーションオブジェクトタグ306が存在しない場合はステップS506へ進む。
【００３５】
ステップS505において、データ制御部203は、描画情報XMLタグ303からステップS504で判定されたアニメーションオブジェクトタグ306に紐付けられた描画オブジェクトタグ304を除去する。次いで、ステップS506に進む。以下、ステップS505の処理の詳細について、図７を用いて説明する。
【００３６】
ステップS701において、データ制御部203は、出現アニメーションが設定されているアニメーションオブジェクトタグ306から対象描画オブジェクトID412を取得する。データ制御部203は、取得した対象描画オブジェクトID412と一致する描画オブジェクトID401を持つ描画オブジェクトタグ304を探索し特定する。図１０の例では、ページA1011において、アニメーションオブジェクトタグ306のうちの“アニメーションオブジェクト1”から“描画 ID 2”を取得し、描画オブジェクトタグ304の中から“描画オブジェクト2”を特定する。次いで、ステップS702に進む。
【００３７】
ステップS702において、データ制御部203は、ステップS701において特定した描画オブジェクトタグ304をRAM102又はメモリ103に格納する。図１０から、ステップS701で取得した情報がメモリ領域1022に格納されていることが分かる。次いで、ステップS703に進む。
【００３８】
ステップS703において、データ制御部203は、描画情報XMLタグ303から該描画オブジェクトタグ304を削除する。図１０の例では、ページA1011と、ページB1012とを比較すると、ページB1012において、描画オブジェクト304のうちの“描画オブジェクト2”が削除されていることが分かる。次いで、ステップS506に進む。
【００３９】
ステップS506において、データ制御部203は、ステップS505までに変更されたページ情報301に基づいて新たにページを生成する。尚、ページ生成とは、ステップS506の直前の状態のページXMLタグ302で包括されたページ情報301をファイルに追加する処理を指す。図１０の例では、ファイル1001と、ファイル1002とを比較すると、ファイル1002において、これまでのステップによって生成されたページB1012がページAの前に追加されていることが分かる。尚、画像1040は、追加したページB1012を出力したものを示している。画像1040によって、ここまでの処理により、元々の画像1030から、出現アニメーションが設定されている描画オブジェクト1032以外の描画オブジェクトが出力されていることが分かる。次いで、ステップS507に進む。
【００４０】
ステップS507において、データ制御部203は、アニメーションが設定されているオブジェクト毎のページ（アニメーションページ）を生成する。次いで、ステップS508に進む。以下、ステップS507の処理の詳細について、図６を用いて説明する。
【００４１】
データ制御部203は、後述のステップS601からステップS607までの処理をアニメーションが設定されているオブジェクトがなくなるまで繰り返す。
【００４２】
ステップS601において、データ制御部203は、アニメーションオブジェクトタグ306を解析することで、アニメーションが設定されている描画オブジェクトタグを特定する。
【００４３】
ステップS602において、データ制御部203は、ステップS601の結果に基づいて、特定された描画オブジェクトタグに対するアニメーション効果414が出現アニメーションであるか否か判定する。アニメーション効果414が出現アニメーションであると判定された場合はステップS606へ、アニメーション効果414が出現アニメーションではないと判定された場合はステップS603へ進む。
【００４４】
ステップS603において、データ制御部203は、ステップS601の結果に基づいて、特定された描画オブジェクトタグに対するアニメーション効果414が消失アニメーションであるか否か判定する。アニメーション効果414が消失アニメーションであると判定された場合はステップS605へ、アニメーション効果414が消失アニメーションではないと判定された場合はステップS604へ進む。
【００４５】
ステップS604において、データ制御部203は、ステップS603までのフローに基づいて、対象のアニメーションがオブジェクトの移動や拡縮等、オブジェクトの位置や状態が変化するタイプのアニメーションであると判定し、オブジェクト情報を生成する。次いで、ステップS606に進む。オブジェクト情報の生成の詳細については、図８を用いて説明する。又、説明の為、ステップS601で解析されたアニメーションオブジェクトタグ306と対応する描画オブジェクトタグ304の一例を図１１に示す。
【００４６】
ステップS801において、データ制御部203は、アニメーションオブジェクトタグ306を解析することで、アニメーションが設定されている描画オブジェクトを特定する。次いで、ステップS802に進む。
【００４７】
ステップS802において、データ制御部203は、アニメーション効果1114の情報を用いて、この描画オブジェクトのアニメーションによる状態遷移後の位置や大きさを計算する。図１１の例では、データ制御部は、アニメーション効果1114がslide(300,800)となっていることから、描画オブジェクトがこのアニメーションによって、右に300、下に800の位置へ直線移動することを導出する。データ制御部は、描画オブジェクト種類1102、位置情報1103、及びパス情報1105から、元の描画オブジェクトが(100,100)に位置する半径50の円形であることを導出する。また、データ制御部は、描画オブジェクト種類1102、位置情報1103、及びパス情報1105から、遷移後の描画オブジェクトが(400,900)に位置する半径50の円形であることを導出する。アニメーション効果の他の例として、アニメーション効果1114がslide(300,800)ではなくexpand(200)となっている場合は、拡大アニメーションと判定され、これは200%の倍率で描画オブジェクトを拡大することを示している。この場合の遷移後の描画オブジェクトは、(100,100)に位置する半径100の円形となる。このように、縮小・回転・色変化等他のアニメーションについても、アニメーション効果の情報に基づき遷移後の描画オブジェクトの状態を導出することができる。次いで、ステップS803に進む。
【００４８】
ステップS803において、データ制御部203は、ステップS802で導出した遷移後の描画オブジェクトの情報に基づいてタグを生成する。図１１の例では、データ制御部203は、ステップS802で導出した遷移後の描画オブジェクトの情報に基づいて、描画オブジェクトタグ1120を生成する。次いで、ステップS606に進む。
【００４９】
ステップS605において、データ制御部203は、描画情報XMLタグ303からステップS603で判定された消失アニメーションに紐付けられた描画オブジェクトタグ304を除去する。この処理はステップS505と同様の処理である為、説明は割愛する。次いで、ステップS607に進む。
【００５０】
ステップS606において、データ制御部203は、描画情報XMLタグ303に対象の描画オブジェクトタグ304を追加する。次いで、ステップS607に進む。以下、ステップS606の処理の詳細について、図９を用いて説明する。
【００５１】
ステップS901において、データ制御部203は、アニメーションオブジェクトタグ306を解析することで、追加する描画オブジェクトを特定する。特定された描画オブジェクトに設定されるアニメーション効果が出現アニメーションであった(ステップS602からステップS606へ進んだ)場合、ステップS702で格納したメモリ領域から、データ制御部203は、描画オブジェクトタグ304を探索する。尚、描画オブジェクトタグ304の探索は対象描画オブジェクトID412に基づいて行うが、ステップS702において、メモリ格納時に描画オブジェクトタグ304に紐付けた識別子を持たせこの識別子を用いて探索する等、他の方法で探索しても問題ない。又、特定された描画オブジェクトに設定されるアニメーション効果が出現アニメーションでない(ステップS602からステップS603へ進んだ)場合、データ制御部203は、ステップS803で生成した描画オブジェクトタグを探索する。次いで、ステップS902に進む。
【００５２】
ステップS902において、データ制御部203は、ステップS901にて特定した描画オブジェクトタグ304を描画情報XMLタグ303に追加する。次いで、ステップS607に進む。
【００５３】
ステップS607において、データ制御部203は、これまでのステップにおいて生成したページXMLタグ302をファイル300に追加する。ステップS601からステップS606の処理によって、アニメーションが設定されている１つのオブジェクト毎（アニメーションオブジェクト毎）に、1ページの情報を生成する。
【００５４】
以上のステップ（ステップS601〜S607）をアニメーションオブジェクト数分繰り返すことによって、ページB1012、ページC1013、ページD1014、及びページE1015を生成し、ファイル1001がファイル1005として更新される。尚、本実施例では、更新後のファイル1005において、オリジナルファイル1001に含まれアニメーションが設定されていたページA1011を残している。しかし、ページB1012の生成以降であれば、任意のタイミングでページA1011をファイルから削除しても構わない。又、本実施例では、元のファイル1001上に生成した各ページを追加することでファイルを更新したが、オリジナルのファイルを保護する観点で、別のメモリ領域にファイル1001をコピーし、コピー先で同様の処理をしても構わない。
【００５５】
ステップS508において、管理部201は、これまでのステップで生成したファイル300をデータ変換部204に渡す。データ変換部204は、ファイル300の情報に基づいて印刷データ処理装置110にデータを投入するよう、ファイル300をPDLデータに変換する。管理部201は、データ変換部204が生成したPDLデータをネットワーク制御部205に渡し、ネットワーク制御部205は、このデータを印刷データ処理装置110へ転送する。
【００５６】
本実施例では、出力として印刷出力を採用した例について示したが、出力先として例えば携帯端末に出力することもできる。携帯端末では、専用のアプリケーションが無ければ、元のアプケーションファイルを開くことができない。しかし、本発明によると、ステップS508において、データ変換部204は、ファイル300をPDLデータではなく、携帯端末でプレビュー可能な形式（例えば、PDFやBMP等のフォーマット）に変換することで、本実施例と同様の効果を得ることができる。
【００５７】
本実施例では、ページ生成手段がページXMLを生成及びファイルに追加することで、複数ページを含んだファイルに対する１つのジョブとして印刷データ処理装置にジョブを転送した。しかし、携帯端末にPDFやBMP等のフォーマットでデータを転送する場合ならば、ページ生成の段階でPDF化もしくはBMP化し、それぞれデータ転送しても良い。更に、データ転送の効率化の為、BMP化する画像はページ全体ではなく、処理中のアニメーションが設定されているオブジェクトのみとし、オブジェクト毎にBMP化された画像をそれぞれ転送しても良い。この例を、図１４を用いて説明する。
【００５８】
図１４を参照すると、ページ1400には、描画オブジェクト1401と、描画オブジェクト1402と、描画オブジェクト1403と、描画オブジェクト1404とが存在している。描画オブジェクト1402と、描画オブジェクト1403と、描画オブジェクト1404とにはそれぞれ、出現アニメーションが設定されているものとする。ページ1400に対して本発明を適用したことにより、上述したようにアニメーションが設定されているオブジェクトのみをページ毎に出力したものが、画像1411、画像1412、画像1413である。画像1410は、最初に生成される画像であるから、この画像については、アニメーションが設定されているオブジェクトだけでなく、全てのオブジェクトを出力する。携帯端末上で、画像1411、画像1412、画像1413のオブジェクト部以外の背景は透過させながら、受信した画像1410〜1413を重ね合わせることにより、アニメーションの遷移をプレビューすることができる。
【００５９】
上記のように、本発明によれば、出現・消失アニメーションや位置・状態が遷移するアニメーション等、任意のアニメーションの設定をファイルが含む場合に、アニメーションによる描画オブジェクトの状態遷移・変化をユーザが理解できるように出力できる。
【実施例２】
【００６０】
実施例１では、メモリ領域に格納されているファイルに対する、アニメーションが設定されている描画オブジェクトの状態遷移前後の状態を出力する方法について述べた。
【００６１】
本実施例では、アニメーションが設定されている描画オブジェクトの状態遷移について、状態遷移の過程を更に詳細に出力する例について述べる。本実施例により、例えば、1つのアニメーションで複雑な移動アニメーションが設定されている描画オブジェクトや、移動距離の長い移動アニメーションが設定されている描画オブジェクトに対する、詳細な遷移過程を出力することができる。その為、ユーザは出力画像から、アプリケーション上で動作していたオブジェクトの更に詳細な情報を得ることができる。
【００６２】
簡単な具体例を、図１２を用いて説明する。ページ1200で示すような、左上隅に円形の描画オブジェクトが配置され、この描画オブジェクトが破線矢印で示すような軌跡で右下隅に移動する場合について検討する。この場合、実施例１では、アニメーション遷移の前後の状態を出力するので、ページ1211及びページ1212を得ることができる。一方、本実施例では、更にページ1222の様な移動の過程の軌跡の状態を取得し、結果として、ページ1221、ページ1222、及びページ1223のような出力結果を得ることができる。
【００６３】
本実施例におけるハードウェア構成及びソフトウェア構成については、実施例１と同様の為、説明は割愛する。
【００６４】
また、本実施例における情報処理装置100が実行する処理について、図５におけるステップS501からステップS506及びステップS508の処理は実施例１と同様の為、説明は割愛する。
【００６５】
ステップS507において、データ制御部203は、アニメーションが設定されているオブジェクト毎のページを生成する。以下、ステップS507の処理の詳細について、図６を用いて説明する。
【００６６】
図６におけるステップS601からステップS603及びステップS605からステップS607の処理は、実施例１と同様の為、説明は割愛する。
【００６７】
ステップS604において、データ制御部203は、ステップS603までのフローに基づいて、対象のアニメーションがオブジェクトの移動や拡縮等、オブジェクトの位置や状態が変化するタイプのアニメーションであると判定し、オブジェクト情報を生成する。次いで、ステップS606に進む。オブジェクト情報の生成の詳細については、図１３を用いて説明する。
【００６８】
ステップS1301において、データ制御部203は、アニメーションオブジェクトタグ306を解析することで、アニメーションが設定されている描画オブジェクトを特定する。次いで、ステップS1302に進む。
【００６９】
ステップS1302において、データ制御部203は、アニメーション分割数を決定する。アニメーション分割数とは、遷移するオブジェクトの過程を何分割で出力するかを示している。図１２の例では、2分割であるといえる(ページ1221からページ1223のうちのページ1222及びページ1223)。本実施例では、アニメーション分割数のデフォルト値が2に設定されているものとして説明するが、このデフォルト値を変更しても構わないし、ユーザにアニメーション分割数を選択させても構わない。次いで、ステップS1303に進む。
【００７０】
ステップS1303において、データ制御部203は、ステップS1302で決定した分割数に応じて、オブジェクトがどこに遷移するか計算する。例えば、ページ1200の描画オブジェクトと設定されているアニメーション情報が、図１１の描画オブジェクトタグ304、アニメーションオブジェクトタグ306の様に設定されている場合は次の様に計算する。データ制御部203は、アニメーション効果1114の遷移量及びアニメーション分割数から描画オブジェクトの次の遷移後の位置を取得する。図１１の例では、アニメーション効果1114にslide(300, 800)と設定されている。従って、アニメーション分割数が2であることを考慮すると、次の描画オブジェクトの座標は、(初期位置x+150, 初期位置y+400)、つまり(250, 550)であることが分かる。次いで、ステップS1304に進む。
【００７１】
ステップS1304において、データ制御部203は、ステップS1303で取得した描画オブジェクトの次の遷移後の位置に基づいて描画オブジェクトの情報を生成する。図１１の例では、データ制御部203は、ステップS1303で導出した遷移後の描画オブジェクトの情報として、描画オブジェクトタグ1130を生成する。次いで、ステップS1305に進む。
【００７２】
ステップS1305において、データ制御部203は、生成した描画オブジェクト情報によって示される状態が、アニメーションによる最終の遷移状態であるか否か判定する。この判定の為に、データ制御部203は、最終遷移状態の描画オブジェクトの位置及びパス情報を算出する。データ制御部203は、算出した最終遷移状態の描画オブジェクトの位置及びパス情報と、ステップS1303で算出した情報とを比較し、両者が一致した場合に最終遷移状態であると判定する。尚、他にも、アニメーション分割数及びループカウンタの値を用いて、最終遷移状態であるか否かの判定を行っても良い。最終遷移状態であると判定された場合、ステップS1307へ進み、最終状態ではないと判別された場合、ステップS1306へ進む。
【００７３】
ステップS1306において、データ制御部203は、ステップS1304までに生成したページ情報301に基づいて新たにページを生成する。次いで、ステップS1303に戻る。
【００７４】
ステップS1307において、データ制御部203は、ステップS1303で導出した描画オブジェクトの座標に基づいて最終遷移後の描画オブジェクトの情報を生成する。
【００７５】
以上説明したように、本実施例では、アニメーションによる描画オブジェクトの遷移の前後だけでなく、その遷移する過程についても設定されたアニメーション分割数に応じて出力することができる。
【００７６】
（その他の実施例）
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出す処理である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【図１】
2015001961.tif 000003
【図２】
2015001961.tif 000004
【図３】
2015001961.tif 000005
【図４】
2015001961.tif 000006
【図５】
2015001961.tif 000007
【図６】
2015001961.tif 000008
【図７】
2015001961.tif 000009
【図８】
2015001961.tif 000010
【図９】
2015001961.tif 000011
【図１０】
2015001961.tif 000012
【図１１】
2015001961.tif 000013
【図１２】
2015001961.tif 000014
【図１３】
2015001961.tif 000015
【図１４】
2015001961.tif 000016