(57)【要約】【課題】  アクセス情報を示す適切な寸法の画像が記載されている画像データを供給し得る技術を提供する。【解決手段】  データ供給サーバ１０は、第１種のコンテンツデータにアクセスするためのＵＲＬを示す２次元コードを、出力画像内に記載するための記載領域を決定し（Ｓ５０）、決定済みの記載領域内に収まる寸法の２次元コードによって示すことが可能な文字数のＵＲＬ（Ｓ６０）を決定する。データ供給サーバ１０は、決定済みのＵＲＬを用いて特定されるメモリ領域に、第１種のコンテンツデータを格納させる。データ供給サーバ１０は、文書ファイルとＵＲＬとを用いて、２次元コードが記載領域に記載されている出力画像を表す文書ファイルを生成し、出力部に出力する。【選択図】図３
2015095102.tif 000002
【特許請求の範囲】
【請求項１】
文書ファイルを用いて得られる出力画像データを供給するためのデータ供給装置であって、
前記文書ファイルに関連する第１種のコンテンツデータにアクセスするためのアクセス情報を示す特定の画像を、前記出力画像データによって表される出力画像内に記載するための記載領域を決定する領域決定部と、
前記アクセス情報の第１の文字数を決定する文字数決定部であって、前記第１の文字数は、決定済みの前記記載領域内に収まる寸法の前記特定の画像によって示すことが可能な文字数である、前記文字数決定部と、
決定済みの前記第１の文字数以下の文字数を有する第１の文字列を、前記アクセス情報として決定するアクセス情報決定部と、
決定済みの前記アクセス情報を用いて特定されるメモリ領域に、前記第１種のコンテンツデータを格納させる格納制御部と、
前記文書ファイルと前記アクセス情報とを用いて、前記出力画像データを生成するデータ生成部であって、前記出力画像データは、前記特定の画像が前記記載領域に記載されている前記出力画像を表す、前記生成部と、
生成済みの前記出力画像データを、出力部に供給する供給部と、を備える、データ供給装置。
【請求項２】
前記データ供給装置は、さらに、
前記第１種のコンテンツデータを含む１個以上のコンテンツデータが記述されている前記文書ファイルから、前記第１種のコンテンツデータを特定するデータ特定部を備え、
前記第１種のコンテンツデータは、前記出力画像が表示装置に表示されている状態で、出力される内容が変化可能なデータであり、
前記生成部は、前記文書ファイルに、前記第１種のコンテンツデータが記述されていることを報知する報知画像が、前記記載領域に重複する位置に配置されている前記出力画像を表す前記出力画像データを生成し、
前記領域決定部は、前記特定の画像の寸法が前記報知画像の寸法よりも小さくなるように、前記第１の文字数を決定する、請求項１に記載のデータ供給装置。
【請求項３】
前記文書ファイルは、前記第１種のコンテンツデータと、第２種のコンテンツデータと、を含み、
前記第２種のコンテンツデータは、前記出力画像が表示装置に表示されている状態で、出力される内容が変化しないデータであり、
前記データ生成部は、前記第１種のコンテンツデータを含まず、前記第２種のコンテンツデータを含む前記出力画像データを生成する、請求項２に記載のデータ供給装置。
【請求項４】
前記データ供給装置は、さらに、
前記特定の画像が満たすべき条件を決定する条件決定部を備え、
前記文字数決定部は、決定済みの第１の条件を用いて、前記第１の文字数を決定する、請求項１から３のいずれか一項に記載のデータ供給装置。
【請求項５】
前記第１の文字数を有する前記第１の文字列を、前記アクセス情報として決定することができない場合に、
前記条件決定部は、前記第１の条件と異なる第２の条件を決定し、
前記文字数決定部は、前記第１の条件に替えて、決定済みの前記第２の条件を用いて、前記アクセス情報の第２の文字数を決定し、
前記アクセス情報決定部は、決定済みの前記第２の文字数を有する第２の文字列を、前記アクセス情報として決定する、請求項４に記載のデータ供給装置。
【請求項６】
前記第１の文字列を、前記アクセス情報として決定することができない場合に、
前記文字数決定部は、前記アクセス情報の第３の文字数であって、前記第１の文字列に含まれる文字数よりも少ない前記第３の文字数を決定し、
前記アクセス情報決定部は、決定済みの前記第３の文字数を有する第３の文字列を、前記アクセス情報として決定する、請求項１から５のいずれか一項に記載のデータ供給装置。
【請求項７】
前記データ供給装置は、データを格納する格納サーバに接続されており、
前記格納制御部は、前記第１種のコンテンツデータを、前記格納サーバにアップロードする、請求項１から６のいずれか一項に記載のデータ供給装置。
【請求項８】
前記第１種のコンテンツデータは、前記文書ファイルによって表される画像が表示されている状態で、表示される画像が変化可能なデータを含む、請求項１から７のいずれか一項に記載のデータ供給装置。
【請求項９】
前記出力部は、印刷実行部を含み、
前記供給部は、生成済みの前記出力画像データを、前記印刷実行部に供給する、請求項１から８のいずれか一項に記載のデータ供給装置。
【請求項１０】
文書ファイルを用いて得られる出力画像データを供給するためのデータ供給装置のためのコンピュータプログラムであって、データ供給装置に搭載されているコンピュータに、以下の処理、即ち、
前記文書ファイルに関連する第１種のコンテンツデータにアクセスするためのアクセス情報を示す特定の画像を、前記出力画像データによって表される出力画像内に記載するための記載領域を決定する領域決定処理と、
前記アクセス情報の第１の文字数を決定する文字数決定処理であって、前記第１の文字数は、決定済みの前記記載領域内に収まる寸法の前記特定の画像によって示すことが可能な文字数である、前記文字数決定処理と、
決定済みの前記第１の文字数以下の文字数を有する第１の文字列を、前記アクセス情報として決定するアクセス情報決定処理と、
決定済みの前記アクセス情報を用いて特定されるメモリ領域に、前記第１種のコンテンツデータを格納させる格納制御処理と、
前記文書ファイルと前記アクセス情報とを用いて、前記出力画像データを生成するデータ生成処理であって、前記出力画像データは、前記特定の画像が前記記載領域に記載されている前記出力画像を表す、前記生成処理と、
生成済みの前記出力画像データを、出力部に供給する供給処理と、を実行させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書によって開示される技術は、文書ファイルを用いて得られる出力画像データを供給するためのデータ供給装置に関する。
【背景技術】
【０００２】
特許文献１に、名刺の配布者が登録した情報を閲覧するための技術が開示されている。名刺には、サーバに登録された配布者の画像や文字情報にアクセスするためのＵＲＬを示す２次元コードが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−８５６５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
データにアクセスするためのアクセス情報を示す画像が記載されている画像データを生成する場合、アクセス情報を示す画像以外の画像（例えば、静止画、文字列を表す画像）のスペースを確保するため、アクセス情報を示す画像の寸法を制限すべき場合がある。
【０００５】
本明細書では、アクセス情報を示す適切な寸法の画像が記載されている画像データを供給し得る技術を提供する。
【課題を解決するための手段】
【０００６】
本明細書によって開示される技術は、文書ファイルを用いて得られる出力画像データを供給するためのデータ供給装置である。データ供給装置は、領域決定部と、文字数決定部と、アクセス情報決定部と、格納制御部と、生成部と、供給部と、を備える。領域決定部は、文書ファイルに関連する第１種のコンテンツデータにアクセスするためのアクセス情報を示す特定の画像を、出力画像データによって表される出力画像内に記載するための記載領域を決定する。文字数決定部は、アクセス情報の第１の文字数を決定する。第１の文字数は、決定済みの記載領域内に収まる寸法の特定の画像によって示すことが可能な文字数である。アクセス情報決定部は、決定済みの第１の文字数以下の文字数を有する第１の文字列を、アクセス情報として決定する。格納制御部は、決定済みのアクセス情報を用いて特定されるメモリ領域に、第１種のコンテンツデータを格納させる。生成部は、文書ファイルとアクセス情報とを用いて、出力画像データを生成するデータ生成部であって、出力画像データは、特定の画像が記載領域に記載されている出力画像を表す。供給部は、生成済みの出力画像データを、出力部に供給する。
【０００７】
上記のデータ供給装置では、決定済みの記載領域内に収まる寸法の画像で示すことが可能な第１の文字列が、コンテンツデータにアクセスするためのアクセス情報として決定される。この構成によれば、アクセス情報を示す画像の寸法が、決定済みの記載領域よりも大きくなることを防止することができる。この結果、アクセス情報を示す適切な寸法の画像が記載されている出力画像データを供給し得る。
【０００８】
データ供給装置は、さらに、第１種のコンテンツデータを含む１個以上のコンテンツデータが記述されている文書ファイルから、第１種のコンテンツデータを特定するデータ特定部を備えていてもよい。第１種のコンテンツデータは、出力画像が表示装置に表示されている状態で、出力される内容が変化可能なデータであってもよい。生成部は、文書ファイルに、第１種のコンテンツデータが記述されていることを報知する報知画像が、記載領域に重複する位置に配置されている出力画像を表す出力画像データを生成してもよい。文字数決定部は、特定の画像の寸法が報知画像の寸法よりも小さくなるように、第１の文字数を決定してもよい。この構成によれば、報知画像にアクセス情報を表す画像が重複して配置されている出力画像を取得することができる。このため、出力画像を確認することによって、アクセス情報を用いて、報知画像によって報知されている第１種のコンテンツデータにアクセス可能であることを知ることができる。また、特定の画像の寸法が報知画像の寸法よりも小さくなるため、アクセス情報を示す画像によって、報知画像を確認することができなくなる事態を回避することができる。
【０００９】
文書ファイルは、第１種のコンテンツデータと、第２種のコンテンツデータと、を含んでいてもよい。第２種のコンテンツデータは、出力画像が表示装置に表示されている状態で、出力される内容が変化しないデータであってもよい。データ生成部は、第１種のコンテンツデータを含まず、第２種のコンテンツデータを含む出力画像データを生成してもよい。この構成によれば、出力画像データの出力先において、出力される内容が変化可能な状態で、第１種のコンテンツデータを出力することができなくても、出力画像を適切に出力することができる。
【００１０】
データ供給装置は、さらに、特定の画像が満たすべき条件を決定する条件決定部を備えていてもよい。文字数決定部は、決定済みの第１の条件を用いて、第１の文字数を決定してもよい。この構成によれば、第１の条件を満たす特定の画像が記載されている出力画像を表す出力画像データを生成することができる。
【００１１】
第１の文字数を有する第１の文字列を、アクセス情報として決定することができない場合に、条件決定部は、第１の条件と異なる第２の条件を決定し、文字数決定部は、第１の条件に替えて、決定済みの第２の条件を用いて、アクセス情報の第２の文字数を決定し、アクセス情報決定部は、決定済みの第２の文字数を有する第２の文字列を、アクセス情報として決定してもよい。この構成によれば、アクセス情報を示す画像が満たすべき条件を変更して、アクセス情報を決定することができる。
【００１２】
第１の文字列を、アクセス情報として決定することができない場合に、文字数決定部は、アクセス情報の第３の文字数であって、第１の文字列に含まれる文字数よりも少ない第３の文字数を決定し、アクセス情報決定部は、決定済みの第３の文字数を有する第３の文字列を、アクセス情報として決定してもよい。この構成によれば、アクセス情報を表す画像の寸法が大きくせずに、アクセス情報を変更することができる。
【００１３】
データ供給装置は、データを格納する格納サーバに接続されていてもよい。格納制御部は、特定済みの第１種のコンテンツデータを、格納サーバにアップロードしてもよい。この構成によれば、データ供給装置は、第１種のコンテンツデータを格納せずに済む。
【００１４】
第１種のコンテンツデータは、文書ファイルによって表される画像が表示されている状態で、表示される画像が変化可能なデータを含んでいてもよい。
【００１５】
出力部は、印刷実行部を含んでいてもよい。供給部は、生成済みの出力画像データを、印刷実行部に供給してもよい。この構成によれば、アクセス情報を示す画像が記載されている印刷結果を取得することができる。このため、印刷結果に記載されている特定の画像を用いて、第１種のコンテンツデータにアクセスすることができる。
【００１６】
なお、上記のデータ供給装置を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も、新規で有用である。
【図面の簡単な説明】
【００１７】
【図１】通信システムの構成を示す。
【図２】データ供給サーバが実行する生成処理のフローチャートを示す。
【図３】データ供給サーバが実行するＵＲＬ決定処理のフローチャートを示す。
【図４】ＵＲＬの文字数の決定方法を説明するための図を示す。
【図５】２次元コードの配置を説明するための図を示す。
【発明を実施するための形態】
【００１８】
（第１実施例）
（通信システムの構成）
図１に示すように、通信システム２は、データ供給サーバ１０と、ＰＣ１００と、プリンタ２００と、格納サーバ３００，４００と、を備える。データ供給サーバ１０は、各デバイス１００，２００，３００，４００と、インターネット４を介して通信可能である。
【００１９】
（データ供給サーバ１０の構成）
データ供給サーバ１０は、ＬＡＮインターフェース１２と、制御部３０と、を備える。以下では、インターフェースのことを「Ｉ／Ｆ」と記載する。ＬＡＮＩ／Ｆ１２は、データ供給サーバ１０がインターネット４と通信するためのインターフェースである。
【００２０】
制御部３０は、ＣＰＵ３２と、メモリ３４と、を備える。ＣＰＵ３２は、メモリ３４に格納されているプログラム３６に従って、様々な処理を実行する。メモリ３４は、ＲＯＭ、ＲＡＭ、ハードディスク等によって構成される。メモリ３４は、ＣＰＵ３２によって実行される上記のプログラム３６を格納する。メモリ３４には、後述する１個以上の２次元コード決定テーブルＤＴ（例えば図４の２次元コード決定テーブルＤＴ１，ＤＴ２）が格納されている。２次元コード決定テーブルＤＴは、データ供給サーバ１０が２次元コードを生成する際に用いられ、２次元コードを生成するための条件が登録されている。２次元コード決定テーブルＤＴは、データ供給サーバ１０の管理者等によって、メモリ３４に格納される。
【００２１】
（ＰＣ１００の構成）
ＰＣ１００は、デスクトップ型、ノート型あるいはタブレット型のＰＣである。ＰＣ２００は、図示省略したＬＡＮＩ／Ｆを備えており、インターネット４に通信可能である。ＰＣ１００は、表示部１０２と、操作部１０４と、制御部１０６と、を備える。ユーザは、操作部１０４を操作することによって、ＰＣ１００に文書ファイル（図５の画像ＤＩ参照）を生成させることができる文書ファイルは、ＰＤＦ（Portable Document Formatの略）形式のデータファイルである。ＰＤＦ形式の文書ファイルには、１個以上のオブジェクトデータが記述されている。なお、言い換えると、ＰＤＦ形式の文書ファイルには、１個以上のオブジェクトデータが埋め込まれていると言うこともできる。ＰＤＦ形式の文書ファイルは、１個以上のオブジェクトデータの木構造を有する。
【００２２】
文書ファイルに記述されているオブジェクトデータは、テキストデータと、例えばＦＬＶ（Flash Videoの略）形式の動画データと、例えばＪＰＥＧ（Joint Photographic Experts Groupの略）形式の静止画データと、例えばＭＰ３（MPEG Audio Layer-3の略）形式の音声データと、のいずれか１個のコンテンツデータである。コンテンツデータは、例えば表示部１０２等の出力装置によって出力されるデータである。ユーザは、文書ファイルによって表される画像が表示部１０２に表示されている状態で、ＰＣ１００の操作部に所定の操作を実行することによって、動画データによって表される動画を、再生することができる。また、ユーザは、文書ファイルによって表される画像が表示部１０２に表示されている状態で、ＰＣ１００の操作部に所定の操作を実行することによって、音声データによって表される音声を、再生することができる。即ち、動画データと音声データとは、文書ファイルによって表される画像がＰＣ１００の表示部に表示されている状態で、出力内容が変化可能なデータである。以下では、文書ファイルによって表される画像がＰＣ１００の表示部に表示されている状態で、表示内容が変化可能なコンテンツデータを、「第１種のコンテンツデータ」と呼ぶ。
【００２３】
一方、ユーザは、文書ファイルによって表される画像がＰＣ２００の表示部に表示されている状態で、ＰＣ１００の操作部に所定の操作を実行することによって、テキストデータによって表される画像の大きさを変更することはできる一方、表示内容を変更することはできない。例えば、テキストデータは、文書ファイルによって表される画像が表示部に表示されている状態で、画像の大きさは変更可能であるが、内容は変化不可能（即ち文字自体は変更不可能）なデータである。以下では、文書ファイルによって表される画像がＰＣ２００の表示部に表示されている状態で、表示内容が変化不可能なコンテンツデータを、「第２種のコンテンツデータ」と呼ぶ。静止画データは、テキストデータと同様に第２種のコンテンツデータである。１個以上のオブジェクトデータは、さらに、文書ファイルによって表される画像（図５の文書画像ＤＩ参照）におけるコンテンツデータの位置を示す位置情報を含む。
【００２４】
制御部１０６は、ＣＰＵとメモリとを備える。制御部１０６は、ユーザが操作部１０４に実行する操作に従って、処理を実行する。
【００２５】
（プリンタ２００の構成）
プリンタ２００は、印刷機能を実行可能な周辺機器（即ち、ＰＣ１００等の周辺機器）である。プリンタ２００は、図示省略したＬＡＮＩ／Ｆを備えており、インターネット４に通信可能である。プリンタ２００は、外部装置（例えばデータ供給サーバ１０）から、印刷データを含む印刷指示を受信すると、印刷指示に含まれる印刷設定情報に従って、位印刷データによって表される画像（図５の印刷画像ＰＩ参照）を印刷用紙に印刷する。
【００２６】
（格納サーバ３００，４００の構成）
格納サーバ３００は、外部装置（例えばデータ供給サーバ１０）から供給されるデータを格納する。格納サーバ３００は、図示省略したＬＡＮＩ／Ｆを備えており、インターネット４に通信可能である。格納サーバ３００は、メモリ３０２を備える。メモリ３０２は、ＲＯＭ、ＲＡＭ、ハードディスク等によって構成される。格納サーバ３００は、データ供給サーバ１０から、インターネット４を介して送信（即ちアップロード）されるデータを格納することができる。格納サーバ３００は、データを格納するための１個以上のフォルダを、メモリ３０２に格納可能である。メモリ３０２内のフォルダに格納されるファイル（例えば文書ファイル）には、インターネット４上の位置を示す固有のＵＲＬ（Uniform Resource Locatorの略）（例えば、http://example300.org/video.mov）が付与される。なお、格納サーバ４００は、格納サーバ３００と同様の構成を有する。
【００２７】
（データ供給サーバ１０が実行する生成処理：図２）
データ供給サーバ１０のＣＰＵ３２は、データ供給サーバ１０が稼動している間、インターネット４を介して、例えばＰＣ１００等の機器から、文書ファイルと処理情報との組合せを受信することを監視する。以下では、ＰＣ１００等の機器から受信される文書ファイルを、「対象文書ファイル」と呼ぶ。処理情報は、対象文書ファイルに対して実行すべき処理を示す。また、処理情報は、対象文書ファイルの送信先の外部装置（例えばプリンタ２００）のアドレス情報（例えばＩＰアドレス）を含む。さらに、処理情報は、対象文書ファイルに対して実行すべき処理が印刷処理である場合に、ユーザによって設定された印刷条件（例えは用紙サイズ、印刷部数等）を含む。
【００２８】
図２に示すように、Ｓ１０では、ＣＰＵ３２は、対象文書ファイルと処理情報との組合せを受信する。次いで、Ｓ１２では、ＣＰＵ３２は、対象文書ファイルから、第１種のコンテンツデータを特定する。具体的には、ＣＰＵ３２は、対象文書ファイルに記述されている１個以上のオブジェクトデータの内容を、順番に確認する。ＣＰＵ３２は、確認中のオブジェクトデータに、第１種のコンテンツデータであることを示す情報が含まれている場合に、確認中のオブジェクトデータを、第１種のコンテンツデータであると特定する。これにより、特定の文書ファイルに含まれる１個以上の第１種のコンテンツデータが特定される。
【００２９】
第１種のコンテンツデータが特定される場合（Ｓ１２でＹＥＳ）、Ｓ１４に進み、第１種のコンテンツデータが特定されない場合（Ｓ１２でＮＯ）、Ｓ３２に進む。Ｓ１４では、ＣＰＵ３２は、Ｓ１２で特定された１個以上の第１種のコンテンツデータのうち、１個の第１種のコンテンツデータを、対象文書ファイルから取得する。具体的には、ＣＰＵ３２は、Ｓ１２で特定された１個の第１種のコンテンツデータのコピーを、対象文書ファイルとは別に生成する。即ち、Ｓ１４では、第１種のコンテンツデータは、文書ファイルから消去されずに、対象文書ファイルに記述されている状態で維持される。なお、変形例では、ＣＰＵ３２は、Ｓ１４で特定された１個の第１種のコンテンツデータを、対象文書ファイルから取得する際に、取得された第１種のコンテンツデータを、対象文書ファイルから消去してもよい。
【００３０】
次いで、Ｓ１６において、ＣＰＵ３２は、対象文書ファイルを用いて、対象文書ファイルによって表される画像（以下では「文書画像」と呼ぶ）において、第１種のコンテンツデータに関連する領域（以下では「関連領域」と呼ぶ）（例えば図５の関連領域ＬＡ１，ＬＡ２）の寸法（即ち縦横の長さ）を特定する。例えば、第１種のコンテンツデータが動画データである場合、関連領域は、文書画像において動画を表示するための領域である。なお、関連領域には、例えば、文書ファイルに第１種のコンテンツデータが記述されていることを報知するための報知画像が記載されている場合がある。
【００３１】
なお、ＣＰＵ３２は、関連領域を特定することができない場合、文書ファイル内の余白部分を、２次元コードを配置するための領域（以下では、当該領域を含めて「関連領域」と呼ぶ）として決定する。例えば、ＣＰＵ３２は、文書画像の最終ページの余白を、関連領域として決定してもよい。
【００３２】
ＣＰＵ３２は、Ｓ１２と同様の手法を用いて、対象文書ファイルに記述されている１個以上のオブジェクトデータの中から、関連領域を関する情報（例えば第１種のコンテンツデータに関連する文字列（例えばデータ名）を含む情報）を含むオブジェクトデータを特定する。次いで、特定されたオブジェクトデータに含まれている関連領域の文書画像内の位置及び寸法を検出する。本明細書における「寸法」は、文書画像が、文書ファイルに設定されている用紙サイズ（あるいは出力サイズ）で出力（例えば印刷）される場合の大きさを意味する。例えば、図５に示す文書画像ＤＩでは、Ａ４サイズ（２１０ｍｍ×２９７ｍｍ）の文書画像ＤＩにおいて、関連領域ＬＡ１は、１８０ｍｍ×６０ｍｍの寸法を有する。
【００３３】
次いで、Ｓ１８では、ＣＰＵ３２は、Ｓ１４で取得された第１種のコンテンツデータのインターネット４上の位置を示すＵＲＬを決定するための処理を実行する。次に、Ｓ２０では、ＣＰＵ３２は、Ｓ１８のＵＲＬ決定処理において、ＵＲＬが決定されたか否かを判断する。ＵＲＬが決定された場合（Ｓ２０でＹＥＳ）、Ｓ２２に進み、ＵＲＬが決定されなかった場合（Ｓ２０でＮＯ）、生成処理を終了する。なお、ＵＲＬが決定されなかった場合、ＣＰＵ３２は、対象文書ファイルの送信元のデバイス（例えばＰＣ１００）に、対象文書ファイルを用いた処理が実行できなかったことを示す不実行情報を送信してもよい。ＰＣ１００は、不実行情報が受信されると、表示部１０２に、処理が実行されなかったことを示す情報を表示させる。
【００３４】
Ｓ２２では、ＣＰＵ３２は、Ｓ１４で取得された第１種のコンテンツデータを含むコンテンツファイルを、インターネット４を介して、Ｓ１８で決定されたＵＲＬによって示される位置（例えば、格納サーバ３００のメモリ３０２内のファイル）にアップロードする。この構成によれば、データ供給サーバ１０は、第１種のコンテンツデータを格納せずに済む。
【００３５】
次いで、Ｓ２４において、ＣＰＵ３２は、Ｓ２８で決定されたＵＲＬを示すマトリックス型の２次元コード（即ちＱＲ（Quick Responseの略）コード（登録商標））を生成する。ＣＰＵ３２は、Ｓ１８で決定されたＵＲＬを示す文字列を表すための複数個のセルがマトリクス状に配置されている２次元コードを生成する。ＣＰＵ３２は、後述する図３のＵＲＬ決定処理で決定された２次元コード生成条件（即ち、１個のセルの寸法、セル数、誤り訂正レベル）に従って、２次元コードを生成する。さらに、ＣＰＵ３２は、２次元コードを表す第２種のコンテンツデータを生成する。詳細には、ＣＰＵ３２は、生成された２次元コードを表す画像データと、２次元コードを一巡する余白を表す画像データと、を含む第２種のコンテンツデータを生成する。２次元コードを一巡する余白の幅は、セルの一辺の長さの４倍である。
【００３６】
２次元コードが生成されると、Ｓ２６において、ＣＰＵ３２は、Ｓ１２と同様の手法で、対象文書ファイルに、第１種のコンテンツデータが記述されていることを報知するための報知画像データが記述されているのか否かを判断する。
【００３７】
例えば、第１種のコンテンツデータが動画データである場合、報知画像データは、第１種のコンテンツデータによって表される動画に含まれる画像（例えば再生時間が０秒のときの画像）を表す静止画データであってもよく、動画のタイトルを示すテキストデータであってもよい。第１種のコンテンツデータが音声データである場合、報知画像データは、再生ボタンを表す静止画データであってもよく、音声のタイトルを示すテキストデータであってもよい。ＣＰＵ３２は、Ｓ１２と同様の手法で、文書ファイルの中から、報知画像データを特定する。なお、報知画像データは、第２種のコンテンツデータである。
【００３８】
報知画像データが記述されていると判断される場合（Ｓ２６でＹＥＳ）、Ｓ２８をスキップして、Ｓ３０に進む。一方、報知画像データが記述されていると判断されない場合（Ｓ２６でＮＯ）、Ｓ２８において、ＣＰＵ３２は、第１種のコンテンツデータを用いて、報知画像データを生成する。具体的には、第１種のコンテンツデータが動画データである場合、ＣＰＵ３２は、再生時間が０秒のときの静止画像を表す報知画像データを生成する。第１種のコンテンツデータが音声データである場合、ＣＰＵ３２は、再生ボタンを表す報知画像データを生成する。
【００３９】
Ｓ３０では、Ｓ２８の処理が実行されたのか否かによって、ＣＰＵ３２が実行する処理が異なる。Ｓ２８の処理が実行されなかった場合、ＣＰＵ３２は、Ｓ２４で生成された２次元コードを表す第２種のコンテンツデータと、Ｓ２６で特定された報知画像データと、が記述され、Ｓ１４で取得された第１種のコンテンツデータが記述されていない文書ファイルを生成する。一方、Ｓ２８の処理が実行された場合、ＣＰＵ３２は、Ｓ２４で生成された２次元コードを表す第２種のコンテンツデータと、Ｓ２８で生成された報知画像データと、が記述され、Ｓ１４で取得された第１種のコンテンツデータが記述されていない文書ファイルを生成する。
【００４０】
Ｓ３０では、ＣＰＵ３２は、対象文書ファイルと、同一のデータ形式（即ちＰＤＦ形式）の文書ファイルを生成する。この構成によれば、文書ファイルの出力先において、出力される内容が変化可能な状態で、第１種のコンテンツデータを出力することができなくても、出力画像を適切に出力することができる。
【００４１】
具体的には、Ｓ１４で取得された第１種のコンテンツデータが、動画データである場合、ＣＰＵ３２は、報知画像データによって表される画像が、Ｓ１４で取得された第１種のコンテンツデータによって表される動画が表示される位置に配置されるように、文書ファイルに、報知画像データと、報知画像データの位置情報と、を記述する。一方、Ｓ１４で取得された第１種のコンテンツデータが、音声データである場合、ＣＰＵ３２は、Ｓ２８で報知画像データが生成される場合、文書画像の最後に配置されるように、文書ファイルに、報知画像データと、報知画像データの位置情報と、を記述する。なお、Ｓ２６で報知画像データが特定される場合、上記の処理は実行しない。
【００４２】
次いで、ＣＰＵ３２は、Ｓ２４で生成された２次元コードを表す第２種のコンテンツデータを、報知画像データによって表される画像に重なる位置に配置されるように、文書ファイルに、２次元コードを表す第２種のコンテンツデータと、第２種のコンテンツデータの位置情報と、を記述する。
【００４３】
図５に示すように、Ｓ３０で生成された文書ファイルによって表される画像ＰＩには、対象文書ファイルに予め記述されている第２種のコンテンツデータによって表される画像（例えばテキスト画像）ＴＸと、報知画像データによって表される画像ＮＩ１，ＮＩ２と、Ｓ２４で生成された第２種のコンテンツデータによって表される２次元コードＴＣ１，ＴＣ２と、が配置される。２次元コードＴＣ１，ＴＣ２は、それぞれ、報知画像ＮＩ１，ＮＩ２に重なるように配置される。この構成によれば、２次元コードＴＣ１，ＴＣ２が、それぞれ、報知画像ＮＩ１，ＮＩ２に関連する２次元コードであることを容易に推測することができる。
【００４４】
Ｓ３０が完了すると、Ｓ３１において、ＣＰＵ３２は、Ｓ１２で特定された全ての第１種のコンテンツデータについて、Ｓ１４〜Ｓ３０の処理が完了したのか否かを判断する。Ｓ１４〜Ｓ３０の処理が完了していない第１種のコンテンツデータが存在する場合（Ｓ３１でＮＯ）、Ｓ１４に戻る。なお、２回目以降のＳ３０では、前回のＳ３０で生成された文書ファイルを用いて、新たな文書ファイルを生成する。全ての第１種のコンテンツデータについて、Ｓ１４〜Ｓ３０までの処理が完了した場合（Ｓ３１でＹＥＳ）、Ｓ３２に進む。Ｓ３２では、ＣＰＵ３２は、Ｓ１０で受信された処理情報に含まれるアドレス情報を送信先に指定して、Ｓ３０で生成された文書ファイルを送信して、生成処理を終了する。あるいは、Ｓ３２では、ＣＰＵ３２は、Ｓ１２でＮＯの場合に、Ｓ１２で第１種のコンテンツデータが特定されなかった文書ファイルを、送信する。なお、変形例では、ＣＰＵ３２は、Ｓ１２で特定された全ての第１種のコンテンツデータについて、Ｓ１４〜Ｓ２８の処理を実行した後で、Ｓ３０の処理を実行してもよい。
【００４５】
（データ供給サーバ１０が実行するＵＲＬ決定処理：図３）
次いで、図３を参照して、図２のＳ１８のＵＲＬ決定処理を詳細に説明する。最初に、Ｓ５０において、ＣＰＵ３２は、図２のＳ１６で検出された関連領域の寸法を用いて、２次元コードを記載するための記載領域を決定する。具体的には、ＣＰＵ３２は、図２のＳ１６で検出された関連領域の横方向の長さを予め決められた値（例えば４）で除算した値と、関連領域の縦方向の長さを上記の予め決められた値（例えば４）で除算した値と、を算出する。そして、ＣＰＵ３２は、算出された２個の値を比較して、より小さい値を、記載領域の一辺の長さとして特定する。例えば、関連領域の寸法が４０ｍｍ×８０ｍｍである場合、記載領域の寸法は、１０ｍｍ×１０ｍｍである。また、ＣＰＵ３２は、記載領域の位置を、関連領域中の予め決められた位置（例えば右下）に決定する。なお、変形例では、ＣＰＵ３２は、記載領域の寸法を決める指標（例えば上記の予め決められた値）を、ユーザに決定させてもよい。あるいは、ユーザによって予め設定された文書ファイルのうちの２次元コードを配置する領域（即ち位置、寸法）に関する情報を、例えば、Ｓ１０において受信し、受信された領域を、記載領域（即ち記載領域の位置、寸法）として決定してもよい。
【００４６】
次いで、Ｓ５２では、ＣＰＵ３２は、２次元コードの生成条件を決定する。ＣＰＵ３２は、２次元コード決定テーブルＤＴを用いて、２次元コードの生成条件を決定する。２次元コードは、複数個のセルが格子状に配置されることによって構成される。ＣＰＵ３２は、２次元コードに含まれるセルの寸法と、誤り訂正レベルと、を決定する。誤り訂正とは、例えば、汚れ、破損等によって、２次元コードの一部が欠損して読み取れない場合であっても、２次元コードを読み取って復号することにより、２次元コードによって示される情報（例えばＵＲＬ）を読取可能とする機能である。
【００４７】
ＣＰＵ３２は、セル寸法を決定する。具体的には、最初に、ＣＰＵ３２は、図２のＳ３０で生成される文書ファイルの出力装置の出力性能を取得する。例えば、出力装置がプリンタ２００である場合、ＣＰＵ３２は、プリンタ２００が印刷可能なドット密度を、プリンタ２００から取得する。ＣＰＵ３２は、取得されたドット密度に基づいて、１セルの寸法を決定する。なお、２次元コードでは、１セル当りのドット数の範囲が予め規定されている。ＣＰＵ３２は、規定された範囲のうち、最も多いドット数を、１セル当りのドット数として決定する。これにより、１セルの寸法が決定される。なお、変形例では、１セル当りのドット数の範囲のいずれかを、１セル当りのドット数として決定してもよい。
【００４８】
この結果、Ｓ５０で決定された記載領域の寸法（例えば１０ｍｍ×１０ｍｍ）及び１セルの寸法（例えば０．２５ｍｍ×０．２５ｍｍ）から、記載領域に収まる最大のセル数（例えば４０×４０）が特定される。なお、２次元コードでは、バージョンによって、予めセル数が決定されている。ＣＰＵ３２は、最大のセル数以下であって、最大セル数の最も近いバージョンのセル数を特定する。
【００４９】
次いで、Ｓ５４では、ＣＰＵ３２は、２次元コード決定テーブルＤＴとＳ５２で決定された文字数とを用いて、文字数（例えば３２１文字）を決定する。続いて、Ｓ５６では、ＣＰＵ３２は、図２のＳ１４で特定された第１種のコンテンツデータを格納すべき格納サーバ（例えば格納サーバ３００）を決定する。例えば、ＣＰＵ３２は、Ｓ５４で特定された文字数に応じて、格納すべきサーバを決定してもよい。Ｓ５６で格納サーバが決定されると、ＵＲＬを構成する文字列のうち、スキーム（例えばhttp、ftp）と、決定済みの格納サーバ（例えば格納サーバ３００）に固有に付与されているホスト名（例えばexample300.org）は、強制的に特定される。このため、ＣＰＵ３２は、強制的に特定される文字列の文字数が、Ｓ５４で決定された文字数よりも大きくならないように、サーバを決定する。
【００５０】
Ｓ５８では、ＣＰＵ３２は、Ｓ５４で決定された文字数を有する全ての文字列のＵＲＬについて、利用不可能であることが確認されたか否か（後述するＳ６２の処理）を判断する。全ての文字列のＵＲＬが利用不可能であることが確認済みであると判断される場合（Ｓ５８でＹＥＳ）、Ｓ６４に進み、確認済みでないと判断される場合（Ｓ５８でＮＯ）、Ｓ６０に進む。
【００５１】
Ｓ６０では、ＣＰＵ３２は、Ｓ５４で決定された文字数を有する候補ＵＲＬを決定する。具体的には、ＣＰＵ３２は、強制的に特定される文字列（例えばhttp:// example300.org）以降のパス名の文字列を決定する。ＣＰＵ３２は、特定された文字列以降の文字列（例えばhttp:// example300.org以降の文字列）を決定することによって、候補ＵＲＬを生成する。ＣＰＵ３２は、ＵＲＬ決定処理が終了するまでに、既にＳ６０において生成された候補ＵＲＬと異なる新たな候補ＵＲＬを生成する。ＣＰＵ３２は、生成された候補ＵＲＬをメモリ３４に格納する。
【００５２】
次いで、Ｓ６２において、ＣＰＵ３２は、候補ＵＲＬが利用可能であるか否かを判断する。具体的には、ＣＰＵ３２は、Ｓ５６で決定された格納サーバに、候補ＵＲＬが利用可能であるのか否かを問い合わせるための利用問合せを送信する。利用問合せは、候補ＵＲＬを含む。利用問合せが受信された格納サーバ（例えば格納サーバ３００）は、候補ＵＲＬによって示される位置に、第１種のコンテンツデータを格納することができるのか否かを判断する。例えば、格納サーバは、候補ＵＲＬによって示される位置に、既にデータが格納されている場合、候補ＵＲＬを利用することができないと判断する。一方、格納サーバは、候補ＵＲＬによって示される位置に、既にデータが格納されていない場合に、候補ＵＲＬを利用することができると判断する。
【００５３】
格納サーバは、判断結果をデータ供給サーバ１０に送信する。ＣＰＵ３２は、受信された判断結果が、候補ＵＲＬを利用することができることを示す場合（Ｓ６２でＹＥＳ）、候補ＵＲＬを、第１種のコンテンツデータにアクセスするためのＵＲＬとして決定し、ＵＲＬ決定処理を終了する。一方、ＣＰＵ３２は、受信された判断結果が、候補ＵＲＬを利用することができることを示す場合（Ｓ６２でＮＯ）、Ｓ５８に戻る。
【００５４】
一方、Ｓ５８でＹＥＳと判断される場合に、Ｓ６４において、ＣＰＵ３２は、２次元コードに含まれるセルの寸法を縮小することができるか否かを判断する。セルの寸法を縮小することができると判断される場合（Ｓ６４でＹＥＳ）、Ｓ６６において、現在の生成条件のうち、セルの寸法を縮小して、Ｓ５４に戻る。
【００５５】
一方、セルの寸法を縮小することができないと判断される場合（Ｓ６４でＮＯ）、Ｓ６８において、ＣＰＵ３２は、現在の誤り訂正レベルが最も低いレベルＬであるのか否かを判断する。誤り訂正レベルがレベルＬでないと判断される場合（Ｓ６８でＮＯ）、Ｓ７０において、ＣＰＵ３２は、現在の誤り訂正レベルを一つ低くして（例えば現在がレベルＨであれば、レベルＱに変更する）、Ｓ５４に戻る。
【００５６】
一方、誤り訂正レベルがレベルＬであると判断される場合（Ｓ６８でＹＥＳ）、Ｓ７２において、Ｓ５４で特定された文字数のうち、変更可能な文字数が、２個以上あるか否かを判断する。Ｓ５４で特定された文字数のうち、スキーム及びホスト名を表す部分（例えばhttp:// example300.org）は、強制的に特定される。また、第１種のコンテンツデータのデータ形式を表す拡張子（例えば.mov）も、強制的に特定される。Ｓ７２では、強制的に特定される文字列以外の変更可能な文字数が、２個以上あるか否かを判断する。変更可能な文字数が２個以上ある場合、Ｓ７４において、ＣＰＵ３２は、文字数を１文字減算して、Ｓ５８に戻る。一方、変更可能な文字数が１個である場合、ＵＲＬが決定されずに、ＵＲＬ決定処理が終了する。
【００５７】
次いで、図４，図５を参照して、ＵＲＬ決定処理において、ＵＲＬの文字数の決定方法を、具体例を挙げて説明する。本例では、データ供給サーバ１０が、文書画像ＤＩを表す対象文書ファイルをＰＣ１００から受信し（図２のＳ１０）、プリンタ２００に文書ファイルを送信して（図２のＳ３２）、プリンタ２００に印刷を実行させるケースについて説明する。
【００５８】
２次元コード決定テーブルＤＴ１には、プリンタのドット密度と、１セル当りのドット数と、セルの寸法と、が対応付けて登録されている。２次元コード決定テーブルＤＴ２には、２次元コードのセル数と、誤り訂正レベルと、最大文字数と、が対応付けて登録されている。２次元コード決定テーブルＤＴ１，ＤＴ２は、それぞれ、２次元コードの規格によって規定されている。２次元コード決定テーブルＤＴ１，ＤＴ２は、共に、データ供給サーバ１０のベンダによって、メモリ３４内に予め格納されている。
【００５９】
ドット密度は、プリンタ、多機能機等の印刷実行部の性能によって決定される。１セル当りのドット数は、２次元コードの規格によって規定されている。セルの寸法は、ドット密度と、１セル当りのドット数によって決まる寸法である。
【００６０】
セル数について、２次元コードの規格では、２次元コードに配置可能なセル数がバージョン毎に予め決められている。例えば、バーション１５では、セル数は、「７７×７７」であり、バーション１９では、セル数は、「９３×９３」である。
【００６１】
誤り訂正レベルは、許容される２次元コードの欠損のレベルに応じて、Ｈ，Ｑ，Ｍ，Ｌの４レベルのいずれかに設定可能である。なお、レベルＨ，Ｑ，Ｍ，Ｌでは、それぞれ、２次元コードの面積の約３０％、約２５％、約１５％、約７％が欠損していても、２次元コードによって示される情報が読取可能である。最大文字数は、セル数と、誤り訂正レベルとによって決まる。
【００６２】
図５に示すように、ＣＰＵ３２は、対象文書ファイルに含まれる関連領域ＬＡ１が特定される（図２のＳ１６）と、図３のＳ５０において、関連領域ＬＡ１（例えば１８０ｍｍ×６０ｍｍの寸法）を用いて、横方向の長さ（１８０ｍｍ）と、縦方向の長さ（６０ｍｍ）と、のそれぞれを予め決められた値「３」で除算して、６０ｍｍと２０ｍｍとを算出する。なお、関連領域ＬＡ１の寸法は、文書画像が、文書ファイルに設定されている用紙サイズＡ４に、拡大も縮小もせずに印刷された場合の寸法を意味する。ＣＰＵ３２は、６０ｍｍと２０ｍｍとのうちの小さい値「２０ｍｍ」を、２次元コードの記載領域の一辺の長さと決定する。
【００６３】
次いで、ＣＰＵ３２は、２次元コード決定テーブルＤＴ２を用いて、２次元コードの生成条件として、誤り訂正レベルが最も高いレベルＨを、誤り訂正レベルとして決定する（図３のＳ５２）。なお、変形例では、ＣＰＵ３２は、ユーザによって指定されたレベルを、誤り訂正レベルとして決定してもよい。
【００６４】
次いで、ＣＰＵ３２は、２次元コード決定テーブルＤＴ１を用いて、２次元コードの生成条件として、セルの寸法を決定する（図３のＳ５２）。具体的には、ＣＰＵ３２は、プリンタ２００からプリンタ２００が印刷可能なドット密度「６００ｄｐｉ（Dots Per Inchの略）」を取得する。ＣＰＵ３２は、２次元コード決定テーブルＤＴ１を用いて、１セル当りのドット数「６」、「５」及び「４」を特定する。ＣＰＵ３２は、特定されたドット数のうち、最も多いドット数「６」を、１セル当りのドット数として決定する。次いで、ＣＰＵ３２は、決定されたドット数「６」に対応するセルの寸法「０．２５ｍｍ」を、２次元コード決定テーブルＤＴ１から特定する。これにより、セルの寸法が決定される。
【００６５】
続いて、図３のＳ５４では、ＣＰＵ３２は、記載領域の一辺の長さ「２０ｍｍ」を、決定されたセルの寸法「０．２５ｍｍ」で除算することによって、記憶領域に配置可能な最大のセル数「８０×８０」を算出する。続いて、ＣＰＵ３２は、２次元コード決定テーブルＤＴ２を用いて、最大のセル数「８０×８０」以下のセル数のうち、最多のセル数「７７×７７」を、２次元コードのセル数として決定する。さらに、ＣＰＵ３２は、２次元コード決定テーブルＤＴ２を用いて、決定されたセル数「７７×７７」と、誤り訂正レベルＨと、に対応付けられている「３２１」を、ＵＲＬの文字数として特定する。
【００６６】
ＣＰＵ３２は、第１種のコンテンツデータを格納すべきサーバが決定されると（図３のＳ５６）、候補ＵＲＬ（例えばhttp://example300.org/video・・・・・・.mov）を生成する。ＣＰＵ３２は、候補ＵＲＬが利用可能でないと判断されると（図３のＳ６２でＮＯ）、３２１個の文字数の文字列のうち、変更可能な文字列を変更し、様々な候補ＵＲＬが利用可能であるか否かを判断する（図３のＳ６２）。ＣＰＵ３２は、３２１個の文字数の文字列のＵＲＬが全て利用できないと判断される場合（図３のＳ５８でＹＥＳ）、２次元コードの生成条件のうち、最初にセルの寸法を縮小することが可能であるのか判断する（図３のＳ６４）。
【００６７】
セルの寸法は、１セル当りのドット数によって決まる。ＣＰＵ３２は、２次元コード生成テーブルＤＴ１を用いて、１セル当りのドット数を少なくすることが可能であるか否かを判断する。図３のＳ５２において、最初の生成条件として、１セル当りのドット数が「６」と決定されている。ＣＰＵ３２は、１セル当りのドット数を少なくすることが可能であると判断し、１セル当りのドット数を「５」に変更することによって、セルの寸法が、「０．２１ｍｍ」に変更される。この結果、記憶領域に配置可能な最大のセル数が「９５×９５」でなるため、ＣＰＵ３２は、２次元コード生成テーブルＤＴ２を用いて、セル数「９３×９３」を決定する。これにより、文字数が１回変更されると、文字数「４９３」が特定される。
【００６８】
上記と同様に、ＣＰＵ３２は、４９３個の文字数のＵＲＬの利用可能性を判断し、いずれも利用可能でない場合、ＣＰＵ３２は、１セル当りのドット数を「４」に変更することによって、セルの寸法を、「０．１７ｍｍ」に変更する。この結果、記憶領域に配置可能な最大のセル数が「９５×９５」でなるため、ＣＰＵ３２は、２次元コード生成テーブルＤＴ２を用いて、セル数「９３×９３」を決定する。これにより、文字数が２回変更されると、文字数「７７９」が特定される。
【００６９】
さらに、ＣＰＵ３２は、７７９個の文字数のＵＲＬのいずれも利用可能でない場合、ＣＰＵ３２は、１セル当りのドット数を「４」以下に変更することができない（図３のＳ６４でＮＯ）。このため、ＣＰＵ３２は、誤り訂正レベルを「レベルＨ」から「レベルＱ」に変更する（図３のＳ７０）。これにより、文字数が３回変更されると、文字数「１０４１」が特定される。ＣＰＵ３２は、ＵＲＬが決定されなければ、誤り訂正レベルが「レベルＬ」（図３のＳ６８でＹＥＳ）になるまで、誤り訂正レベルを下げる。これにより、文字数が４回変更されると、文字数「１４５１」が特定され、文字数が５回変更されると、文字数「１８５３」が特定される。
【００７０】
さらに、誤り訂正レベルが「レベルＬ」であっても、ＵＲＬが決定されなければ、ＣＰＵ３２は、ＵＲＬが決定されるまで、文字数を「１８５２」から、１個ずつ減らして（Ｓ７４）、候補ＵＲＬを生成する。
【００７１】
上記の手法によれば、ＣＰＵ３２によって決定された２次元コードの生成条件に従って、２次元コード及びＵＲＬを決定することができる。また、２次元コードの生成条件を変更することによって、ＵＲＬの文字数を変更することができる。また、２次元コードの生成条件を変更することによって、様々な文字数のＵＲＬを生成することができる。例えば、多数（例えば数十万人）のユーザが、データ供給サーバ１０に図２の生成処理を実行させるような状況では、多数の第１種のコンテンツデータにアクセスするために、多数（例えば数百万個）のＵＲＬを生成しなければならない可能性がある。上記の構成によれば、様々な文字数のＵＲＬを生成することができるため、上記のような状況においても、多数の第１種のコンテンツデータのそれぞれに対して、固有のＵＲＬを決定することができる。
【００７２】
また、ＵＲＬに含まれる文字数を１個ずつ減少させながら（図３のＳ７４）、ＵＲＬを決定していくため、２次元コードの寸法を大きくすること無く、ＵＲＬを決定することができる。
【００７３】
（本実施例の効果）
図５を参照して、Ｓ１０で受信される文書ファイルによって表される文書画像ＤＩと、Ｓ３２で生成された文書ファイルを用いた印刷処理によって形成された印刷画像ＰＩと、を比較する。画像ＤＩは、テキストを表す画像ＴＸと、動画データの関連領域ＬＡ１と、音声データの関連領域ＬＡ２と、を含む。一方、画像ＰＩは、文書画像ＤＩと、文書ファイルに動画データが記述されていることを報知する報知画像ＮＩ１と、文書ファイルに音声データが記述されていることを報知する報知画像ＮＩ２と、２次元コードＴＣ１，ＴＣ２と、を含む。
【００７４】
報知画像ＮＩ１は、関連領域ＬＡ１と同じ寸法を有する。２次元コードＴＣ１は、報知画像ＮＩ１に重複して配置されている。これにより、印刷画像ＰＩを確認することによって、２次元コードＴＣ１を利用することによって、報知画像ＮＩ１に関連する動画データにアクセス可能であることを知ることができる。また、ユーザは、印刷画像ＰＩを用いて、動画データにアクセスすることができる。また、２次元コードＴＣ１の寸法は、関連領域ＬＡ１の寸法に応じて決定される。このため、２次元コードＴＣ１の寸法が大きくなりすぎて、報知画像ＮＩ１が確認できなくなることを防止することができる。この結果、ＵＲＬを示す適切な寸法の２次元コードＴＣ１が記述されている文書ファイルを生成することができる。２次元コードＴＣ２についても同様である。
【００７５】
（対応関係）
データ供給サーバ１０、プリンタ２００、格納サーバ３００，４００が、それぞれ、「データ供給装置」、「出力部」、「メモリ領域」、「メモリ領域」の一例である。Ｓ３０で生成される文書ファイルが、「出力画像データ」の一例である。ＵＲＬが「アクセス情報」の一例であり、２次元コードＴＣ１，ＴＣ２が「特定の画像」の一例であり、印刷画像ＰＩが「出力画像」の一例である。
【００７６】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【００７７】
（１）「データ供給装置」は、データ供給サーバ１０に限られず、外部装置に通信可能に接続されるＰＣ、多機能機等の他の機器であってもよい。「メモリ領域」は、格納サーバ３００に限られず、データ供給サーバ１０のメモリ３４であってもよく、ＰＣ１００等のメモリであってもよい。「出力部」は、プリンタ２００に限られず、モニタ等の表示装置等であってもよい。本変形例では、データ供給サーバ１０は、出力装置の出力性能として、画素ピッチ、解像度、画面サイズ等を取得してもよい。
【００７８】
（２）上記の実施例では、データ供給サーバ１０は、生成された文書ファイルを、図２のＳ１０で受信された処理情報に含まれるアドレス情報を送信先（例えばプリンタ２００）に指定して送信する（図２のＳ３２）。しかしながら、データ供給サーバ１０は、生成された文書ファイルを、図２のＳ１０で受信される文書ファイルの送信元（例えばＰＣ１００）に送信してもよい。この場合、文書ファイルの送信元は、データ供給サーバ１０によって生成された文書ファイルを受信すると、当該文書ファイルに対して処理を実行すべき機器（例えばプリンタ２００）に送信してもよい。
【００７９】
（３）「文書ファイル」は、ＰＤＦ形式のファイルに限られず、第１種のコンテンツデータが記述され得るデータ形式のファイル（例えばＰＰＴ形式のファイル）であってもよい。一般的には、「文書ファイル」は、文書ファイルによって表される画像が表示装置に表示されている状態で、出力される内容が変化可能、あるいは、変化不可能なコンテンツデータが記述されるファイルである。
【００８０】
（４）上記の実施例では、データ供給サーバ１０は、文書ファイルに記述されている１個以上のオブジェクトデータの内容を、順番に確認することによって、第１種のコンテンツデータを特定する（図２のＳ１２）。しかしながら、データ供給サーバ１０は、文書ファイルに記述されている文字列の中から、第１種のコンテンツデータのデータ形式を示す文字列（例えば「ＦＬＶ」の文字列）を特定することによって、第１種のコンテンツデータを特定してもよい。
【００８１】
（５）上記の実施例では、データ供給サーバ１０は、外部装置から受信された文書ファイルと、同一のデータ形式（即ちＰＤＦ形式）の文書ファイルを生成し、プリンタ２００等に送信する。しかしながら、データ供給サーバ１０は、外部装置から受信された文書ファイルと、異なるデータ形式（例えばＰＤＬ形式）のデータを生成し、プリンタ２００等に送信してもよい。
【００８２】
（６）「第１種のコンテンツデータ」は、動画データと音声データに限られない。「第１種のコンテンツデータ」は、例えば、３次元形状を表す３次元データであってもよい。３次元データは、文書ファイルによって表される画像が表示装置に表示されている状態で、３次元データによって表される３次元形状を回転することができる。「第１種のコンテンツデータ」は、印刷や２次元（例えば２次元ディスプレイで表示）で表現することにより、コンテンツデータに含まれる全ての情報を取得することができないデータ即ち、コンテンツデータによって表される情報のうちの少なくとも一部の情報が欠落するデータ）であればよい。
【００８３】
あるいは、「第１種のコンテンツデータ」は、静止画像を表す画像データや、テキストデータ等、文書ファイルによって表される画像が表示装置に表示されている状態で、表示内容が変化不可能なコンテンツデータを含んでいてもよい。即ち、文書ファイルに記述されているコンテンツデータのうち、メモリ領域に格納すべきコンテンツデータが、「第１種のコンテンツデータ」であってもよく、メモリ領域に格納すべきでないコンテンツデータが、「第２種のコンテンツデータ」であってもよい。なお、メモリ領域に格納すべきコンテンツデータであるか否かは、ユーザによって決定されてもよい。
【００８４】
（７）上記の実施例では、データ供給サーバ１０は、第１種のコンテンツデータが記述されている文書ファイルを受信して（図２のＳ１０）、図２の生成処理を実行する。しかしながら、データ供給サーバ１０は、出力すべき文書ファイル（例えば名刺を表すデータ）と、当該文書ファイルに関連する第１種のコンテンツデータ（例えば名刺に記載されている人物のプロフィールデータ）と、を別々に取得してもよい。この場合、図２のＳ１６では、ＣＰＵ３２は、取得された文書ファイルの余白部分を、関連領域として特定してもよい。上記の構成は、「特定の画像を、出力画像データによって表される出力画像内に記載するための記載領域を決定する」構成に含まれる。
【００８５】
（８）上記の実施例では、ＵＲＬ決定処理において、データ供給サーバ１０は、ＵＲＬの文字数を変更させるために、最初にセルの寸法を変更し、次いで誤り訂正レベルを変更し、最後に２次元コードの生成条件を変更せずに、文字数自体を減少させる。しかしながら、ＵＲＬ決定処理では、上記の実施例の順番に限られない。例えば、データ供給サーバ１０は、最初に誤り訂正レベルを変更し、次いでセルの寸法を変更し、最後に文字数自体を減少させてもよい。また、データ供給サーバ１０は、誤り訂正レベル及びセルの寸法のうち、一方を変更しなくてもよい。あるいは、データ供給サーバ１０は、２次元コード生成条件を変更せず、文字数自体を減少させてもよい。
【００８６】
（９）上記の実施例では、データ供給サーバ１０は、２次元コード自体の記載領域を決定する（図３のＳ５２）。しかしながら、データ供給サーバ１０は、２次元コードと２次元コードを一巡する余白とを含む画像の記載領域を決定してもよい。上記の構成は、「特定の画像を、出力画像データによって表される出力画像内に記載するための記載領域を決定する」構成に含まれる。
【００８７】
（１０）上記の実施例では、データ供給サーバ１０は、マトリクス型の２次元コードが生成されている。しかしながら、データ供給サーバ１０は、Ｓ１８で決定されるＵＲＬを示すスタック型の２次元コード、バーコード、文字列、及び、パス名のいずれかを生成してもよい。例えば、文字列あるいはパス名が生成される場合では、データ供給サーバ１０は、２次元コードの生成条件（即ちセルの寸法、誤り訂正レベル）に代えて、文字の寸法を生成条件として決定してもよい。本変形例の処理は、「特定の画像が満たすべき条件を決定する条件決定部」の一例である。
【００８８】
（１１）「アクセス情報」は、ＵＲＬ以外のパス名、第１種のコンテンツデータが格納されているサーバのＩＰアドレス及び第１種のコンテンツデータを含むファイルのファイル名等であってもよい。一般的に言うと、「アクセス情報」は、特定のメモリ領域に格納されている第１種のコンテンツデータを特定することができる情報であればよい。
【００８９】
（１２）上記の実施例では、格納サーバ（例えば格納サーバ３００）の直下にファイルを格納しているが、１個以上の階層から構成されるフォルダにファイルを格納してもよい。この場合、ＵＲＬの文字列には、格納サーバのホスト名、ファイル名以外に、そのファイルが格納される階層全てのフォルダ名を示す文字列が含まれていてもよい。また、図３のＳ５４で決定される文字数には、フォルダ名を示す文字列の文字数が含まれていてもよい。なお、格納サーバのフォルダは、格納サーバに予め作成されているフォルダを利用してもよいし、データ供給サーバ１０が、指定したフォルダ名のフォルダを格納サーバに作成させてもよい。
【００９０】
（１３）上記の実施例では、データ供給サーバ１０の各部がソフトウェアによって実現されるが、データ供給サーバ１０の各部のうちの少なくとも１つが論理回路等のハードウェアによって実現されてもよい。
【００９１】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【００９２】
２：通信システム、１０：データ供給サーバ、３０：制御部、１００：ＰＣ、２００：プリンタ、３００，４００：格納サーバ、ＤＴ１，ＤＴ２：２次元コード決定テーブル、ＤＩ：文書画像、ＰＩ：印刷画像、ＴＣ１，ＴＣ２：２次元コード、ＬＡ１，ＬＡ２：関連領域、ＮＩ１，ＮＩ２：報知画像
【図１】
2015095102.tif 000003
【図２】
2015095102.tif 000004
【図３】
2015095102.tif 000005
【図４】
2015095102.tif 000006
【図５】
2015095102.tif 000007