(57)【要約】      （修正有）【課題】印刷設定を指定する装置で指定されたとおりに印刷を実行可能とするプログラム、情報処理装置、情報処理システムおよび情報処理方法を提供する。【解決手段】プログラムは、コンピュータ１００を、１以上の印刷設定のうち、特定の印刷設定以外の印刷設定に対応する描画データを第１コマンドに変換する第１変換部１６と、外部装置によって作成された、特定の印刷設定に対応する描画データを外部装置から取得する取得部１１２と、取得部により取得された描画データを第２コマンドに変換する第２変換部１１３と、第１コマンドに第２コマンドを追加する追加部１９、として機能させる。【選択図】図６
2015166928.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
１以上の印刷設定のうち、特定の印刷設定以外の印刷設定に対応する描画データを第１コマンドに変換する第１変換部と、
外部装置によって作成された、前記特定の印刷設定に対応する描画データを前記外部装置から取得する取得部と、
前記取得部により取得された前記描画データを第２コマンドに変換する第２変換部と、
前記第１コマンドに前記第２コマンドを追加する追加部、
として機能させるためのプログラム。
【請求項２】
前記外部装置から取得した１以上の印刷設定に、前記特定の印刷設定が含まれるか否か判定する判定部をさらに備え、
前記取得部は、前記特定の印刷設定が含まれると判定された場合に、外部装置によって作成された、前記特定の印刷設定に対応する描画データを前記外部装置から取得する、
請求項１に記載のプログラム。
【請求項３】
前記取得部は、ビットマップデータ、および、アウトラインデータの少なくとも１つである前記描画データを前記外部装置から取得する、
請求項１に記載のプログラム。
【請求項４】
１以上の印刷設定のうち、特定の印刷設定以外の印刷設定に対応する描画データを第１コマンドに変換する第１変換部と、
外部装置によって作成された、前記特定の印刷設定に対応する描画データを前記外部装置から取得する取得部と、
前記取得部により取得された前記描画データを第２コマンドに変換する第２変換部と、
前記第１コマンドに前記第２コマンドを追加する追加部と、
を備える情報処理装置。
【請求項５】
１以上の印刷設定のうち、特定の印刷設定以外の印刷設定に対応する描画データを第１コマンドに変換する第１変換部と、
前記特定の印刷設定に対応する描画データを作成する作成部と、
前記作成部により作成された前記描画データを取得する取得部と、
前記取得部により取得された前記描画データを第２コマンドに変換する第２変換部と、
前記第１コマンドに前記第２コマンドを追加する追加部と、
を備える情報処理システム。
【請求項６】
１以上の印刷設定のうち、特定の印刷設定以外の印刷設定に対応する描画データを第１コマンドに変換する第１変換ステップと、
前記特定の印刷設定に対応する描画データを作成する作成ステップと、
作成された前記描画データを取得する取得ステップと、
前記取得ステップにより取得された前記描画データを第２コマンドに変換する第２変換ステップと、
前記第１コマンドに前記第２コマンドを追加する追加ステップと、
を含むことを特徴とする情報処理方法。
【請求項７】
プログラムと画像処理装置とを備える情報処理システムであって、
前記プログラムは、コンピュータを、
１以上の印刷設定のうち、特定の印刷設定以外の印刷設定に対応する描画データを第１コマンドに変換する第１変換部と、
外部装置によって作成された、前記特定の印刷設定に対応する描画データを前記外部装置から取得する取得部と、
前記取得部により取得された前記描画データを第２コマンドに変換する第２変換部と、
前記第１コマンドに前記第２コマンドを追加する追加部、
として機能させ、
前記画像処理装置は、
前記第２コマンドが追加された前記第１コマンドに従い画像処理を行う画像処理部を備える、
情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報処理装置、情報処理システムおよび情報処理方法に関する。
【背景技術】
【０００２】
クライアントコンピュータ（以下、単にクライアントともいう）におけるプリンタドライバのインストールを簡易的に行うことができるようにした「Ｐｏｉｎｔ＆Ｐｒｉｎｔ」と呼ばれる機能が知られている。Ｐｏｉｎｔ＆Ｐｒｉｎｔが実行できる環境（Ｐｏｉｎｔ＆Ｐｒｉｎｔ環境）では、ＤＥＶＭＯＤＥ、レジストリ、およびランゲージモニタなどにより、サーバコンピュータ（以下、単にサーバともいう）とクライアントとの間で印刷設定を引き継ぐことが可能である。
【０００３】
印刷設定の一例として、予め定められた情報（スタンプ）を記録媒体に印刷するスタンプ設定が知られている。サーバおよびクライアントの両方に、スタンプの印刷に用いる情報（フォントなど）がインストールされていれば、Ｐｏｉｎｔ＆Ｐｒｉｎｔ環境で、スタンプを印刷することが可能である。特許文献１は、文字スタンプを作成しプリンタコマンドに追加する印刷システムを提案している。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術では、Ｐｏｉｎｔ＆Ｐｒｉｎｔ環境などのサーバまたはクライアントの一方で指定された印刷設定に従って印刷を実行する場合に、指定どおりに印刷されない場合があった。例えば、クライアントで文字スタンプのフォントを指定し、印刷設定に従うレンダリング処理等をサーバで実行する構成の場合、指定されたフォントがサーバにインストールされていなければ、指定どおりのフォントで印刷されないという問題が生じうる。
【０００５】
本発明は、上記に鑑みてなされたものであって、印刷設定を指定する装置で指定されたとおりに印刷を実行可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明は、コンピュータを、１以上の印刷設定のうち、特定の印刷設定以外の印刷設定に対応する描画データを第１コマンドに変換する第１変換部と、外部装置によって作成された、前記特定の印刷設定に対応する描画データを前記外部装置から取得する取得部と、前記取得部により取得された前記描画データを第２コマンドに変換する第２変換部と、前記第１コマンドに前記第２コマンドを追加する追加部、として機能させる。
【発明の効果】
【０００７】
本発明によれば、印刷設定を指定する装置で指定されたとおりに印刷を実行可能になるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、文字スタンプを設定する設定画面の一例を示す図である。
【図２】図２は、文字スタンプの印刷を実現する情報処理装置の構成例を示すブロック図である。
【図３】図３は、第１の実施形態の情報処理システムの構成例を示す図である。
【図４】図４は、クライアントＰＣおよびサーバＰＣのハードウェア構成例を示す図である。
【図５】図５は、プリンタのハードウェア構成例を示す図である。
【図６】図６は、第１の実施形態の情報処理システムの機能構成例を示すブロック図である。
【図７】図７は、第１の実施形態の情報処理システムによる印刷処理の一例を示すフローチャートである。
【図８】図８は、文字スタンプの作成に必要な印刷設定の一例を示す図である。
【図９】図９は、描画データの例を示す図である。
【図１０】図１０は、第２の実施形態の情報処理システムの機能構成例を示すブロック図である。
【図１１】図１１は、第２の実施形態の情報処理システムによる印刷処理の一例を示すフローチャートである。
【図１２】図１２は、第２の実施形態の情報処理システムによる描画データ作成処理の一例を示すフローチャートである。
【図１３】図１３は、第２の実施形態の情報処理システムによるプリンタコマンド追加処理の一例を示すフローチャートである。
【図１４】図１４は、描画データの例を示す図である。
【図１５】図１５は、描画データの例を示す図である。
【図１６】図１６は、描画データの例を示す図である。
【図１７】図１７は、描画データの例を示す図である。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、この発明にかかるプログラム、情報処理装置、情報処理システムおよび情報処理方法の一実施形態を詳細に説明する。
【００１０】
（第１の実施形態）
まず、印刷設定のうち特定の印刷設定の一例として、文字スタンプについて説明する。また、文字スタンプをＰｏｉｎｔ＆Ｐｒｉｎｔ環境で印刷する場合の問題についてさらに説明する。なお特定の印刷設定は、文字スタンプに限られるものではない。
【００１１】
図１は、文字スタンプを設定する設定画面の一例を示す図である。設定画面では、スタンプ印字する文字列（図の例では「ＣＯＮＦＩＤＥＮＴＩＡＬ」）、および、フォント（図の例では「ＭＳゴシック」）などが指定できる。ローカル環境であれば、ローカル環境にインストールされたフォントを用いて文字スタンプを印刷することができる。通常、ローカル環境では、インストールされたフォントが設定画面で選択可能とされるため、指定したフォントで印刷されないという問題が生じることは少ない。
【００１２】
図２は、文字スタンプの印刷を実現する情報処理装置（ＰＣ）の構成例を示すブロック図である。図２に示すように、情報処理装置の一例であるＰＣ１０は、プリンタ２０に接続される。ＰＣ１０は、アプリケーション１１と、ＧＤＩ（Graphics  Device  Interface）１２と、ドライバ１３と、を備えている。
【００１３】
アプリケーション１１は、印刷すべきデータを作成する文書作成プログラムや表計算プログラム、画像編集プログラム等のアプリケーションプログラムである。アプリケーション１１は、ユーザの指示に基づき、ＧＤＩ１２を介してドライバ１３に印刷を指示する。
【００１４】
ＧＤＩ１２は、ＯＳ（オペレーティングシステム）などに含まれ、ディスプレイやプリンタ２０などへの出力処理を行う機能を備える。ＧＤＩ１２は、例えば、アプリケーション１１からＧＤＩコールで渡された設定情報を含む印刷要求とともに、印刷対象の描画データ（テキストデータ、グラフィックデータ、イメージデータ等）を、ＤＤＩ（Device  Driver  Interface）コールでドライバ１３に渡す。
【００１５】
ドライバ１３は、プリンタ２０を制御するためのモジュールである。ドライバ１３は、表示制御部１４と、レンダリング部１５と、を備えている。
【００１６】
表示制御部１４は、ドライバ１３に関する表示処理を制御する。例えば表示制御部１４は、制御対象のプリンタ２０に固有の設定を受け付けるためのＧＵＩ（グラフィカルユーザインタフェース）を提供する。
【００１７】
レンダリング部１５は、ＤＤＩコールで渡される描画データをプリンタ２０が処理できる形式の言語で記述される情報（プリンタコマンド）に変換するレンダリング処理を実行する。レンダリング部１５は、第１変換部１６と、判定部１７と、第２変換部１８と、追加部１９と、を備えている。
【００１８】
第１変換部１６は、アプリケーション１１から指定された描画データをプリンタコマンドに変換する。文字スタンプなどの特定の印刷設定が含まれる場合、第１変換部１６は、特定の印刷設定以外の印刷設定に対応する描画データをプリンタコマンド（第１コマンド）に変換する。
【００１９】
判定部１７は、指定された印刷設定に特定の印刷設定が含まれるか否か判定する。判定部１７は、例えば、ＤＥＶＭＯＤＥなどにより指定される印刷設定を参照し、文字スタンプが指定されているかを判定する。
【００２０】
第２変換部１８は、文字スタンプに相当する描画データをプリンタコマンド（第２コマンド）に変換する。例えば第２変換部１８は、ＰＣ１０にインストールされているフォントデータ（フォントファイルなど）を用いて文字スタンプを作成し、作成した文字スタンプをプリンタコマンドに変換する。
【００２１】
なお、第１変換部１６および第２変換部１８は、描画データがプリンタコマンドである場合などのように、変換が不要なデータについては変換を行わなくてもよい。
【００２２】
追加部１９は、第１変換部１６により変換されたプリンタコマンド（第１コマンド）に、第２変換部１８により変換されたプリンタコマンド（第２コマンド）を追加する。追加部１９が追加した後のプリンタコマンドがプリンタ２０に送られる。プリンタ２０は、送信されたプリンタコマンドに従い印刷を実行する。プリンタ２０の画像処理部２１は、プリンタコマンドに従い、印刷に必要な画像処理を行う。
【００２３】
なお図２は、ローカル環境（ＰＣ１０単体を用いた環境）での文字スタンプの印刷の例を示している。Ｐｏｉｎｔ＆Ｐｒｉｎｔ環境の場合は、以下のような印刷シナリオが想定される。
（Ｓ１）ＥＭＦ（Enhanced  Meta  File）スプール、サーバサイドレンダリング：クライアントで表示制御部（図２の表示制御部１４に相当する構成部）が動作し、サーバでレンダリング部（図２のレンダリング部１５に相当する構成部）が動作する。
（Ｓ２）ＥＭＦスプール、クライアントサイドレンダリング：クライアントで表示制御部およびレンダリング部が動作する。
（Ｓ３）ＲＡＷスプール：クライアントで表示制御部およびレンダリング部が動作する。
【００２４】
上記（Ｓ２）および（Ｓ３）では、原則として表示制御部およびレンダリング部が同じ装置（クライアント）で動作するため問題は生じない。しかし、サーバの表示制御部を用いて印刷設定を変更し、変更した設定をクライアントに引き継いだ場合には、印刷設定を行った装置と、レンダリングを行う装置とが異なることになる。
【００２５】
印刷設定を行った装置とレンダリングを行う装置とが異なる場合には、上述のように、印刷設定で指定されたとおりに印刷されない状況が生じうる。例えば、以下のような状況が想定される。
（例１）サーバが日本語ＯＳでクライアントが英語ＯＳのクライアントサイドレンダリングの場合に、サーバの表示制御部で「ＭＳ明朝」を指定しても、クライアントに「ＭＳ明朝」が入っていないため使用できない。
（例２）サーバが英語ＯＳでクライアントが日本語ＯＳのサーバサイドレンダリングの場合に、クライアントの表示制御部で「ＭＳ明朝」を指定しても、サーバに「ＭＳ明朝」が入っていないため使用できない。
【００２６】
このような問題を解消するために、異なる装置間で印刷設定を送受信する方法が考えられる。例えばＰｏｉｎｔ＆Ｐｒｉｎｔ環境で、表示制御部とレンダリング部とがそれぞれ異なる装置で動作する場合に、表示制御部で設定された印刷設定をレンダリング部に伝える方法として、以下のような方法が存在する。
（Ｍ１）ＤＥＶＭＯＤＥを用いる方法
（Ｍ２）レジストリを用いる方法（例えば、「PrinterDriverData」パラメータ）
（Ｍ３）ランゲージモニタを介して送信する方法
【００２７】
しかし、ＤＥＶＭＯＤＥは格納できるデータのサイズに制限があるため、文字スタンプの印刷設定を伝える方法としては（Ｍ１）のような方法を適用できない場合がある。文字スタンプで用いるフォントファイルのサイズは一般に大きく、ＤＥＶＭＯＤＥに格納できない可能性が高いためである。また、（Ｍ２）のようにレジストリを用いる方法は、レジストリに対する書き込み権限が与えられていない場合には適用できない。また、（Ｍ１）および（Ｍ２）の方法は、レンダリング部から表示制御部にデータを送信する場合には適用できない。また、フォントファイルはサイズが大きいため、そのままの形式で受け渡すことは望ましくない。
【００２８】
そこで、本実施形態では、文字スタンプなどの特定の印刷設定が指定される場合、特定の印刷設定を指定した装置（表示制御部を備える装置）が、特定の印刷設定に応じた描画データを作成する。そして、レンダリング処理を実行する装置（レンダリング部を備える装置）は、表示制御部を備える他の装置（外部装置）で作成された描画データを取得し、取得した描画データを印刷するコマンドを追加して印刷を実行する。これにより、Ｐｏｉｎｔ＆Ｐｒｉｎｔ環境などであっても、印刷設定を指定する装置で指定されたとおりに印刷を実行可能になる。
【００２９】
図３は、第１の実施形態の情報処理システムの構成例を示す図である。本実施形態の情報処理システムは、クライアントＰＣ１００と、プリンタ２０と、サーバＰＣ２００と、がネットワークを介して接続された構成となっている。
【００３０】
ネットワークは、インターネット、イントラネットなどの任意のネットワーク形態を適用できる。またネットワークは有線ネットワークであってもよいし、無線ネットワークであってもよい。なお、図３では、クライアントＰＣ１００、プリンタ２０、および、サーバＰＣ２００をそれぞれ１つ記載しているが、情報処理システムは各装置を２以上備えていてもよい。
【００３１】
クライアントＰＣ１００およびサーバＰＣ２００は、Ｐｏｉｎｔ＆Ｐｒｉｎｔなどのプリンタ共有システムにおけるクライアントおよびサーバにそれぞれ相当する情報処理装置である。プリンタ２０は、画像処理を実行する画像処理装置の一例である。画像処理装置はプリンタ２０に限られるものではない。例えば、コピー機能、プリンタ機能、スキャナ機能およびファクシミリ機能などを有する複合機を画像処理装置に適用してもよい。
【００３２】
図４は、クライアントＰＣ１００およびサーバＰＣ２００のハードウェア構成例を示す図である。クライアントＰＣ１００およびサーバＰＣ２００は、一般的なＰＣと同様のハードウェア構成とすることができる。以下、このようなＰＣの構成例を説明する。
【００３３】
本実施形態のＰＣは、ＣＰＵ（Central  Processing  Unit）５０と、ＲＡＭ（Random  Access  Memory）５１と、ＲＯＭ（Read  Only  Memory）５２と、ＨＤＤ（Hard  Disk  Drive）５３と、Ｉ／Ｆ５４と、がバス６０を介して接続されている。また、Ｉ／Ｆ５４には、ＬＣＤ（Liquid  Crystal  Display）５５と、操作部５６とが接続されている。
【００３４】
ＣＰＵ５０は、ＰＣ全体の動作を制御する。ＲＡＭ５１は、情報の高速な読み書きが可能な揮発性の記憶媒体であり、例えばＣＰＵ５０が情報を処理する際の作業領域として用いられる。ＲＯＭ５２は、読み出し専用の不揮発性記憶媒体であり、ファームウェア等のプログラムが格納されている。ＨＤＤ５３は、情報の読み書きが可能な不揮発性の記憶媒体であり、ＯＳ、各種の制御プログラム、および、アプリケーションプログラム等が格納されている。
【００３５】
Ｉ／Ｆ５４は、バス６０と各種のハードウェアやネットワーク等を接続し制御する。ＬＣＤ５５は、ユーザがＰＣの状態を確認するための視覚的ユーザインタフェースである。操作部５６は、キーボードやマウス等の、ユーザがＰＣに情報を入力するためのユーザインタフェースである。液晶タッチパネルなどのように、ＬＣＤ５５と操作部５６とを一体化して構成してもよい。
【００３６】
図５は、プリンタ２０のハードウェア構成例を示す図である。プリンタ２０は、コントローラ４１０とエンジン部（Engine）４６０とをＰＣＩ（Peripheral  Component  Interface）バスで接続した構成となる。
【００３７】
コントローラ４１０は、プリンタ２０全体の制御と描画、通信、図示しない操作部からの入力を制御するコントローラである。
【００３８】
エンジン部４６０は、ＰＣＩバスに接続可能なプリンタエンジンなどであり、例えば白黒プロッタ、１ドラムカラープロッタ、４ドラムカラープロッタ、スキャナまたはファックスユニットなどである。なお、このエンジン部４６０には、プロッタなどのいわゆるエンジン部分に加えて、誤差拡散やガンマ変換などの画像処理部分が含まれる。
【００３９】
コントローラ４１０は、ＣＰＵ４１１と、ノースブリッジ（ＮＢ）４１３と、システムメモリ（ＭＥＭ−Ｐ）４１２と、サウスブリッジ（ＳＢ）４１４と、ローカルメモリ（ＭＥＭ−Ｃ）４１７と、ＡＳＩＣ（Application  Specific  Integrated  Circuit）４１６と、ハードディスクドライブ（ＨＤＤ）４０３とを有し、ＮＢ４１３とＡＳＩＣ４１６との間をＡＧＰ（Accelerated  Graphics  Port）バス４１５で接続した構成となる。
【００４０】
また、ＭＥＭ−Ｐ４１２は、ＲＯＭ４１２ａと、ＲＡＭ４１２ｂと、をさらに有する。
【００４１】
ＣＰＵ４１１は、プリンタ２０の全体制御を行うものであり、ＮＢ４１３、ＭＥＭ−Ｐ４１２およびＳＢ４１４を含むチップセットを有し、このチップセットを介して他の機器と接続される。
【００４２】
ＮＢ４１３は、ＣＰＵ４１１とＭＥＭ−Ｐ４１２、ＳＢ４１４、ＡＧＰバス４１５とを接続するためのブリッジであり、ＭＥＭ−Ｐ４１２に対する読み書きなどを制御するメモリコントローラと、ＰＣＩマスタおよびＡＧＰターゲットとを有する。
【００４３】
ＭＥＭ−Ｐ４１２は、プログラムやデータの格納用メモリ、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いるシステムメモリであり、ＲＯＭ４１２ａとＲＡＭ４１２ｂとを含む。
【００４４】
ＲＯＭ４１２ａは、プログラムやデータの格納用メモリとして用いる読み出し専用のメモリである。ＲＡＭ４１２ｂは、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いる書き込みおよび読み出し可能なメモリである。
【００４５】
ＳＢ４１４は、ＮＢ４１３とＰＣＩデバイス、周辺デバイスとを接続するためのブリッジである。ＳＢ４１４は、ＰＣＩバスを介してＮＢ４１３と接続されており、このＰＣＩバスには、ネットワークインターフェース（Ｉ／Ｆ）部なども接続される。
【００４６】
ＡＳＩＣ４１６は、画像処理用のハードウェア要素を有する画像処理用途向けのＩＣ（Integrated  Circuit）であり、ＡＧＰバス４１５、ＰＣＩバス、ＨＤＤ４０３およびＭＥＭ−Ｃ４１７をそれぞれ接続するブリッジの役割を有する。
【００４７】
ＡＳＩＣ４１６は、ＰＣＩターゲットおよびＡＧＰマスタと、ＡＳＩＣ４１６の中核をなすアービタ（ＡＲＢ）と、ＭＥＭ−Ｃ４１７を制御するメモリコントローラと、ハードウェアロジックなどにより画像データの回転などを行う複数のＤＭＡＣ（Direct  Memory  Access  Controller）と、エンジン部４６０との間でＰＣＩバスを介したデータ転送を行うＰＣＩユニットとを含む。
【００４８】
ＡＳＩＣ４１６には、ＰＣＩバスを介してＦＣＵ（Facsimile  Control  Unit）４３０、ＵＳＢ（Universal  Serial  Bus）４４０、ＩＥＥＥ１３９４（the  Institute  of  Electrical  and  Electronics  Engineers  1394）インターフェース４５０が接続される。操作表示部４２０はＡＳＩＣ４１６に直接接続されている。
【００４９】
ＭＥＭ−Ｃ４１７は、コピー用画像バッファ、符号バッファとして用いるローカルメモリである。
【００５０】
ＨＤＤ４０３は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージである。ＨＤＤ４０３は、プリンタ２０で実行されるアプリケーションのライセンスファイルを保存する。
【００５１】
ＡＧＰバス４１５は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、ＭＥＭ−Ｐ４１２に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にする。
【００５２】
次に、第１の実施形態の情報処理システムの機能の詳細について説明する。図６は、第１の実施形態の情報処理システムの機能構成例を示すブロック図である。図６は、クライアントサイドレンダリングの場合の情報処理システムの例である。
【００５３】
図６に示すように、第１の実施形態の情報処理システムは、クライアントＰＣ１００と、サーバＰＣ２００と、プリンタ２０と、を備えている。なお、図２と同じ構成については同一の符号を付し説明を省略する。
【００５４】
クライアントＰＣ１００は、アプリケーション１１と、ＧＤＩ１２と、ドライバ１１０と、を備えている。ドライバ１１０は、表示制御部１４と、レンダリング部１１１と、を備えている。
【００５５】
レンダリング部１１１は、第１変換部１６と、判定部１７と、取得部１１２と、第２変換部１１３と、追加部１９と、を備えている。レンダリング部１１１は、取得部１１２をさらに備えること、および、第２変換部１１３の機能が、図２のレンダリング部１５と異なっている。
【００５６】
取得部１１２は、サーバＰＣ２００（クライアントＰＣ１００に対する外部装置の一例）によって作成された、特定の印刷設定（例えば文字スタンプ）に対応する描画データをサーバＰＣ２００から取得する。取得部１１２は、例えば、判定部１７により文字スタンプが指定されていると判定された場合に、文字スタンプの描画データの作成をサーバＰＣ２００に依頼する。取得部１１２は、依頼に応じてサーバＰＣ２００（後述の作成部２２１）が作成した描画データを取得する。
【００５７】
第２変換部１１３は、取得部１１２により取得された描画データをプリンタコマンド（第２コマンド）に変換する。
【００５８】
サーバＰＣ２００は、ドライバ２１０を備えている。ドライバ２１０は、ランゲージモニタ２２０と、表示制御部２３０と、を備えている。表示制御部２３０は、クライアントＰＣ１００の表示制御部１４と同様に、ドライバ２１０に関する表示処理を制御する。
【００５９】
ランゲージモニタ２２０は、描画データなどをクライアントＰＣ１００などの外部装置との間で送受信（中継）する機能、および、ドライバ２１０が実行するジョブに関する情報を保存する機能などを備える。さらに本実施形態では、ランゲージモニタ２２０は、作成部２２１を備える。
【００６０】
作成部２２１は、文字スタンプなどの特定の印刷設定に対応する描画データを作成する。作成部２２１は、例えば取得部１１２から文字スタンプの作成の依頼を受けたときに、依頼された文字スタンプの描画データを作成し、取得部１１２に送信する。取得部１１２は、文字スタンプの作成に必要な設定情報（例えば使用するフォント）を作成部２２１に送信してもよい。
【００６１】
次に、第１の実施形態の情報処理システムによる印刷処理について説明する。図７は、第１の実施形態の情報処理システムによる印刷処理の一例を示すフローチャートである。
【００６２】
サーバＰＣ２００の表示制御部２３０は、ユーザ（例えば管理者）の指定に従い、文字スタンプを含む印刷設定を受け付ける（ステップＳ１０１）。表示制御部２３０は、例えば受け付けた印刷設定をクライアントＰＣ１００に引き継ぐ（ステップＳ１０２）。表示制御部２３０は、例えば印刷設定を含むＤＥＶＭＯＤＥをクライアントＰＣ１００の表示制御部１４に引き継ぐ。引継ぎには、例えばＰｏｉｎｔ＆Ｐｒｉｎｔの機能が利用される。表示制御部１４は、受け取ったＤＥＶＭＯＤＥをアプリケーション１１に渡す。
【００６３】
アプリケーション１１は、このＤＥＶＭＯＤＥの印刷設定に従い、ドライバ１１０に対して印刷を要求する（ステップＳ１０３）。印刷の要求を受けると、第１変換部１６は、描画データをプリンタコマンドに変換する。また要求を受けた判定部１７は、印刷設定に特定の印刷設定（文字スタンプ）が含まれるか否か判定する（ステップＳ１０４）。
【００６４】
含まれる場合（ステップＳ１０４：Ｙｅｓ）、取得部１１２は、文字スタンプの描画データの作成をサーバＰＣ２００に依頼する（ステップＳ１０５）。サーバＰＣ２００の作成部２２１は、依頼に応じて文字スタンプの描画データを作成する（ステップＳ１０６）。
【００６５】
図８は、文字スタンプの作成に必要な印刷設定の一例を示す図である。なお、図８の設定情報は一例であり、これらのうち一部のみを用いてもよいし、他の設定情報をさらに用いてもよい。
【００６６】
「TextWatermark」は、文字スタンプを印刷するか否かを示す設定情報である。例えば「TextWatermark」＝「ＯＮ」は、文字スタンプを印刷することを表し、「TextWatermark」＝「ＯＦＦ」は、文字スタンプを印刷しないことを表す。「TextWatermarkFont」は、文字スタンプで用いるフォントを示す設定情報である。「TextWatermarkString」は、文字スタンプとして印刷する文字列を示す設定情報である。「TextWatermarkSize」は、文字スタンプで用いる文字のサイズを示す設定情報である。「TextWatermarkColor」は、文字スタンプで用いる文字の色を示す設定情報である。「TextWatermarkFontStyle」は、文字スタンプで用いるフォントのスタイルを示す設定情報である。
【００６７】
取得部１１２は、図８のような印刷設定を、例えば、文字スタンプの作成の依頼（要求）とともに作成部２２１に送信する。
【００６８】
図７に戻り、作成部２２１は、送信された文字スタンプの印刷設定と、描画データ作成元情報とを用いて、描画データを作成する（ステップＳ１０６）。描画データ作成元情報は、例えば、文字スタンプの印刷設定で指定されたフォントのフォントファイルである。
【００６９】
描画データはどのような形式であってもよい。図９は、描画データの例を示す図である。図９に示すように、描画データは、プリンタコマンドに変換した形式でもよいし、Ｂｉｔｍａｐ（ビットマップ）データ、Ｏｕｔｌｉｎｅ（アウトライン）データ、および、フォントファイル（一部または全部）を含んでもよい。
【００７０】
図７に戻り、取得部１１２は、作成部２２１により作成された描画データを取得する（ステップＳ１０７）。第２変換部１１３は、取得された描画データをプリンタコマンドに変換する（ステップＳ１０８）。追加部１９は、第２変換部１１３により変換されたプリンタコマンドを、第１変換部１６により変換されたプリンタコマンドに追加する（ステップＳ１０９）。
【００７１】
プリンタコマンドを追加後、レンダリング部１１１は、プリンタコマンドを用いてプリンタ２０に対して印刷を指示する（ステップＳ１１０）。なお、印刷設定に文字スタンプの設定が含まれない場合（ステップＳ１０４：Ｎｏ）、レンダリング部１１１は、文字スタンプのためのプリンタコマンドは追加せずに、第１変換部１６が作成したプリンタコマンドを用いて印刷を指示する。
【００７２】
以上のように、第１の実施形態の情報処理システムでは、文字スタンプの印刷設定を指定したサーバＰＣ２００が、クライアントＰＣ１００からの依頼に応じて文字スタンプの描画データを作成する。そして、クライアントＰＣ１００が、サーバＰＣ２００で作成された描画データを取得し、取得した描画データを印刷するコマンドを追加してプリンタ２０に印刷を指示する。文字スタンプを設定したサーバＰＣ２００自身が文字スタンプを作成するため、例えば文字スタンプで使用するフォントがインストールされていないことにより設定どおりに印刷が実行されないという状況を回避できる。
【００７３】
（第２の実施形態）
第２の実施形態では、サーバサイドレンダリングの場合の情報処理システムの例を説明する。第２の実施形態では、クライアントＰＣの表示制御部内に、文字スタンプの描画データを作成する作成部を追加する。また、サーバＰＣのランゲージモニタを経由して、文字スタンプの描画データを送信し、印刷を実行する。
【００７４】
図１０は、第２の実施形態の情報処理システムの機能構成例を示すブロック図である。図１０に示すように、第２の実施形態の情報処理システムは、クライアントＰＣ１００−２と、サーバＰＣ２００−２と、プリンタ２０と、を備えている。なお、図２と同じ構成については同一の符号を付し説明を省略する。
【００７５】
クライアントＰＣ１００−２は、アプリケーション１１と、ドライバ１１０−２と、スプーラ１２０−２と、を備えている。スプーラ１２０−２は、アプリケーション１１により作成された描画データや印刷設定を記憶する。ドライバ１１０−２は、表示制御部１４−２を備えている。表示制御部１４−２は、判定部１７と、作成部１１４−２と、送信部１１５−２と、を備えている。
【００７６】
作成部１１４−２は、第１の実施形態の作成部２２１と同様に、文字スタンプなどの特定の印刷設定に対応する描画データを作成する。作成部１１４−２は、例えば判定部１７により文字スタンプが指定されていると判定されたときに、文字スタンプの描画データを作成する。
【００７７】
送信部１１５−２は、作成された文字スタンプの描画データをサーバＰＣ２００−２に送信する。
【００７８】
サーバＰＣ２００−２は、スプーラ２５０−２と、ドライバ２１０−２と、を備えている。スプーラ２５０−２は、クライアントＰＣ１００−２のスプーラ１２０−２から送信された描画データや印刷設定を記憶する。ドライバ２１０−２は、ランゲージモニタ２２０−２と、レンダリング部２４０−２と、を備えている。
【００７９】
ランゲージモニタ２２０−２は、描画データなどをクライアントＰＣ１００−２などの外部装置との間で送受信（中継）する機能、および、ドライバ２１０−２が実行するジョブに関する情報を保存する機能などを備える。
【００８０】
レンダリング部２４０−２は、第１変換部２４１−２と、判定部２４２−２と、取得部２４３−２と、第２変換部２４４−２と、追加部２４５−２と、を備えている。
【００８１】
第１変換部２４１−２は、スプーラ２５０−２に記憶された描画データをプリンタコマンドに変換する。文字スタンプなどの特定の印刷設定が含まれる場合、第１変換部２４１−２は、特定の印刷設定以外の印刷設定に対応する描画データをプリンタコマンド（第１コマンド）に変換する。
【００８２】
判定部２４２−２は、指定された印刷設定に特定の印刷設定が含まれるか否か判定する。判定部２４２−２は、例えば、ＤＥＶＭＯＤＥなどにより指定される印刷設定を参照し、文字スタンプが指定されているかを判定する。
【００８３】
取得部２４３−２は、クライアントＰＣ１００−２（サーバＰＣ２００−２に対する外部装置の一例）によって作成された、特定の印刷設定（例えば文字スタンプ）に対応する描画データをクライアントＰＣ１００−２から取得する。取得部２４３−２は、例えば、判定部２４２−２により文字スタンプが指定されていると判定された場合に、クライアントＰＣ１００−２の送信部１１５−２が送信し、ランゲージモニタ２２０−２に記憶された文字スタンプの描画データを取得する。
【００８４】
第２変換部２４４−２は、文字スタンプに相当する描画データをプリンタコマンド（第２コマンド）に変換する。例えば第２変換部２４４−２は、ＰＣ１０にインストールされているフォントファイルを用いて文字スタンプを作成し、作成した文字スタンプをプリンタコマンドに変換する。
【００８５】
追加部２４５−２は、第１変換部２４１−２により変換されたプリンタコマンド（第１コマンド）に、第２変換部２４４−２により変換されたプリンタコマンド（第２コマンド）を追加する。追加部２４５−２が追加した後のプリンタコマンドが、スプーラ２５０−２、および、スプーラ１２０−２を介してプリンタ２０に送られる。
【００８６】
次に、第２の実施形態の情報処理システムによる印刷処理について説明する。図１１は、第２の実施形態の情報処理システムによる印刷処理の一例を示すフローチャートである。
【００８７】
クライアントＰＣ１００−２の表示制御部１４−２は、ユーザの指定に従い、文字スタンプを含む印刷設定を受け付ける（ステップＳ２０１）。表示制御部１４−２は、例えば受け付けた印刷設定を含むＤＥＶＭＯＤＥをアプリケーション１１に渡す。
【００８８】
ドライバ１１０−２は、指定に従い文字スタンプの描画データを作成する描画データ作成処理を実行する（ステップＳ２０２）。描画データ作成処理の詳細は後述する。
【００８９】
アプリケーション１１は、スプーラ１２０−２を介して描画データおよび印刷設定（ＤＥＶＭＯＤＥなど）をサーバＰＣ２００−２（スプーラ２５０−２）に渡す（ステップＳ２０３）。サーバＰＣ２００−２のドライバ２１０−２は、スプーラ２５０−２に記憶された描画データおよび印刷設定を受け取る（ステップＳ２０４）。
【００９０】
レンダリング部２４０−２は、文字スタンプを印刷するためのコマンドを追加するプリンタコマンド追加処理を実行する（ステップＳ２０５）。プリンタコマンド追加処理の詳細は後述する。
【００９１】
レンダリング部２４０−２は、プリンタコマンドをスプーラ２５０−２に渡す（ステップＳ２０６）。サーバＰＣ２００−２は、スプーラ２５０−２に記憶されたプリンタコマンドを、クライアントＰＣ１００−２のスプーラ１２０−２を介してプリンタ２０に送信する。プリンタ２０は、スプーラ１２０−２に記憶されたプリンタコマンドに従い印刷を実行する（ステップＳ２０７）。
【００９２】
次に、ステップＳ２０２の描画データ作成処理の詳細について説明する。図１２は、第２の実施形態の情報処理システムによる描画データ作成処理の一例を示すフローチャートである。
【００９３】
ドライバ１１０−２の判定部１７は、指定された印刷設定に文字スタンプが含まれるか否か判定する（ステップＳ３０１）。含まれない場合（ステップＳ３０１：Ｎｏ）、描画データ作成処理を終了する。印刷設定に文字スタンプが含まれる場合（ステップＳ３０１：Ｙｅｓ）、作成部１１４−２は、指定に従い文字スタンプの描画データを作成する（ステップＳ３０２）。送信部１１５−２は、作成された描画データをサーバＰＣ２００−２に送信し、ランゲージモニタ２２０−２に保存させる（ステップＳ３０３）。
【００９４】
次に、ステップＳ２０５のプリンタコマンド追加処理の詳細について説明する。図１３は、第２の実施形態の情報処理システムによるプリンタコマンド追加処理の一例を示すフローチャートである。
【００９５】
レンダリング部２４０−２の判定部２４２−２は、指定された印刷設定に文字スタンプが含まれるか否か判定する（ステップＳ４０１）。含まれない場合（ステップＳ４０１：Ｎｏ）、プリンタコマンド追加処理を終了する。印刷設定に文字スタンプが含まれる場合（ステップＳ４０１：Ｙｅｓ）、取得部２４３−２は、ランゲージモニタ２２０−２から描画データを取得する（ステップＳ４０２）。
【００９６】
第２変換部２４４−２は、取得された描画データをプリンタコマンド（第２コマンド）に変換する（ステップＳ４０３）。追加部２４５−２は、第１変換部２４１−２により変換されたプリンタコマンド（第１コマンド）に、第２変換部２４４−２により変換されたプリンタコマンド（第２コマンド）を追加する（ステップＳ４０４）。
【００９７】
以上のように、第２の実施形態の情報処理システム（サーバサイドレンダリング）は、第１の実施形態（クライアントサイドレンダリング）と同様に、文字スタンプを設定した装置（クライアントＰＣ１００−２）自身が文字スタンプを作成する。このため、例えば文字スタンプで使用するフォントがインストールされていないことにより設定どおりに印刷が実行されないという状況を回避できる。
【００９８】
以下に、各実施形態に適用可能な、文字スタンプの描画データの作成方法の一例について説明する。図１４〜図１７は、描画データの例を示す図である。描画データは、例えば、文字スタンプの印刷設定とフォントファイルとを用いて作成される。文字列の全体に対して１つのビットマップデータが作成されてもよいし（図１４）、文字ごとに１つのビットマップデータが作成されてもよい（図１５）。また、文字列の全体に対して１つのアウトラインデータが作成されてもよいし（図１６）、文字ごとに１つのアウトラインデータが作成されてもよい（図１７）。
【００９９】
上記各実施形態の装置（クライアントＰＣ、サーバＰＣ等）で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録されてコンピュータ・プログラム・プロダクトとして提供される。
【０１００】
また、実施形態の装置で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、本実施形態の装置で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
【０１０１】
また、実施形態のプログラムを、ＲＯＭ等に予め組み込んで提供するように構成してもよい。
【０１０２】
実施形態の装置で実行されるプログラムは、上述した各部（例えば第１変換部、取得部、第２変換部、追加部）を含むモジュール構成となっており、実際のハードウェアとしてはＣＰＵ（プロセッサ）が上記記憶媒体からプログラムを読み出して実行することにより上記各部が主記憶装置上にロードされ上記各部が主記憶装置上に生成されるようになっている。
【符号の説明】
【０１０３】
１１  アプリケーション
１２  ＧＤＩ
１３、１１０、２１０−２  ドライバ
１４、２３０  表示制御部
１５、１１１、２４０−２  レンダリング部
１６、２４１−２  第１変換部
１７、２４２−２  判定部
１８、１１３、２４４−２  第２変換部
１９、２４５−２  追加部
２０  プリンタ
２１  画像処理部
１００  クライアントＰＣ
１１２、２４３−２  取得部
１１４−２、２２１  作成部
１１５−２  送信部
１２０−２、２５０−２  スプーラ
２００  サーバＰＣ
２２０  ランゲージモニタ
【先行技術文献】
【特許文献】
【０１０４】
【特許文献１】特開２００２−３３３９５９号公報
【図１】
2015166928.tif 000003
【図２】
2015166928.tif 000004
【図３】
2015166928.tif 000005
【図４】
2015166928.tif 000006
【図５】
2015166928.tif 000007
【図６】
2015166928.tif 000008
【図７】
2015166928.tif 000009
【図８】
2015166928.tif 000010
【図９】
2015166928.tif 000011
【図１０】
2015166928.tif 000012
【図１１】
2015166928.tif 000013
【図１２】
2015166928.tif 000014
【図１３】
2015166928.tif 000015
【図１４】
2015166928.tif 000016
【図１５】
2015166928.tif 000017
【図１６】
2015166928.tif 000018
【図１７】
2015166928.tif 000019