(57)【要約】【課題】印刷に関する複数の要求に対する処理を効率的に実行する。【解決手段】印刷に関する要求を処理する処理装置で動作する処理プログラムであって、前記処理装置に、第１の要求の処理中に第２の要求が入力された場合に、処理中若しくは処理予定のページに関して、ページ単位での処理の統合が可能かを判断する第１ステップ、前記第１ステップで前記ページ単位での処理の統合が可能と判断された場合に、前記第２の要求の処理予定のページの内、統合できるページの処理は前記第１の要求の処理として実行し、統合できないページの処理は前記第２の要求の処理として実行する第２ステップ、を実行させる。【選択図】図８
2015069614.tif 000002
【特許請求の範囲】
【請求項１】
印刷に関する要求を処理する処理装置で動作する処理プログラムであって、
前記処理装置に、
第１の要求の処理中に第２の要求が入力された場合に、処理中若しくは処理予定のページに関して、ページ単位での処理の統合が可能かを判断する第１ステップ、
前記第１ステップで前記ページ単位での処理の統合が可能と判断された場合に、前記第２の要求の処理予定のページの内、統合できるページの処理は前記第１の要求の処理として実行し、統合できないページの処理は前記第２の要求の処理として実行する第２ステップ、を実行させる、
ことを特徴とする処理プログラム。
【請求項２】
前記第１ステップでは、前記第１の要求の処理中若しくは処理予定のページと、前記第２の要求の処理予定のページと、に同一ページがない場合は、前記ページ単位での処理の統合はできないと判断する、
ことを特徴とする請求項１に記載の処理プログラム。
【請求項３】
前記第１ステップでは、前記第１の要求の処理中若しくは処理予定のページと、前記第２の要求の処理予定のページと、に同一ページがある場合は、前記ページ単位での処理の統合が可能と判断し、
前記第２ステップでは、前記第２の要求の処理予定のページの内、前記同一ページの処理を前記第１の要求の処理として実行する、
ことを特徴とする請求項１に記載の処理プログラム。
【請求項４】
前記第１ステップでは、ページ単位で処理を統合した時の、前記第１の要求の処理の遅延が予め定めた許容範囲を越える場合は、前記ページ単位での処理の統合はできないと判断する、
ことを特徴とする請求項１乃至３のいずれか一に記載の処理プログラム。
【請求項５】
前記第１の要求及び前記第２の要求の処理は、ページ毎に、ページを解析する解析処理と、前記ページの解析結果に基づいて情報を生成する生成処理と、を含み、
前記第２ステップでは、前記統合できるページに関して、前記第１の要求と前記第２の要求とで、前記解析処理を共通化する、
ことを特徴とする請求項１乃至４のいずれか一に記載の処理プログラム。
【請求項６】
前記生成処理は、前記ページの解析結果に基づいて当該ページに印刷設定を反映したプレビュー画像を生成するプレビュー生成処理と、前記ページの画像を縮小したサムネイル画像を生成するサムネイル生成処理と、を含み、
前記第２ステップでは、前記第２の要求の前記生成処理が前記サムネイル生成処理の場合は、当該サムネイル生成処理を、前記第１の要求の処理に追加する、
ことを特徴とする請求項５に記載の処理プログラム。
【請求項７】
前記第１ステップでは、前記第２の要求の前記生成処理が前記プレビュー生成処理の場合は、前記ページ単位での処理の統合はできないと判断する、
ことを特徴とする請求項６に記載の処理プログラム。
【請求項８】
通信ネットワークを介して、印刷に関する要求を送信する装置に接続される処理装置であって、
前記要求を受信する通信Ｉ／Ｆ部と、
受信した前記要求を処理する制御部と、を備え、
前記制御部は、
第１の要求の処理中に第２の要求が入力された場合に、処理中若しくは処理予定のページに関して、ページ単位での処理の統合が可能かを判断する判断部と、
前記解析部が前記ページ単位での処理の統合が可能と判断した場合に、前記第２の要求の処理予定のページの内、統合できるページの処理は前記第１の要求の処理として実行し、統合できないページの処理は前記第２の要求の処理として実行する処理実行部と、を備える、
ことを特徴とする処理装置。
【請求項９】
前記判断部は、前記第１の要求の処理中若しくは処理予定のページと、前記第２の要求の処理予定のページと、に同一ページがない場合は、前記ページ単位での処理の統合はできないと判断する、
ことを特徴とする請求項８に記載の処理装置。
【請求項１０】
前記判断部は、前記第１の要求の処理中若しくは処理予定のページと、前記第２の要求の処理予定のページと、に同一ページがある場合は、前記ページ単位での処理の統合が可能と判断し、
前記処理実行部は、前記第２の要求の処理予定のページの内、前記同一ページの処理を前記第１の要求の処理として実行する、
ことを特徴とする請求項８に記載の処理装置。
【請求項１１】
前記判断部は、ページ単位で処理を統合した時の、前記第１の要求の処理の遅延が予め定めた許容範囲を越える場合は、前記ページ単位での処理の統合はできないと判断する、
ことを特徴とする請求項８乃至１０のいずれか一に記載の処理装置。
【請求項１２】
前記第１の要求及び前記第２の要求の処理は、ページ毎に、ページを解析する解析処理と、前記ページの解析結果に基づいて情報を生成する生成処理と、を含み、
前記処理実行部は、前記統合できるページに関して、前記第１の要求と前記第２の要求とで、前記解析処理を共通化する、
ことを特徴とする請求項８乃至１１のいずれか一に記載の処理装置。
【請求項１３】
前記生成処理は、前記ページの解析結果に基づいて当該ページに印刷設定を反映したプレビュー画像を生成するプレビュー生成処理と、前記ページの画像を縮小したサムネイル画像を生成するサムネイル生成処理と、を含み、
前記処理実行部は、前記第２の要求の前記生成処理が前記サムネイル生成処理の場合は、当該サムネイル生成処理を、前記第１の要求の処理に追加する、
ことを特徴とする請求項１２に記載の処理装置。
【請求項１４】
前記判断部は、前記第２の要求の前記生成処理が前記プレビュー生成処理の場合は、前記ページ単位での処理の統合はできないと判断する、
ことを特徴とする請求項１３に記載の処理装置。
【請求項１５】
通信ネットワークを介して、印刷に関する要求を送信する装置に接続される処理装置における処理方法であって、
第１の要求の処理中に第２の要求が入力された場合に、処理中若しくは処理予定のページに関して、ページ単位での処理の統合が可能かを判断する第１ステップと、
前記第１ステップで前記ページ単位での処理の統合が可能と判断された場合に、前記第２の要求の処理予定のページの内、統合できるページの処理は前記第１の要求の処理として実行し、統合できないページの処理は前記第２の要求の処理として実行する第２ステップと、を実行する、
ことを特徴とする処理方法。
【請求項１６】
前記第１ステップでは、前記第１の要求の処理中若しくは処理予定のページと、前記第２の要求の処理予定のページと、に同一ページがない場合は、前記ページ単位での処理の統合はできないと判断する、
ことを特徴とする請求項１５に記載の処理方法。
【請求項１７】
前記第１ステップでは、前記第１の要求の処理中若しくは処理予定のページと、前記第２の要求の処理予定のページと、に同一ページがある場合は、前記ページ単位での処理の統合が可能と判断し、
前記第２ステップでは、前記第２の要求の処理予定のページの内、前記同一ページの処理を前記第１の要求の処理として実行する、
ことを特徴とする請求項１５に記載の処理方法。
【請求項１８】
前記第１ステップでは、ページ単位で処理を統合した時の、前記第１の要求の処理の遅延が予め定めた許容範囲を越える場合は、前記ページ単位での処理の統合はできないと判断する、
ことを特徴とする請求項１５乃至１７のいずれか一に記載の処理方法。
【請求項１９】
前記第１の要求及び前記第２の要求の処理は、ページ毎に、ページを解析する解析処理と、前記ページの解析結果に基づいて情報を生成する生成処理と、を含み、
前記第２ステップでは、前記統合できるページに関して、前記第１の要求と前記第２の要求とで、前記解析処理を共通化する、
ことを特徴とする請求項１５乃至１８のいずれか一に記載の処理方法。
【請求項２０】
前記生成処理は、前記ページの解析結果に基づいて当該ページに印刷設定を反映したプレビュー画像を生成するプレビュー生成処理と、前記ページの画像を縮小したサムネイル画像を生成するサムネイル生成処理と、を含み、
前記第２ステップでは、前記第２の要求の前記生成処理が前記サムネイル生成処理の場合は、当該サムネイル生成処理を、前記第１の要求の処理に追加する、
ことを特徴とする請求項１９に記載の処理方法。
【請求項２１】
前記第１ステップでは、前記第２の要求の前記生成処理が前記プレビュー生成処理の場合は、前記ページ単位での処理の統合はできないと判断する、
ことを特徴とする請求項２０に記載の処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、処理プログラム及び処理装置並びに処理方法に関し、特に、印刷に関する処理を制御する処理プログラム及び処理装置並びに処理方法に関する。
【背景技術】
【０００２】
クラウドサーバやローカルサーバでサービスを提供する場合に、多数のユーザがサービスを利用すると、要求（サービスの利用をサーバに求めることを要求と称する。）が集中して一時的に大量の処理（サービスを提供するためのサーバの動作を処理と称する。）が発生する可能性がある。このような事態に対応すべく、効率的に処理を実行するための様々な方法が提案されている。
【０００３】
例えば、下記特許文献１には、プロセッサにより画像処理を行なう画像処理方法であって、画像処理を負担可能なプロセッサの数を問い合わせ、前記処理しようとしている画像の性質を判別し、該判別した画像の性質と前記問い合わせたプロセッサの数とに基づいて、前記複数のプロセッサに分担する各処理を決定する画像処理方法が開示されている。
【０００４】
また、下記特許文献２には、１以上のソフトウェア実行環境の各プロセスに１以上のＣＰＵ（Central Processing Unit）割当て単位を持つマルチスレッド環境で各スレッドに割りつけられたソフト部品から他のソフト部品の実行依頼情報が発行された場合に、ソフト部品の配置を示す共通参照情報を参照し、ソフト部品を結合し実行を制御するソフト部品結合制御装置であって、各スレッド毎に、受け取った実行依頼情報と上記共通参照情報により宛先のソフト部品の所在を判定し上記所在に基づいた手続で上記実行依頼情報を伝達するスレッド間部品結合手段と、２つのプロセス間のソフト部品の結合と実行を制御するとき、各プロセス毎に、受け取った実行依頼情報と上記共通参照情報により宛先のソフト部品の所在を判定し上記所在に基づいた手続で上記実行依頼情報を伝達するプロセス間部品結合手段と、を備えるソフト部品結合制御装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−２９３６７４０号公報
【特許文献２】特開平１０−１３３８８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述したように、サービスを提供するサーバでは、要求が集中すると一時的に大量の処理が発生する可能性があり、このような場合には、各要求に対する処理を並行して実行するように構成されている。しかしながら、要求が入力されるたびに処理を実行すると、要求の数だけ処理が同時に実行されるため、サーバの処理負荷が増大し、リソース（メモリやＨＤＤ（Hard Disk Drive））が不足し、その結果、期待された速度で要求に応えることができなくなり、快適にサービスを提供することができなくなってしまう。
【０００７】
このような処理負荷の増大やリソースの不足を回避する策として、処理を実行するサーバを複数台設けて、処理負荷を分散させる方法が考えられる。しかしながら、サーバを複数台設けると、サーバ設備の準備やメンテナンスに大きなコストがかかってしまう。
【０００８】
また、処理負荷の増大やリソースの不足を回避する別の策として、複数の処理を統合する方法が考えられる。例えば、各々の要求に対応して複数の処理を行う場合に、各々の要求に対応する複数の処理の中の共通する処理を統合することによってトータルの処理量を減らすことができ、サーバの処理負荷の増大やリソースの不足を軽減することができる。
【０００９】
特に、プリンタやＭＦＰ（Multi Function Peripheral）などの印刷装置を利用する印刷に関する要求（例えば、印刷ジョブなど、ページ毎に印刷設定を反映した画像を生成する要求）を処理する場合、まず、印刷ジョブの各ページを解析するといった共通の処理が行われるため、この共通の処理を統合することによって、複数の要求の処理量を減らして、印刷ジョブを処理する装置の処理負荷やリソースの不足を軽減することができる。
【００１０】
ここで、処理の統合に関して、複数の要求に対する処理を開始する前に、複数の処理の重複部分（共通処理）を統合する方法は知られている。しかしながら、印刷に関する分野では、次々に新しい要求が入力され、各々の要求は迅速に実行する必要があるため、複数の要求が入力されるまで待ってから処理の統合を行うようにすると、先に行われた要求に対する処理が遅れてしまうという問題が生じる。
【００１１】
本発明は、上記問題点に鑑みてなされたものであって、その主たる目的は、印刷に関する複数の要求に対する処理を効率的に実行することができる処理プログラム及び処理装置並びに処理方法を提供することにある。
【課題を解決するための手段】
【００１２】
本発明の一側面は、印刷に関する要求を処理する処理装置で動作する処理プログラムであって、前記処理装置に、第１の要求の処理中に第２の要求が入力された場合に、処理中若しくは処理予定のページに関して、ページ単位での処理の統合が可能かを判断する第１ステップ、前記第１ステップで前記ページ単位での処理の統合が可能と判断された場合に、前記第２の要求の処理予定のページの内、統合できるページの処理は前記第１の要求の処理として実行し、統合できないページの処理は前記第２の要求の処理として実行する第２ステップ、を実行させることを特徴とする。
【００１３】
本発明の一側面は、通信ネットワークを介して、印刷に関する要求を送信する装置に接続される処理装置であって、前記要求を受信する通信Ｉ／Ｆ部と、受信した前記要求を処理する制御部と、を備え、前記制御部は、第１の要求の処理中に第２の要求が入力された場合に、処理中若しくは処理予定のページに関して、ページ単位での処理の統合が可能かを判断する判断部と、前記解析部が前記ページ単位での処理の統合が可能と判断した場合に、前記第２の要求の処理予定のページの内、統合できるページの処理は前記第１の要求の処理として実行し、統合できないページの処理は前記第２の要求の処理として実行する処理実行部と、を備えることを特徴とする。
【００１４】
本発明の一側面は、通信ネットワークを介して、印刷に関する要求を送信する装置に接続される処理装置における処理方法であって、第１の要求の処理中に第２の要求が入力された場合に、処理中若しくは処理予定のページに関して、ページ単位での処理の統合が可能かを判断する第１ステップと、前記第１ステップで前記ページ単位での処理の統合が可能と判断された場合に、前記第２の要求の処理予定のページの内、統合できるページの処理は前記第１の要求の処理として実行し、統合できないページの処理は前記第２の要求の処理として実行する第２ステップと、を実行することを特徴とする。
【発明の効果】
【００１５】
本発明の処理プログラム及び処理装置並びに処理方法によれば、印刷に関する複数の要求に対する処理を効率的に実行することができる。
【００１６】
その理由は、サーバや印刷装置などの印刷に関する要求を処理する処理装置で動作する処理プログラムは、第１の要求の処理中に第２の要求が入力された場合に、処理中若しくは処理予定のページに関して、ページ単位での処理の統合が可能かを判断し、ページ単位での処理の統合が可能な場合は、第２の要求の処理予定のページの内、統合できるページの処理は第１の要求の処理として実行し、統合できないページの処理は第２の要求の処理として実行するからである。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施例に係る印刷システムの構成を模式的に示す図である。
【図２】本発明の一実施例に係るユーザ端末の構成を示すブロック図である。
【図３】本発明の一実施例に係るＷｅｂサーバの構成を示すブロック図である。
【図４】本発明の一実施例に係る印刷装置の構成を示すブロック図である。
【図５】本発明の一実施例に係る印刷に関する要求に対して行われる処理の一例を示す図である。
【図６】統合すべき処理の一例を示す図である。
【図７】統合すべきでない処理の一例を示す図である。
【図８】従来と本発明の処理方法の比較（複数の要求のページが同じで出力指定が異なる場合）を示す図である。
【図９】従来と本発明の処理方法の比較（複数の要求のページが部分的に重複し、出力指定が同じ場合）を示す図である。
【図１０】従来と本発明の処理方法の比較（複数の要求のファイルが異なり、ページが部分的に重複し、出力指定が同じ場合）を示す図である。
【図１１】本発明の一実施例に係るＷｅｂサーバの動作を示すフローチャート図である。
【図１２】本発明の一実施例に係るＷｅｂサーバの動作（処理の統合動作）を示すフローチャート図である。
【発明を実施するための形態】
【００１８】
サーバと複数のクライアントが通信できるように接続された構成では、複数のクライアントからサーバへ処理の要求が送られる。サーバは受信した要求に応じた処理を行うが、その際、要求が集中して一時的に大量の処理が発生する場合には、サーバの処理負荷が増大し、リソースが不足してしまう。この問題に対して、サーバを複数設けて、処理負荷を分散させる方法があるが、この方法では、サーバ設備の準備やメンテナンスにコストがかかってしまう。また、別の方法として複数の処理を統合する方法があり、複数の要求に対する処理を開始する前に、各々の要求に対する複数の処理の重複部分（共通処理）を統合する方法が知られている。
【００１９】
例えば、印刷に関する要求は複数の処理で構成され、最初のいくつかの処理は必ず順番通りに実行する必要があり、最終段のいくつかの処理は複数の処理に分かれ、処理に応じて異なる出力結果となるという特徴がある。従って、最初のいくつかの処理を統合することによって、複数の要求のトータルの処理量を減らして、印刷に関する要求を処理する装置の処理負荷を軽減することができる。
【００２０】
しかしながら、印刷の分野では、次々に新しい要求が送られ、各々の要求は迅速に実行する必要があるため、複数の要求が入力されるまで待ってから処理の統合を行うと、先の要求に対する処理の実行が遅れてしまうという問題があった。このような背景から、ある要求に対する処理の実行中に他の要求が入力された場合に、それらの要求に含まれる処理を効率的に統合する方法の提案が求められている。
【００２１】
そこで、本発明の一実施の形態では、先の要求（第１の要求）の処理中に別の要求（第２の要求）が入力された場合に、処理中若しくは処理予定のページに関して、ページ単位での処理の統合が可能か（第１の要求の処理中若しくは処理予定のページと第２の要求の処理予定のページとに同一ページがあるか）を判断し、ページ単位での処理の統合が可能な場合（同一ページがある場合、若しくは、同一ページがあり、かつ、先の要求の処理の遅延が許容範囲内の場合）は、統合できるページ（同一ページ）の処理は先の要求の処理として実行し、統合できないページ（同一でないページ）の処理は別の要求の処理として実行するようにする。
【００２２】
例えば、要求Ａが入力されたとき、要求Ａに応えるために１又は複数の処理（処理群Ａとする。）を実行する。その処理群Ａの実行中に、新たに要求Ｂが入力された場合、その要求Ｂに対する１又は複数の処理（処理群Ｂとする。）の全てが処理群Ａに統合可能であれば、要求Ｂに対する処理群Ｂを実行せずに、要求Ａに対する処理群Ａの処理内容を、要求Ａ、Ｂの両方を満たす処理に変更して、処理群Ａの実行を継続させる。
【００２３】
ただし、処理群Ａの状態（処理内容や進行状況）や処理を統合した場合の処理群Ａの応答性の悪化（処理群Ａの遅延）を判定した結果、要求Ｂに対する処理群Ｂの全てを統合することができない場合は、処理群Ａに統合できない部分のみについて要求Ｂに対する処理を実行する。そうすることで、一時に集中的に要求が入力された場合でも、ユーザへの快適性を損なうことなく装置に対する処理負荷やリソース不足を軽減することができる。
【００２４】
上記制御の適用例としてサーバでの印刷プレビューサービスを想定する。プレビュー処理は、初期化処理、解析処理、解析情報通知、サムネイル生成処理、プレビュー生成処理などの処理群で構成され、出力は、解析情報、サムネイル画像、プレビュー画像のいずれか若しくはその複数になるため、出力を得るためには必ず初期化処理と解析処理を行う必要があるという特徴を有する。
【００２５】
そこで、このような印刷に関するサービスの特徴を鑑みて、ある要求Ａの初期化処理や解析処理の実行中に、要求Ｂが入力された場合、要求Ｂに対する処理群を要求Ａに対する処理群に統合可能であれば、要求Ａに対する処理群の設定内容を要求Ｂに対する処理群にも対応するように変更することで、要求Ｂの初期化処理、解析処理を行うことによる処理負荷（処理時間）の軽減やリソース（メモリ使用量）の節約を図ることができる。
【００２６】
一方、ある要求Ａの初期化処理や解析処理中に、要求Ｂが入力された場合、要求Ｂに対する処理群を要求Ａに対する処理群に統合可能であっても、処理を統合すべきでない場合がある。例えば、要求Ａの出力が解析情報であり、要求Ｂの出力がプレビュー画像の場合、要求Ａの処理群の処理内容の中に要求Ｂのプレビュー生成処理を統合した場合、要求Ｂの初期化処理、解析処理に対する処理負荷（処理時間）の軽減やリソース（メモリ使用量）の節約を図ることはできるが、要求Ｂのプレビュー生成処理を行うために、要求Ａの応答が大幅に遅れてしまい、その結果、要求Ａを入力したユーザの快適性が損なわれてしまう。そこで、処理の統合可否を判断する際に、先の要求に対する処理の遅延が予め定めた許容範囲内であるかも判断し、処理の遅延が許容範囲内であれば、処理の統合を行うようにする。
【実施例】
【００２７】
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係る処理プログラム及び処理装置並びに処理方法について、図１乃至図１２を参照して説明する。図１は、本実施例の印刷システムの全体構成を示す図であり、図２乃至図４は、各々、ユーザ端末、Ｗｅｂサーバ、印刷装置の構成を示すブロック図である。また、図５は、本実施例の印刷に関する要求に対して行われる処理の一例を示す図であり、図６及び図７は、各々、統合すべき処理の例、統合すべきでない処理の例を示す図である。また、図８乃至図１０は、従来と本発明の処理方法を比較する図であり、図１１及び図１２は、本実施例のＷｅｂサーバの動作を示すフローチャート図である。
【００２８】
図１に示すように、本実施例の印刷システムは、印刷に関する要求を行う１又は複数のユーザ端末１０と、印刷に関する要求を処理する処理装置（本実施例ではＷｅｂサーバ２０とする。）と、必要に応じて、印刷を実行する１又は複数の印刷装置３０とで構成される。これらは、イーサネット（登録商標）、トークンリング、ＦＤＤＩ（Fiber-Distributed Data Interface）等の規格により定められるＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network）等のネットワークによって相互に接続される。以下、各装置について詳細に説明する。
【００２９】
［ユーザ端末］
ユーザ端末１０は、パーソナルコンピュータなどのコンピュータ装置、タブレット端末やスマートフォンなどの携帯端末などであり、図２（ａ）に示すように、制御部１１と記憶部１２と通信Ｉ／Ｆ部１３と表示部１４と操作部１５などで構成される。
【００３０】
制御部１１は、ＣＰＵ（Central Processing Unit）と、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）などのメモリとで構成され、これらはバスを介して接続されている。ＣＰＵは、ＲＯＭや記憶部１２からプログラムを読み出し、ＲＡＭに展開して実行することにより、ユーザ端末１０の全体制御を行う。
【００３１】
上記制御部１１は、図２（ｂ）に示すように、ＯＳ（Operating System）やＯＳ上でドキュメントを作成するアプリケーションなどを動作させるアプリケーション部１１ａと、アプリケーションで作成したドキュメントのデータを印刷装置３０で解釈可能な言語（ＰＣＬ（Printer Control Language）やＰＳ（Post Script）などのＰＤＬ（Page Description Language））に変換して印刷に関する要求（本実施例では印刷ジョブとする。）を生成するドライバ部１１ｂなどとしても機能する。
【００３２】
記憶部１２は、ＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）、ＳＤ（Secure Digital）カードなどで構成され、ＣＰＵが各部を制御するためのプログラム、ドキュメントのデータ、自装置の処理機能に関する情報などを格納する。
【００３３】
通信Ｉ／Ｆ部１３は、ＮＩＣ（Network Interface Card）やモデムなどで構成され、ネットワークを介して繋がっているＷｅｂサーバ２０との接続を確立し、要求の送信及び要求に対する処理の結果（例えば、解析情報、サムネイル画像、プレビュー画像）のデータの受信などを行う。
【００３４】
表示部１４は、ＬＣＤ（Liquid Crystal Display）などで構成され、ドキュメントを作成する画面、ドキュメントの印刷条件を設定する画面、Ｗｅｂサーバ２０から受信した解析情報、サムネイル画像、プレビュー画像を表示する画面などを表示する。操作部１５は、キーボードやマウス、表示部１４と一体となったタッチパネルなどで構成され、ドキュメントの作成、印刷条件の設定などの操作を可能にする。
【００３５】
［Ｗｅｂサーバ］
Ｗｅｂサーバ２０は、コンピュータ装置であり、図３（ａ）に示すように、制御部２１と記憶部２２と通信Ｉ／Ｆ部２３と、必要に応じて表示部２４及び操作部２５などで構成される。
【００３６】
制御部２１は、ＣＰＵと、ＲＯＭやＲＡＭなどのメモリとで構成され、これらはバスを介して接続されている。ＣＰＵは、ＲＯＭや記憶部２２からプログラムを読み出し、ＲＡＭに展開して実行することにより、Ｗｅｂサーバ２０の全体制御を行うと共に、ユーザ端末１０からの要求に応じた処理を実行する。
【００３７】
上記制御部２１は、図３（ｂ）に示すように、印刷に関する先の要求の処理中に別の要求が入力された場合に、要求を解析し、処理中若しくは処理予定のページ（言い換えると処理済みのページ以外のページ）に関して、ページ単位での処理の統合が可能かを判断する判断部２１ａと、判断部２１ａがページ単位での処理の統合が可能と判断した場合に、別の要求の処理予定のページの内、統合できるページの処理は先の要求の処理として実行し、統合できないページの処理は別の要求の処理として実行する処理実行部２１ｂなどとしても機能する。この処理実行部２１ｂは、処理の実行に際して、解析結果を解析情報としてユーザ端末１０に送信したり、各ページの画像に印刷設定を反映させたプレビュー画像を生成したり、各ページの画像を縮小したサムネイル画像を生成したり、必要に応じて、印刷装置３０に印刷させる印刷画像を生成したりする。
【００３８】
記憶部２２は、ＨＤＤなどで構成され、ＣＰＵが各部を制御するためのプログラム、ユーザ端末１０から受信した要求、解析情報のデータ、プレビュー画像やサムネイル画像のデータ、各要求に対する処理の内容や実行状態を管理する管理リスト、自装置の処理機能に関する情報などを格納する。
【００３９】
通信Ｉ／Ｆ部２３は、ＮＩＣやモデムなどで構成され、ネットワークを介して繋がっているユーザ端末１０や印刷装置３０との接続を確立し、ユーザ端末１０からの要求の受信、ユーザ端末１０への解析情報やプレビュー画像、サムネイル画像のデータの送信、必要に応じて、印刷装置への印刷画像のデータの送信などを実行する。
【００４０】
表示部２４は、ＬＣＤなどで構成され、Ｗｅｂサーバ２０の制御に必要な各種画面などを表示する。操作部２５は、キーボードやマウスなどで構成され、Ｗｅｂサーバ２０の制御に必要な各種操作を可能にする。
【００４１】
［印刷装置］
印刷装置３０は、プリンタやＭＦＰ（Multi Function Peripheral）などの画像形成装置であり、図４に示すように、制御部３１と記憶部３２と通信Ｉ／Ｆ部３３と表示部３４と操作部３５と印刷部３６などで構成される。
【００４２】
制御部３１は、ＣＰＵと、ＲＯＭやＲＡＭなどのメモリとで構成され、これらはバスを介して接続されている。ＣＰＵは、ＲＯＭや記憶部３２からプログラムを読み出し、ＲＡＭに展開して実行することにより、印刷装置３０の全体制御を行う。
【００４３】
記憶部３２は、ＨＤＤなどで構成され、ＣＰＵが各部を制御するためのプログラム、印刷画像のデータ、自装置の処理機能に関する情報などを格納する。
【００４４】
通信Ｉ／Ｆ部３３は、ＮＩＣやモデムなどで構成され、ネットワークを介して繋がっているＷｅｂサーバ２０との接続を確立し、Ｗｅｂサーバ２０から印刷画像のデータなどを受信する。
【００４５】
表示部３４は、ＬＣＤなどで構成され、印刷に関する各種画面を表示する。操作部３５は、ハードキーや表示部３４と一体となったタッチパネルなどで構成され、印刷に関する各種操作を可能にする。
【００４６】
印刷部３６は、電子写真方式や静電記録方式等の作像プロセスを利用した画像形成のために必要な要素、すなわち、帯電装置、感光体ドラム、露光装置、転写ローラ、転写ベルト、定着装置などで構成される。具体的には、帯電装置により帯電された感光体ドラムに露光装置から印刷データに応じた光を照射して静電潜像を形成し、現像装置で帯電したトナーを付着させて現像し、そのトナー像を一次転写ローラ、二次転写ベルトを介して紙媒体に転写して定着装置で定着させる処理を行う。
【００４７】
なお、上記では、Ｗｅｂサーバ２０でプレビュー表示用のサムネイル画像を生成する際にラスタライズ処理を行うことから、印刷装置３０には判断部や処理実行部を設けていないが、印刷装置３０に判断部や処理実行部を設け、印刷装置３０自身が印刷画像を生成する構成としてもよい。
【００４８】
以下、上記構成の印刷システムにおけるプレビュー処理について説明する。Ｗｅｂサーバ２０が行うプレビュー処理は、図５に示すように、初期化処理、解析処理、解析情報通知処理、サムネイル生成処理、プレビュー生成処理などで構成される。初期化処理は、例えば、解析処理を行うための領域をメモリ上に確保する処理である。解析処理は、例えば、印刷ジョブを解析し、ドキュメントの各ページからオブジェクトを抽出して中間言語に変換したり、印刷設定情報を抽出したりする処理である。解析情報通知処理は、例えば、解析処理での解析結果をユーザ端末１０などに通知する処理である。サムネイル生成処理は、例えば、ドキュメントの各ページの画像を縮小したサムネイル画像を生成する処理である。プレビュー生成処理は、例えば、ドキュメントの各ページの画像に印刷設定を反映させた時の状態をシミュレーションしたプレビュー画像を生成する処理である。なお、図５では、各々の処理を囲む枠のサイズを変えて、各々の処理に要する時間の大小を表現している。すなわち、解析情報通知処理、サムネイル生成処理、プレビュー生成処理に要する時間が、解析情報通知処理＜サムネイル生成処理＜プレビュー生成処理の順となる。
【００４９】
このプレビュー処理において、出力は、解析情報、サムネイル画像、プレビュー画像のいずれか、又は、複数になるため、出力を得るには必ず初期化処理及び解析処理を行う必要があり、複数の要求に対して処理の統合が可能である。この処理の統合に際して、複数の要求が入力されてからプレビュー処理を開始する場合には、初期化処理及び解析処理を統合すればよいが、第１の要求に対するプレビュー処理中に第２の要求が入力された場合には、処理の統合によって第１の要求のプレビュー処理が大きく遅延する恐れがあるため、その遅延が許容範囲内であるか否かを判断する必要がある。
【００５０】
例えば、図６に示すように、ドキュメントの１〜３ページの処理を指示する要求Ａと同じくドキュメントの１〜３ページの処理を指示する要求Ｂとがあり、要求Ａは解析処理の後に解析情報通知処理を行う構成であり、処理Ｂは、解析処理の後にサムネイル生成処理を行う構成であるとする。そして、要求Ａの初期化処理中やページ１の解析処理中に要求Ｂが入力されたとする。この場合、要求Ｂの処理を要求Ａの処理に統合しても、要求Ａの応答性に対する影響が少ない（要求Ｂのサムネイル生成処理はそれほど時間がかからない）ため、処理を統合すべきと判断する。そして、要求Ａに対応する処理の設定内容を要求Ｂにも対応するように変更する（各ページの解析情報通知処理後に要求Ｂのサムネイル生成処理を実行する）ことで、要求Ｂの初期化処理、解析処理を省略することができ、処理負荷（処理時間）の軽減やリソース（メモリ使用量）の節約を図ることができる。
【００５１】
一方、図７に示すように、処理Ｂが、解析処理の後にプレビュー生成処理を行う構成であり、要求Ａの初期化処理やページ１の解析処理中に、要求Ｂが入力されたとする。この場合、処理を統合することによって、処理負荷の軽減、リソースの節約を図ることはできるが、プレビュー生成処理はサムネイル生成処理に比べて時間がかかるため、要求Ｂのプレビュー生成処理を要求Ａの処理に統合することによって要求Ａの応答が大幅に遅れてしまい、要求Ａのユーザの快適性が損なわれてしまう。
【００５２】
このように、処理を統合するか否かは、各々の要求に対する処理の内容に応じて決定することができる。具体的には、プレビュー処理では、要求は表１、２に示す５種類となり、要求１は解析情報を出力する要求、要求２はサムネイル画像を出力する要求、要求３はプレビュー画像を出力する要求、要求４は解析情報及びサムネイル画像を出力する要求、要求５は解析情報及びプレビュー画像を出力する要求となる。
【００５３】
【表１】
2015069614.tif 000003
【００５４】
【表２】
2015069614.tif 000004
【００５５】
表１、２の要求１、２、４は、処理ファイルとページ指定がマッチしていれば（処理対象のページが重複していれば）、先の要求に対する処理の遅延を抑えつつ処理効率を向上させることができる。また、要求３、５も、処理ファイルとページ指定がマッチしていれば、先の要求に対する処理の遅延を許容範囲内に抑えつつ処理効率を向上させることができる。一方、要求１、２、４と要求３、５は、処理ファイルとページ指定がマッチしていても、プレビュー画像はメモリ使用量・処理負荷が大きいため、一方の要求に対する処理の遅延を許容範囲内に抑えることができず、処理効率を向上させることはできない。
【００５６】
例えば、表３、４のような１０個の要求が同時に入力された場合、プレビュー処理内部では、表５の４つの内部ＩＤで処理を行う。すなわち、要求１〜５はページ指定が”1,2,3”、要求６〜１０は、ページ指定が”3,4,5”であり、ページ３が重複するため、ページ指定が”1,2,3,3”の処理と”4,5”の処理に分け、各々の処理を出力画像がサムネイル画像の処理とプレビュー画像の処理に分ける。このように、内部的には４つの要求として処理するが、１０個それぞれの要求に応えることができるように出力を返すことで、外部には影響を与えず、内部的に処理負荷やリソース使用量を抑えることができる。
【００５７】
【表３】
2015069614.tif 000005
【００５８】
【表４】
2015069614.tif 000006
【００５９】
【表５】
2015069614.tif 000007
【００６０】
以下、３つのケースについて、処理の統合を行わない従来の手法と、処理の統合を行う本発明の手法とを比較して説明する。
【００６１】
まず、図８（ａ）に示すように、ファイルＡの１〜３ページに対して画像出力指定がなく解析情報指定がある要求Ａと、ファイルＡの１〜３ページに対して画像出力指定がサムネイルで解析情報指定がない要求Ｂの２つの要求に対して、要求Ａのページ２の解析処理中に要求Ｂが入力された場合の処理について説明する。
【００６２】
この場合、図８（ｂ）に示す従来方式では、処理の統合を行わないため、要求Ａに対して、初期化処理、ページ１〜３の解析処理、ページ１〜３の解析処理に対する解析情報通知処理が行われ、これらの処理に並行して、要求Ｂに対して、初期化処理、ページ１〜３の解析処理、ページ１〜３の解析処理に対するサムネイル生成処理が行われる。
【００６３】
一方、図８（ｃ）に示す本発明の方式では、要求Ｂが入力された時点で、要求Ｂの処理が要求Ａの処理に統合可能かを判断する。この場合、統合可能な共通処理があり、サムネイル生成処理はそれほど時間がかからないため、統合可能と判断して、要求Ａの出力画像指定を「なし」から「サムネイル」に変更して要求Ａの処理を継続する。要求Ａのページ１の処理は完了しているため、要求Ａでページ１のサムネイル生成処理はできない。そのため、要求Ｂに対して、初期化処理とページ１の解析処理とページ１のサムネイル生成処理のみを行う。なお、要求Ａのページ１の解析処理の結果を記憶し、記憶した結果を利用して要求Ｂのページ１のサムネイル生成処理を行うことはしない。この例では、ページ２、３の解析処理を共通化することができるため、処理の効率化を図ることができると共に、要求Ａの処理をそれほど遅らすことなく、要求Ｂにおけるページ２、３のサムネイル生成処理を早く完了することができる。
【００６４】
次に、図９（ａ）に示すように、ファイルＡの１〜３ページに対して画像出力指定がなく解析情報指定がある要求Ａと、ファイルＡの３〜５ページに対して画像出力指定がなく解析情報指定がある要求Ｂの２つの要求に対して、要求Ａのページ２の解析処理中に要求Ｂが入力された場合の処理について説明する。すなわち、この例は、要求Ａ、Ｂともに解析情報の要求であるが、要求ページ指定が異なる場合の例である。
【００６５】
この場合、図９（ｂ）に示す従来方式では、処理の統合を行わないため、要求Ａに対して、初期化処理、ページ１〜３の解析処理、ページ１〜３の解析処理に対する解析情報通知処理が行われ、これらの処理に並行して、要求Ｂに対して、初期化処理、ページ３〜５の解析処理、ページ３〜５の解析処理に対する解析情報通知処理が行われる。
【００６６】
一方、図９（ｃ）に示す本発明の方式では、要求Ｂが入力された時点で、要求Ｂの処理が要求Ａの処理に統合可能かを判断する。この場合、統合可能な共通処理があり、解析情報通知処理は時間が短いため、統合可能と判断して、要求Ａのページ指定を「１、２、３」から「１、２、３、３」に変更して要求Ａの処理を継続する。要求Ａではページ４、５を処理しないため、要求Ｂに対して、初期化処理とページ４、５の解析処理とページ４、５の解析情報通知処理のみを行う。この例では、ページ３の解析処理を共通化することができるため、処理の効率化を図ることができると共に、要求Ａの処理をほとんど遅らすことなく、要求Ｂにおけるページ３の解析情報通知処理を早く完了することができる。
【００６７】
上記図８及び図９では、要求の対象が同一ファイルの場合について説明したが、ファイルが異なっていても、各々のファイルに同じページが含まれている場合には、そのページに対する処理を共通化できる場合がある。例えば、図１０（ａ）に示すように、ファイルＡの１〜３ページに対して画像出力指定がなく解析情報指定がある要求Ａと、ファイルＢの３ページ（ファイルＡの３ページと同一ページ）及び１０、１１ページに対して画像出力指定がなく解析情報指定がある要求Ｂの２つの要求に対して、要求Ａのページ２の解析処理中に要求Ｂが入力された場合の処理について説明する。なお、異なるファイルに同じページがあるか否かを判断できるようにするために、ページには通し番号を付与している。
【００６８】
この場合、図１０（ｂ）に示す従来方式では、処理の統合を行わないため、図９（ａ）と同様に、要求Ａに対して、初期化処理、ページ１〜３の解析処理、ページ１〜３の解析処理に対する解析情報通知処理が行われ、これらの処理に並行して、要求Ｂに対して、初期化処理、ページ３、１０、１１の解析処理、ページ３、１０、１１の解析処理に対する解析情報通知処理が行われる。
【００６９】
一方、図１０（ｃ）に示す本発明の方式では、要求Ｂが入力された時点で、要求Ｂの処理が要求Ａの処理に統合可能かを判断する。この場合、ページ３に対して統合可能な共通処理があり、解析情報通知処理は時間が短いため、統合可能と判断して、要求Ａのページ指定を「１、２、３」から「１、２、３、３」に変更して要求Ａの処理を継続する。要求ＡではファイルＢの１０、１１ページを処理しないため、要求Ｂに対して、初期化処理とファイルＢのページ１０、１１の解析処理とページ１０、１１の解析情報通知処理のみを行う。この例でも、図９（ｃ）と同様に、ページ３の解析処理を共通化することができるため、処理の効率化を図ることができると共に、要求Ａの処理をほとんど遅らすことなく、要求Ｂにおけるページ３の解析情報通知処理を早く完了することができる。
【００７０】
次に、本実施例のＷｅｂサーバ２０の処理について説明する。ＣＰＵは、ＲＯＭに記憶した処理プログラムをＲＡＭに展開して実行することにより、図１１及び図１２のフローチャート図の各処理を行う。
【００７１】
まず、図１１に示すように、制御部２１は、新規要求の入力があるかを判断する（Ｓ１０１）。新規要求の入力がない場合、Ｓ１０１に戻る。新規要求の入力があった場合、制御部２１は、処理の統合を行う（Ｓ１０２）。このステップについては後述する。そして、制御部２１は、処理の統合を行った後に、新規要求の中に統合していない処理が残っているかを判断する（Ｓ１０３）。全ての処理を統合した場合は、Ｓ１０１に戻って新規要求の入力を待つ。一方、統合していない処理が残っている場合は、制御部２１は、新規要求に対して統合していない処理を設定し（Ｓ１０５）、Ｓ１０１に戻って新規要求の入力を待つ。
【００７２】
図１２は、図１１のＳ１０２の処理の統合動作の詳細を示している。まず、制御部２１は、処理を実行中の要求を確認し、その要求を管理リストへ登録する（Ｓ２０１）。次に、制御部２１は、管理リストから新規要求とページ指定が重ならない要求を削除する（Ｓ２０２）。
【００７３】
次に、制御部２１は、新規要求の出力画像指定をチェックする（Ｓ２０３）。出力画像指定が「なし」もしくは「サムネイル画像」の場合、制御部２１は、管理リストから出力画像指定が「なし」若しくは「サムネイル画像」でない要求を削除する（Ｓ２０４）。一方、出力画像指定が「プレビュー画像」の場合、制御部２１は、管理リストから出力画像指定が「プレビュー画像」でない要求を削除する（Ｓ２０５）。
【００７４】
次に、制御部２１は、管理リストを参照して、新規要求とページ指定の重なりが最も多い要求を特定し、その要求に統合する新規要求の処理を指定する（Ｓ２０７）。そして、新規要求に対する処理の中から処理を実行中の要求に統合された処理を削除する（Ｓ２０８）。
【００７５】
このように、本実施例では、先の要求に対する処理の実行中に別の要求が入力された場合に、処理中若しくは処理予定のページに関して、ページ単位で統合できる処理があるかを判断し、統合できる処理があり、かつ、先の要求に対する処理の遅延が許容範囲内の場合は、統合可能なページは、先の要求に対する処理において実行し、統合できないページは、別の要求に対する処理において実行するため、処理負荷やリソース不足を軽減することができる。
【００７６】
なお、本発明は上記実施例に限定されるものではなく、本発明の趣旨を逸脱しない限りにおいて、Ｗｅｂサーバ２０の構成や制御は適宜変更可能である。
【００７７】
例えば、上記実施例では、印刷に関する要求として、プレビュー画像やサムネイル画像を生成する要求を例にして説明したが、ページ毎の解析結果に基づく任意の処理を指示する任意の要求に対して、本発明の制御を同様に適用することができる。
【００７８】
また、上記実施例では、Ｗｅｂサーバが印刷に関する要求を処理する構成としたが、プリンタコントローラやＲＩＰ（Raster Image Processing）コントローラ、印刷装置などが印刷に関する要求を処理する場合に対しても、本発明の制御を同様に適用することができる。
【産業上の利用可能性】
【００７９】
本発明は、印刷に関する処理を制御する処理プログラム、当該処理プログラムを記録した記録媒体、印刷に関するサービスを提供するサーバ、当該サーバにおける処理方法に利用可能である。
【符号の説明】
【００８０】
１０  ユーザ端末
１１  制御部
１１ａ  アプリケーション部
１１ｂ  ドライバ部
１２  記憶部
１３  通信Ｉ／Ｆ部
１４  表示部
１５  操作部
２０  Ｗｅｂサーバ
２１  制御部
２１ａ  判断部
２１ｂ  処理実行部
２２  記憶部
２３  通信Ｉ／Ｆ部
２４  表示部
２５  操作部
３０  印刷装置
３１  制御部
３２  記憶部
３３  通信Ｉ／Ｆ部
３４  表示部
３５  操作部
３６  印刷部
【図１】
2015069614.tif 000008
【図２】
2015069614.tif 000009
【図３】
2015069614.tif 000010
【図４】
2015069614.tif 000011
【図５】
2015069614.tif 000012
【図６】
2015069614.tif 000013
【図７】
2015069614.tif 000014
【図８】
2015069614.tif 000015
【図９】
2015069614.tif 000016
【図１０】
2015069614.tif 000017
【図１１】
2015069614.tif 000018
【図１２】
2015069614.tif 000019