(57)【要約】【課題】  本発明は、アプリケーションの実行環境を適切に提供することができ、変倍コピー機能等の変倍機能を実現する画像形成装置を提供することを目的とする。【解決手段】  開示の画像形成装置は、出力面に出力する画像を編集する画像編集手段と、設定情報に基づいて、出力する画像を拡大・縮小する処理に係る実行要求を受け付ける変倍実行要求受付手段と、を有し、前記画像編集手段は、前記変倍実行要求手段からの要求に応じ前記出力する画像を拡大・縮小する処理を行うことを特徴とする。【選択図】  図１１
2011040830.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションから要求されたジョブを実行する画像形成装置において、
前記ジョブに対する設定情報を前記アプリケーションより受け付ける設定情報受付手段と、
前記アプリケーションよりジョブの実行要求を受け付けるジョブ実行要求受付手段と、
前記ジョブ実行要求受付手段からの要求に応じ、前記ジョブの設定情報に従ってジョブの実行を制御するジョブ実行制御手段と、
前記設定情報に基づいて判定される、前記ジョブの出力物の出力面ごとに当該出力面の出力を実行させる出力要素管理手段と、
前記出力面ごとの出力要素管理手段を前記出力面の出力順に応じて束ね、前記ジョブ実行制御手段からの要求に応じ、束ねている前記出力要素管理手段に対して前記出力順に応じて前記出力面の出力の実行を要求する出力束管理手段と、
前記出力面に出力する画像を編集する画像編集手段と、
前記設定情報に基づいて、前記出力する画像を拡大・縮小する処理に係る実行要求を受け付ける変倍実行要求受付手段と、を有する画像形成装置であって、
前記画像編集手段は、前記変倍実行要求手段からの要求に応じ前記出力する画像を拡大・縮小する処理を行うことを特徴とする画像形成装置。
【請求項２】
前記画像編集手段は、前記原稿の大きさ及び前記被記録媒体の大きさに基づき、前記出力する画像を拡大・縮小させる程度を表す変倍率を決定することを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記変倍率は、主走査方向と副走査方向とで独立して決定されることを特徴とする請求項２に記載の画像形成装置。
【請求項４】
前記出力要素管理手段が保持する前記出力面の大きさと、前記画像編集手段により拡大・縮小する処理を施された前記出力する画像の大きさとの比較を行い、該比較の結果に基づき前記出力する画像が印刷可能か否かを判定する印刷可能可否判定手段を有することを特徴とする請求項１乃至３の何れか一に記載の画像形成装置。
【請求項５】
前記印刷可能可否判定手段により否と判定された場合、
前記画像編集手段は、前記画像編集手段により拡大・縮小する処理を施された前記出力する画像に対し、前記出力面の大きさより該出力する画像の大きさが小さくなるように前記縮小する処理を行うことを特徴とする請求項４に記載の画像形成装置。
【請求項６】
アプリケーションから要求されたジョブを実行する画像形成装置における画像形成方法であって、
設定情報受付手段が、前記ジョブに対する設定情報を前記アプリケーションより受け付けるステップと、
ジョブ実行要求受付手段が、前記アプリケーションよりジョブの実行要求を受け付けるステップと、
ジョブ実行制御手段が、前記ジョブ実行要求受付手段からの要求に応じ、前記ジョブの設定情報に従ってジョブの実行を制御するステップと、
出力要素管理手段が、前記設定情報に基づいて判定される、前記ジョブの出力物の出力面ごとに当該出力面の出力を実行させるステップと、
出力束管理手段が、前記出力面ごとの出力要素管理手段を前記出力面の出力順に応じて束ね、前記ジョブ実行制御手段からの要求に応じ、束ねている前記出力要素管理手段に対して前記出力順に応じて前記出力面の出力の実行を要求すると、
画像編集手段が、前記出力面に出力する画像を編集するステップと、
変倍実行要求受付手段が、前記設定情報に基づいて、前記出力する画像を拡大・縮小する処理に係る実行要求を受け付けるステップと、を含み、
前記画像編集手段は、前記変倍実行要求手段からの要求に応じ前記出力する画像を拡大・縮小する処理を行うことを特徴とする画像形成方法。
【請求項７】
コンピュータに、請求項６に記載の画像形成方法を実行させるための画像形成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置における出力画像の変倍処理の技術に関する。
【背景技術】
【０００２】
特許文献１には、パイプ＆フィルタアーキテクチャを採用し、フィルタと呼ばれるソフトウェアコンポーネントの組み合わせによって構成されるアクティビティと呼ばれるソフトウェアコンポーネントによって、ジョブを実行するアプリケーションが実現される画像形成装置が開示されている。このような画像形成装置によれば、新たな機能の実装に関する柔軟性を著しく向上させることができる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかしながら、特許文献１に記載された画像形成装置において新たなアプリケーション（特許文献１における「アクティビティ」）を実装する場合、フィルタを組み合わせるための知識が開発者に必要とされる。また、アプリケーションの実装に伴って、新たなフィルタを実装する必要がある場合、当該フィルタを実装するための知識が必要とされる。
【０００４】
このような知識は、画像形成装置においてジョブを実行するためのアーキテクチャ又はロジックに関する比較的深い層に属する部分である。斯かる部分について、サードベンダー等による開発を可能とするためには、画像形成装置のベンダーは、当該部分についてかなり詳しい技術内容を開示しなければならないことになる。その結果、企業秘密として保持していきたい重要な技術をも開示する必要性が高まり、技術流出の可能性が高まる虞がある。
【０００５】
また、特許文献１に記載された画像形成装置では、以上のような知識を会得するまでの初回の開発コストが大きくなる可能性が高い。したがって、初回の開発コストをより小さく抑えられるアーキテクチャの提供が望まれる。
【０００６】
上記のような問題点に鑑み、本発明では、アプリケーションの実行環境を適切に提供することができ、変倍コピー機能等の変倍機能を実現する画像形成装置、画像形成方法および画像形成プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
開示する画像形成装置の一形態は、アプリケーションから要求されたジョブを実行する画像形成装置であって、前記ジョブに対する設定情報を前記アプリケーションより受け付ける設定情報受付手段と、前記アプリケーションよりジョブの実行要求を受け付けるジョブ実行要求受付手段と、前記ジョブ実行要求受付手段からの要求に応じ、前記ジョブの設定情報に従ってジョブの実行を制御するジョブ実行制御手段と、前記設定情報に基づいて判定される、前記ジョブの出力物の出力面ごとに当該出力面の出力を実行させる出力要素管理手段と、前記出力面ごとの出力要素管理手段を前記出力面の出力順に応じて束ね、前記ジョブ実行制御手段からの要求に応じ、束ねている前記出力要素管理手段に対して前記出力順に応じて前記出力面の出力の実行を要求する出力束管理手段と、前記出力面として出力させる入力画像を保持する入力画像保持手段と、前記設定情報に基づいて、変倍の実行要求を受け付ける変倍実行要求受付手段と、前期出力面に出力する画像を編集する画像編集手段とを有し、前記画像編集手段は、前記変倍実行要求受付手段からの要求に応じ、変倍画像を作成することを特徴とする。
【０００８】
さらに、開示する画像形成装置の一形態は、前記画像編集手段が画像の変倍率を保持する変倍率保持手段をもつことを特徴とする。
【０００９】
さらに、開示する画像形成装置の一形態は、前記入力画像保持手段が原稿サイズを保持する原稿サイズ保持手段を有し、前記出力要素管理手段が用紙サイズを保持する用紙サイズ保持手段を有し、前記画像編集手段が原稿サイズと用紙サイズの組み合わせから変倍率を決定することを特徴とする（自動倍率選択）。
【００１０】
さらに、開示する画像形成装置の一形態は、画像編集手段が、主走査方向と副走査方向についてそれぞれ独立した変倍率を保持するための複数の変倍率保持手段をもつことを特徴とする（独立変倍）。
【００１１】
さらに、開示する画像形成装置の一形態は、前記出力要素管理手段が用紙サイズを保持する用紙サイズ保持手段を有し、前記画像編集手段が変倍した画像と用紙サイズの大きさを比較して用紙の領域に変倍画像を印刷可能か否か判定することを特徴とする（領域判定）。
【００１２】
さらに、開示する画像形成装置の一形態は、判定結果をユーザに確認させ、実行条件をユーザに設定させることを特徴とする。
【００１３】
さらに、開示する画像形成装置の一形態は、用紙サイズに描画できる範囲で、そのまま出力することを特徴とする。
【００１４】
さらに、開示する画像形成装置の一形態は、用紙サイズの領域に収まるように変倍率を自動的に調整して出力することを特徴とする。
【発明の効果】
【００１５】
開示の画像形成装置は、アプリケーションの実行環境を適切に提供することができ、変倍コピー機能等の変倍機能を実現することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態における画像形成装置のハードウェア構成の一例を示す図である。
【図２】本発明の実施の形態における複合機のソフトウェア構成例を示す図である。
【図３】ＭＦＰプロファイルの構成例を示す図である。
【図４】ＭＦＰプロファイルの各層のクラス構成例を示す図である。
【図５】ＪＰＳの概念モデルを示す図である。
【図６】プレゼンテーション層がＪＰＳを包含する例を示す図である。
【図７】プレゼンテーション層がＪＰＳを包含する場合のアプリケーションとＪＳＰとの関係を示す図である。
【図８】ＪＰＳがＭＦＰサービス抽象モデルを継承する例を示す図である。
【図９】アプリケーションが複合機にジョブを実行させるための処理手順を説明するためのシーケンス図である。
【図１０】アプリケーションが複合機にジョブを実行させるために実装が必要とされる手順を示すフローチャートである。
【図１１】変倍を実現するためのドメインロジックの構成例である。
【図１２】印刷時のドメインロジックの動作を示すフローチャートである。
【図１３】変倍を伴う印刷時の動作を示す図である。
【図１４】変倍処理の動作を示すフローチャートである。
【図１５】原稿サイズと出力サイズの組合せによる変倍率テーブルを示す図である。
【発明を実施するための形態】
【００１７】
以下、図面に基づいて本発明の実施の形態を説明する。図１は、本発明の実施の形態における画像形成装置のハードウェア構成の一例を示す図である。
【００１８】
図１では、画像形成装置の具体例として、プリンタ、コピー、スキャナ、又は、ファクス等の複数の機能を一台の筐体において実現する複合機１のハードウェア構成が示されている。
【００１９】
複合機１のハードウェアとしては、コントローラ１０１と、オペレーションパネル１０２と、ファクシミリコントロールユニット（ＦＣＵ）１０３と、撮像部１０４と、印刷部１０５が存在する。
【００２０】
コントローラ１０１は、ＣＰＵ１１１、ＡＳＩＣ１１２、ＮＢ１２１、ＳＢ１２２、ＭＥＭ−Ｐ１３１、ＭＥＭ−Ｃ１３２、ＨＤＤ（ハードディスクドライブ）１３３、メモリカードスロット１３４、ＮＩＣ（ネットワークインタフェースコントローラ）１４１、ＵＳＢデバイス１４２、ＩＥＥＥ１３９４デバイス１４３、セントロニクスデバイス１４４により構成される。
【００２１】
ＣＰＵ１１１は、種々の情報処理用のＩＣである。ＡＳＩＣ１１２は、種々の画像処理用のＩＣである。ＮＢ１２１は、コントローラ１０１のノースブリッジである。ＳＢ１２２は、コントローラ１０１のサウスブリッジである。ＭＥＭ−Ｐ１３１は、複合機１のシステムメモリである。ＭＥＭ−Ｃ１３２は、複合機１のローカルメモリである。ＨＤＤ１３３は、複合機１のストレージである。メモリカードスロット１３４は、メモリカード１３５をセットするためのスロットである。ＮＩＣ１４１は、ＭＡＣアドレスによるネットワーク通信用のコントローラである。ＵＳＢデバイス１４２は、ＵＳＢ規格の接続端子を提供するためのデバイスである。ＩＥＥＥ１３９４デバイス１４３は、ＩＥＥＥ１３９４規格の接続端子を提供するためのデバイスである。セントロニクスデバイス１４４は、セントロニクス仕様の接続端子を提供するためのデバイスである。オペレーションパネル１０２は、オペレータが複合機１に入力を行うためのハードウェア（操作部）であると共に、オペレータが複合機１から出力を得るためのハードウェア（表示部）である。
【００２２】
図２は、本発明の実施の形態における複合機のソフトウェア構成例を示す図である。同図において、複合機１は、ＯＳ２０、ドライバプログラム２１、ＪＶＭ３０、ＣＤＣ３１、Ｆｏｕｎｄａｔｉｏｎ  Ｐｒｏｆｉｌｅ３２、ＭＦＰプロファイル４０、ネイティブモジュール５０、及びアプリケーション６０等を有する。
【００２３】
ＯＳ２０は、いわゆるＯＳ（Operating System）である。ドライバプログラム２１は、ハードウェアを制御する各種のプロラムモジュールである。ＪＶＭ３０は、Java（登録商標） Virtual Machine（仮想マシン）であり、Ｊａｖａ（登録商標）の実行環境を実現する。ＣＤＣ（Connected Device Configuration）３１及びＦｏｕｎｄａｔｉｏｎ  Ｐｒｏｆｉｌｅ３２は、Ｊａｖａ（登録商標）  Ｍｉｃｒｏ  Ｅｄｉｔｉｏｎの基本構成である。
【００２４】
ＭＦＰプロファイル４０は、複合機１用のアプリケーション６０の開発環境及び実行環境を提供するプラットフォーム（プログラムモジュール群）である。より詳しくは、ＭＦＰプロファイル４０は、複合機１にジョブを実行させるためのＪａｖａ（登録商標）インタフェース（ＡＰＩ（Application Program Interface））をアプリケーション６０に提供し、当該インタフェースの呼び出しに応じて複合機１を制御する。なお、ＭＦＰ（Multifunction Peripheral）とは、複合機の略称である。
【００２５】
ネイティブモジュール５０は、ネイティブコードによって記述されたプログラムモジュール群である。ネイティブモジュール５０は、例えば、Ｃ言語やＣ＋＋言語によるインタフェース（ＡＰＩ）をアプリケーション６０に提供し、当該インタフェースの呼び出しに応じて複合機１を制御する。
【００２６】
アプリケーション６０は、複合機１にジョブを実行させるプログラムであり、プリントアプリ６１、コピーアプリ６２、スキャンアプリ６３、ＦＡＸアプリ６４等、ジョブ種別（印刷、コピー、スキャン、ＦＡＸ送信等）に応じて複数のアプリケーション６０が存在する。各アプリケーション６０は、ＭＦＰプロファイル４０又はネイティブモジュール５０によって提供されるインタフェースに基づいて開発される。厳密には、Ｊａｖａ（登録商標）コードによるアプリケーション６０からはＭＦＰプロファイル４０が利用され、ネイティブコードによるアプリケーション６０からはネイティブモジュール５０が利用される。
【００２７】
本実施の形態において、ＭＦＰプロファイル４０及びネイティブモジュール５０のインタフェースは複合機１のメーカー外にも公開されている。したがって、アプリケーション６０は、複合機１のメーカーだけでなく、サードベンダー等によっても開発可能である。
ユーザから見た場合、複合機１を導入（設置）した後に、市場で販売されている新たなアプリケーション６０を複合機１にインストールし、複合機１の機能強化を図ることができる。
【００２８】
本実施の形態では、特に、ＭＦＰプロファイル４０について説明する。図３は、ＭＦＰプロファイルの構成例を示す図である。同図において、ＭＦＰプロファイル４０は、プレゼンテーション層４１、ドメインロジック層４２、及びサービス層４３等より構成される。なお、図中における各層の上下関係は、層間の呼び出し関係（利用関係）に基づいている。基本的に上の層が下の層を呼び出す（利用する）。
【００２９】
プレゼンテーション層４１は、アプリケーション６０に公開されるインタフェース部分である。すなわち、プレゼンテーション層４１は、アプリケーション６０からの要求を受け付け、当該要求に対する応答をアプリケーション６０に返却する。なお、アプリケーション６０の開発者からはプレゼンテーション層４１のみが興味の対象となる。
【００３０】
ドメインロジック層４２は、プレゼンテーション層４１によって受け付けられたアプリケーション６０からの要求に応じ、複合機１にジョブを実行させるためのロジックが実装されている部分である。ドメインロジック層４２は、その役割（責務）に応じて要求管理部４２１、Ｉ／Ｏファンクション部４２２、Ｉ／Ｏリソース管理部４２３、及びシステム管理部４２４等に細部化される。
【００３１】
要求管理部４２１は、プレゼンテーション層４１によって受け付けられるアプリケーション６０からの要求を管理する。Ｉ／Ｏファンクション部４２２は、ジョブ対するデータの入力やジョブの実行によるデータの出力等の機能を実現する。Ｉ／Ｏリソース管理部４２３は、撮像部１０４や印刷部１０５等のデータの入出力に関するハードウェアリソースを管理する。システム管理部４２４は、要求管理部４２１、Ｉ／Ｏファンクション部４２２、及びＩ／Ｏリソース管理部４２３等の横断的関心事（例えば、各部より共通に利用される情報）を管理する。
【００３２】
サービス層４３は、デバイス、ミドルウェア、又はＯＳ等へのアクセスを隠蔽する部分である。すなわち、サービス層４３によって、複合機１の機種の違い、又は複合機１において利用されるミドルウェア又はＯＳ等の違いが吸収される。
【００３３】
ＭＦＰプロファイル４０の各層について更に詳しく説明する。図４は、ＭＦＰプロファイルの各層のクラス構成例を示す図である。なお、同図のクラス群は、インタフェースを示す。したがって、実装は当該インタフェースに対する実装クラスにおいて行われる。以下において、「ＸＸＸクラスのインスタンス」というとき、ＸＸＸクラスの実装クラスのインスタンスを意味する。
【００３４】
同図において、プレゼンテーション層４１は、サービス検索クラス４１１、入出力形式クラス４１２、要求属性値群クラス４１３、サービスクラス４１４、サービス属性値群クラス４１４１、ドキュメントクラス４１５、ドキュメント属性値群クラス４１５１、ジョブクラス４１６、及びジョブ属性値群クラス４１６１等を含む。
【００３５】
サービス検索クラス４１１のインスタンス（サービス検索オブジェクト）は、アプリケーション６０からの要求に応じサービスを検索する。サービスとは、ジョブを実行に関係するソフトウェア及びハードウェアの集合（すなわち、ジョブの実行主体）をいう。サービスの検索条件は、入出力形式クラス４１２のインスタンスと要求属性値群クラス４１３のインスタンスとによって指定される。
【００３６】
入出力形式クラス４１２のインスタンス（入出力形式オブジェクト）は、ジョブの入力データ又は出力データのデータ形式を保持する。要求属性値群クラス４１３のインスタンス（要求属性値群オブジェクト）は、アプリケーション６０から要求において指定されるジョブに対する設定値の集合を保持する。
【００３７】
サービスクラス４１４のインスタンス（サービスオブジェクト）は、サービスの代表を表現する。サービスクラス４１４の実装クラスはサービスごとに定義される。サービス属性値群クラス４１４１のインスタンス（サービス属性値群オブジェクト）は、サービスの状態を保持する。
【００３８】
ドキュメントクラス４１５のインスタンス（ドキュメントオブジェクト）は、ジョブに対して入力されるドキュメント（データ）を表現する。例えば、印刷ジョブであれば印刷データが相当する。ドキュメント属性値群クラス４１５１のインスタンス（ドキュメント属性値群オブジェクト）は、ドキュメントの属性を保持する。
【００３９】
ジョブクラス４１６のインスタンス（ジョブオブジェクト）は、ジョブを表現する。ジョブクラス４１６の実装クラスはジョブの種別ごとに定義される。ジョブ属性値群クラス４１６１のインスタンス（ジョブ属性値群オブジェクト）は、ジョブの状態を保持する。
【００４０】
また、ドメインロジック層４２の要求管理部４２１は、成果物クラス４２１１を含む。成果物クラス４２１１のインスタンス（成果物オブジェクト）は、ジョブによる成果物を実現するための処理（すなわち、ジョブの実行制御）を行う。成果物オブジェクトは、成果物の構成要素や、成果物の進捗状況等を知っている。なお、成果物とは、例えば、１枚の原稿を３部コピーするというコピージョブであれば、３枚のコピー結果そのものをいう。
【００４１】
ドメインロジック層４２のＩ／Ｏファンクション部４２２は、入力物クラス４２２１、原画像クラス４２２２、出力物クラス４２２３、出力要素クラス４２２４、及び出力束クラス４２２５等を含む。入力物クラス４２２１のインスタンス（入力物オブジェクト）は、ジョブに入力データに係る原稿の１枚又は１ページ（入力物）を表現する。したがって、入力物オブジェクトは、コピージョブやスキャンジョブ等、原稿から入力データが得られるジョブに利用される。入力物クラス４２２１は自らに対する再帰的な関連を有している。したがって、入力物オブジェクトは、チェーン構造で関連付けられることにより、複数枚の原稿を表現する。なお、本実施の形態において、便宜上、原稿の１枚と１ページとは等価であるとする。
【００４２】
原画像クラス４２２２のインスタンス（原画像オブジェクト）は、ジョブに対する入力画像を表現する。例えば、コピージョブであれば、スキャンされたスキャン画像を表現する。原画像オブジェクトは、画像の入力方法を知っており、また、入力処理の進捗状況（撮像部１０４による読み取りの進捗状況）を知っている。
【００４３】
出力物クラス４２２３のインスタンス（出力物オブジェクト）は、ジョブによる成果物の一部（出力物）を表現する。出力物オブジェクトは、成果物がどのような材料（入力物）で構成されているのかや、出力物の出力の実行可能条件等を知っている。出力物オブジェクトはまた、出力物の出力に必要な入力物を知っており、当該入力物に係る入力物オブジェクトに紐づいている。
【００４４】
出力束クラス４２２５のインスタンス（出力束オブジェクト）は、成果物がどのような順番（ソート順又はスタック順等）で構成されているかを知っている。出力要素クラス４２２４のインスタンス（出力要素オブジェクト）は、出力要素（出力面）の出力の方法を知っている。出力要素は、例えばコピージョブのときには印刷面を示す。
【００４５】
ドメインロジック層４２のＩ／Ｏリソース管理部４２３は、入力リソースクラス４２３１及び出力リソースクラス４２３２等を含む。入力リソースクラス４２３１のインスタンス（入力リソースオブジェクト）は、データを入力するためのハードウェア資源（撮像部１０４等）を管理する。出力リソースクラス４２３２のインスタンス（出力リソースオブジェクト）は、データを出力するためのハードウェア資源（印刷部１０５等）を管理する。
【００４６】
ドメインロジック層４２のシステム管理部４２４は、機内監視クラス４２４１を含む。
機内監視クラス４２４１のインスタンス（機内監視オブジェクト）は、複合機１の状態を監視する。
【００４７】
以上の各層のクラス群の中で、プレゼンテーション層４１に属するクラス群が、アプリケーション６０に利用可能なインタフェースを提供する。斯かるプレゼンテーション層４１のクラス群（インタフェース）は、ＪＰＳ（Java（登録商標） Print Service）に準拠した構成を有している。換言すれば、プレゼンテーション層４１において、ＪＰＳを提供することができる。ここで、ＪＰＳとは、Ｊａｖａ（登録商標）プラットフォームにおいて印刷に関する制御を実行するための標準のＡＰＩ（Application Program Interface）である。このことは、印刷ジョブを実行するアプリケーション６０の開発者は、ＪＰＳに関する知識を有していれば、ＭＦＰプロファイル４０上に簡便に当該アプリケーション６０を実装することができることを意味する。
【００４８】
図５は、ＪＰＳの概念モデルを示す図である。同図に示されるように、ＪＰＳは、ドキュメントインタフェース群、印刷ジョブインタフェース群、プリンタサービスインタフェース群より構成される。
【００４９】
ドキュメントインタフェース群におけるＳｉｍｐｌｅＤｏｃクラス及びＤｏｃインタフェース実装クラスは、印刷データを表現するクラスであり、本実施の形態のドキュメントクラス４１５に対応する。ＤｏｃＦｌａｖｏｒクラスは、印刷データのデータ形式を表現するクラスであり、本実施の形態の入出力形式クラス４１２に対応する。
【００５０】
印刷ジョブインタフェース群におけるＤｏｃＰｒｉｎｔＪｏｂクラスは、印刷ジョブを表現するクラスであり、本実施の形態のジョブクラス４１６に対応する。ＰｒｉｎｔＡｔｔｒｉｂｕｔｅＳｅｔ実装クラスは、印刷要求の属性値群を表現し、本実施の形態の要求属性値群クラス４１３に対応する。
【００５１】
プリントサービスインタフェース群におけるＰｒｉｎｔＳｅｒｖｉｃｅ実装クラス及びＤｅｆａｕｌｔＰｒｉｎｔＳｅｒｖｉｃｅ実装クラス等は、印刷サービス（プリンタ）を表現するクラスであり、本実施の形態のサービスクラス４１４に対応する。ＰｒｉｎｔＳｅｒｖｉｃｅＬｏｏｋＵｐ実装クラスは、印刷サービス（プリンタ）を検索するクラスであり、本実施の形態のサービス検索クラス４１１に対応する。
【００５２】
なお、図４に示されるプレゼンテーション層４１のクラス群（インタフェース）は、印刷ジョブだけでなく、複数種類のジョブ（例えば、コピージョブ、スキャンジョブ、ＦＡＸ送信ジョブ等）に対して共通に定義されている。すなわち、プレゼンテーション層４１は、ＪＰＳをより抽象化（一般化）したものになっている。したがって、プレゼンテーション層４１に基づいてＪＰＳを実現する場合、プレゼンテーション層４１にＪＰＳを包含させるか、又はＪＰＳがプレゼンテーション層４１のクラス群（以下「ＭＦＰサービス抽象モデル」という。）を継承するようにすればよい。
【００５３】
図６は、プレゼンテーション層がＪＰＳを包含する例を示す図である。この場合、プレゼンテーション層４１は一つのソフトウェアコンポーネントとして構成され、当該ソフトウェアコンポーネント内にＪＰＳの実装が含まれる。また、他のサービス（例えば、コピージョブを実現するコピーサービス）に関するクラス群についても、ＭＦＰサービス抽象モデルに基づいて（ＭＦＰサービス抽象モデルと同様の構成によって）実装され、それぞれサービスの実装が当該ソフトウェアコンポーネント内に含まれる。したがって、この場合、アプリケーション６０とＪＳＰとの関係は、図７に示されるようになる。
【００５４】
図７において、プレゼンテーション層４１は一つのソフトウェアコンポーネントとして、ＪＰＳや各サービス（同図ではコピーサービス）のインタフェースを公開すると共にその実装を包含する。したがって、アプリケーション６０は、公開されたＪＰＳや他のサービスのインタフェースを呼び出すことにより、それぞれの実装を利用することができる。このような構成では、各サービス（ＪＰＳも含む）のインタフェースは論理的には関係しているが、実質的には関係を有さない。したがって、仮に、ＪＰＳのバージョンアップ等で変更があったとしても、基本的には他のサービスはその影響を受けないという利点がある。
【００５５】
また、図８は、ＪＰＳがＭＦＰサービス抽象モデルを継承する例を示す図である。この場合、ＪＰＳの各クラスは、ＭＦＰサービス抽象モデルにおいて対応するクラスを継承する。他のサービス（例えば、コピーサービス）に関する実装クラス群もＭＦＰサービス抽象モデルのクラスを継承する。この場合、アプリケーション６０は、各サービス（ＪＰＳも含む）のクラス群をＭＦＰサービス抽象モデルのサブクラスとして利用することができる。
【００５６】
このような構成では、ＭＦＰサービス抽象モデルにおいて各サービスの共通部分を実装することにより、各サービスはその差分のみを実装すればよいという利点がある。また、継承により各サービスの構造がシンプルとなり、保守性を向上させることができる。
【００５７】
以下、複合機１の処理手順について説明する。図９は、アプリケーションが複合機にジョブを実行させるための処理手順を説明するためのシーケンス図である。同図における各オブジェクトの参照番号は、各オブジェクトのクラスの参照番号（図４参照）の末尾に「Ａ」を付加したものである。
【００５８】
ジョブの開始指示の入力に応じ、当該ジョブに対応するアプリケーション６０（プリントアプリ６１、コピーアプリ６２、スキャンアプリ６３、又はＦＡＸアプリ６４等）は、入出力形式オブジェクト４１２Ａをメモリ（ＭＥＭ−Ｐ１３１）内に生成する（Ｓ１０１）。ここで、アプリケーション６０は、ジョブ（印刷ジョブ、コピージョブ、スキャンジョブ、又はＦＡＸ送信ジョブ等）に応じた入力データ及び出力データの少なくともいずれか一方のデータ形式を入出力形式オブジェクト４１２Ａに設定する。例えば、印刷ジョブであれば、印刷データのデータ形式が設定される。なお、ジョブの開始指示の入力とは、印刷ジョブであれば印刷データの受信が相当する。また、コピージョブ、スキャンジョブ、ＦＡＸ送信ジョブ等であれば、ユーザによるスタートボタンの押下等が相当する。
【００５９】
続いて、アプリケーション６０は、要求属性値群オブジェクト４１３Ａをメモリ内に生成する（Ｓ１０３）。ここで、アプリケーション６０は、ジョブに対して要求された設定値（要求属性値群）を要求属性値群オブジェクト４１３に設定する。当該設定値は、印刷ジョブであれば印刷データ内に含まれている。また、コピージョブ、スキャンジョブ、及びＦＡＸジョブ等であれば、オペレーションパネル１０２を介して設定され、メモリ内に記録されている。
【００６０】
続いて、アプリケーション６０は、入出力形式オブジェクト４１２Ａ及び要求属性値群オブジェクト４１３Ａを検索条件として指定して、サービスの検索をサービス検索オブジェクト４１１Ａに要求する（Ｓ１０５）。当該要求に応じ、サービス検索オブジェクト４１１Ａは、指定された検索条件に合致するサービスを検索し、当該サービスに対応するサービスオブジェクト４１４Ａをメモリ内に生成する（Ｓ１０７）。続いて、サービス検索オブジェクト４１１Ａは、生成されたサービスオブジェクト４１４Ａをアプリケーション６０に返却する（Ｓ１０９）。
【００６１】
なお、サービス検索オブジェクト４１１Ａによるサービスの検索は、例えば、ＨＤＤ１３３に記録されているサービス管理情報に基づいて行われる。サービス管理情報には、入力データの形式及び出力データの形式の少なくともいずれか一方と、要求属性値群との組み合わせに応じて、サービスクラス４１４の実装クラスのクラス名（例えば、「プリントサービス」、「コピーサービス」、「スキャンサービス」、「ＦＡＸサービス」等）が登録されている。したがって、サービス検索オブジェクト４１１Ａは、アプリケーション６０より指定された入出力形式オブジェクト４１２Ａ及び要求属性値群オブジェクト４１３Ａに対応するクラス名をサービス管理情報より検索し、検索されたクラス名に対応するサービスオブジェクト４１４Ａを生成する。
【００６２】
続いて、アプリケーション６０は、返却されたサービスオブジェクト４１４Ａに対してジョブの生成を要求する（Ｓ１１１）。サービスオブジェクト４１４Ａは、対応するジョブ（印刷ジョブ、コピージョブ、スキャンジョブ、又はＦＡＸ送信ジョブ等）の実装クラスのジョブオブジェクト４１６Ａを生成し（Ｓ１１３）、当該ジョブオブジェクト４１６Ａをアプリケーション６０に返却する（Ｓ１１５）。
【００６３】
続いて、アプリケーション６０は、ジョブにおいて処理対象とするドキュメントをカプセル化したドキュメントオブジェクト４１５Ａをメモリ内に生成する（Ｓ１１７）。
印刷ジョブであれば、印刷データがカプセル化される。当該ドキュメントのデータ形式は、ジョブの種別に応じ、ＰｏｓｔＳｃｒｉｐｔファイル、ＪＰＥＧイメージ、ＵＲＬ、又はプレーンテキスト等、様々な形式をとり得る。なお、コピージョブ及びスキャンジョブ等については、アプリケーション６０は処理対象とするデータを有していない。したがって、このようなジョブについては、アプリケーション６０はドキュメントオブジェクト４１５Ａを生成する必要はない。一方、印刷ジョブの場合、印刷データの受信はアプリケーション６０（プリントアプリ６１）によって行われる。したがって、この場合は、ドキュメントオブジェクト４１５Ａが生成される。
【００６４】
続いて、アプリケーション６０は、ステップＳ１１５において返却されたジョブオブジェクト４１５Ａに対して、ドキュメントオブジェクト４１５Ａ及び要求属性値群オブジェクト４１３Ａを指定して、ジョブの実行を要求する（Ｓ１１９）。なお、ドキュメントオブジェクト４１５Ａが生成されていない場合は、ドキュメントオブジェクト４１５Ａは指定されない。
【００６５】
図９において、アプリケーション６０の軸から出ている矢印がアプリケーション６０において実装が必要とされる手順である。当該手順のフローチャートを図１０に示す。図１０において、各ステップには図９において対応するステップ番号が付されている。各ステップの内容は図９で説明した通りである。但し、図１０では、サービスが検索された場合に（すなわち、図９のステップＳ１１５においてサービスオブジェクト４１４Ａが返却された場合に）、ステップＳ１１１以降が実行されることが明示されている（Ｓ１１０）。
【００６６】
このように、アプリケーション６０の開発は、基本的に図１０に示される処理手順に対応したインタフェース（プレゼンテーション層４１のインタフェース）を呼び出すことにより行われる。また、当該インタフェースは、Ｊａｖａ（登録商標）の標準インタフェースであるＪＰＳに準拠するものである。したがって、本実施の形態の複合機１によれば、アプリケーション６０の開発作業の負担を軽減することができる。
【００６７】
また、特許文献１のフィルタ等によってアプリケーションを構築する場合に比べて、ソフトウェア構成全体の規模を小さくできる可能性が高い。したがって、アプリケーションの実行に必要なメモリ容量等を低減することができ、ハードウェアのコストの削減も期待できる。
【００６８】
（実施例１）
図１１に変倍を実現するためのドメインロジックの構成例を示す。変倍画像オブジェクトは、原画像を印刷するときにどれくらい倍率を変更するかという変倍率を知っており、変倍された画像を作成する責務を持っている。
【００６９】
変倍画像オブジェクトは、主走査方向、副走査方向それぞれ独立して変倍する独立変倍機能を実現するために、主走査変倍率、副走査変倍率を持っていても良い。変倍画像を作成するときに、それぞれの変倍率を独立して保持および使用できるため、主走査のみもしくは副走査のみ、または主走査と副走査で異なる、変倍率の画像を作成することもできる。
【００７０】
（実施例２）
図１２にドメインロジック層の基本的な印刷時の動作を示すフローチャートを示す。Ｓ２０１−２０３で１枚目原稿に対応する入力物オブジェクトを作成する。Ｓ２０４で１枚目入力物オブジェクトに対応する出力物オブジェクトを作成する。Ｓ２０５で印刷条件に必要な出力束オブジェクトを作成する。このとき、例えばソートならば操作部で設定された部数に従って出力束オブジェクトを作成する。
【００７１】
Ｓ２０６で出力束オブジェクトに、上記で作成した出力物オブジェクトを登録する。Ｓ２０７で出力束オブジェクトは、出力物オブジェクトから出力物要素を取得する。このとき、例えば出力物オブジェクトは出力物要素オブジェクトを作成し、作成したオブジェクトを出力束オブジェクトに渡す。または、出力物オブジェクト作成時に同時に対応する出力要素オブジェクトを作成しておき、作成済みの要求されたオブジェクトをそのまま渡しても良い。
【００７２】
Ｓ２０８で実行開始に必要なオブジェクトを作成済みか否かの判断を行う。作成済みでなければ、必要なオブジェクトの作成を繰り返す。作成済みであれば、Ｓ２０９で原稿１枚目の入力物オブジェクトを実行開始する。Ｓ２１０で実行開始した入力物オブジェクトは、原画像オブジェクトを作成し、原画像オブジェクトの実行を要求する。Ｓ２１１で原画像オブジェクトの実行で、原画像の読み取りが実行される。このとき、例えばコピー動作であれば、スキャナが原稿の読み取り動作を行い、読み取った画像が原画像オブジェクトと紐づいて管理される。
【００７３】
Ｓ２１２で変倍設定有りの場合、Ｓ２１３、２１４で出力物は変倍画像オブジェクトを作成し、変倍処理（変倍画像作成の実行）を要求する。変倍処理の詳細については、実施例４で説明する。Ｓ２１５で出力束オブジェクトを実行する。このとき、例えばＡＤＦに原稿が複数枚セットされている場合、１枚入力されるごとに出力束オブジェクトを実行するのではなく、全原稿を入力した後で、全部の出力束オブジェクトを実行しても良い。全原稿入力後に出力する方法では、１部目の出力が遅くなるが、印刷手順がシンプルになり、より容易に実現できる。
【００７４】
Ｓ２１５で出力束オブジェクトは紐づいている出力要素オブジェクトを実行する。このとき、例えば操作部でスタックコピー置数３と設定されている場合、スタックコピーであれば入力された原稿をまとめて出力できるので、この時点で３枚分を実行しても構わない。出力要素オブジェクトを実行すると、Ｓ２１６、２１７で紐づいている出力物オブジェクトから出力すべき入力物を特定し、特定した入力物の原画像の印刷を実行する。
【００７５】
Ｓ２１８で次の原稿があるかを判定し、次の原稿がある場合は、最初の入力物オブジェクトの作成から繰り返す。Ｓ２１８で次の原稿が無い場合は、全部数の印刷が実行されたかを判定し、実行されていなければ２部目以降の印刷を実行する。このとき、例えばソートコピーであれば、原稿枚数が確定しないと２部目以降は印刷できないため、ここで２部目以降の印刷を実行することになる。Ｓ２１９で全部数の印刷が実行されていれば、終了する。
【００７６】
（実施例３）
図１３で、ドメインロジックにおける原稿１枚、置数１でソートコピーしたときの印刷手順を示す。ここでは、図１２で示したフローチャートを具体的な条件下で実行したときに、各オブジェクトがどのように協調的に動作しているかを以下で説明する。操作部によって設定された条件は、原稿１枚、置数１で変倍コピーとする。
【００７７】
Ｓ３０１で成果物オブジェクトは、インタフェース部により作成される。成果物オブジェクトは、原稿１を示す入力物オブジェクトを作成する。Ｓ３０２で成果物オブジェクトは、出力物１を示す出力物オブジェクトを作成する。Ｓ３０３で成果物オブジェクトは、１部目を示す出力束オブジェクトを作成する。Ｓ３０４で成果物オブジェクトは、出力物１を指定して、ソート１部目を示す出力束オブジェクトに出力要素の追加を要求する。Ｓ３０５でソート１部目の出力束オブジェクトは、指定された出力物１オブジェクトに、出力要素の取得を要求する。Ｓ３０６で出力物１オブジェクトは、ソート１部目用の出力要素オブジェクトを作成し、出力束オブジェクトに返す。
【００７８】
Ｓ３０７で成果物オブジェクトは、原稿１の入力物オブジェクトに実行を要求する。Ｓ３０８で原稿１の入力物オブジェクトは、原稿１の読み取り画像を示す原画像オブジェクトを作成する。Ｓ３０９で原稿１の入力物オブジェクトは、原稿１の原画像オブジェクトに実行を要求する。Ｓ３１０で原稿１の原画像オブジェクトは、スキャナ読み取りを実行する。Ｓ３１１で原稿１の原画像オブジェクトは、原稿１の入力物オブジェクトに読み取りの終了を通知する。Ｓ３１１で原稿１の入力物オブジェクトは、成果物に入力物の終了を通知する。
【００７９】
Ｓ３１２で成果物オブジェクトは、出力物１オブジェクトに入力物の終了を通知する。ここで出力物１は、入力物終了の通知を受け取ったので、出力が可能であることを判断できるようになる。
【００８０】
Ｓ３１３で出力物１オブジェクトは、変倍画像オブジェクトを作成する。Ｓ３１４で出力物１オブジェクトは、変倍画像オブジェクトに変倍画像の作成を要求する。ここで、変倍画像オブジェクトは、保持している変倍率に従って、変倍画像を作成する（変倍画像作成の詳細は実施例４に示す）。
【００８１】
Ｓ３１５で原稿１の入力物オブジェクトは、成果物オブジェクトに次原稿が無いことを通知する（条件が原稿２枚以上であれば、次原稿有りを通知することになる）。Ｓ３１６で成果物オブジェクトは、次の原稿がないのでソートの単位が終了したと判断して、１部目の出力束オブジェクトに実行を要求する。Ｓ３１７で１部目の出力束オブジェクトは、１枚目１部目を示す出力要素オブジェクトに実行を要求する。Ｓ３１８で１枚目１部目を示す出力要素オブジェクトは、出力リソースオブジェクトにリソース使用の予約を要求する。出力リソースオブジェクトは、予約されたリソースの使用要求に対して、プロッタエンジンのパフォーマンスを最適化するようなリソースの使用順を考えることもできる。
【００８２】
Ｓ３１９で出力リソースオブジェクトは、１枚目１部目を示す出力要素オブジェクトにリソースの使用許可を通知する。Ｓ３２０で１枚目１部目を示す出力要素オブジェクトは、出力物１オブジェクトに実行可否判断を要求する。Ｓ３２０で出力１オブジェクトは、原稿１の入力物オブジェクトの終了を通知されているので、実行可能と判断して、１枚目１部目を示す出力要素オブジェクトに結果を返す。
【００８３】
Ｓ３２１で１枚目１部目を示す出力要素オブジェクトは、使用許可された出力リソース（ここではプロッタエンジン）を使用して印刷を実行する。Ｓ３２２で１枚目１部目を示す出力要素オブジェクトは、印刷が終わったら、出力物１オブジェクトに印刷終了を通知する。Ｓ３２３で１枚目１部目を示す出力要素オブジェクトは、１部目の出力束オブジェクトに出力要素の終了を通知する。Ｓ３２４で１部目の出力束オブジェクトは、成果物に出力束の終了を通知する。
【００８４】
（実施例４）
図１４で変倍処理の動作を示すフローチャートを示す。Ｓ４０１で変倍画像オブジェクトは、出力物オブジェクトから用紙サイズを取得する。Ｓ４０２で入力物オブジェクトから原稿サイズを取得する。Ｓ４０３で自動倍率選択が設定されているかどうかを判定する。自動倍率選択とは、入力された画像を、出力する用紙のサイズに合わせて自動的に変倍率を決定する機能である。自動倍率選択は、ＡＭＳ（Auto Magnification Select）機能等として実装される。Ｓ４０３で自動倍率選択が設定されていた場合は、Ｓ４０７で取得した原稿サイズと用紙サイズを使って変倍率の算出処理を行う。実施例５で、変倍率を算出するための方法は示す。Ｓ４０３で自動倍率選択が設定されていなかった場合は、Ｓ４０４で領域判定を行う。
【００８５】
Ｓ４０５で設定された変倍率で原稿画像を変倍した場合に用紙サイズに収まるかどうかを比較する。例えば、原稿サイズ×変倍率＜用紙サイズという比較を行う。このとき、用紙サイズに対して小さ過ぎるような変倍率が設定されていることを判定するようにしても良い。また、領域判定を主走査変倍率と副走査変倍率について、独立に判定しても良い。
【００８６】
領域判定に失敗した場合、以下の３つのパターンに分岐する。
１．そのまま出力する場合、設定されていたまま変倍率を確定する（Ｓ４０８）。
２．ユーザ設定する場合、領域判定に失敗したことを操作画面に表示し、ユーザは変倍率の設定を変更する（Ｓ４０６、Ｓ４０８）。ここで、ユーザが用紙サイズの設定を変更できるようにしても良い。変更された変倍率に従って、変倍率を確定する。
３．自動調整する場合、取得した原稿サイズと用紙サイズを使って用紙サイズの領域に収まるように変倍率の算出処理を行う（Ｓ４０７、Ｓ４０８）。実施例５に変倍率を算出するための方法を示す。算出された変倍率に従って変倍率を確定する。
【００８７】
一方、領域判定に成功した場合は、Ｓ４０８で設定されていたまま変倍率を確定する。Ｓ４０９で確定した変倍率で変倍画像を作成する。
【００８８】
（実施例５）
以下では、変倍率を算出するための方法を説明する。変倍画像オブジェクトが変倍率テーブルを参照することで変倍率を決定することができる。図１５は、変倍率テーブルの例を示し、原稿サイズを入力、用紙サイズを出力としたときの変倍率テーブルである。
【００８９】
変倍率は、変倍率＝用紙サイズ÷原稿サイズの計算式によっても求めることができる。例えば、印刷する用紙サイズがＡ１、スキャンする原稿のサイズがＡ３である場合を考える。Ａ１用紙の寸法は５９４mm×８４１mmであり、Ａ３用紙の寸法は２９７mm×４２０mmであるため、変倍率はＡ１（５９４mm）÷Ａ３（２９７mm）＝２倍（２００％）となる。また、変倍率は、主走査方向、副走査方向を独立で算出しても良い。
【００９０】
（総括）
開示の画像形成装置は、適切なアプリケーションの実行環境を提供し、かつ変倍機能を実現することができる。
また、開示の画像形成装置は、変倍率を保持しているため、変倍率を任意に設定できる変倍機能を実現し、変倍機能の実用性を向上させることができる。
また、開示の画像形成装置は、変倍機能としてＡＭＳ機能を提供し、ユーザの利便性を高めることができる。
また、開示の画像形成装置は、変倍機能として独立変倍機能を提供し、ユーザの利便性を高めることができる。
また、開示の画像形成装置は、変倍機能実行時にユーザの意図しない変倍画像が出力されることを防ぐことにより、ユーザの利便性を高めることができる。
また、開示の画像形成装置は、変倍機能実行時にユーザの意図しない変倍画像が出力されそうになった場合、改めてユーザによって設定を変更可能にすることにより、ユーザの利便性を高めることができる。
また、開示の画像形成装置は、変倍機能実行時にユーザが意図的に用紙サイズに合わない変倍率で印刷することを可能にすることにより、ユーザの利便性を高めることができる。
また、開示の画像形成装置は、変倍機能実行時にユーザの意図しない変倍画像が出力されそうになった場合、自動的に用紙サイズに合わせて変倍率を調整して印刷することにより、ユーザの利便性を高めることができる。
【００９１】
以上、本発明の実施の形態について詳述したが、本発明は係る特定の実施の形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲において、種々の変形・変更が可能である。
【符号の説明】
【００９２】
１          複合機
２０        ＯＳ
２１        ドライバプログラム
３０        ＪＶＭ
３１        ＣＤＣ
３２        Ｆｏｕｎｄａｔｉｏｎ  Ｐｒｏｆｉｌｅ
４０        ＭＦＰプロファイル
４１        プレゼンテーション層
４２        ドメインロジック層
４３        サービス層
５０        ネイティブモジュール
６０        アプリケーション
６１        プリントアプリ
６２        コピーアプリ
６３      スキャンアプリ
６４        ＦＡＸアプリ
１０１      コントローラ
１０２      オペレーションパネル
１０３      ファクシミリコントロールユニット
１０４      撮像部
１０５      印刷部
１１１      ＣＰＵ
１１２      ＡＳＩＣ
１２１      ＮＢ
１２２      ＳＢ
１３１      ＭＥＭ−Ｐ
１３２      ＭＥＭ−Ｃ
１３３      ＨＤＤ
１３４      メモリカードスロット
１３５      メモリカード
１４１      ＮＩＣ
１４２      ＵＳＢデバイス
１４３      ＩＥＥＥ１３９４デバイス
１４４      セントロニクスデバイス
４１１      サービス検索クラス
４１２      入出力形式クラス
４１３      要求属性値群クラス
４１４      サービスクラス
４１５      ドキュメントクラス
４１６      ジョブクラス
４２１      要求管理部
４２２      Ｉ／Ｏファンクション部
４２３      Ｉ／Ｏリソース管理部
４２４      システム管理部
４１４１      サービス属性値群クラス
４１５１      ドキュメント属性値群クラス
４１６１    ジョブ属性値群クラス
４２１１    成果物クラス
４２２１    入力物クラス
４２２２    原画像クラス
４２２３    出力物クラス
４２２４    出力要素クラス
４２２５    出力束クラス
４２３１    入力リソースクラス
４２３２    出力リソースクラス
４２４１    機内監視クラス
【先行技術文献】
【特許文献】
【００９３】
【特許文献１】特開２００７−３２５２５１号公報
【図１】
2011040830.tif 000003
【図２】
2011040830.tif 000004
【図３】
2011040830.tif 000005
【図４】
2011040830.tif 000006
【図５】
2011040830.tif 000007
【図６】
2011040830.tif 000008
【図７】
2011040830.tif 000009
【図８】
2011040830.tif 000010
【図９】
2011040830.tif 000011
【図１０】
2011040830.tif 000012
【図１１】
2011040830.tif 000013
【図１２】
2011040830.tif 000014
【図１３】
2011040830.tif 000015
【図１４】
2011040830.tif 000016
【図１５】
2011040830.tif 000017