(57)【要約】      （修正有）【課題】アプリケーションから印刷指示を受け付けた後、印刷設定画面を表示させることができる情報処理システムを提供する。【解決手段】印刷対象データの印刷指示を行うことができるアプリケーションが搭載された情報処理装置に、印刷設定を行うための印刷設定画面を表示する第１のプロセスを起動する起動手順、印刷指示を受け付けると、前記第１のプロセスが起動しているかを判断する判断手順、前記判断手順により前記第１のプロセスが起動していると判断された場合、前記印刷対象データを印刷データに変換する処理を行う第２のプロセスが前記第１のプロセスに対して、前記印刷設定画面の表示要求を送信する送信手順、前記表示要求を受信すると、前記第１のプロセスが前記印刷設定画面を表示させる表示手順、表示された前記印刷設定画面で設定された印刷設定に基づき、前記第２のプロセスが前記印刷対象データを印刷データに変換する変換手順、を実行させる。【選択図】図１３
2015166918.tif 000002
【特許請求の範囲】
【請求項１】
印刷対象データの印刷指示を行うことができるアプリケーションが搭載された情報処理装置に、
前記印刷対象データの印刷設定を行うための印刷設定画面を表示する第１のプロセスを起動する起動手順、
前記印刷指示を受け付けると、前記第１のプロセスが起動しているか否かを判断する判断手順、
前記判断手順により前記第１のプロセスが起動していると判断された場合、前記印刷対象データを印刷データに変換する処理を行う第２のプロセスが前記第１のプロセスに対して、前記印刷設定画面の表示要求を送信する送信手順、
前記表示要求を受信すると、前記第１のプロセスが前記印刷設定画面を表示させる表示手順、
前記表示手順で表示された前記印刷設定画面で設定された印刷設定に基づき、前記第２のプロセスが前記印刷対象データを印刷データに変換する変換手順、
を実行させるためのプログラム。
【請求項２】
前記情報処理装置に、
前記起動手順で起動された前記第１のプロセスを停止する手順、
を実行させるための請求項１記載のプログラム。
【請求項３】
前記第１のプロセスは、常駐プログラムのプロセスである、請求項１又は２記載のプログラム。
【請求項４】
前記起動手順は、
ユーザの操作により、前記情報処理装置に搭載されているプリンタドライバの印刷設定画面から前記第１のプロセスを起動する、請求項１ないし３のいずれか１項に記載のプログラム。
【請求項５】
印刷対象データの印刷指示を行うことができるアプリケーションが搭載された情報処理装置であって、
前記印刷対象データの印刷設定を行うための印刷設定画面を表示する第１のプロセスを起動する起動手段と、
前記印刷指示を受け付けると、前記第１のプロセスが起動しているか否かを判断する判断手段と、
前記判断手段により前記第１のプロセスが起動していると判断された場合、前記印刷対象データを印刷データに変換する処理を行う第２のプロセスが前記第１のプロセスに対して、前記印刷設定画面の表示要求を送信する送信手段と、
前記表示要求を受信すると、前記第１のプロセスが前記印刷設定画面を表示させる表示手段と、
前記表示手段で表示された前記印刷設定画面で設定された印刷設定に基づき、前記第２のプロセスが前記印刷対象データを印刷データに変換する変換手段と、
を有する情報処理装置。
【請求項６】
前記起動手段で起動された前記第１のプロセスを停止する手段を有する請求項５記載の情報処理装置。
【請求項７】
前記第１のプロセスは、常駐プログラムのプロセスである、請求項５又は６記載の情報処理装置。
【請求項８】
前記起動手段は、
ユーザの操作により、前記情報処理装置に搭載されているプリンタドライバの印刷設定画面から前記第１のプロセスを起動する、請求項５ないし７のいずれか１項に記載の情報処理装置。
【請求項９】
印刷対象データの印刷指示を行うことができるアプリケーションが搭載された第１の情報処理装置と、印刷装置に印刷データを含む印刷要求を送信する第２の情報処理装置とを有する情報処理システムであって、
前記印刷対象データの印刷設定を行うための印刷設定画面を表示する第１のプロセスを起動する起動手段と、
前記印刷指示を受け付けると、前記第１のプロセスが起動しているか否かを判断する判断手段と、
前記判断手段により前記第１のプロセスが起動していると判断された場合、前記印刷対象データを印刷データに変換する処理を行う第２のプロセスが前記第１のプロセスに対して、前記印刷設定画面の表示要求を送信する送信手段と、
前記表示要求を受信すると、前記第１のプロセスが前記印刷設定画面を表示させる表示手段と、
前記表示手段で表示された前記印刷設定画面で設定された印刷設定に基づき、前記第２のプロセスが前記印刷対象データを前記印刷データに変換する変換手段と、
を有する情報処理システム。
【請求項１０】
印刷対象データの印刷指示を行うことができるアプリケーションが搭載された情報処理装置に用いられる情報処理方法であって、
前記印刷対象データの印刷設定を行うための印刷設定画面を表示する第１のプロセスを起動する起動手順と、
前記印刷指示を受け付けると、前記第１のプロセスが起動しているか否かを判断する判断手順と、
前記判断手順により前記第１のプロセスが起動していると判断された場合、前記印刷対象データを印刷データに変換する処理を行う第２のプロセスが前記第１のプロセスに対して、前記印刷設定画面の表示要求を送信する送信手順と、
前記表示要求を受信すると、前記第１のプロセスが前記印刷設定画面を表示させる表示手順と、
前記表示手順で表示された前記印刷設定画面で設定された印刷設定に基づき、前記第２のプロセスが前記印刷対象データを印刷データに変換する変換手順と、
を有する情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報処理装置、情報処理方法、及び情報処理システムに関する。
【背景技術】
【０００２】
Windows（登録商標）2000からWindows7では印刷に関するアーキテクチャとして、
Version3プリンタドライバと呼ばれるプリンタドライバのアーキテクチャが採用されている。Version3プリンタドライバでは、図１に示すように、印刷設定はプリンタＵＩからＤｅｖｍｏｄｅ構造体を用いて行われる。また、Version3プリンタドライバでは、ＲＡＷ（Raw Image Format）形式の印刷対象データをスプールデータとして使用し、ＧＤＩ（Graphic Device Interface）から呼び出されるＤＤＩ（Device Driver Interface）にしたがって、印刷対象データをＰＤＬ（Page Description Language）などの印刷データに変換するためのレンダリングが行われる。なお、Version3プリンタドライバでは、ＥＭＦ（Enhanced Metafile）形式の印刷対象データをスプールデータとして使用することもできる。
【０００３】
一方、Windows8から上記Version3プリンタドライバに加えて、Version4プリンタドライバと呼ばれるプリンタドライバのアーキテクチャが採用されている。Version4プリンタドライバでは、図２に示すように、ベンダ独自の印刷設定画面をユーザに提供するためのプリンタ拡張が実行形式ファイル（ＥＸＥファイル）で提供されており、印刷設定はＸＭＬ（Extensible Markup Language）形式のＰｒｉｎｔＴｉｃｋｅｔなどを用いて行われる。また、Version4プリンタドライバでは、ＸＰＳ（XML Paper Specification）形式の印刷対象データをスプールデータとして使用し、ＸＰＳフィルタでこのＸＰＳ形式の印刷対象データをＰＤＬなどの印刷データに変換するためのレンダリングが行われる。
【０００４】
Version4プリンタドライバにおいて、アプリケーションからの印刷実行指示後に印刷設定画面をポップアップ表示させる技術が従来より知られている（例えば特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来技術においては、ポイントアンドプリント機能の設定を行うことができないという問題があった。すなわち、例えばポイントアンドプリント機能を用いてサーバサイドレンダリングを行うと、サーバ側で印刷設定画面がポップアップ表示されてしまい、印刷処理が停止してしまった。
【０００６】
本発明の一実施形態は、上記の点に鑑みてなされたもので、アプリケーションから印刷指示を受け付けた後、印刷設定画面を表示させることができるプログラム、情報処理装置、情報処理方法、及び情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の一実施形態は、印刷対象データの印刷指示を行うことができるアプリケーションが搭載された情報処理装置に、前記印刷対象データの印刷設定を行うための印刷設定画面を表示する第１のプロセスを起動する起動手順、前記印刷指示を受け付けると、前記第１のプロセスが起動しているか否かを判断する判断手順、前記判断手順により前記第１のプロセスが起動していると判断された場合、前記印刷対象データを印刷データに変換する処理を行う第２のプロセスが前記第１のプロセスに対して、前記印刷設定画面の表示要求を送信する送信手順、前記表示要求を受信すると、前記第１のプロセスが前記印刷設定画面を表示させる表示手順、前記表示手順で表示された前記印刷設定画面で設定された印刷設定に基づき、前記第２のプロセスが前記印刷対象データを印刷データに変換する変換手順、を実行させることを特徴とする。
【発明の効果】
【０００８】
本発明の一実施形態によれば、アプリケーションから印刷指示を受け付けた後、印刷設定画面を表示させることができる。
【図面の簡単な説明】
【０００９】
【図１】Version3プリンタドライバを説明するための一例の説明図である。
【図２】Version4プリンタドライバを説明するための一例の説明図である。
【図３】本実施形態に係る印刷システムの一例の構成図である。
【図４】本実施形態に係るコンピュータの一例のハードウェア構成図である。
【図５】本実施形態に係るクライアントＰＣ及びサーバＰＣの一例の機能ブロック図である。
【図６】本実施形態に係るＸＰＳフィルタの一例の機能ブロック図である。
【図７】本実施形態に係るプリンタ拡張の一例の機能ブロック図である。
【図８】本実施形態に係るポップアップアプリの一例の機能ブロック図である。
【図９】本実施形態に係るポップアップアプリ起動処理の一例のフローチャートである。
【図１０】印刷設定画面の一例のイメージ図である。
【図１１】印刷設定情報の一例の説明図である。
【図１２】ポイントアンドプリント設定画面の一例のイメージ図である。
【図１３】本実施形態に係るポップアップ画面表示処理の一例のシーケンス図である。
【図１４】ポップアップ画面の一例のイメージ図である。
【図１５】ポップアップ画面の他の例のイメージ図である。
【発明を実施するための形態】
【００１０】
次に、本発明の実施の形態について、詳細に説明する。
【００１１】
＜システム構成＞
図３は、本実施形態に係る印刷システムの一例の構成図である。図３の印刷システム１は、１台以上のクライアントＰＣ１０１と、１台以上のサーバＰＣ１０２と、１台以上の印刷装置２０とがネットワークＮ１に有線又は無線で接続されている。
【００１２】
クライアントＰＣ１０１は、印刷対象データに印刷指示を行うことができるアプリケーションがインストールされたＰＣ（パーソナルコンピュータ）である。クライアントＰＣ１０１は、タブレット端末、スマートフォンや携帯電話、ＰＤＡなどの携帯情報端末、電子ホワイトボード等の表示装置、プロジェクタ等の投影装置などでもよい。クライアントＰＣ１０１は、印刷対象データに印刷指示を行うことができるアプリケーションがインストールされていればよい。
【００１３】
なお、印刷対象データとは、例えばアプリケーションから印刷指示を行うことができる文書データ、画像データなどの電子データである。
【００１４】
サーバＰＣ１０２は、クライアントＰＣ１０１から印刷指示を受け付けて、印刷装置２０に印刷データと印刷要求を送信するＰＣ（パーソナルコンピュータ）である。
【００１５】
なお、印刷データとは、印刷対象データを印刷装置２０が解釈可能な形式に変換した電子データである。印刷装置２０が解釈可能な形式には、例えばＰＤＬなどである。
【００１６】
なお、以降、クライアントＰＣ１０１とサーバＰＣ１０２を区別しないときは、ＰＣ１０と記載する。
【００１７】
印刷装置２０は、サーバＰＣ１０２から印刷要求と印刷データを取得し、印刷を行うプリンタなどの画像形成装置である。印刷装置２０は、プリント機能の他、コピー機能、スキャナ機能、ＦＡＸ機能など複数の機能を有するＭＦＰ（Multifunction Peripheral）などの複合機でもよい。
【００１８】
なお、図３において、クライアントＰＣ１０１及び／又はサーバＰＣ１０２は２台以上あってもよい。また、図３において、印刷装置２０は１台のみであってもよい。
【００１９】
＜ハードウェア構成＞
本実施形態に係るＰＣ１０は、例えば図４に示すようなハードウェア構成のコンピュータ等により実現される。図４は、本実施形態に係るコンピュータの一例のハードウェア構成図である。図４に示すコンピュータは、それぞれバスで相互に接続されているＣＰＵ１１、ＲＯＭ１２、ＲＡＭ１３、外部Ｉ／Ｆ１４、通信装置１５、入力装置１６、表示制御部１７、記憶装置１８を有する。
【００２０】
ＣＰＵ１１は、ＯＳ３０、プリンタドライバ４０、アプリケーション５０を記憶装置１８から読み出して、ＲＡＭ１３を作業メモリにして実行する。
【００２１】
アプリケーション５０は、印刷対象データに印刷指示を行うことができるものであればよく、例えば文書作成ソフト、ブラウザソフト、プレゼン資料作成ソフトなどである。印刷対象データを作成、編集、表示、管理などして、印刷可能なアプリケーションであればどのようなものでもよい。
【００２２】
ＲＡＭ１３は、必要なデータを一時保管する作業メモリ（主記憶メモリ）になり、ＲＯＭ１２にはＢＩＯＳ（Basic Input/Output System）や初期設定されたデータ、スタートプログラムなどが記憶されている。
【００２３】
外部Ｉ／Ｆ１４は、ＵＳＢケーブルなどのケーブルや、可搬型の記憶媒体１４１を装着するインタフェースである。通信装置１５は、ＬＡＮカードやイーサネット（登録商標）カードであり、ＣＰＵ１１からの指示により印刷装置２０に印刷要求や印刷データなどのパケットデータを送信する。
【００２４】
入力装置１６は、キーボード、マウスなど、ユーザの様々な操作指示を受け付けるユーザインタフェースである。タッチパネルや音声入力装置であってもよい。表示制御部１７は、アプリケーション５０が指示する画面情報に基づき所定の解像度や色数などでディスプレイ１７１の描画を制御する。ディスプレイ１７１は、液晶や有機ＥＬなどの表示装置である。
【００２５】
記憶装置１８は、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発メモリであり、ＯＳ３０、プリンタドライバ４０、アプリケーション５０を記憶している。
【００２６】
記憶媒体１４１は、例えばＳＤカードやＵＳＢメモリなどの不揮発メモリである。ＯＳ３０、プリンタドライバ４０、アプリケーション５０は、記憶媒体１４１に記憶された状態又は不図示のサーバからダウンロードされる態様などで配布される。
【００２７】
本実施形態に係るＰＣ１０は、例えば上記ハードウェア構成でプログラムを実行することにより、後述するような各種処理を実現できる。
【００２８】
＜ソフトウェア構成＞
≪クライアントＰＣ、サーバＰＣ≫
本実施形態に係るＰＣ１０は例えば図５に機能ブロックにより実現される。図５は、本実施形態に係るクライアントＰＣ及びサーバＰＣの一例の機能ブロック図である。
【００２９】
ＰＣ１０は、ＯＳ３０、プリンタドライバ４０、アプリケーション５０、通信部６０を有する。
【００３０】
ＯＳ３０は、ＰＣ１０全体を制御する基本ソフトウェアである。ＯＳ３０は、Windows、UNIX（登録商標）、MacOS（登録商標）などが存在する。
【００３１】
本実施形態では、一例としてＰＣ１０のＯＳ３０はWindows8又はこれ以降のバージョンのWindows系ＯＳであるとして説明する。また、本実施形態に係るプリンタドライバ４０のアーキテクチャはVersion4プリンタドライバであるとして説明する。なお、Version4プリンタドライバでは、ＸＰＳＤｒｖのＸＰＳプリントパスの技術が採用されており、レンダリングなどを実施するＸＰＳフィルタがＬｏｃａｌＳｅｒｖｉｃｅであるＰｒｉｎｔＦｉｌｔｅｒＰｉｐｅｌｉｎＳｅｒｖｉｃｅ上で動作する。
【００３２】
アプリケーション５０は、上述した通り、印刷対象データに印刷指示を行うことができる文書作成ソフト、ブラウザソフト、プレゼン資料作成ソフトなどである。アプリケーション５０は、印刷対象データとしてＸＰＳ形式のファイルを生成するものであっても、ＸＰＳ形式以外のファイルを生成するものであってもよい。なお、アプリケーション５０がＸＰＳ形式以外のファイルを生成するものである場合、アプリケーション５０からの印刷指示に応じてＯＳ３０（Windows8又はこれ以降のバージョンのWindows系ＯＳ）が印刷対象データからＸＰＳ形式のファイルを生成する。
【００３３】
通信部６０は、通信装置１５を用いて実現され、他のＰＣ１０や印刷装置２０との通信を行う。すなわち、クライアントＰＣ１０１は、通信部６０によりサーバＰＣ１０２に対し印刷指示や印刷データ（又はＸＰＳ形式の印刷対象データ）などを送信する。また、サーバＰＣ１０２は、通信部６０により印刷装置２０に対し印刷要求や印刷データなどを送信する。
【００３４】
プリンタドライバ４０は、描画部４１、印刷設定部４３、ポップアップアプリ４５、印刷設定記憶部４６を有する。また、描画部４１は、ＸＰＳフィルタ４２を有する。印刷設定部４３は、プリンタ拡張４４を有する。
【００３５】
描画部４１のＸＰＳフィルタ４２は、レンダリングなどを行う。印刷設定部４３のプリンタ拡張４４は、印刷設定画面を表示などを行う。ポップアップアプリ４５は、アプリケーション５０による印刷指示後、印刷設定を変更するための印刷設定画面の表示などを行う。
【００３６】
印刷設定記憶部４６は、例えば両面／片面、用紙サイズ、割付印刷、カラー／モノクロなどの印刷設定情報を記憶する。印刷設定記憶部４６は、例えばＰｒｉｎｔＴｉｃｋｅｔなどである。本実施形態では、一例として印刷設定記憶部４６はＰｒｉｎｔＴｉｃｋｅｔであるとして説明する。なお、ＰｒｉｎｔＴｉｃｋｅｔとは、印刷設定情報をＸＭＬ形式で記述したデータ領域である。
【００３７】
≪ＸＰＳフィルタ≫
本実施形態に係るＰＣ１０のＸＰＳフィルタ４２は例えば図６に示す機能ブロックにより実現される。図６は、本実施形態に係るＸＰＳフィルタの一例の機能ブロック図である。
【００３８】
ＰＣ１０のＸＰＳフィルタ４２は、メッセージ送受信部４２１、ポップアップアプリ判断部４２２、印刷設定管理部４２３、フィルタ処理部４２４を有する。
【００３９】
メッセージ送受信部４２１は、ポップアップアプリ４５と通信を行う。ＸＰＳフィルタ４２は、メッセージ送受信部４２１を介してポップアップアプリ４５と例えばプロセス間通信を行い、印刷設定情報や処理要求の送受信を行う。ポップアップアプリ判断部４２２は、ポップアップアプリ４５が起動されているか否かを判断する。印刷設定管理部４２３は、ポップアップアプリ４５から受け取った印刷設定情報を印刷設定記憶部４６に保存する。フィルタ処理部４２４は、印刷設定記憶部４６に保存されている印刷設定情報に従ってレンダリングを行う。
【００４０】
≪プリンタ拡張≫
本実施形態に係るＰＣ１０のプリンタ拡張４４は例えば図７に示す機能ブロックにより実現される。図７は、本実施形態に係るプリンタ拡張の一例の機能ブロック図である。
【００４１】
ＰＣ１０のプリンタ拡張４４は、画面表示部４４１、印刷設定管理部４４２、ポップアップアプリ管理部４４３を有する。
【００４２】
画面表示部４４１は、プリンタドライバ４０の印刷設定画面を表示させる。印刷設定管理部４４２は、画面表示部４４１が表示した印刷設定画面で変更した印刷設定情報を印刷設定記憶部４６に保存する。ポップアップアプリ管理部４４３は、ポップアップ画面の表示が有効又は無効の設定に応じて、ポップアップアプリ４５の起動又は停止を行う。
【００４３】
≪ポップアップアプリ≫
本実施形態に係るＰＣ１０のポップアップアプリ４５は例えば図８に示す機能ブロックにより実現される。図８は、本実施形態に係るポップアップアプリの一例の機能ブロック図である。
【００４４】
ＰＣ１０のポップアップアプリ４５は、メッセージ送受信部４５１、印刷設定情報作成部４５２、画面表示部４５３を有する。
【００４５】
メッセージ送受信部４５１は、ＸＰＳフィルタ４２と通信を行う。ポップアップアプリ４５は、メッセージ送受信部４５１を介してＸＰＳフィルタ４２と例えばプロセス間通信を行い、印刷設定情報や処理要求の送受信を行う。印刷設定情報作成部４５２は、画面表示部４５３が表示したポップアップ画面で設定された印刷設定内容から印刷設定情報を作成する。画面表示部４５３は、プリンタドライバ４０の印刷設定などを変更するためのポップアップ画面を表示させる。
【００４６】
＜処理の詳細＞
以下では、本実施形態に係る印刷システム１の処理の詳細について説明する。
【００４７】
≪ポップアップアプリ起動処理≫
まず、ポップアップアプリ４５を起動する処理について説明する。図９は、本実施形態に係るポップアップアプリ起動処理の一例のフローチャートである。ポップアップアプリ起動処理は、ユーザ操作するクライアントＰＣ１０１で行われる。
【００４８】
なお、印刷システム１のユーザ（アプリケーション５０から印刷操作を行うユーザ）は、通常、サーバＰＣ１０２を操作することはないため、ポップアップアプリ起動処理はサーバＰＣ１０２では行われない。ただし、クライアントＰＣ１０１とサーバＰＣ１０２は同様の構成を有するため、サーバＰＣ１０２においてポップアップアプリ起動処理を行うことは可能である。
【００４９】
ユーザの操作により、プリンタ拡張４４の画面表示部４４１は、例えば図１０に示すようなプリンタドライバ４０の印刷設定画面を表示させる（ステップＳ１０１）。図１０は、印刷設定画面の一例のイメージ図である。
【００５０】
図１０の印刷設定画面１０００は、部数、カラーモード、印刷の向き、両面印刷、シートごとのページ数、製本、ポップアップ、認証、給紙方法、メディアの種類などの各種印刷設定を行うことができる画面である。ポップアップ有効／無効設定部１００１は、アプリケーション５０などからの印刷指示後、ポップアップ画面を表示させるか否かを設定する項目である。ポップアップ有効／無効設定部１００１を「有効」に設定した場合、アプリケーション５０などからの印刷指示後、ポップアップ画面がポップアップ表示され、「無効」に設定した場合、ポップアップ画面は表示されない。図１０の例では、ポップアップ有効／無効設定部１００１は「有効」に設定されている。
【００５１】
印刷設定画面１０００において、ユーザは印刷設定を変更し、ＯＫボタン１００２を押下すると、印刷設定管理部４４２は変更した印刷設定情報を印刷設定記憶部４６に保存する。なお、印刷設定画面１０００は、例えばＷｉｎｄｏｗｓＥｘｐｌｏｒｅｒでプリンタドライバ４０の実行ファイルからプロパティ画面などを開くことで表示させることができる。
【００５２】
図９の説明に戻る。ユーザは、印刷設定画面から印刷設定を行い、印刷設定画面を閉じる（ステップＳ１０２）。すなわち、例えばユーザは図１０の印刷設定画面１０００において、印刷設定を変更し、ＯＫボタン１００２を押下する。このとき、プリンタ拡張４４の印刷設定管理部４４２は、変更した印刷設定情報を印刷設定記憶部４６に保存する。
【００５３】
ここで、印刷設定記憶部４６（ＰｒｉｎｔＴｉｃｋｅｔ）に保存される印刷設定情報について説明する。図１１は、印刷設定情報の一例の説明図である。
【００５４】
図１１に示す印刷設定情報２０００は、ポップアップ有効／無効情報部２００１、ポップアップ画面情報２００２などを有する。ポップアップ有効／無効情報部２００１はポップアップ画面を表示させるか否かの情報であり、図１１の例では「ns0000:On」、すなわち「有効」であることを示している。ポップアップ画面情報２００２は、ポップアップ画面に表示させる内容に関する情報であり、図１１の例では、ユーザ名とパスワードが設定されおり、ユーザ認証を行うためのポップアップ画面が表示されることを示している。
【００５５】
図９の説明に戻る。プリンタ拡張４４のポップアップアプリ管理部４４３は、ポップアップ設定が有効の場合、ステップＳ１０４の処理を行い、ポップアップ設定が無効の場合、ステップＳ１０６の処理を行う。すなわち、図１０の例におけるポップアップ有効／無効設定部１００１が「有効」の場合、ステップＳ１０４の処理を行い、「無効」の場合、ステップＳ１０６の処理を行う。
【００５６】
ポップアップ設定が有効の場合、プリンタ拡張４４のポップアップアプリ管理部４４３はポップアップアプリ４５が起動済か否かを判断する（ステップＳ１０４）。そして、ポップアップアプリ４５が起動していない場合、プリンタ拡張４４のポップアップアプリ管理部４４３はポップアップアプリ４５を起動させ（ステップＳ１０５）、ポップアップアプリ４５が起動済の場合、処理を終了する。
【００５７】
ポップアップアプリ４５を起動すると、ポップアップアプリ４５はＯＳ３０によりＲＡＭ１３上のメモリ領域を割り当てられてプロセスとして管理される。ポップアップアプリ４５のプロセスを、以降では、ポップアッププロセスと呼ぶ。
【００５８】
なお、プロセスの起動には、例えばＷｉｎ３２ＡＰＩであるＣｒｅａｔｅＰｒｏｃｅｓｓ関数などを利用することができる。このようなＡＰＩ（Application Programming Interface）では、起動元の実行権限を引き継ぐため、上記のようにプリンタドライバ４０の印刷設定画面からポップアップアプリ４５を起動させることでポップアッププロセスをユーザ権限とすることができる。
【００５９】
ポップアップ設定が無効の場合、プリンタ拡張４４のポップアップアプリ管理部４４３はポップアップアプリ４５が起動済か否かを判断する（ステップＳ１０６）。そして、ポップアップアプリ４５が起動済の場合、プリンタ拡張４４のポップアップアプリ管理部４４３はポップアップアプリ４５を終了させ（ステップＳ１０７）、ポップアップアプリ４５が起動していない場合、処理を終了する。
【００６０】
以上により、本実施形態に係る印刷システム１のクライアントＰＣ１０１は、プリンタドライバ４０の印刷設定画面からポップアップ画面を表示させるか否かの設定を行うことができる。また、本実施形態に係る印刷システム１のクライアントＰＣ１０１はプリンタドライバ４０の印刷設定画面からポップアップ画面を表示させる設定（有効にする設定）を行うことで、ポップアップアプリ４５を起動させることができる。そして、後述するように、実行中のポップアップアプリ４５（ポップアッププロセス）に対してポップアップ画面表示要求を行うことで、ポップアップ画面を表示させることができる。
【００６１】
なお、ポップアップアプリ４５の起動方法としては、例えばスタートアップに登録しておき、ＯＳ３０の起動時に自動的に起動させるようにしてもよい。すなわち、ポップアップアプリ４５を常駐プログラムとしてもよい。
【００６２】
≪ポップアップ画面表示処理≫
次に、ポップアップ画面表示処理について説明する。
【００６３】
まず、本実施形態に係る印刷システム１は、ポイントアンドプリント機能を用いて、クライアントＰＣ１０１でレンダリングする場合（クライアントサイドレンダリング）について説明する。
【００６４】
なお、クライアントＰＣ１０１において例えば図１２に示すような画面を表示させることでポイントアンドプリント機能の有効／無効、サーバサイドレンダリング／クライアントサイドレンダリングを選択することができる。図１２は、ポイントアンドプリント設定画面の一例のイメージ図である。図１２のポイントアンドプリント設定画面３０００の「このプリンターを共有する」のチェックボックス３００１をチェックすることでポイントアンドプリント機能を有効にすることができる。また、「クライアントコンピューターで印刷ジョブのレンダリングをする」のチェックボックス３００２をチェックすることでクライアントサイドレンダリングを選択することができる。「クライアントコンピューターで印刷ジョブのレンダリングをする」のチェックボックス３００２のチェックを外すことで、サーバサイドレンダリングを選択することができる。
【００６５】
なお、クライアントサイドレンダリングとは、レンダリングをクライアントＰＣ１０１で行う印刷方法のことである。すなわち、レンダリングを行うＸＰＳフィルタ４２はクライアントＰＣ１０１で実行される。一方、サーバサイドレンダリングとは、レンダリングをサーバＰＣ１０２で行う印刷方法のことである。すなわち、レンダリングを行うＸＰＳフィルタ４２はサーバＰＣ１０２で実行される。
【００６６】
図１３は、本実施形態に係るポップアップ画面表示処理の一例のシーケンス図である。なお、図１３において、アプリケーション５０、ＸＰＳフィルタ４２、ポップアップアプリ４５、印刷設定記憶部４６はクライアントＰＣ１０１で実行される。
【００６７】
ユーザがアプリケーション５０を操作して、印刷対象データの印刷実行操作を行うと（ステップＳ２０１）、アプリケーション５０は、クライアントＰＣ１０１のＸＰＳフィルタ４２に印刷指示を行う（ステップＳ２０２）。なお、より具体的には、アプリケーション５０から印刷実行操作を行うと、印刷対象データがＸＰＳ形式でスプールされた後、ＸＰＳフィルタに処理が遷移する。
【００６８】
ポップアップアプリ判断部４２２は、ポップアップアプリ４５が起動済か否かを判断し、ポップアップアプリ４５が起動済である場合（すなわち、ポップアッププロセスが生成されている場合）、さらに、ポップアップアプリ判断部４２２はポップアップ設定が有効か無効かを判断する。ポップアップ設定が有効である場合、ＸＰＳフィルタ４２のメッセージ送受信部４２１はポップアップアプリ４５（ポップアップアプリ４５は起動済のためポップアッププロセス）に対して、ポップアップ画面表示要求を行う（ステップＳ２０３）。なお、このようなポップアップ画面表示要求は、ＸＰＳフィルタ４２のプロセスとポップアッププロセスとの間でプロセス間通信を行うことで実現することができる。
【００６９】
ポップアップアプリ４５の画面表示部４５３は、ポップアップ画面を表示させる（ステップＳ２０４）。表示するポップアップ画面は、例えば図１４に示すようなユーザ認証を行うための画面が考えられる。図１４に示すポップアップ画面４０００では、ユーザ名入力エリア４００１及びパスワード入力エリア４００２には、デフォルト（標準）のユーザ名とパスワードが表示されている。
【００７０】
また、ポップアップ画面は、例えば図１５に示すようなユーザ認証を行う画面でもよい。図１５に示すポップアップ画面５０００では、ユーザ名入力エリア５００１及びパスワード入力エリア５００２はブランク（未入力の状態）であり、ユーザはポップアップ画面５０００が表示される都度、ユーザ名及びパスワードを入力してユーザ認証を行う必要がある。なお、ユーザ認証に失敗した場合、印刷処理を終了させるようにすることが好ましい。
【００７１】
なお、ポップアップアプリ４５の画面表示部４５３は、上記図１４、図１５で示した例の他、例えば両面／片面、用紙サイズ、割付印刷、カラー／モノクロなどの印刷設定を変更するためのポップアップ画面を表示させてもよい。
【００７２】
ユーザが表示されたポップアップ画面から設定を変更し、ポップアップ画面を閉じると（ステップＳ２０５）、印刷設定情報作成部４５２は変更後の設定で印刷設定情報を作成する（ステップＳ２０６）。そして、ポップアップアプリ４５のメッセージ送受信部４５１は、印刷設定情報をＸＰＳフィルタ４２に送信する（ステップＳ２０７）。
【００７３】
ＸＰＳフィルタ４２の印刷設定管理部４２３は、ポップアップアプリ４５から印刷設定情報を取得すると、この取得した印刷設定情報を印刷設定記憶部４６に保存する（ステップＳ２０８）。
【００７４】
そして、ＸＰＳフィルタ４２のフィルタ処理部４２４は、印刷設定記憶部４６（ＰｒｉｎｔＴｉｃｋｅｔ）に保存されている印刷設定情報に従って、描画処理（レンダリング）を行い、印刷データを生成する（ステップＳ２０９）。なお、印刷装置２０がＸＰＳ形式のファイルを直接読み込んで印刷することができるＸＰＳダイレクトプリンタの場合、フィルタ処理部４２４は描画処理（レンダリング）を行わなくてもよい。
【００７５】
なお、以上の処理の後、クライアントＰＣ１０１は印刷データをサーバＰＣ１０２に送信し、サーバＰＣ１０２は、印刷データを受け取ると、必要な処理を行った後、印刷装置２０に印刷データと印刷要求を送信する。そして、印刷装置２０は、受け取った印刷データの印刷を行う。
【００７６】
一方、ポップアップアプリ４５が起動されていない場合（すなわち、ポップアッププロセスが生成されていない場合）、又はポップアップアプリ４５が起動済かつポップアップ設定が無効である場合、ＸＰＳフィルタ４２のフィルタ処理部４２４は上述したステップＳ２０９の処理を行う。
【００７７】
以上のように、本実施形態に係る印刷システム１は、クライアントサイドレンダリングの場合、アプリケーション５０による印刷実行操作後、ポップアップ画面を表示させることができる。これにより、ユーザは、アプリケーション５０による印刷実行操作後、印刷設定の変更やユーザ認証などを行うことができる。そして、ユーザがポップアップ画面において印刷設定の変更を行った場合、変更した印刷設定で印刷を行うことができる。
【００７８】
次に、本実施形態に係る印刷システム１は、ポイントアンドプリント機能を用いて、サーバＰＣ１０２でレンダリングする場合（サーバサイドレンダリング）について説明する。すなわち、例えば図１２において「クライアントコンピューターで印刷ジョブのレンダリングをする」のチェックボックス３００２のチェックを外している場合である。
【００７９】
サーバサイドレンダリングの場合、ＸＰＳフィルタ４２及び印刷設定記憶部４６はサーバＰＣ１０２で実行される。
【００８０】
印刷システム１がクライアントサイドレンダリングの場合と同様の図１３を用いて説明する。ただし、図１３において、ＸＰＳフィルタ４２及び印刷設定記憶部４６はサーバＰＣ１０２で実行され、アプリケーション５０及びポップアップアプリ４５はクライアントＰＣ１０１で実行される。また、ポップアップアプリ起動処理がサーバＰＣ１０２で行われることはないため、サーバＰＣ１０２においてポップアッププロセスは生成されない。よって、図１３のステップＳ２０３〜Ｓ２０８の処理はサーバサイドレンダリングにおいては実行されない。
【００８１】
したがって、サーバサイドレンダリングの場合、ユーザがクライアントＰＣ１０１のアプリケーション５０を操作して、印刷対象データの印刷実行操作を行うと（ステップＳ２０１）、アプリケーション５０は、サーバＰＣ１０２のＸＰＳフィルタ４２に印刷指示を行う（ステップＳ２０２）。そして、ＸＰＳフィルタ４２のフィルタ処理部４２４は、印刷設定記憶部４６（ＰｒｉｎｔＴｉｃｋｅｔ）に保存されている印刷設定情報に従って、描画処理（レンダリング）を行い、印刷データを生成する（ステップＳ２０９）。
【００８２】
なお、以上の処理の後、サーバＰＣ１０２は必要な処理を行い、印刷データと印刷要求を印刷装置２０に送信する。そして、印刷装置２０は、受け取った印刷データの印刷を行う。
【００８３】
以上のように、本実施形態に係る印刷システム１は、サーバサイドレンダリングの場合において、クライアントＰＣ１０１のアプリケーション５０による印刷実行操作後、サーバＰＣ１０２にポップアップ画面を表示させない。これにより、サーバサイドレンダリングのときにサーバＰＣ１０２でポップアップ画面が表示されてしまい、印刷処理が停止してしまうことを防止することができる。
【００８４】
＜まとめ＞
以上のように、本実施形態に係る印刷システム１のクライアントＰＣ１０１は、プリンタドライバ４０の印刷設定画面から、アプリケーション５０の印刷操作実行後にポップアップ画面を表示させるか否かの設定を行うことができる。また、本実施形態に係る印刷システム１のクライアントＰＣ１０１は、プリンタドライバ４０の印刷設定に応じて、ポップアップ画面を表示させるためのポップアップアプリ４５を起動することができる。
【００８５】
また、本実施形態に係る印刷システム１のクライアントＰＣ１０１は、クライアントサイドレンダリングの場合、ＸＰＳフィルタ４２からポップアップアプリ４５に対してポップアップ画面の表示要求を送信することで、ポップアップ画面を表示することができる。このように、本実施形態に係る印刷システム１のクライアントＰＣ１０１は、ポイントアンドプリント機能を用いている場合であっても、クライアントサイドレンダリングであればポップアップ画面を表示することができる。これにより、ユーザ対してアプリケーション５０の印刷操作実行後に、印刷設定の変更やユーザ認証などを行わせることができる。
【００８６】
また、本実施形態に係る印刷システム１のサーバＰＣ１０２は、サーバサイドレンダリングの場合、サーバＰＣ１０２においてポップアップ画面は表示されない。このように、本実施形態に係る印刷システム１のクライアントＰＣ１０１は、ポイントアンドプリント機能を用いている場合であっても、サーバサイドレンダリングにおいてサーバＰＣ１０２側でポップアップ画面が表示され、印刷処理が停止してしまうのを防ぐことができる。
【００８７】
なお、印刷システム１は、情報処理システムの一例である。ＰＣ１０は、情報処理装置の一例である。ポップアップアプリ管理部４４３は、起動手段の一例である。ポップアップアプリ判断部４２２は、判断手段の一例である。メッセージ送受信部４２１は、送信手段の一例である。フィルタ処理部４２４は、変換手段の一例である。ポップアップアプリ４５は、第１のプロセスの一例である。ＸＰＳフィルタ４２は、第２のプロセスの一例である。
【００８８】
本発明は、具体的に開示された上記の実施形態に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
【符号の説明】
【００８９】
１    印刷システム
１０１    クライアントＰＣ
１０２    サーバＰＣ
２０    印刷装置
３０    ＯＳ
４０    プリンタドライバ
４１    描画部
４２    ＸＰＳフィルタ
４３    印刷設定部
４４    プリンタ拡張
４５    ポップアップアプリ
４６    印刷設定記憶部
５０    アプリケーション
６０    通信部
４２１    メッセージ送受信部
４２２    ポップアップアプリ判断部
４２３    印刷設定管理部
４２４    フィルタ処理部
４４１    画面表示部
４４２    印刷設定管理部
４４３    ポップアップアプリ管理部
４５１    メッセージ送受信部
４５２    印刷設定情報作成部
４５３    画面表示部
【先行技術文献】
【特許文献】
【００９０】
【特許文献１】特開２０１３−２３４３９９号公報
【図１】
2015166918.tif 000003
【図２】
2015166918.tif 000004
【図３】
2015166918.tif 000005
【図４】
2015166918.tif 000006
【図５】
2015166918.tif 000007
【図６】
2015166918.tif 000008
【図７】
2015166918.tif 000009
【図８】
2015166918.tif 000010
【図９】
2015166918.tif 000011
【図１０】
2015166918.tif 000012
【図１１】
2015166918.tif 000013
【図１２】
2015166918.tif 000014
【図１３】
2015166918.tif 000015
【図１４】
2015166918.tif 000016
【図１５】
2015166918.tif 000017