説明

画像形成装置およびプログラム

【課題】複数の圧縮画像データの展開処理を効率良く行なう。
【解決手段】レイアウト合成処理部711から展開開始指令を受け付けると共にGUI画像展開処理部711Bからも同時に展開開始指令を受け付けることができるようにし、JPEG処理部714,リサイズ処理部715,画質補正処理部716が、展開開始指令を受けると、処理対象を展開待ち状態としておき、展開待ち状態の処理対象がある限り他の処理部がある展開開始指令により処理を実行している間も並列的に他の展開開始指令により処理を実行させる。これにより、複数の圧縮画像に対する展開処理を効率良く行なうことができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、所定フォーマットで圧縮されてなる圧縮データを展開すると共に該展開した展開データに基づいて画像を形成する画像形成装置およびコンピューターを画像形成装置として機能させるためのプログラムに関する。
【背景技術】
【0002】
従来、この種の画像形成装置としては、JPEG圧縮データを複数ラインずつ展開してRGBデータを生成するJPEG処理装置と、RGBデータのリサイズを行なうリサイズ処理装置と、RGBデータの画質補正を行なう画質補正処理装置とが異なるハードウエア装置により構成されてなるものが提案されている(例えば、特許文献1参照)。この装置では、圧縮画像データを複数ライン毎に分割し、分割した各圧縮画像データに対して解凍,リサイズ,画質補正を直列的に処理すると共に各処理装置について他の処理装置が処理中でも並列的に処理することにより、解凍,リサイズ,画質補正の一連の処理を短時間で行なうことができるとしている。
【特許文献1】特開2008−213406号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかしながら、上述した装置では、一つの圧縮画像を効率良く展開することについては記載されているものの、複数の圧縮画像を効率良く展開することについては言及されていない。複数の圧縮画像の展開を効率良く行なうことは、例えば、複数の画像を複数面にレイアウトして印刷する場合や、ディスプレイを備える印刷装置において画像の表示処理と画像の印刷処理とが同時に要求される場合などに、全体の処理時間を短縮する上で重要な課題として考えられる。
【0004】
本発明の画像形成装置およびプログラムは、複数の圧縮画像の展開をより効率的に行なうことを主目的とする。
【課題を解決するための手段】
【0005】
本発明の画像形成装置およびプログラムは、上述の主目的を達成するために以下の手段を採った。
【0006】
本発明の画像形成装置は、
所定フォーマットで圧縮されてなる圧縮画像データを展開すると共に該展開した展開画像データに基づいて画像を形成する画像形成装置であって、
前記圧縮画像データを展開処理する展開処理部と、
前記展開されたデータをリサイズするリサイズ処理部と、
前記展開されたデータの画質を補正する画質補正処理部と、
前記圧縮画像データの展開要求を受け付けて前記展開処理部と前記リサイズ処理部と前記画質補正処理部の各処理の実行を管理する管理処理部と、
を備え、
前記管理処理部は、複数の圧縮画像データの展開要求が受け付けられたとき、前記受け付けられた複数の展開要求のそれぞれに対して前記展開処理部と前記リサイズ処理部と前記画質補正処理部のうち実行する処理部と処理順序とを決定して処理開始の指示を順次出力し、
前記展開処理部と前記リサイズ処理部と前記画質補正処理部は、それぞれ別個のハードウエア装置を備えて構成され、前記管理処理部から複数の処理開始の指示を逐次受け付けて処理待ち状態とし他の処理部が処理している間も自身が処理可能な状態となったときに並行して該処理待ち状態の指示を順次実行することを要旨とする。
【0007】
この本発明の画像形成装置では、管理処理部は、複数の圧縮画像データの展開要求が受け付けられたときこの受け付けられた複数の展開要求のそれぞれに対して展開処理部とリサイズ処理部と画質補正処理部のうち実行する処理部と処理順序とを決定して処理開始の指示を順次出力し、展開処理部とリサイズ処理部と画質補正処理部は、それぞれ別個のハードウエア装置を備えて構成され管理処理部から複数の処理開始の指示を逐次受け付けて処理待ち状態とし他の処理部が処理している間も自身が処理可能な状態となったときに並行して処理待ち状態の指示を順次実行する。これにより、複数の圧縮画像の展開をより効率的に行なうことができる。
【0008】
画像の印刷と表示とが可能な本発明の画像形成装置において、前記展開画像データをレイアウトして印刷用のレイアウト合成画像データを生成するレイアウト合成手段と、前記レイアウト合成画像データに基づいて印刷データを生成する印刷データ生成手段と、前記展開画像データに基づいて表示データを生成する表示データ生成手段と、を備えるものとすることもできる。こうすれば、画像の表示処理と画像の印刷処理とが同時に要求される場合の処理時間を短縮することができる。
【0009】
また、画像の印刷が可能な本発明の画像形成装置において、前記展開画像データ生成手段により生成された複数の展開画像データを1枚の用紙に対して複数面にレイアウトして印刷用のレイアウト合成画像データを生成するレイアウト合成手段と、前記レイアウト合成画像データに基づいて印刷データを生成する印刷データ生成手段と、を備えるものとすることもできる。こうすれば、複数の画像を複数面にレイアウトして印刷する場合の印刷時間を短縮することができる。
【0010】
本発明のプログラムは、コンピューターを上述した各態様のいずれかの本発明の画像形成装置として機能させることを要旨とする。このプログラムは、コンピューターが読み取り可能な記録媒体(例えばハードディスク、ROM、FD、CD、DVDなど)に記録されていてもよいし、伝送媒体(インターネットやLANなどの通信網)を介してあるコンピューターから別のコンピューターへ配信されてもよいし、その他どのような形で授受されてもよい。
【発明を実施するための最良の形態】
【0011】
次に、本発明の実施の形態を図面に基づいて説明する。図1は、本発明の印刷処理装置の一実施形態であるフォトプリンター10の前面扉14及びカバー30を開けた状態の斜視図、図2は、フォトプリンター10の電気的構成の概略を示すブロック図である。
【0012】
本実施形態のフォトプリンター10は、プリンター本体12の上面に設けられた操作パネル20と、プリンター本体12の上面の奥の一辺に開閉自在に取り付けられ閉状態で操作パネル20を覆うカバー30と、プリンター本体12に内蔵された印刷機構50(図2参照)と、プリンター本体12の前面を開閉可能な前面扉14と、フォトプリンター10の全体の制御を司るコントローラー70(図2参照)と、JPEG画像データから展開画像データを生成するハードウェア装置群80(図2参照)とを備えている。
【0013】
操作パネル20は、文字や図形、記号などを表示するディスプレイ22と、このディスプレイ22の周囲に配置されたボタン群24とを備えている。ボタン群24は、図2に示すように、電源のオンオフを行なうための電源ボタン24a、印刷機能に関する複数の選択肢が並んだメインメニュー画面(図2参照)を呼び出すためのメニューボタン24b、操作を途中でキャンセルしたり用紙への印刷を途中で中断したりするためのキャンセルボタン24c、用紙への印刷実行を指示するための印刷ボタン24d、メモリーカードスロット16に挿入されたメモリーカードMに編集画像等を保存するための保存ボタン24e、ディスプレイ22に表示された複数の選択肢の中から所望の選択肢を選択したりカーソルを移動したり画像枠の大きさを変更するときに操作される上下左右の各矢印ボタン24f〜24i、この上下左右の各矢印ボタン24f〜24iの中央に配置され各矢印ボタン24f〜24iによって選択されている選択肢に決定したことを指示するためのOKボタン24jなどで構成されている。
【0014】
カバー30は、プリンター本体12の上面を覆うことのできる大きさに成形された樹脂板であり、開状態では操作パネル20の表面を外部に露出し(図1参照)、閉状態では操作パネル20を覆う。このカバー30は、ディスプレイ22と同じ大きさの窓32を備えており、カバー30が閉状態のときにはユーザーはこの窓32を介してディスプレイ22の表示内容を確認することができる。更に、カバー30は、開状態のときに操作パネル20に対して斜め後方に傾斜した状態で保持されるようになっている。このため、開状態のカバー30の裏面は、用紙を印刷機構50へ供給するためのトレイとして利用可能である。また、操作パネル20の奥には、印刷機構50の給紙口58が設けられ、この給紙口58には、ガイド幅が用紙の幅に合うように左右方向にスライド操作される一対の用紙ガイド59,59が設けられている。
【0015】
印刷機構50は、プリンター本体12の内部に配置されている。この印刷機構50は、インクを用紙に向かって吐出する印刷ヘッド54を搭載したキャリッジ56を主走査方向(図2の左右方向)に往復動させながら、用紙を副走査方向(図2の前後方向)に搬送することにより印刷を実行する周知のインクジェット印刷機構である。ここでは、印刷ヘッド54にインクを供給するインクカートリッジ52をキャリッジ56に搭載したオンキャリッジタイプを図示したが、インクカートリッジをキャリッジ56以外の場所に配置したオフキャリッジタイプとしてもよい。また、印刷ヘッド54は、圧電素子に電圧をかけることによりその圧電素子を変形させてインクを加圧する方式を採用してもよいし、発熱抵抗体(例えばヒータなど)に電圧をかけてインクを加熱して発生した気泡によりインクを加圧する方式を採用してもよい。
【0016】
前面扉14は、プリンター本体12の前面を開閉するための蓋であり、開状態のときには、プリンター本体12の前面から排紙される用紙を受けるための排紙トレイとして機能すると共に、プリンター本体12の前面に設けられた各種のメモリーカードスロット16をユーザーが利用可能な状態となる。メモリーカードスロット16には、メモリーカードMが差し込まれている。このメモリーカードMには、複数のJPEG画像ファイルが記憶されている。
【0017】
コントローラー70は、図2に示すように、CPU71を中心とするマイクロプロセッサとして構成されており、各種処理プログラムや各種データなどを記憶したROM72と、一時的にデータを記憶するRAM73とを備え、これらはバス74を介して互いに信号のやり取りが可能なように接続されている。また、操作パネル20や印刷機構50、リーダライター18のほか、JPEG画像データから展開画像データを生成するときに使用されるハードウェア装置群80もバス74に接続されている。ハードウェア装置群80は、JPEG画像を解凍してRGBデータを生成すると共に間引きや切り出し、回転などを行なうJPEG処理装置81と、RGBデータの画像サイズを拡大・縮小するリサイズ装置82と、RGBデータを画質補正パラメータ(例えばコントラストや明るさ、彩度などに関するパラメータ)にしたがって補正する画質補正装置83と、コピーを実行するハードウェアコピー装置84とを備えている。コントローラー70は、メモリーカードスロット16に挿入されたメモリーカードMのJPEG画像ファイルをリーダライター18を介して入力するほか、印刷機構50各部からの検出信号や操作パネル20のボタン群24からの指令信号、ハードウェア装置群80を構成する各装置81〜84からの処理状況を表す信号などを入力する。また、コントローラー70は、リーダライター18を介してメモリーカードMに編集画像を保存するほか、印刷機構50の印刷ヘッド54などへの制御信号や操作パネル20のディスプレイ22への制御信号、ハードウェア装置群80を構成する各装置81〜84への指令信号などを出力する。
【0018】
本実施形態のフォトプリンター10のハードウェア構成は図2に示したとおりであるが、そのうちのコントローラー70のCPU71を機能ブロックで表したものを図3に示す。CPU71は、機能ブロックとして、描画オブジェクト生成処理部710、レイアウト合成処理部711、印刷データ生成処理部712、GUI部710B、GUI画像展開処理部711Bと、パス管理処理部713、JPEG処理部714、リサイズ処理部715、画質補正処理部716、共有メモリー管理処理部717を含むものとして表すことができる。
【0019】
描画オブジェクト生成処理部710は、ユーザーが図2に示すメインメニュー画面から印刷したい画像ファイル(JPEG画像)を選択すると共に印刷用紙のサイズやレイアウト(例えば1枚の用紙に複数の画像配置領域を設定するレイアウト等)を選択したあと印刷ボタン24dをオンしたときに、オブジェクト情報を生成して該オブジェクト情報を含む画像展開条件をレイアウト合成処理部711に出力する。なお、オブジェクト情報とは、例えば、画像配置領域のサイズや回転角度、座標位置のほか、画像のどのエリアを切り出すかなどを含む情報である。また、画像展開条件とは、オブジェクト情報のほか、ファイル名やファイルサイズ、画質補正の有無、コントラストのパラメータ、明るさのパラメータ、彩度のパラメータ、画像のどのエリアをクリップするかというクリップ条件などを含む。
【0020】
レイアウト合成処理部711は、パス管理処理部713へ展開画像データを要求し、その後パス管理処理部713から得た展開画像データをハードウェアコピー装置84を使用してユーザーが選択したレイアウトにしたがって配置することによりレイアウト合成画像データを生成し、該レイアウト合成画像データを印刷データ生成処理部712へ出力する。このレイアウト合成処理部711は、パス管理処理部713へ展開画像データを要求する際には、画像展開条件のうち展開画像データの生成に必要な条件(例えばファイル名やファイルサイズ、画質補正の有無、コントラストのパラメータ、明るさのパラメータ、彩度のパラメータのほか、画像のどのエリアをクリップするかというクリップ条件など)をパス管理処理部713へ出力する。ここで、展開画像データとは、メモリーカードMに保存されたJPEG画像データにJPEG処理(解凍を含む)・リサイズ処理・画質補正処理を施すことにより得られるデータをいうものとする。このため、パス管理処理部713は、展開画像データの生成に必要な条件にしたがってJPEG処理・リサイズ処理・画質補正処理を施す。
【0021】
印刷データ生成処理部712は、レイアウト合成処理部711からの色変換テーブルの指定や出力解像度の指定、用紙サイズの指定を受けることにより、レイアウト合成画像データから印刷機構50が印刷可能な印刷データを生成する。印刷機構50は、この印刷データに基づいて制御されることになる。
【0022】
GUI画像展開処理部711Bは、パス管理処理部713へ展開画像データを要求し、その後パス管理処理部713から得た展開画像データに対して図形や記号などのオブジェクトを合成して表示用データを作成し、GUI部710Bに出力する。このGUI画像展開処理部711Bは、パス管理処理部713へ展開画像データを要求する際には、画像展開条件のうち展開画像データの生成に必要な条件(例えばファイル名やファイルサイズ、画質補正の有無、コントラストのパラメータ、明るさのパラメータ、彩度のパラメータのほか、画像のどのエリアをクリップするかというクリップ条件など)をパス管理処理部713へ出力する。
【0023】
GUI部710Bは、GUI画像展開処理部711Bへユーザーによるボタン群24からの操作指令に応じた表示用データを要求し、その後GUI画像展開処理部711Bから得た表示用データに基づいて描画してディスプレイ22に画面を表示する。
【0024】
パス管理処理部713は、JPEG画像データから展開画像データを生成するにあたり、JPEG処理部714やリサイズ処理部715,画質補正処理部716の処理順序(パス)を決定する。また、パス管理処理部713は、各部714,715,716からデータ要求を受け付け、該データ要求を適切な要求先に出力し、該要求先からデータ要求に対する回答を受け付け、該回答を要求元へ通知する。こうすることにより、各部714,715,716はそれぞれ並列して処理を実行することが可能となる。ここで、各部714,715,716は、生成したデータを共有メモリーであるRAM73の所定領域に格納し、その所定領域の先頭アドレスを示すポインタ及びその所定領域に格納されたデータの長さ(ライン数)をパス管理処理部713へ回答する。
【0025】
JPEG処理部714は、パス管理処理部713から展開開始の指令を受けると、ハードウェアであるJPEG処理装置81を使用してJPEG画像データを複数ラインずつRGBデータへ解凍し、間引きや切り出し、回転などを行い(この一連の処理をJPEG処理と称する)、JPEG処理後のRGBデータを出力データとして共有メモリー管理処理部717を介してRAM73に保存する。こうしてJPEG処理後のRGBデータを保存したあと、JPEG処理部714はそのデータを保存した領域の先頭アドレスを示すポインタとデータのライン数をパス管理処理部713へ通知する。
【0026】
リサイズ処理部715は、パス管理処理部713から展開開始の指令を受けると、パス管理処理部713に対してリサイズ処理の対象となるデータを要求する。その後、パス管理処理部713からその要求に対する回答としてポインタ及びデータのライン数の通知を受けると、そのポインタ及びデータのライン数に基づいてRAM73からリサイズ処理の対象となるデータを読み出し、ハードウェアであるリサイズ装置82を使用してそのデータのリサイズ処理を行なう。そして、リサイズ処理後のRGBデータを出力データとして共有メモリー管理処理部717を介してRAM73に保存する。こうしてリサイズ処理後のRGBデータを保存したあと、リサイズ処理部715はそのデータを保存した領域の先頭アドレスを示すポインタとデータのライン数をパス管理処理部713へ通知する。ここで、リサイズ処理の対象となるデータは、パス管理処理部713によって決定されるが、JPEG処理部714によって生成されるJPEG処理後のRGBデータか、画質補正処理部716によって生成される画質補正処理後のRGBデータのいずれかである。
【0027】
画質補正処理部716は、パス管理処理部713から展開開始の指令を受けると、パス管理処理部713に対して画質補正処理の対象となるデータの要求を行なう。その後、パス管理処理部713からその要求に対する回答としてポインタ及びデータのライン数の通知を受けると、そのポインタ及びデータのライン数に基づいてRAM73から画質処理の対象となるデータを読み出し、ハードウェアである画質補正装置83を使用してそのデータの画質補正を行なう。そして、画質補正処理後のRGBデータを出力データとして共有メモリー管理処理部717を介してRAM73に保存する。こうして画質補正処理後のRGBデータを保存したあと、画質補正処理部716はそのデータを保存した領域の先頭アドレスを示すポインタとデータのライン数をパス管理処理部713へ通知する。ここで、画質補正処理の対象となるデータは、パス管理処理部713によって決定されるが、JPEG処理部714によって生成されるJPEG処理後のRGBデータか、リサイズ処理部715によって生成されるリサイズ処理後のRGBデータのいずれかである。
【0028】
次に、こうして構成された本実施形態のフォトプリンター10の動作について説明する。以下、コントローラー70のCPU71を機能ブロックであるパス管理処理部713,JPEG処理部714,リサイズ処理部715,画質補正処理部716の4つに分け、各機能ブロックが主体となって動作を実行するものとして説明する。
【0029】
まず、パス管理処理部713の動作について説明する。図4は、パス管理処理ルーチンの一例を示すフローチャートである。このルーチンが開始されると、パス管理処理部713は、まず、レイアウト合成処理部711とGUI画像展開処理部711Bのいずれかから展開条件設定の通知がなされたか否かを判定し(ステップS100)、展開条件設定の通知がなされたときにはパスを識別するためのパスIDを付与し(ステップS102)、JPEG処理部714に対してJPEG画像データにJPEG処理を施すのに必要なJPEG処理条件を設定してパスIDと共に出力する(ステップS104)。このJPEG処理条件は、レイアウト合成処理部711あるいはGUI画像展開処理部711Bからパス管理処理部713に渡された画像展開条件の一部をなすものであり、例えばファイル名やクリップ条件などが含まれる。なお、パスIDを付与すると、展開条件設定の通知元に付与したパスIDを通知する。続いて、パス管理処理部713は、リサイズ処理部715に対してRGBデータを指定されたサイズへ変換するためのリサイズ処理条件を設定してパスIDと共に出力する(ステップS106)。このリサイズ処理条件も、レイアウト合成処理部711あるいはGUI画像展開処理部711Bからパス管理処理部713に渡された画像展開条件の一部をなすものであり、例えばファイルの入力サイズや出力サイズなどが含まれる。続いて、画質補正は必要か否かを判定する(ステップS108)。画質補正が必要か否かの判定は、レイアウト合成処理部711あるいはGUI画像展開処理部711Bからパス管理処理部713に渡された画像展開条件に画質補正の有無が含まれているため、それに基づいて判定する。そして、ステップS108で画質補正が不要(つまり画質補正なし)だったときには、パスの順序を1番目がJPEG処理部714,2番目がリサイズ処理部715とし、両処理部714,715へ展開開始指令をパスIDと共に出力する(ステップS110)。一方、ステップS108で画質補正が必要(つまり画質補正あり)だったときには、画質補正処理部716に対してRGBデータの画質を補正するための画質補正処理条件を設定してパスIDと共に出力する(ステップS112)。画質補正処理条件は、レイアウト合成処理部711あるいはGUI画像展開処理部711Bからパス管理処理部713に渡された画像展開条件の一部をなすものであり、例えばコントラストや明るさ、彩度などに関するパラメータが含まれる。続いて、リサイズ処理条件が縮小か拡大(等倍を含む)かを判定し(ステップS114)、リサイズ処理条件が縮小だったときには、パスの順序を1番目がJPEG処理部714,2番目がリサイズ処理部715,3番目が画質補正処理部716としたうえで各処理部714,715,716へ展開開始指令をパスIDと共に出力し(ステップS116)、リサイズ処理条件が拡大だったときには、パスの順序を1番目がJPEG処理部714,2番目が画質補正処理部716,3番目がリサイズ処理部715としたうえで各処理部714,715,716へ展開開始指令をパスIDと共に出力する(ステップS118)。
【0030】
ステップS110,S112,S114のあと、パス管理処理部713は、JPEG処理部714とリサイズ処理部715と画質補正処理部716のうちいずれかの処理部からデータが要求されているか否かを判定し(ステップS120)、データが要求されていないときには次の処理に進み、データが要求されているときには、決定したパスの順序におけるデータ要求元の処理部の一つ前の処理を行なう処理部へデータを要求する(ステップS122)。そして、このデータの要求に対する回答としてJPEG処理部714とリサイズ処理部715と画質補正処理部716のうちいずれかの処理部からその処理部が生成したデータの格納領域の先頭アドレスを示すポインタおよびデータのライン数が通知されているか否かを判定し(ステップS124)、通知されていないときにはステップS100に戻り、通知されているときには、決定したパスの順序における通知元の処理部の一つ後の処理を行なう処理部へポイントおよびライン数を通知して(ステップS126)、ステップS100に戻って処理を繰り返す。パス管理処理ルーチンは、こうした処理が繰り返し実行されるから、レイアウト合成処理部711とGUI画像展開処理部711Bのいずれかから展開条件設定通知がなされる度、即ち、一つの圧縮画像データに対する処理が完了する前であっても圧縮画像データの展開が要求される度に各処理部714,715,716に対する条件設定を行なうと共に展開開始を指令することになる。
【0031】
次に、JPEG処理部714の動作について説明する。図5は、JPEG処理ルーチンの一例を示すフローチャートである。このルーチンが開始されると、JPEG処理部714は、まず、パス管理処理部713からパスIDを伴って条件設定通知が来ているか否かを判定し(ステップS200)、条件設定通知が来ていないときには次の処理に進み、条件設定通知が来ているときにはこの通知に従って条件設定を行なうと共にパスIDに対応する処理対象について現在の状態を展開開始待ち状態とする(ステップS202)。ここで、条件設定としては、ファイル名やクリップ条件などが含まれる。続いて、パス管理処理部713から展開開始指令が来ているか否かを判定し(ステップS204)、展開開始指令が来ていないときにはそのまま次の処理に進み、展開開始指令が来ているときには一度に処理が可能な最大ライン数と最小ライン数を設定すると共にパスIDに対応する処理対象について現在の状態を展開待ち状態とする(ステップS206)。そして、パス管理処理部713からデータ要求が来ているか否かを判定し(ステップS208)、データ要求が来ているときにはさらにデータ要求に対して展開処理が完了しているか否かを判定する(ステップS210)。データ要求が来ていないときやデータ要求が来ていてもその要求に対する展開処理が完了していないときにはそのまま次の処理に進み、データ要求が来ており且つ展開処理も完了しているときには後述する出力バッファーに格納されているJPEG処理後のRGBデータの先頭アドレスを示すポインタ及びそのデータのライン数とをパス管理処理部713に通知すると共にパスIDに対応する処理対象について現在の状態を展開待ち状態とする(ステップS212)。その後、現在の状態が展開待ち状態に設定されている処理対象が存在するか否かを判定し(ステップS214)、展開待ち状態に設定されている処理対象が存在しないときにはステップS200に戻り、展開待ち状態に設定されている処理対象が存在するときにはステップS206で設定した最大ライン数および最小ライン数の範囲内で共有メモリー管理処理部717を介してRAM73にJPEG処理装置81用の出力バッファーを確保し(ステップS216)、確保した出力バッファーのサイズに応じて処理すべきJPEG画像データのライン数を決定する(ステップS218)。続いて、JPEG画像データのうち決定したライン数分をリーダライター18を介して読み込み、JPEG処理装置81を制御してRGBデータへ解凍し、JPEG処理条件に基づいて間引きや切り出し、回転処理を実行したあと、そのJPEG処理後のRGBデータを出力バッファーに格納するJPEG処理を実行する(ステップS220)。その後、パス管理処理部713からデータの要求が来ているか否かを判定し(ステップS222)、データの要求が来ていたときにはさらにデータ要求に対して展開処理が完了しているか否かを判定する(ステップS224)。データ要求が来ていないときやデータ要求が来ていてもその要求に対する展開処理が完了していないときにはそのまま次の処理に進み、データ要求が来ており且つ展開処理も完了しているときには後述する出力バッファーに格納されているJPEG処理後のRGBデータの先頭アドレスを示すポインタ及びそのデータのライン数とをパス管理処理部713に通知する(ステップS226)。そして、パス管理処理部713から次の展開開始指令が来ているか否かを判定し(ステップS228)、展開開始指令が来ていないときにはそのまま次の処理に進み、展開開始指令が来ているときには一度に処理が可能な最大ライン数と最小ライン数を設定すると共にパスIDに対応する処理対象について現在の状態を展開待ち状態とする(ステップS230)。その後、JPEG処理が完了したか否かを判定し(ステップS232)、JPEG処理が完了していないときにはステップS222に戻り、JPEG処理が完了しているときにはパス管理処理部713からデータの要求が来ているか否かを判定する(ステップS234)。データの要求が来ているときには、JPEG処理後データのポインタ及びライン数をパス管理処理部713へ通知し(ステップS236)、パスIDに対応する処理対象について全ラインの処理を終了したか否かを判定し(ステップS238)、全ラインの処理を終了していないときには展開待ち状態を維持し(ステップS240)、全ラインの処理を終了しているときには終了待ち状態に設定して(ステップS242)、ステップS200に戻る。一方、データの要求が来ていないときには、JPEG処理後データのポインタ及びライン数を図示しない管理テーブルに登録すると共に(ステップS244)、展開完了したことを示す展開完了通知をパス管理処理部713へ出力し(ステップS246)、データの要求が来るのを待つデータ要求待ち状態に設定して(ステップS248)、ステップS200に戻る。
【0032】
次に、リサイズ処理部715の動作について説明する。図6は、リサイズ処理ルーチンの一例を示すフローチャートである。このルーチンが開始されると、リサイズ処理部715は、まず、パス管理処理部713からパスIDを伴って条件設定通知が来ているか否かを判定し(ステップS300)、条件設定通知が来ていないときには次の処理に進み、条件設定通知が来ているときにはこの通知に従って条件設定を行なうと共にパスIDに対応する処理対象について現在の状態を展開開始待ち状態とする(ステップS302)。ここで、条件設定としては、ファイルの入力サイズや出力サイズなどが含まれる。続いて、パス管理処理部713から展開開始指令が来ているか否かを判定し(ステップS304)、展開開始指令が来ていないときにはそのまま次の処理に進み、展開開始指令が来ているときには一度に処理が可能な最大ライン数と最小ライン数を設定すると共にパスIDに対応する処理対象について現在の状態を展開待ち状態とする(ステップS306)。そして、パス管理処理部713からデータ要求が来ているか否かを判定し(ステップS308)、データ要求が来ているときにはさらにデータ要求に対して展開処理が完了しているか否かを判定する(ステップS310)。データ要求が来ていないときやデータ要求が来ていてもその要求に対する展開処理が完了していないときにはそのまま次の処理に進み、データ要求が来ており且つ展開処理も完了しているときには後述する出力バッファーに格納されているリサイズ処理後のRGBデータの先頭アドレスを示すポインタ及びそのデータのライン数とをパス管理処理部713に通知すると共にパスIDに対応する処理対象について現在の状態を展開待ち状態とする(ステップS312)。その後、現在の状態が展開待ち状態に設定されている処理対象が存在するか否かを判定し(ステップS314)、展開待ち状態に設定されている処理対象が存在しないときにはステップS300に戻り、展開待ち状態に設定されている処理対象が存在するときには処理対象の処理が初回であるか否かを判定し(ステップS316)、初回のときにはステップS306で設定した最大ライン数および最小ライン数の範囲内で共有メモリー管理処理部717を介してRAM73にリサイズ装置82用の入出力バッファーを確保し(ステップS318)、リサイズ装置82の初期設定を行なう(ステップS320)。ここで、初期設定とは、リサイズ処理の対象となるデータのサイズつまり入力サイズと、リサイズ処理後のデータのサイズつまり出力サイズなどを設定することをいう。なお、入出力バッファーは、入力サイズ及び出力サイズに応じたサイズが確保される。ステップS316で初回でないと判定されたり、初期設定が完了した後には、リサイズ処理部715は、パス管理処理部713へリサイズ処理の対象となるデータを要求する(ステップS322)。ここで、リサイズ処理の対象となるデータとは、リサイズ処理の一つ前に処理を行なう処理部が生成したデータをいい、パス管理処理部713によってJPEG処理後のRGBデータか画質補正処理後のRGBデータのいずれかに決定される。その後、リサイズ処理部715は、パス管理処理部713からリサイズ処理の対象となるデータのポインタ及びデータのライン数が通知されたか否かを判定し、この通知がなされるまで待つ(ステップS324)。ポインタ及びライン数が通知されると、入力バッファーにリサイズ処理の対象となるデータをコピーし(ステップS326)、その後、コピー元のバッファーを解放する(ステップS328)。続いて、入力バッファーにコピーしたリサイズ処理の対象となるデータをリサイズ装置82を制御して拡大又は縮小することによりリサイズ処理後のRGBデータとし、そのリサイズ処理後のRGBデータを出力バッファーに格納する(ステップS330)。続いて、出力バッファーがリサイズ処理後のRGBデータで詰まったか否かを判定し(ステップS332)、詰まっていないときにはまだパス管理処理部713へ出力できない状態のため、再びステップS300に戻る。一方、出力バッファーがリサイズ処理後のRGBデータで詰まっていたときつまり出力可能なときには、次回のリサイズ処理に備えて、共有メモリー管理処理部717を介してRAM73にリサイズ装置82用の出力バッファーを確保する(ステップS334)。なお、入力バッファーは上書きして使用するため、ここで確保する必要はない。続いて、パス管理処理部713からリサイズ処理後のRGBデータの要求が来ているか否かを判定する(ステップS336)。データの要求が来ているときには、リサイズ処理後データのポインタ及びライン数をパス管理処理部713へ通知し(ステップS338)、パスIDに対応する処理対象について全ラインの処理を終了したか否かを判定し(ステップS340)、全ラインの処理を終了していないときには展開待ち状態を維持し(ステップS342)、全ラインの処理を終了しているときには終了待ち状態に設定して(ステップS344)、ステップS300に戻る。一方、データの要求が来ていないときには、リサイズ処理後データのポインタ及びライン数を図示しない管理テーブルに登録すると共に(ステップS346)、展開完了したことを示す展開完了通知をパス管理処理部713へ出力し(ステップS348)、データの要求が来るのを待つデータ要求待ち状態に設定して(ステップS350)、ステップS300に戻る。
【0033】
次に、画質補正処理部716の動作について説明する。図7は、画質補正処理ルーチンの一例を示すフローチャートである。このルーチンが開始されると、画質補正処理部716は、まず、パス管理処理部713からパスIDを伴って条件設定通知が来ているか否かを判定し(ステップS400)、条件設定通知が来ていないときには次の処理に進み、条件設定通知が来ているときにはこの通知に従って条件設定を行なうと共にパスIDに対応する処理対象について現在の状態を展開開始待ち状態とする(ステップS402)。ここで、条件設定としては、コントラストや明るさ、彩度などに関するパラメータが含まれる。続いて、パス管理処理部713から展開開始指令が来ているか否かを判定し(ステップS404)、展開開始指令が来ていないときにはそのまま次の処理に進み、展開開始指令が来ているときには一度に処理が可能な最大ライン数と最小ライン数を設定すると共にパスIDに対応する処理対象について現在の状態を展開待ち状態とする(ステップS406)。そして、パス管理処理部713からデータ要求が来ているか否かを判定し(ステップS408)、データ要求が来ているときにはさらにデータ要求に対して展開処理が完了しているか否かを判定する(ステップS410)。データ要求が来ていないときやデータ要求が来ていてもその要求に対する展開処理が完了していないときにはそのまま次の処理に進み、データ要求が来ており且つ展開処理も完了しているときには後述する出力バッファーに格納されている画質補正処理後のRGBデータの先頭アドレスを示すポインタ及びそのデータのライン数とをパス管理処理部713に通知すると共にパスIDに対応する処理対象について現在の状態を展開待ち状態とする(ステップS412)。その後、現在の状態が展開待ち状態に設定されている処理対象が存在するか否かを判定し(ステップS414)、展開待ち状態に設定されている処理対象が存在しないときにはステップS400に戻り、展開待ち状態に設定されている処理対象が存在するときには共有メモリー管理処理部717を介してRAM73に画質補正装置83用の出力バッファーを確保し(ステップS416)、パス管理処理部713へ画質補正処理の対象となるデータを要求する(ステップS418)。ここで、画質補正処理の対象となるデータとは、パスIDに対応するパスにおける画質補正処理の一つ前に処理を行なう処理部が生成したデータをいい、パス管理処理部713によってJPEG処理後のRGBデータかリサイズ処理後のRGBデータのいずれかに決定される。その後、画質補正処理部716は、パス管理処理部713から画質補正処理の対象となるデータのポインタ及びデータのライン数が通知されたか否かを判定し、この通知がなされるまで待つ(ステップS420)。ポインタ及びライン数が通知されると、そのポインタ及びデータのライン数に基づいてRAM73から画質補正処理の対象となるデータを読み出し、画質補正装置83を制御して画質補正パラメータにしたがって画質補正処理を実行することにより画質補正処理後のRGBデータとし、その画質補正処理後のRGBデータを出力バッファーに格納する(ステップS422)。その後、画質補正処理部716は、今回使用した画質補正処理の対象となるデータが格納されていた出力バッファーを解放し(ステップS424)、パス管理処理部713から画質補正処理後のRGBデータの要求が来ているか否かを判定する(ステップS426)。データの要求が来ているときには、画質補正処理後データのポインタ及びライン数をパス管理処理部713へ通知し(ステップS428)、パスIDに対応する処理対象について全ラインの処理を終了したか否かを判定し(ステップS430)、全ラインの処理を終了していないときには展開待ち状態を維持し(ステップS432)、全ラインの処理を終了しているときには終了待ち状態に設定して(ステップS434)、ステップS400に戻る。一方、データの要求が来ていないときには、画質補正処理後データのポインタ及びライン数を図示しない管理テーブルに登録すると共に(ステップS436)、展開完了したことを示す展開完了通知をパス管理処理部713へ出力し(ステップS438)、出力バッファーにまだ余裕があるか否かを判定し(ステップS440)、まだ余裕があるときには再びステップS418に戻り、出力バッファーに余裕がなかったときには、データの要求が来るのを待つデータ要求待ち状態に設定して(ステップS442)、ステップS400に戻る。
【0034】
次に、各処理部711,711B,713〜716で各ルーチンが実行されるときのタイムチャートを図8に基づいて説明する。図8は、フォトプリンター10でJPEG画像データからレイアウト合成画像データと表示用画像データを生成するときのタイムチャートである。図8では、レイアウト合成処理部711から展開条件通知がなされた後、GUI画像展開処理部711Bからも展開条件通知がなされた場合を例にとって説明する。ここで、レイアウト合成処理部711から通知される展開条件としては、パスIDを「Path#0」とし、リサイズ処理ではRGBデータのサイズを縮小するものとし、パスの順序をJPEG処理部714,リサイズ処理部715,画質補正処理部716と設定した。また、GUI画像展開処理部711Bから通知される展開条件としては、パスIDを「Path#1」とし、パスの順序をJPEG処理部714,リサイズ処理部715と設定した。なお、図8では、便宜上、パス管理処理部713を点線の矩形として複数書き表した。
【0035】
まず、レイアウト合成処理部711がパス管理処理部713に展開画像データを生成するのに必要な条件と展開開始指令をパス管理処理部713に出力する。すると、パス管理処理部713はJPEG処理部714,リサイズ処理部715及び画質補正処理部716に展開開始を指令する。JPEG処理部714は、展開開始の指令を受けると、処理対象について展開待ち状態とし、展開待ち状態の処理対象がなくなるまでJPEG画像データの複数ラインにつきJPEG処理を実行してJPEG処理後のRGBデータを生成する。一方、リサイズ処理部715や画質補正処理部716は、展開開始の指令を受けると、処理対象について展開待ち状態とし、処理対象のデータをパス管理処理部713へ要求する。すると、パス管理処理部713は、JPEG処理部714、リサイズ処理部715のそれぞれにデータを要求する。JPEG処理部714は、最初のJPEG処理が終了したときにデータの要求が来ていたときには、今回生成したJPEG処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713へ通知する。すると、パス管理処理部713は、設定したパスの順序に基づき、そのポインタ及びデータのライン数をリサイズ処理部715に通知する。この通知を受けたリサイズ処理部715は、そのポインタ及びデータのライン数に基づいてJPEG処理後のRGBデータを出力バッファーから読み出し、そのサイズを縮小することによりリサイズ処理後のRGBデータを生成したあと、データの要求が来ていたときには、今回生成したリサイズ処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713へ通知する。すると、パス管理処理部713は、設定したパスの順序に基づき、そのポインタ及びデータのライン数を画質補正処理部716に通知する。この通知を受けた画質補正処理部716は、そのポインタ及びデータのライン数に基づいてリサイズ処理後のRGBデータを出力バッファーから読み出し、画質補正処理を施すことにより画質補正処理後のRGBデータを生成したあと、データの要求が来ていたときには、今回生成した画質補正処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713へ通知する。すると、パス管理処理部713は、そのポインタ及びデータのライン数を展開画像データに関するものとしてレイアウト合成処理部711へ通知する。レイアウト合成処理部711は、そのポインタ及びデータのライン数に基づいて展開画像データを出力バッファーから読み出し、ハードウェアコピー装置84を使用してレイアウト合成処理を実行し、得られたレイアウト合成処理後のRGBデータを、図示しないレイアウト用メモリーにため込む。
【0036】
一方、GUI画像展開処理部711Bが展開画像データを生成するのに必要な条件と展開開始指令をパス管理処理部713に出力すると、パス管理処理部713は、JPEG処理部714およびリサイズ処理部715に展開開始を指令する。JPEG処理部714は、展開開始指令を受けて処理対象を展開待ち状態とし、レイアウト合成処理部711からの展開開始指令に対するJPEG処理が完了した後に展開待ち状態の処理対象がなくなるまでJPEG画像データの複数ラインにつきJPEG処理を実行してJPEG処理後のRGBデータを生成する。一方、リサイズ処理部715は、展開開始の指令を受けると、処理対象について展開待ち状態とし、処理対象のデータをパス管理処理部713へ要求する。すると、パス管理処理部713は、JPEG処理部714にデータを要求する。JPEG処理部714は、最初のJPEG処理が終了したときにデータの要求が来ていたときには、今回生成したJPEG処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713へ通知する。すると、パス管理処理部713は、設定したパスの順序に基づき、そのポインタ及びデータのライン数をリサイズ処理部715に通知する。この通知を受けたリサイズ処理部715は、そのポインタ及びデータのライン数に基づいてJPEG処理後のRGBデータを出力バッファーから読み出し、そのサイズを縮小することによりリサイズ処理後のRGBデータを生成したあと、データの要求が来ていたときには、今回生成したリサイズ処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713へ通知する。すると、パス管理処理部713は、そのポインタ及びデータのライン数を展開画像データに関するものとしてGUI画像展開処理部711Bへ通知する。レイアウト合成処理部711は、そのポインタ及びデータのライン数に基づいて展開画像データを出力バッファーから読み出し、図形や記号をレイアウトして合成することにより表示用データを生成し、図示しない表示用メモリーにため込む。
【0037】
このようにJPEG処理部714,リサイズ処理部715,画質補正処理部716につき、直列的に処理を行なう様子を説明したが、各処理部714〜716は他の処理部が処理を実行している間も並列的に処理を行なうことになる。すなわち、JPEG処理部714は、JPEG処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713に通知した後、すぐにJPEG画像データの次の複数ラインにつきJPEG処理を実行する。そして、そのJPEG処理が終了したときにデータ要求が来ていたときには、生成したJPEG処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713に通知する。このように、JPEG処理部714は、JPEG処理を実行した後、直列的に行われるリサイズ処理や画質補正処理、レイアウト合成処理が終了するのを待つことなく、次のJPEG処理を実行する。リサイズ処理部715は、リサイズ処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713に通知した後、すぐに処理対象となるデータをパス管理処理部713に要求し、その要求に対して新たな処理対象となるデータのポインタ及びデータのライン数が通知されたときには、そのポインタ及びデータのライン数を利用して出力バッファーから処理対象となるデータを読み出し、リサイズ処理を実行する。そして、そのリサイズ処理が終了したときにデータ要求が来ていたときには、生成したリサイズ処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713に通知する。このように、リサイズ処理部715は、リサイズ処理を実行した後、直列的に行われる画質補正処理やレイアウト合成処理が終了するのを待つことなく、次のリサイズ処理を実行する。画質補正処理部716は、画質補正処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713に通知した後、すぐに処理対象となるデータをパス管理処理部713に要求し、その要求に対して新たな処理対象となるデータのポインタ及びデータのライン数が通知されたときには、そのポインタ及びデータのライン数を利用して出力バッファーから処理対象となるデータを読み出し、画質補正処理を実行する。そして、その画質補正処理が終了したときにデータ要求が来ていたときには、生成した画質補正処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713に通知する。このように、画質補正処理部716は、画質補正処理を実行した後、直列的に行われるレイアウト合成処理が終了するのを待つことなく、次の画質補正処理を実行する。
【0038】
さらに、JPEG処理部714,リサイズ処理部715,画質補正処理部716は、レイアウト合成処理部711から展開開始指令を受け付けると共にGUI画像展開処理部711Bからも同時に展開開始指令を受け付けることができるようになっており、各処理部714〜716は他の処理部がレイアウト合成処理部711からの展開開始指令により処理を実行している間も並列的にGUI画像展開処理部711Bからの展開開始指令により処理を行なうことになる。すなわち、JPEG処理部714は、レイアウト合成処理部711Bからの展開開始指令によりJPEG処理を実行している最中にもGUI画像展開処理部711Bからの展開開始指令を受け付けて展開待ち状態としておき、レイアウト合成処理部711Bからの展開開始指令に基づくJPEG処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713に通知した後、すぐに展開待ち状態とした次のGUI画像展開処理部711Bからの展開開始指令に基づき、JPEG処理を実行する。そして、そのJPEG処理が終了したときにデータ要求が来ていたときには、生成したJPEG処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713に通知する。このように、JPEG処理部714は、レイアウト合成処理部711からの展開開始指令に基づくJPEG処理が完了した後、リサイズ処理や画質補正処理が終了するのを待つことなく、すぐに次のGUI画像展開処理部711Bからの展開開始指令に基づきJPEG処理を実行する。リサイズ処理部715は、レイアウト合成処理部711Bからの展開開始指令に基づくJPEG処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713に通知した後、すぐに次の展開処理部711Bからの展開開始指令に基づき、処理対象となるデータをパス管理装置713に要求し、その要求に対して新たな処理対象となるデータのポインタ及びデータのライン数が通知されたときには、そのポインタ及びデータのライン数を利用して出力バッファーから処理対象となるデータを読み出し、リサイズ処理を実行する。そして、そのリサイズ処理が終了したときにデータ要求が来ていたときには、生成したリサイズ処理後のRGBデータに関するポインタ及びデータのライン数をパス管理処理部713に通知する。このように、リサイズ処理部715は、レイアウト合成処理部711からの展開開始指令に基づくリサイズ処理が完了した後、画質補正処理が終了するのを待つことなく、すぐに次のGUI画像展開処理部711Bからの展開開始指令に基づき、次のリサイズ処理を実行する。
【0039】
なお、図8は、リサイズ処理条件がRGBデータのサイズを縮小する場合を例示したため、パスの順序がJPEG処理部714,リサイズ処理部715,画質補正処理部716と設定されたが、リサイズ処理条件がRGBデータのサイズを拡大する場合には、パスの順序がJPEG処理部714,画質補正処理部716,リサイズ処理部715と設定される。この場合も、図8と同様、各処理部714〜716では並列に処理が実行される。また、画質補正が不要な場合には、パス順序がJPEG処理部714,リサイズ処理部715に設定される。この場合も、図8と同様、各処理部714,715では並列に処理が実行される。また、図8では、レイアウト合成処理部711から展開条件通知がなされた後、GUI画像展開処理部711Bからも展開条件通知がなされた場合について説明したが、複数の画像を複数面にレイアウトして印刷するために、レイアウト合成処理部711から複数回の展開条件通知がなされた場合も同様に複数回の展開条件通知に応じた展開開始指令に基づき各処理部714〜716では並列に処理が実行される。
【0040】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態のフォトプリンター10が本発明の印刷処理装置に相当し、JPEG処理部714が「展開処理部」に相当し、リサイズ処理部715が「リサイズ処理部」に相当し、画質補正処理部716が「画質補正処理部」に相当し、パス管理処理部713が「管理処理部」に相当する。また、レイアウト合成処理部711が「レイアウト合成手段」に相当し、印刷データ生成処理部712が「印刷データ生成手段」に相当する。また、GUI画像展開処理部711Bが「表示用データ生成手段」に相当する。
【0041】
以上詳述した本実施形態のフォトプリンター10によれば、レイアウト合成処理部711から展開開始指令を受け付けると共にGUI画像展開処理部711Bからも同時に展開開始指令を受け付けることができるようにし、JPEG処理部714,リサイズ処理部715,画質補正処理部716が、展開開始指令を受けると、処理対象を展開待ち状態としておき、展開待ち状態の処理対象がある限り他の処理部が一の展開開始指令により処理を実行している間も並列的に他の展開開始指令により処理を実行させるから、複数の圧縮画像に対する展開処理を効率良く行なうことができる。この結果、圧縮画像に対して展開処理を施して印刷する処理と、同様に圧縮画像に対して展開処理を施してディスプレイ22に表示する処理とを同時に行なう際の処理時間を短縮したり、複数の圧縮画像に対して展開処理を施して展開処理後の複数の画像を複数面にレイアウトして印刷を行なう際の処理時間を短縮したりすることができる。
【0042】
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【0043】
例えば、上述した実施形態では、所定形式の圧縮画像データとしてJPEG画像データを例示したが、特にこれに限定されるものではなく、例えばGIF画像データやPNG画像データなどを用いて展開画像データを生成するとしてもよい。
【0044】
上述した実施形態では、各装置81,82,83の2つの装置間でデータの受け渡しを行なうにあたりポインタ及びデータのライン数を通知することとしたが、データのコピーによってデータの受け渡しを行なうようにしてもよい。この場合には、データのコピーに時間を要する分、印刷時間が長くなるものの、各装置81,82,83の処理を並列的に実行するため、それによる印刷時間の短縮効果は十分得られる。
【0045】
上述した実施形態では、印刷処理装置としてインクジェット方式のフォトプリンター10を例示したが、インクジェット方式の印刷機構のほかにスキャナなどを備えたマルチファンクションプリンターやFaxなどに本発明を適用してもよい。
【0046】
上述した実施形態では、メモリーカードMに記憶されたJPEG画像ファイルを利用するものとして説明したが、フォトプリンター10に接続された外部機器(例えばデジタルカメラや携帯電話、CD/DVDドライブ装置など)に記憶されたJPEG画像ファイルを利用するものとしてもよいし、フォトプリンター10にネットワーク経由で配信されてきたJPEG画像ファイルを保存しそれを利用するものとしてもよい。
【図面の簡単な説明】
【0047】
【図1】フォトプリンターの前面扉及びカバーを開けた状態の斜視図。
【図2】フォトプリンターの電気的構成の概略を示すブロック図。
【図3】コントローラーのCPUを機能ブロック図で表したときの説明図。
【図4】パス管理処理ルーチンの一例を示すフローチャート。
【図5】JPEG処理ルーチンの一例を示すフローチャート。
【図6】リサイズ処理ルーチンの一例を示すフローチャート。
【図7】画質補正処理ルーチンの一例を示すフローチャート。
【図8】レイアウト合成画像データと表示用データを生成する際のタイムチャート。
【符号の説明】
【0048】
10 フォトプリンター、12 プリンター本体、14 前面扉、16 メモリーカードスロット、18 リーダライター、20 操作パネル、22、ディスプレイ 24 ボタン群、24a 電源ボタン、24b メニューボタン、24c キャンセルボタン、24d 印刷ボタン、24e 保存ボタン、24f〜i 矢印ボタン、24j OKボタン、30 カバー、32 窓、50 印刷機構、52 インクカートリッジ、54 印刷ヘッド、56 キャリッジ、58 給紙口、59 用紙ガイド、70 コントローラー、71 CPU、72 ROM、73 RAM、74 バス、80 ハードウェア装置群、81 JPEG処理装置、82 リサイズ装置、83 画質補正装置、84 ハードウェアコピー装置、710 描画オブジェクト生成処理部、710B GUI部、711 レイアウト合成処理部、711B GUI画像展開処理部、712 印刷データ生成処理部、713 パス管理処理部、714 JPEG処理部、715 リサイズ処理部、716 画質補正処理部、717 共有メモリー管理処理部。

【特許請求の範囲】
【請求項1】
所定フォーマットで圧縮されてなる圧縮画像データを展開すると共に該展開した展開画像データに基づいて画像を形成する画像形成装置であって、
前記圧縮画像データを展開処理する展開処理部と、
前記展開されたデータをリサイズするリサイズ処理部と、
前記展開されたデータの画質を補正する画質補正処理部と、
前記圧縮画像データの展開要求を受け付けて前記展開処理部と前記リサイズ処理部と前記画質補正処理部の各処理の実行を管理する管理処理部と、
を備え、
前記管理処理部は、複数の圧縮画像データの展開要求が受け付けられたとき、前記受け付けられた複数の展開要求のそれぞれに対して前記展開処理部と前記リサイズ処理部と前記画質補正処理部のうち実行する処理部と処理順序とを決定して処理開始の指示を順次出力し、
前記展開処理部と前記リサイズ処理部と前記画質補正処理部は、それぞれ別個のハードウエア装置を備えて構成され、前記管理処理部から複数の処理開始の指示を逐次受け付けて処理待ち状態とし他の処理部が処理している間も自身が処理可能な状態となったときに並行して該処理待ち状態の指示を順次実行する
画像形成装置。
【請求項2】
画像の印刷と表示とが可能な請求項1記載の画像形成装置であって、
前記展開画像データをレイアウトして印刷用のレイアウト合成画像データを生成するレイアウト合成手段と、
前記レイアウト合成画像データに基づいて印刷データを生成する印刷データ生成手段と、
前記展開画像データに基づいて表示データを生成する表示データ生成手段と、
を備える画像形成装置。
【請求項3】
画像の印刷が可能な請求項1または2記載の画像形成装置であって、
前記展開画像データ生成手段により生成された複数の展開画像データを1枚の用紙に対して複数面にレイアウトして印刷用のレイアウト合成画像データを生成するレイアウト合成手段と、
前記レイアウト合成画像データに基づいて印刷データを生成する印刷データ生成手段と、
を備える画像形成装置。
【請求項4】
コンピューターを請求項1ないし3いずれか1項に記載の画像形成装置として機能させるためのプログラム。

【図1】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図2】
image rotate


【公開番号】特開2010−155369(P2010−155369A)
【公開日】平成22年7月15日(2010.7.15)
【国際特許分類】
【出願番号】特願2008−334477(P2008−334477)
【出願日】平成20年12月26日(2008.12.26)
【出願人】(000002369)セイコーエプソン株式会社 (51,324)
【Fターム(参考)】