(57)【要約】【課題】プリント機能を有する複合機において、ＰＤＦファイルの作成に必要なサイズの連続したメモリ領域を確保する技術を提供する。【解決手段】本出願の複合機１００は、プリント機能を有する複合機であって、プリント機能に予め割り当てた専用領域を有するメモリ１０３と、ＰＤＦ（登録商標）ファイルを作成する指示を受け付けると、プリント機能を制限するＩ／Ｏ制御ＡＳＩＣ１０９と、メモリにおいて専用領域の全領域を確保するメモリ制御ＡＳＩＣ１０２と、を備え、確保した専用領域を使用してＰＤＦファイルを作成する。【選択図】図１
2009253662.tif 000002
【特許請求の範囲】
【請求項１】
プリント機能を有する複合機であって、
前記プリント機能に予め割り当てた専用領域を有するメモリと、
ＰＤＦ（登録商標）ファイルを作成する指示を受け付けると、前記プリント機能を制限するプリント機能制限手段と、
前記メモリにおいて前記専用領域の全領域を確保するメモリマッピング手段と、
確保した前記専用領域を使用して、ＰＤＦファイルを作成するＰＤＦファイル作成手段と、
を備えることを特徴とする複合機。
【請求項２】
請求項１に記載の複合機であって、
画像データを読み取る画像読取手段と、
当該複合機に接続されている情報処理装置から、印刷対象のデータを受け付ける第１の受付手段と、
前記画像読取手段が読み取った画像データを受け付ける第２の受付手段と、を備え、
前記プリント機能制限手段は、
前記第１の受付手段によるデータの受け付けを許可せずに、前記第２の受付手段によるデータの受け付けを許可することにより、前記プリント機能を制限する、
ことを特徴とする複合機。
【請求項３】
請求項２に記載の複合機であって、
前記ＰＤＦファイル作成手段は、
前記画像読取手段が読み取った画像データを、前記第２の受付手段により受け付け、受け付けた当該画像データに基づいてＰＤＦファイルを作成する、
ことを特徴とする複合機。
【請求項４】
請求項１乃至３のいずれか１項に記載の複合機であって、
前記プリント機能制限手段は、
ＰＤＦファイルを作成する指示を受け付けた場合に、プリント中であるか否かを判別し、
プリント中ではないと判定した場合には、そのまま前記プリント機能を制限し、
プリント中であると判定した場合には、当該プリントが終了するまで待機してから、前記プリント機能を制限する、
ことを特徴とする複合機。
【請求項５】
請求項１乃至４のいずれか１項に記載の複合機であって、
前記メモリマッピング手段は、
複数の機能と、当該機能ごとに割り当てた専用領域を特定する割当情報と、を対応付けて記憶しているメモリマップファイルを有し、
前記プリント機能に割り当てられた専用領域を確保する場合には、ＰＤＦ作成機能と、前記プリント機能に割り当てられた専用領域を特定する割当情報と、を対応付けて前記メモリマップファイルに記憶し、
前記ＰＤＦファイル作成手段は、
最新の前記メモリマップファイルを参照して、ＰＤＦ作成機能に対応付けされている割当情報で特定される領域を、ＰＤＦファイルの作成処理に利用する、
ことを特徴とする複合機。
【請求項６】
請求項１乃至５のいずれか１項に記載の複合機であって、
前記メモリマッピング手段は、
前記ＰＤＦファイル作成手段がＰＤＦファイルを作成した後、ＰＤＦファイルの作成に使用された前記専用領域を、前記プリント機能に使用する領域として再確保する、
ことを特徴とする複合機。
【請求項７】
プリント機能を有し、
当該プリント機能に予め割り当てた専用領域を有するメモリと、
ＰＤＦファイル作成時には、当該プリント機能を制限するプリント機能制限手段と、
前記メモリにおいて前記専用領域の全領域を確保するメモリマッピング手段と、
を備える電子機器に接続するスキャナ装置であって、
ＰＤＦファイルを作成する指示を受け付け、当該指示を前記電子機器に送る指示受付手段と、
画像データを読み込む画像読込手段と、
前記電子機器が確保した前記専用領域を使用して、読み込んだ前記画像データに基づくＰＤＦファイルを作成するＰＤＦファイル作成手段と、
を備えることを特徴とするスキャナ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複合機、および、スキャナ装置に関する。
【背景技術】
【０００２】
スキャン機能やプリント機能を有する複合機には、印刷対象の画像データをファイル化（例えば、ＰＤＦ（登録商標）に変換）する機能を有するものがある。ここで、スキャン機能とは、画像読取装置を用いて画像データをスキャンする機能であり、プリント機能とは、印刷対象の印刷データ（画像データ）を解釈して、プリンタにおいて実際に印刷可能な印刷イメージを作成する機能をいう。
【０００３】
特許文献１には、画像読取装置でスキャンした画像データを、ＰＤＦ、ＪＰＥＧ、ＴＩＦＦ（登録商標）等のユーザが希望するフォーマットに、変換することについて記載されている。
【特許文献１】特開２００６−３５２２７５号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、複合機が備えるメモリを使用して、印刷対象の画像データをファイル化（ＰＤＦ化）する場合、プリント機能に割り当てられていない領域を、使用するのが一般的である。なぜならば、プリント機能と、画像データのファイル化と、に共通のメモリ領域を割り当ててしまうと、並行して動作する場合に不都合が生じるからである。
【０００５】
かといって、プリント機能に割り当てられていない領域だけでは、印刷対象の画像データからＰＤＦファイルを作成するのに必要なサイズ（およそ、実際のファイルサイズの６〜７倍のサイズ）の連続したメモリ領域を確保できない場合がある。
【０００６】
本発明は、プリント機能を有する複合機において、ＰＤＦファイルの作成に必要なサイズの連続したメモリ領域を確保する技術を提供する。
【課題を解決するための手段】
【０００７】
上記課題を解決するための本願発明の複合機は、プリント機能を有する複合機であって、前記プリント機能に予め割り当てた専用領域を有するメモリと、ＰＤＦ（登録商標）ファイルを作成する指示を受け付けると、前記プリント機能を制限するプリント機能制限手段と、前記メモリにおいて前記専用領域の全領域を確保するメモリマッピング手段と、確保した前記専用領域を使用して、ＰＤＦファイルを作成するＰＤＦファイル作成手段と、を備える。
【発明の効果】
【０００８】
本発明の複合機によれば、プリント機能を有する複合機において、ＰＤＦファイルの作成に必要なサイズの連続したメモリ領域を確保することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施形態の一例を図面を参照して説明する。
【００１０】
図１は、本発明の実施形態が適用された複合機１００のハードウェア構成の概要を説明するためのブロック図である。
【００１１】
図示するように、複合機１００は、ＣＰＵ（Central Processing Unit）１０１と、メモリ制御ＡＳＩＣ（Application Specific Integrated Circuit）１０２と、揮発性メモリ１０３と、不揮発性メモリ１０４と、を有する。
【００１２】
ＣＰＵ１０１は、各種プログラムを実行して、複合機１００全体を制御する。例えば、ＣＰＵ１０１は、後述するスキャナ装置１１１が読み取った画像データに基づいて、ＰＤＦファイルを作成する処理などを行う。
【００１３】
メモリ制御ＡＳＩＣ１０２は、複合機１００に接続されているメモリを制御する。例えば、メモリ制御ＡＳＩＣ１０２は、データおよびプログラム等を一時的に記憶する揮発性メモリ１０３と、各種プログラムを格納している不揮発性メモリ１０４を制御する。
【００１４】
揮発性メモリ１０３は、電源を切断すると記憶内容を失う半導体メモリであり、例えば、ＲＡＭ（Random Access Memory）、ＤＲＡＭ（Dynamic Random Access Memory）、ＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）等を含む。また、不揮発性メモリ１０４は、電源を切断しても記憶内容を保持する半導体メモリであり、例えば、フラッシュメモリ、ＲＯＭ（Read Only Memory）等を含む。
【００１５】
また、複合機１００は、画像処理ＡＳＩＣ１０５と、印刷制御ＡＳＩＣ１０６と、ビデオデータインタフェース１０７と、印刷エンジン１０８と、をさらに有する。
【００１６】
画像処理ＡＳＩＣ１０５は、印刷時において、揮発性メモリ１０３に格納されている印刷対象のデータ（例えば、画像データ）を、印刷データに変換する処理を行うための回路（群）である。例えば、画像処理ＡＳＩＣ１０５は、印刷対象のデータに対して、色変換、圧縮、伸張、２値化、といった処理を施し、印刷データを生成する。
【００１７】
印刷制御ＡＳＩＣ１０６は、印刷エンジン１０８を制御する。具体的には、印刷制御ＡＳＩＣ１０６は、画像処理ＡＳＩＣ１０５から供給された印刷データを解釈して、解釈した印刷データに基づくプリントイメージデータを生成し、このプリントイメージデータを印刷エンジン１０８に送信して印刷させる。
【００１８】
ビデオデータインタフェース１０７は、印刷エンジン１０８に、ビデオデータを送信して印刷させる。具体的には、ビデオデータインタフェース１０７は、画像処理ＡＳＩＣ１０５から供給された印刷データを１ページ単位でビデオデータに展開し、展開したビデオデータを印刷エンジン１０８に送信して印刷させる。
【００１９】
印刷エンジン１０８は、印字ヘッド、キャリッジ、トナーカートリッジ、感光体ドラム、レーザ光照射機構、紙送り機構、給排紙機構などからなり、印刷制御ＡＳＩＣ１０６或いはビデオデータインタフェース１０７から供給されたデータを、印刷媒体に印刷する。
【００２０】
また、複合機１００は、スキャナＡＳＩＣ１１０と、スキャナ装置１１１と、をさらに有する。
【００２１】
スキャナＡＳＩＣ１１０は、スキャナ装置１１１を制御する。スキャナＡＳＩＣ１１０は、スキャナ装置１１１が生成した画像データを、メモリ制御ＡＳＩＣ１０２に供給する。
【００２２】
スキャナ装置１１１は、スキャナＡＳＩＣ１１０からの指示に基づいて、写真やイラスト等の原稿をイメージセンサで読み取り、デジタルデータに変換して画像データを生成する。
【００２３】
また、複合機１００は、Ｉ／Ｏ制御ＡＳＩＣ１０９と、各種外部インタフェース（Ｉ／Ｆ）１１２と、をさらに有する。
【００２４】
Ｉ／Ｏ制御ＡＳＩＣ１０９は、各種Ｉ／Ｏ装置を制御する。例えば、Ｉ／Ｏ制御ＡＳＩＣ１０９は、スキャナＡＳＩＣ１１０と、各種外部インタフェース（Ｉ／Ｆ）１１２と、を制御する。また、Ｉ／Ｏ制御ＡＳＩＣ１０９は、各種外部インタフェース１１５を介して、ホストコンピュータ（情報処理装置２００）から受信した印刷対象のデータを、揮発性メモリ１０３にＤＭＡ（Direct Memory Access）転送する。
【００２５】
また、Ｉ／Ｏ制御ＡＳＩＣ１０９は、各種外部インタフェース１１２とのデータの入出力を行う第１のポート（インタフェース）と、スキャナＡＳＩＣ１１０とのデータの入出力を行う第２のポート（インタフェース）と、を備えている。Ｉ／Ｏ制御ＡＳＩＣ１０９は、有効なポート（インタフェース）を切り替える（或いは選択する）ことが可能であり、例えば、第１のポート（インタフェース）を有効にし、第２のポート（インタフェース）を無効にすることで、ホストコンピュータ（情報処理装置２００）から送られてきたデータだけを受け付けるように制限することができる。一方、第２のポート（インタフェース）を有効にし、第１のポート（インタフェース）を無効にすることで、スキャナ装置１１１が読み取った画像データだけを受け付けるように制限することもできる。
【００２６】
各種外部インタフェース（Ｉ／Ｆ）１１２は、ネットワークインタフェース（Ｉ／Ｆ）１１３と、ＵＳＢインタフェース（Ｉ／Ｆ）１１４と、を備え、各種外部インタフェース１１２に接続されている各種デバイスとデータの送受信を行うためのインタフェースである。各種デバイスには、例えば、入力装置（スイッチ類、ボタン類、等）、出力装置（ディスプレイ、等）、ＵＳＢデバイス、パラレル通信を行うデバイス、ネットワーク経由で通信を行うデバイス、が含まれる。
【００２７】
ネットワークインタフェース１１３は、ネットワーク経由で情報処理装置２００（ホストコンピュータ）とデータの送受信を行う。ＵＳＢインタフェース１１４は、ＵＳＢの通信プロトコルに従って情報処理装置２００とデータの送受信を行う。
【００２８】
本実施形態が適用された複合機１００は、以上のような構成からなる。ただし、複合機１００の構成はこれに限定されない。例えば、複合機１００は、スキャン機能を有さない（スキャナＡＳＩＣ１１０およびスキャナ装置１１０を備えない）プリンタであってもよい。また、複合機１００は、ファクシミリ機能を有するものであってもよい。
【００２９】
また、情報処理装置２００は、複合機１００のホストコンピュータとして機能する一般的なコンピュータである。情報処理装置２００は、生成した印刷対象のデータを、所定のケーブル（例えば、ＵＳＢケーブル、ＬＡＮケーブル、ＦＡＸ回線、等）を介して、複合機１００に送信する。なお、情報処理装置２００は、デジタルカメラ等の画像形成装置であってもよい。また、情報処理装置２００は、複数台の情報処理装置から構成されてもよい。
【００３０】
次に、上記の複合機１００に実現される機能構成について説明する。
【００３１】
図２は、複合機１００の機能構成の一例を示すブロック図である。図示するように、複合機１００には、メモリ管理部３１０と、印刷制御部３２０と、印刷実行部３３０と、が構築される。
【００３２】
メモリ管理部３１０、印刷制御部３２０、印刷実行部３３０は、それぞれ、ＣＰＵ１０１が所定のプログラムを実行することにより、又は、図１に示した構成要素が動作することにより、ソフトウェア的、ハードウェア的に構築される。
【００３３】
メモリ管理部３１０は、複合機１００において処理される各種データを記憶するためのメモリ（例えば、揮発性メモリ１０３）を管理する。具体的には、メモリ管理部３１０は、メモリにおいて、機能ごとに使用可能な特定の領域を割り当てる。図３（Ａ）は、メモリの割り当て状況の概念図を示す。例えば、メモリ管理部３１０は、オペレーティングシステム（プログラム）には、領域Ａ（ＯＳ領域）を割り当て、プリント機能（例えば、印刷イメージの作成処理）には、領域Ｂ（アプリケーションヒープ）を割り当て、プリント機能以外の主要な機能には、領域Ｃ（システムヒープ）を割り当て、各種データを記憶するために、領域Ｄ（他のデータ領域）を割り当てる。なお、領域Ｂ（アプリケーションヒープ）は、印刷対象の画像データに基づいてＰＤＦファイルを作成するのに十分とされる連続領域（サイズ）を有するものとする。
【００３４】
また、メモリ管理部１００は、複合機１００の状態に応じて印刷対象のデータを受け付けるポート（インタフェース）を切り替える処理と、画像データを生成する画像読取処理と、ユーザからの指示に従って、記憶部３１１においてプリント機能に予め割り当てられている所定領域Ｂ（アプリケーションヒープ）を使用して、ＰＤＦファイルを作成する処理と、を行う。
【００３５】
以上の処理を行うメモリ管理部３１０は、図２に示すように、記憶部３１１と、ユーザインタフェース部３１２と、データ受付部３１３と、受付ポート切替部３１４と、画像読取部３１５と、ＰＤＦファイル作成部３１６と、メモリマップ管理部３１７と、を有する。
【００３６】
記憶部３１１は、上述したメモリ（例えば、揮発性メモリ１０３）の所定の領域に、各種データの読み書きを行う。
【００３７】
ユーザインタフェース部３１２は、ＰＤＦファイルの作成指示を、ユーザから受け付ける。
【００３８】
データ受付部３１３は、印刷対象のデータを受け付ける。具体的には、データ受付部３１３は、情報処理装置２００から送信された印刷対象のデータを、第１のポート（インタフェース）を介して受け付ける。また、データ受付部３１３は、スキャナ装置１１１が生成した画像データを、第２のポート（インタフェース）を介して受け付ける。
【００３９】
受付ポート切替部３１４は、複合機１００の状態に応じて、印刷対象のデータを受け付けるポート（第１のポート、第２のポート）を切り替える。具体的には、受付ポート切替部３１４は、ＰＤＦファイルの作成を開始する時点において、プリント機能が動作中であるか否かを判別する。プリント機能が動作中ではない場合には、印刷対象のデータを受け付けるポートを第２のポート（スキャナ装置１１１からのデータを受け付けるポート）に切り替える。一方、プリント機能が動作中である場合には、印刷が終了するまで待機してから、印刷対象のデータを受け付けるポートを第１のポート（情報処理装置２００からのデータを受け付けるポート）に切り替える。
【００４０】
画像読取部３１５は、印刷対象の画像データを生成する。
【００４１】
ＰＤＦファイル作成部３１６は、ユーザの指示にしたがって、印刷対象の画像データに基づくＰＤＦファイルを作成する。この際に、必要に応じて、ＰＤＦファイルの作成に先立って、画像データを圧縮するようにしてもよい。
【００４２】
また、ＰＤＦファイル作成部３１６は、ＰＤＦファイルを作成するために必要なサイズの連続領域を、メモリ（揮発性メモリ１０３）に確保し、確保した連続領域を用いてＰＤＦファイルを作成する。
【００４３】
メモリマップ管理部３１７は、メモリ（揮発性メモリ１０３）における、機能ごとの割り当てを管理する。具体的には、メモリマップ管理部３１７は、機能と、その機能に割り当てたメモリ上の領域と、を対応付けたメモリマップ４００を保有している。メモリマップ管理部３１７は、メモリマップ４００の対応付けを更新することによって、機能ごとの割り当てを変更することもできる。
【００４４】
図３（Ｂ）は、メモリマップ４００のデータ構造を概念的に示す。図示するように、メモリマップ４００は、機能ごとのレコード４０３からなる。各レコード４０３には、機能を特定するモジュール４０１と、機能に割り当てる領域を特定する割り当て領域４０２と、が対応付けて格納されている。
【００４５】
例えば、図３（Ａ）に示す例でメモリの割り当てを行う場合、メモリマップ４００には、「ＯＳ」を特定するモジュール４０１と、「領域Ａ」を特定する割り当て領域４０２と、が同一レコード４０３に格納される。また、「プリント機能」を特定するモジュール４０１と、「領域Ｂ」を特定する割り当て領域４０２と、が同一レコード４０３に格納される。また、「プリント機能以外」を特定するモジュール４０１と、「領域Ｃ」を特定する割り当て領域４０２と、が同一レコード４０３に格納される。また、「各種データの記憶」を特定するモジュール４０１と、「領域Ｄ」を特定する割り当て領域４０２と、が同一レコード４０３に格納される。
【００４６】
そして、ＰＤＦファイル作成部３１６がＰＤＦファイルを作成する場合には、メモリマップ管理部３１７は、メモリマップ４００の「プリント機能」を特定するモジュール４０１を、「ＰＤＦファイル作成」を特定するモジュール４０１に変更し、「ＰＤＦファイルを作成する機能」と、「領域Ｂ」を特定する割り当て領域４０２と、を対応付けるように記憶する。これによって、ＰＤＦファイル作成部３１６がＰＤＦファイルの作成処理に使用する領域を、プリント機能に割り当てられていた領域Ｂにすることができる。
【００４７】
図２に戻り、印刷制御部３２０は、印刷データを解釈して、印刷データに基づく印刷を実行するための制御を行う。具体的には、印刷データに基づくプリントイメージデータ（上述した印刷イメージ）を生成し、このプリントイメージデータを印刷するように印刷実行部３３０に指示を送る。このとき、メモリマップ管理部３１７は、メモリマップ４００の「プリント機能」を特定するモジュール４０１と、「領域Ｂ」を特定する割り当て領域４０２と、を同一レコード４０３に記憶している。
【００４８】
印刷実行部３３０は、印刷制御部３２０の指示にしたがって、印刷用紙等の印刷媒体に対して、印刷エンジン１０８による印刷を実行する。また、印刷実行部３３０は、受付ポート切替部３１４からの問い合わせに応じて、印刷処理を実行中であるか否かを示す信号を返信する。
【００４９】
次に、上記構成からなる複合機１００の特徴的な動作について説明する。図４は、複合機１００が行うＰＤＦファイル作成処理を示すフローチャートである。
【００５０】
複合機１００のメモリ管理部３１０は、電源スイッチがオンにされた時にＰＤＦファイル作成処理を開始する。例えば、各種外部インタフェース１１２に接続されている電源スイッチをオンにする信号がＣＰＵ１０１に供給されたときに、ＣＰＵ１０１が、不揮発性メモリ１０４から所定のプログラムを揮発性メモリ１０３に読み出して、ＰＤＦファイル作成処理を開始する。
【００５１】
ＰＤＦファイル作成処理を開始後、メモリ管理部３１０は、ユーザインタフェース部３１２を介して、ＰＤＦファイルを作成する指示がされるまで待機し（ステップＳ１０１；Ｎｏ）、ＰＤＦファイルを作成する指示がされた場合に（ステップＳ１０１；Ｙｅｓ）、処理を、ステップＳ１０２に移行する。具体的には、各種外部インタフェース１１２を介して、ＰＤＦファイルを作成する指示スイッチをオンにする信号がＣＰＵ１０１に供給された場合に、ＣＰＵ１０１が、処理をステップＳ１０２に移行する。
【００５２】
続いて、受付ポート切替部３１４は、印刷実行部３３０が印刷を実行中であるか否か判別する（ステップＳ１０２）。具体的には、例えば、ＣＰＵ１０１が、印刷エンジン１０８に印刷中であるか否かについて問い合わせ、その問い合わせに対する返信を参照して、印刷を実行中であるか否か判別する。
【００５３】
受付ポート切替部３１４は、複合機１００が印刷を実行中であると判定した場合（ステップＳ１０２；Ｙｅｓ）、処理をステップＳ１０９に移行する。一方、印刷中ではないと判定した場合（ステップＳ１０２；Ｎｏ）、処理をステップＳ１０３に移行する。
【００５４】
ステップＳ１０９に処理が移行すると、印刷制御部３２０及び印刷実行部３３０は、その時点において印刷中、又は、印刷待機中のプリントイメージデータを、全て印刷する（ステップＳ１０９）。具体的には、画像処理ＡＳＩＣ１０４が、揮発性メモリ１０３の領域Ｂ（プリント機能に割り当てられた領域）に格納されている未印刷のデータを印刷データに変換し、続いて、印刷制御ＡＳＩＣ１０５が、変換された印刷データに基づいてプリントイメージデータを生成する。そして、印刷エンジン１０８がプリントイメージデータの印刷を実行する。
【００５５】
印刷終了後、印刷制御部３２０は、処理をステップＳ１０２に戻す。
【００５６】
一方、ステップＳ１０３に処理が移行すると、受付ポート切替部３１４は、印刷対象のデータを受け付けるポートを、第２のポート（スキャナ装置１１１からのデータを受け付けるポート）に切り替える（ステップＳ１０３）。具体的には、Ｉ／Ｏ制御ＡＳＩＣ１０９が、第２のポート（インタフェース）を有効にし、第１のポート（インタフェース）を無効にすることによって、スキャナ装置１１１が読み取った画像データだけを受け付けるようにする。これにより、情報処理装置２００から送信されてくる印刷対象のデータの印刷を制限（プリント機能を制限）している。
【００５７】
続いて、画像読取部３１５は、印刷対象の画像データを読み取る（ステップＳ１０４）。具体的には、スキャナ装置１１１が、原稿台に載置された原稿をイメージセンサで読み取り、デジタルデータに変換して画像データを生成する。
【００５８】
そして、記憶部３１１は、メモリマップ４００を参照して、揮発性メモリ１０３において「プリント機能以外」の機能に割り当てられている領域Ｃに、画像読取部３１５が生成した画像データを、一時的に記憶する。
【００５９】
次に、ＰＤＦファイル作成部３１６は、画像読取部３１５が読み取った画像データに基づくＰＤＦファイルを作成するために必要なメモリサイズを算出する（ステップＳ１０５）。ここで、必要なメモリサイズを算出する手法は、任意の手法でよく、例えば、ＰＤＦファイルに含める画像データのデータサイズを所定数倍して求めてもよい。
【００６０】
そして、メモリマップ管理部３１７は、「プリント機能」に割り当てられている揮発性メモリ１０３の領域Ｂ（アプリケーションヒープ）を、「ＰＤＦファイルの作成機能」に割り当て、領域Ｂ（アプリケーションヒープ）を確保する（ステップＳ１０６）。具体的には、ＣＰＵ１０１が、メモリマップ４００を、揮発性メモリ１０３又は不揮発性メモリ１０４から読み出し、「領域Ｂ」の割り当て領域４０２に対応付けされているモジュール４０１を、「プリント機能」を特定するモジュール４０１から「ＰＤＦファイルの作成機能」を特定するモジュール４０１に置き替える。
【００６１】
ただし、メモリマップ管理部３１７は、揮発性メモリ１０３の領域Ｃ（システムヒープ）に、ステップＳ１０５で算出したメモリサイズ分の連続領域を確保できる場合には、メモリマップ４００の割り当てを変更しない。
【００６２】
続いて、ＰＤＦファイル作成部３１６は、画像読取部３１５が生成した画像データに基づいて、ＰＤＦファイルを作成する（ステップＳ１０７）。具体的には、ＣＰＵ１０１が、
メモリマップ４００を参照して、揮発性メモリ１０３において「ＰＤＦファイルの作成機能」の割り当てに該当する領域Ｂ（確保できる場合には領域Ｃ）に、領域Ｃに格納されている画像データを展開して、ＰＤＦファイルを作成する。
【００６３】
なお、ＰＤＦファイルを作成するために行った上記のステップＳ１０３からステップＳ１０７までを、「ＰＤＦファイル作成モード」とよぶ。
【００６４】
ステップＳ１０７に続いて、メモリマップ管理部３１７は、ＰＤＦファイル作成モードを解除する（ステップＳ１０８）。つまり、メモリマップ管理部３１７は、「ＰＤＦファイルの作成機能」に割り当てられている揮発性メモリ１０３の領域Ｂ（アプリケーションヒープ）を、「プリント機能」に割り当てなおす。具体的には、ＣＰＵ１０１が、メモリマップ４００を、揮発性メモリ１０３又は不揮発性メモリ１０４から読み出し、「領域Ｂ」の割り当て領域４０２に対応付けされているモジュール４０１を、「ＰＤＦファイルの作成機能」を特定するモジュール４０１から「プリント機能」を特定するモジュール４０１に置き替える。
【００６５】
その後、メモリ管理部３１０は、ＰＤＦファイル作成処理を終了する。
【００６６】
以上のＰＤＦファイル作成処理を、複合機１００が行うことによって、ＰＤＦファイルの作成に必要なサイズの連続したメモリ領域を確保することができる。
【００６７】
なお、本発明は、上記実施形態に限定されず、種々の変形、応用が可能である。
【００６８】
例えば、上記実施形態では、複合機１００において処理される各種データを記憶するためのメモリを、揮発性メモリ１０３として説明している。しかし、本発明は、これに限定されない。例えば、不揮発性メモリ１０４であってもよい。
【００６９】
また、上記実施形態では、Ｉ／Ｏ制御ＡＳＩＣ１０９は、各種外部インタフェース１１２とのデータの入出力を行う第１のポート（インタフェース）を備えている。しかし、本発明は、これに限定されない。例えば、ネットワークインタフェース１１３とのデータの入出力を行う第３のポート（インタフェース）、ＵＳＢインタフェース１１４とのデータの入出力を行う第４のポート（インタフェース）を備えるようにしてもよい。この場合、例えば、第３のポートのみ有効にして、第１、第２、第４のポートを無効にし、ネットワークを経由して送られてきた印刷対象のデータのみ受け付けることなどもできる。
【図面の簡単な説明】
【００７０】
【図１】本発明の実施形態に係る複合機のハードウェア構成図である。
【図２】複合機の機能構成図である。
【図３】（Ａ）複合機が備えるメモリの割り当て状況の概念図である。（Ｂ）メモリマップのデータ構造の一例を示す図である。
【図４】複合機が行うＰＤＦファイル作成処理を説明するためのフローチャートである。
【符号の説明】
【００７１】
１００・・・複合機、１０１・・・ＣＰＵ、１０２・・・メモリ制御ＡＳＩＣ、１０３・・・揮発性メモリ、１０４・・・不揮発性メモリ、１０５・・・画像処理ＡＳＩＣ、１０６・・・印刷制御ＡＳＩＣ、１０７・・・ビデオデータインタフェース、１０８・・・印刷エンジン、１０９・・・Ｉ／Ｏ制御ＡＳＩＣ、１１０・・・スキャナＡＳＩＣ、１１１・・・スキャナ装置、１１２・・・各種外部インタフェース、１１３・・・ネットワークインタフェース、１１４・・・ＵＳＢインタフェース、２００・・・情報処理装置、３１０・・・メモリ管理部、３１１・・・記憶部、３１２・・・ユーザインタフェース部、３１３・・・データ受付部、３１４・・・受付ポート切替部、３１５・・・画像読取部、３１６・・・ＰＤＦファイル作成部、３１７・・・メモリマップ管理部、３２０・・・印刷制御部、３３０・・・印刷実行部、４００・・・メモリマップ、４０１・・・モジュール、４０２・・・割り当て領域。
【図１】
2009253662.tif 000003
【図２】
2009253662.tif 000004
【図３】
2009253662.tif 000005
【図４】
2009253662.tif 000006