(57)【要約】      （修正有）【課題】分散印刷システムを提供する。【解決手段】クライアントデバイスは、複数の候補の印刷デバイスと関連付けられ、分散印刷に対する要求を受け取ることができる。クライアントデバイスは、複数の候補の印刷デバイスのうちから複数の印刷デバイスを決定する。複数の印刷デバイスの各印刷デバイスは、分散印刷に対する要求の少なくとも一部に応えるよう構成される。クライアントデバイスは、全体で分散印刷に対する要求を満たす複数の印刷ジョブの割り当て分を決定する。複数の印刷デバイスのうち指定された各印刷デバイスに対して、クライアントデバイスは、指定された印刷デバイスに対して１つ以上の印刷ジョブの割り当て分を割り当て、そして指定された印刷デバイスに対して割り当てられた１つ以上の印刷ジョブの割り当て分を送信する。【選択図】図１
2016136387.tif 000002
【特許請求の範囲】
【請求項１】
システムであって、
複数の候補の印刷デバイスと、
１つ以上の処理部およびデータ記憶部を含むクライアントデバイスと、
を備え、
前記１つ以上の処理部により実行されたとき、前記クライアントデバイスに機能を実行させるコンピュータ読み取り可能な指示を含む前記データ記憶部は、
分散印刷に対する要求を受け取り、
複数の印刷デバイスの各印刷デバイスは、前記分散印刷に対する要求の少なくとも一部に応えるように構成され、前記複数の候補の印刷デバイスのうちから前記複数の印刷デバイスを決定し、
前記分散印刷に対する要求を全体で満たす複数の印刷ジョブの割り当て分を決定し、
前記複数の印刷デバイスのうちの指定された各印刷デバイスに対して、少なくとも
前記指定された印刷デバイスに対して１つ以上の印刷ジョブの割り当て分を割り当て、
前記指定された印刷デバイスに対して前記割り当てられた１つ以上の印刷ジョブの割り当て分を提供することを含むシステム。
【請求項２】
請求項１に記載のシステムであって、
前記分散印刷に対する要求は、文書の複数のコピーを印刷するための要求を含み、
前記複数の印刷ジョブの割り当て分を決定する場合、前記複数の印刷ジョブの割り当て分のうち指定された印刷ジョブの割り当て分に対する前記文書のコピー部数を決定することを含むシステム。
【請求項３】
請求項１又は２に記載のシステムであって、
前記分散印刷に対する要求は、複数のページを印刷するための要求を含み
前記複数の印刷ジョブの割り当て分を決定する場合、前記複数の印刷ジョブの割り当て分のうち指定された印刷ジョブの割り当て分に対するページ数を決定することを含むシステム。
【請求項４】
請求項１乃至３のいずれか１項に記載のシステムであって、さらに、
印刷ジョブの割り当て分の印刷中に、不調の印刷デバイスにエラーが発生したことを判定し、
前記不調の印刷デバイスを置き換えるために代替の印刷デバイスを決定し、
前記代替の印刷デバイスで前記印刷ジョブの割り当て分の印刷を続行することを含むシステム。
【請求項５】
請求項４に記載のシステムであって、
前記印刷ジョブの割り当て分の印刷中に、前記エラーが発生したことを判定することは、
前記エラーに関する通知を前記クライアントデバイスで受け取り、
前記クライアントデバイスを用いて前記通知に関連する表示を生成することを含むシステム。
【請求項６】
請求項５に記載のシステムであって、
前記通知に関連する前記表示は、１つ以上の代替の印刷デバイスの表示を含み、
前記代替の印刷デバイスを決定する場合、前記１つ以上の代替の印刷デバイスのうちから前記代替の印刷デバイスの選択を受け取ることを含むシステム。
【請求項７】
請求項１乃至６のいずれか１項に記載のシステムであって、
前記複数の印刷デバイスを決定する場合、
前記分散印刷に対する要求に関連する１つ以上の印刷オプションを決定し、
前記複数の候補の印刷デバイスのうち指定された印刷デバイスに対して、前記指定された印刷デバイスが前記１つ以上の印刷オプションに対応するように構成されているかどうか判定し、
前記指定された印刷デバイスが前記１つ以上の印刷オプションに対応するように構成されていることを判定した後、前記指定された印刷デバイスを前記複数の候補の印刷デバイスに追加することを含むシステム。
【請求項８】
請求項１乃至７のいずれか１項に記載のシステムであって、
前記複数の印刷ジョブの割り当て分を決定する場合、
印刷ボリューム比率は、特定の印刷デバイスに割り当てられる、前記分散印刷に対する要求の比率に基づき、前記複数の印刷デバイスのうち前記特定の印刷デバイスに対する前記印刷ボリューム比率を決定することを含むシステム。
【請求項９】
請求項１乃至８のいずれか１項に記載のシステムであって、
前記複数の印刷ジョブの割り当て分を決定する場合、
前記複数の印刷デバイスのうち特定の印刷デバイスに対する特定の単位時間当たりのページ数を決定し、
前記複数の印刷デバイスに対する合計の単位時間当たりのページ数を決定し、
ページボリューム比率が前記合計の単位時間当たりのページ数に対する前記特定の単位時間当たりのページ数の比率に基づき、前記特定の印刷デバイスに対する前記ページボリューム比率を決定することを含むシステム。
【請求項１０】
請求項１乃至９のいずれか１項に記載のシステムであって、
前記複数の印刷ジョブの割り当て分のうち特定の印刷ジョブの割り当て分は、前記特定の印刷ジョブの割り当て分、前記特定の印刷ジョブの割り当て分を印刷するために使用される印刷デバイス、前記特定の印刷ジョブの割り当て分を印刷するために使用されるその他のデバイス、および前記複数の印刷ジョブの割り当て分を印刷するために使用される１つ以上の印刷デバイスの１つ以上に関する情報を示す指示カバーページを含むシステム。
【請求項１１】
方法であって、
複数の候補の印刷デバイスと関連付けられているクライアントデバイスで分散印刷に対する要求を受け取り、
複数の印刷デバイスの各印刷デバイスは、前記分散印刷に対する要求の少なくとも一部に応えるように構成され、前記クライアントデバイスを介して、前記複数の候補の印刷デバイスのうちから前記複数の印刷デバイスを決定し、
前記クライアントデバイスを介して、前記分散印刷に対する要求を全体で満たす複数の印刷ジョブの割り当て分を決定し、
前記複数の印刷デバイスのうち指定された各印刷デバイスに対して、前記クライアントデバイスは、少なくとも、
前記指定された印刷デバイスに対して１つ以上の印刷ジョブの割り当て分を割り当て、
前記指定された印刷デバイスに対して前記割り当てられた１つ以上の印刷ジョブの割り当て分を提供することを含む方法。
【請求項１２】
複数の候補の印刷デバイスと関連付けられているクライアントデバイスの１つ以上の処理部により実行されたとき、前記クライアントデバイスに機能を実行させるコンピュータ読み取り可能な指示を含む製品であって、
分散印刷に対する要求を受け取り、
複数の印刷デバイスの各印刷デバイスは、前記分散印刷に対する要求の少なくとも一部に応えるように構成され、前記複数の候補の印刷デバイスのうちから複数の印刷デバイスを決定し、
前記分散印刷に対する要求を全体で満たす複数の印刷ジョブの割り当て分を決定し、
前記複数の印刷デバイスのうちの指定された各印刷デバイスに対して、少なくとも、
前記指定された印刷デバイスに対して１つ以上の印刷ジョブの割り当て分を割り当て、
前記指定された印刷デバイスに対して前記割り当てられた１つ以上の印刷ジョブの割り当て分を提供することを含む製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像形成装置に関する。
【背景技術】
【０００２】
印刷装置は、台数が増大し世界中の各地域に普及しており、またさらにますますネットワークに接続されるようになってきた。これらのネットワークには印刷サーバが含まれ得る。一般的に、一つ以上の文書および／または他の印刷データが印刷されるようにスケジュールされた場合、前記印刷データは直接１台の印刷デバイスに送信されるか印刷サーバに送信されるかのいずれかである。
【０００３】
前記印刷データが直接１台の印刷デバイスに送信される場合、当該印刷デバイスは、前記印刷データを印刷する印刷ジョブを仕上げる。前記印刷データが印刷サーバに送信される場合、前記印刷サーバは、印刷ジョブのため、１台以上の印刷デバイスを選択する。そして、前記印刷サーバは、印刷のため前記選択された印刷デバイスに前記印刷データを送信する。前記選択された印刷デバイスは、前記印刷データを印刷し、前記印刷ジョブを仕上げる。
【発明の概要】
【課題を解決するための手段】
【０００４】
第１の態様における方法を説明する。複数の候補の印刷デバイスと関連付けられているクライアントデバイスは、分散印刷に対する要求を受け取る。前記クライアントデバイスは、前記複数の候補の印刷デバイスのうちから複数の印刷デバイスを決定する、ここで、前記複数の印刷デバイスの各印刷デバイスは、前記分散印刷に対する要求の少なくとも一部に応えるように構成されている。前記クライアントデバイスは、複数の印刷ジョブの割り当て分を決定する、ここで、前記複数の印刷ジョブの割り当て分は、全体で前記分散印刷に対する要求を満たす。前記複数の印刷デバイスのうちの指定された各印刷デバイスに対して、前記クライアントデバイスは、少なくとも前記指定された印刷デバイスに対して１つ以上の印刷ジョブの割り当て分を割り当て、また前記指定された印刷デバイスに対して前記割り当てられた１つ以上の印刷ジョブの割り当て分を提供する。
【０００５】
別の態様におけるシステムを説明する。前記システムは、複数の候補の印刷デバイスおよびクライアントデバイスを備える。前記クライアントデバイスは、１つ以上の処理部およびデータ記憶部を含み、前記データ記憶部は、前記１つ以上の処理部により実行されたとき、前記クライアントデバイスに機能を実行させるコンピュータ読み取り可能な指示を含む。前記機能は、以下を含む―すなわち、分散印刷に対する要求を受け取り、そして前記複数の候補の印刷デバイスのうちから複数の印刷デバイスを決定し、ここで前記複数の印刷デバイスの各印刷デバイスは、前記分散印刷に対する要求の少なくとも一部に応えるように構成されている、そして前記分散印刷に対する要求を全体で満たす複数の印刷ジョブの割り当て分を決定し、そして前記複数の印刷デバイスのうちの指定された印刷デバイスに対して、少なくとも前記指定された印刷デバイスに対して１つ以上の印刷ジョブの割り当て分を割り当て、また前記指定された印刷デバイスに対して前記割り当てられた１つ以上の印刷ジョブの割り当て分を提供する機能である。
【０００６】
別の態様で製品を説明する。前記製品は、複数の候補の印刷デバイスと関連付けられているクライアントデバイスの１つ以上の処理部により実行されたとき、前記クライアントデバイスに機能を実行させるコンピュータ読み取り可能な指示を含む。前記機能は、以下を含む―すなわち、分散印刷に対する要求を受け取り、そして前記複数の候補の印刷デバイスのうちから複数の印刷デバイスを決定し、ここで前記複数の印刷デバイスの各印刷デバイスは、分散印刷に対する要求の少なくとも一部に応えるように構成されている、そして前記分散印刷に対する要求を全体で満たす複数の印刷ジョブの割り当て分を決定し、そして前記複数の印刷デバイスのうちの指定された印刷デバイスに対して、少なくとも、前記指定された印刷デバイスに対して１つ以上の印刷ジョブの割り当て分を割り当て、また前記指定された印刷デバイスに対して前記割り当てられた１つ以上の印刷ジョブの割り当て分を提供する機能である。
【０００７】
その他の態様、実施の形態、および実装例は、必要に応じて添付の図面を参照しながら以下の詳細は説明を読むことによって当業者にとって明らかになるであろう。
【図面の簡単な説明】
【０００８】
【図１】例示の実施形態に係るシステムを図にて示す。
【図２Ａ】例示の実施形態に係るコンピューティングデバイスを、ブロック図にて概略的に示す。
【図２Ｂ】例示の実施形態に係る、クライアントデバイスと複数の印刷デバイスを接続するネットワークをブロック図にて概略的に示す。
【図３】例示の実施形態に係る方法をフローチャートにて示す。
【図４】例示の実施形態に係る方法をフローチャートにて示す。
【図５】例示の実施形態に係る、印刷出力のためのシナリオに使用されるシステムを図にて示す。
【図６Ａ】例示の実施形態に係る、図５のシナリオにおけるアプリケーションに関連付けられた印刷ダイアログを示す。
【図６Ｂ】例示の実施形態に係る、分散印刷の選択がされた後の図５のシナリオにおけるアプリケーションに関連付けられた印刷ダイアログを示す。
【図６Ｃ】例示の実施形態に係る、分散印刷の選択がされた後の別の印刷ダイアログを示す。
【図６Ｄ】例示の実施形態に係る、印刷デバイスのエラーが印刷ジョブの割り当て分の印刷を中断した後の図５のシナリオにおけるアプリケーションに関連付けられた印刷ダイアログを示す。
【図６Ｅ】例示の実施形態に係る、中断された印刷ジョブの割り当て分の再割り当て後の図５のシナリオにおけるアプリケーションに関連付けられた印刷ダイアログを示す。
【図６Ｆ】例示の実施形態に係る、図５のシナリオにおける印刷デバイスの出力を示す。
【図６Ｇ】例示の実施形態に係る、図５のシナリオにおける印刷デバイスの出力を示す。
【図７Ａ】例示の実施形態に係る、図５のシナリオにおけるアプリケーションに関連付けられた印刷ダイアログを示す。
【図７Ｂ】例示の実施形態に係る、図５のシナリオにおける印刷デバイスの出力を示す。
【図７Ｃ】例示の実施形態に係る、図５のシナリオにおける印刷デバイスの出力を示す。
【図８Ａ】例示の実施形態に係る、印刷デバイスの機能表に伴った印刷出力のためのシナリオにおいて使用されるシステムを示す。
【図８Ｂ】例示の実施形態に係る、図８Ａのシナリオにおけるアプリケーションに関連付けられた印刷ダイアログを示す。
【図８Ｃ】例示の実施形態に係る、機能選択情報およびプリンター選択情報を有する図８Ａのシナリオにおけるアプリケーションに関連付けられた印刷ダイアログを示す。
【図８Ｄ】例示の実施形態に係る、図８Ａのシナリオにおける印刷デバイスの出力を示す。
【図９】例示の実施形態に係る方法をフローチャートにて示す。
【発明を実施するための形態】
【０００９】
以下の詳細な説明において、本明細書の一部を構成する添付図面を参照する。図面において、コンテキストがそうでないことを示さない限り、一般的に、同様な記号は同様な構成要素を同一とみなす。詳細な説明に記載されている例示の実施形態、図面、および請求項は、限定することを意図していない。本記載に示されている主題の範囲を逸脱することなく、他の実施形態が利用され、他の変更がされてもよい。本記載に全般的に記述され、また図面に示されている本開示の諸態様は、いろいろな異なる構成に配置し、置き換え、結合し、分割し、および設計することができ、そしてそれらの全てが本記載の中で明らかに考慮されていることは容易に理解されるであろう。
［I．概要］
【００１０】
本出願は、分散先として１つ以上の印刷デバイスを指定し、前記指定された印刷デバイスに印刷データを送信する分散印刷システムに関する。分散印刷システムは、コンピュータネットワークを介して多くの印刷デバイスに接続するように構成された、パーソナルコンピュータもしくは他のコンピューティングデバイス等のクライアントデバイスを含み得る。クライアントデバイスは、印刷デバイスが並行して印刷ジョブを完成するよう印刷デバイスの台数の何台かもしくはすべてに印刷データを分散でき、そして印刷時間を低減する。クライアントデバイスは、印刷サーバ等の中間デバイスを使用することなく、前記印刷デバイスと直接通信することができる。もっと正確に言えば、クライアントデバイス上で、ポートモニターがネットワークを介してプリンターと通信することができる。
【００１１】
クライアントデバイスは、ネットワークを介してクライアントデバイスに接続されている印刷デバイスの機能、特性、状態、および／またはその他の基準に基づいて、印刷ジョブをいくつかの印刷ジョブの割り当て分に分割することができる。例えば、ネットワークが、３台の接続された印刷デバイス、即ち印刷デバイスＡ、印刷デバイスＢ、および印刷デバイスＣを有しているとする。印刷デバイスＡは、モノクロのみで印刷でき、Ａ４サイズの用紙のみに対応し、そしてホチキス止め、両面印刷等のフイニシヤデバイスを有している。印刷デバイスＢは、モノクロのみで印刷でき、Ａ３、Ａ４、およびレターサイズの用紙に対応するが、フイニシヤデバイスを有していない。印刷デバイスＣは、モノクロもしくはカラーで印刷でき、Ａ４サイズの用紙のみに対応し、フイニシヤデバイスを有していない。そのため、当該ネットワークでは、印刷ジョブによっては、一台のプリンターのみにしか送信することができない。例えば、フィニッシングが必要な印刷ジョブは印刷デバイスＡにのみしか送信することができず、Ａ３もしくはレターサイズの用紙を使用する印刷ジョブは印刷デバイスＢにのみしか送信することができず、カラーの印刷ジョブは印刷デバイスＣにのみしか送信することができない。しかしながら、共通の機能を使用する印刷ジョブ―Ａ４用紙にモノクロ印刷―は、分割し、印刷デバイスＡ、Ｂ、およびＣの何台かもしくはすべてに送信することができ、印刷速度が高まる。
【００１２】
本例を続けて、前記分散印刷システムのクライアントデバイスが、Ａ４用紙にモノクロ印刷を必要とする印刷ジョブを有しているとする。しかしながら、印刷ジョブの送信時、印刷デバイスＢがエラー（故障）状態にあり動作できなかったとする。印刷デバイスのエラー状態の例としては、印刷デバイスが紙詰まりしている、ネットワークから切断されているおよび／またはオフラインになっている、機械上の問題がある、用紙が少ないもしくは切れている、および／またはトナー／インクが少ないもしくは切れているなどが挙げられるが、これらに限定はされない。その場合は、クライアントデバイスは、印刷デバイスＢのエラー状態を考慮に入れることができ、印刷デバイスＡおよびＣのみを使用することができ、印刷ジョブを印刷する。
【００１３】
クライアントデバイスのユーザーは、分散印刷、例えば、１つの印刷ジョブを複数の印刷デバイスを使用して印刷するか、もしくは、単独印刷、例えば、１つの印刷ジョブを１台の印刷デバイスのみ使用して印刷するかのいずれかを選択することができる。前記ユーザーは、アプリケーションごとに、例えば、すべての印刷ジョブに対してプリンタードライバーを使用して、ユーザプロフィール等、ユーザーに特有なデータの一部として、分散印刷を利用するためのデフォルト設定が可能である。また、前記ユーザは、自分が印刷ジョブを有するたびに、プリンタードライバー上でもしくはアプリケーションを介して分散印刷を可能にしたり使用不可にすることができる。
【００１４】
分散印刷について多くのオプションを提供することができる。例えば、分散印刷機能が有効になっている場合、ユーザーは、コピー部数ベースもしくはページ数ベースで印刷ジョブを分割することを選択することが可能である。印刷ジョブをコピー部数ベースで分割すると、指定のプリンターに文書のすべてのコピーを分散するが、前記印刷ジョブをページ数ベースで分割すると、印刷される文書のコピーを複数台のプリンターに分割することが可能である。例えば、印刷ジョブが、２台の同型の印刷デバイスで印刷される１０ページの文書の３部のコピーを含む場合、コピー部数ベースでは、１台の印刷デバイスがコピー１部を印刷し、もう片方の印刷デバイスが他方の２部のコピーを印刷することになるが、ページ数ベースでは、１部のコピーをプリンター間で分割することにより、各印刷デバイスは、３０ページの印刷ジョブの１５ページを印刷してもよい。
【００１５】
印刷ジョブは、等ページ数もしくは等時間ベースで分散することができる。別の例として、印刷ジョブが、２台の印刷デバイス―毎分３０ページ（ＰＰＭ）印刷可能な印刷デバイス「Ｆａｓｔｅｒ」と１５ＰＰＭ印刷可能な印刷デバイス「Ｓｌｏｗｅｒ」―により印刷される１５ページの印刷可能なアイテムのコピー２部を含むとする。等ページ数ベースでは、両方の印刷デバイスは１５ページ分の印刷ジョブを受け取り、印刷デバイスＳｌｏｗｅｒは１５ＰＰＭで１５ページを印刷する限りは、印刷ジョブは約１分間の印刷時間を要するであろう。等時間ベースでは、印刷デバイスＦａｓｔｅｒは、印刷デバイスＳｌｏｗｅｒより２倍速いので、印刷デバイスＦａｓｔｅｒは、印刷デバイスＳｌｏｗｅｒが受け取るであろう１０ページの２倍の、３０ページの印刷ジョブのうち２０ページを受け取るであろう。この場合、印刷デバイスＦａｓｔｅｒは、３０ＰＰＭで２０ページ印刷するのに４０秒かかり、印刷デバイスＳｌｏｗｅｒは１５ＰＰＭで１０ページ印刷するのに４０秒かかるので、印刷時間は、低減されて約４０秒（１分の２／３）になるであろう。
【００１６】
分散印刷ジョブは、また、印刷されたあと印刷ジョブの集約方法に関する指示を含み得る。例えば、上記の等時間例において、印刷デバイスＦａｓｔｅｒは、１５ページの印刷可能なアイテムのコピー２部に係わる印刷ジョブの２０ページを印刷する、また印刷デバイスＳｌｏｗｅｒは残りの１０ページを印刷する。そして、クライアントデバイスは、組み合わされた印刷ジョブの集約方法―例えば、全体のコピー一部と２つ目のコピーの一部を印刷デバイスＦａｓｔｅｒから入手し、次に２つ目のコピーの残りを印刷デバイスＳｌｏｗｅｒから入手する―を示す指示シートを表示することができる、および／または一方もしくは両方の印刷デバイスが指示シートを印刷することができる。分散印刷に関するその他のオプションも同様に可能である。
【００１７】
本明細書に記載された分散印刷システムは、クライアントデバイスが、より高速な印刷を提供するために多くの印刷デバイスを使用可能にする。さらに、前記分散印刷システムのクライアントデバイスのみが分散印刷に特有なソフトウェアを有しているので、印刷サーバを含まない分散印刷の解決方法ソリューションを実行すると、より柔軟性がある。分散印刷の機能を拡張しおよび／または分散印刷ソフトウェアの課題を修正する場合、クライアントデバイスのみが更新されるので、分散印刷に関する印刷サーバのソフトウェアの使用を無くすことにより、ソフトウェアの分散を平易化できる。
［システムの例］
【００１８】
図１は、例示の実施形態に係るシステム１００をブロック図にて概略的に示す。システム１００は、クライアントデバイス１１０ａ、１１０ｂ、１１０ｃ、１１０ｄ、１１０ｅ、１１０ｆ、１１０ｇ、１１０ｈ、および１１０ｉ、とネットワーク１３０を介して相互に接続されている印刷デバイス１２０ａ、１２０ｂ、１２０ｃ、１２０ｄ、１２０ｅ、１２０ｆ、および１２０ｇを含み得る。例によっては、システム１００は、図１に示されているより多い、少ないおよび／または異なった種類のクライアントデバイスおよび／または印刷デバイスを有し得る。
【００１９】
例示の実施形態において、いくつかのもしくは全ての印刷デバイス１２０ａ乃至１２０ｇは、１つ以上の、恐らく異なるネットワークプロトコルを介して、いくつかのもしくは全てのクライアントデバイス１１０ａ乃至１１０ｉに接続することができる。データは、クライアントデバイス、印刷デバイス、およびネットワーク１３０間の有線および／または無線リンクを介して、クライアントデバイス１１０ａ乃至１１０ｉおよび印刷デバイス１２０ａ乃至１２０ｇ間で送信することができる。システム１００のデバイス間の各個別のデータ送信の形式は、テキスト形式、画像フォーマット、拡張マークアップ言語（ＸＭＬ）、データベースのテーブル、または他の独自のもしくはフラットファイル形式を含む１つ以上の各種のさまざまな形式を含み得る。
【００２０】
前記クライアントデバイスと前記印刷デバイス間の通信は、印刷のためクライアントデバイス１１０ａ乃至１１０ｉが印刷デバイス１２０ａ乃至１２０ｇに印刷ジョブのためのデータおよび／または印刷ジョブの割り当て分を送信すること、および前記印刷デバイスのエラーもしくはその他の状態、例えば、待機中、印刷中、スリーピング、紙詰まり、用紙少量もしくは用紙切れ、トナー／インク少量もしくはトナー／インク切れ等に関して前記クライアントデバイスに通知するために、印刷デバイス１２０ａ乃至１２０ｇがクライアントデバイス１１０ａ乃至１１０ｉに警告、ステータス、エラー、および／または他のメッセージを送信することを含み得る。
１つ以上のクライアントデバイスと１つ以上の印刷デバイスの間のその他の通信もまた可能である。
【００２１】
図２Ａは、例示の実施形態に係る、コンピューティングデバイス２００をブロック図にて概略的に示す。実施形態によっては、コンピューティングデバイス２００は、本明細書に記載されたクライアントデバイス１１０ａ乃至１１０ｉ、２２０、５１０、および８１０、印刷デバイス１２０ａ乃至１２０ｇ、５２０ａ乃至５２０ｅ、８２０ａ、８２０ｂ、および８２０ｃ、方法３００、４００、および９００、アプリケーション５１２および８１２、ダイアログ６１０および６１０ａの１つ以上の機能、および／または本明細書に記載されたシナリオ５００および８００に関連する機能を実行するように構成され得る。
【００２２】
コンピューティングデバイス２００は、１つ以上の入力デバイス２０２、１つ以上の出力デバイス２０４、１つ以上の処理部２０６および記憶部２０８を含み得る。入力デバイス２０２は、ユーザー入力デバイス、ネットワーク入力デバイス、センサ、および／または他の種類の入力デバイスを含み得る。例えば、入力デバイス２０２は、タッチスクリーン、キーボード、キーパッド、コンピュータマウス、トラックボール、ジョイスティック、カメラ、音声認識モジュール、および／またはその他の同様なデバイス等のユーザー入力デバイスを含み得る。ネットワーク入力デバイスは、有線ネットワークのレシーバ、および／またはイーサネツトトランシーバ、ユニバーサル・シリアル・バス（ＵＳＢ）トランシーバ等のトランシーバ、もしくはツイストペア線、同軸ケーブル、光ファイバリンク、もしくはネットワーク１３０の有線部分等の有線ネットワークへの同様な物理的接続を経由して通信するように構成可能な同様のトランシーバ、および／または無線ネットワークレシーバおよび／またはブルートゥーストランシーバ、ジグビートランシーバ、Ｗｉ‐Ｆｉトランシーバ、ＷｉＭＡＸトランシーバ、無線広域ネットワーク（ＷＷＡＮ）トランシーバ等のトランシーバ、および／またはネットワーク１３０の無線部分等の無線ネットワークを経由して通信するように構成可能なその他の同様な種類の無線トランシーバを含み得る。センサは、コンピューティングデバイス２００の環境において状態を測定するように構成されているデバイスを含み、前記環境に関するデータを提供することができ、そのようなデータは位置データ、速度（速さ、方向）データ、加速度データ、およびその他のコンピューティングデバイス２００についての前記環境に関するデータを含むが、これらに限定されない。センサの例としては、ＧＰＳセンサ、位置センサ、ジャイロスコープ、加速度計、磁力計、カメラ、光センサ、赤外線センサ、およびマイクロホンが挙げられるが、これらに限定されない。その他の入力デバイス２０２もまた可能である。
【００２３】
出力デバイス２０４は、ユーザー表示デバイス、可聴出力デバイス、ネットワーク出力デバイス、および／または他の種類の出力デバイスを含み得る。ユーザー表示デバイスは、１つ以上の印刷構成要素、液晶表示（ＬＣＤ）、発光ダイオード（ＬＥＤ）、レーザ、デジタル光処理（ＤＬＰ）技術を使用する表示、陰極線管（ＣＲＴ）、電球、および／またはその他の同様なデバイスを含み得る。可聴出力デバイスは、スピーカ、スピーカジャック、音声出力ポート、音声出力デバイス、ヘッドホン、イヤホン、および／またはその他の同様なデバイスを含み得る。ネットワーク出力デバイスは、有線ネットワークのトランスミッタ、および／またはイーサネツトトランシーバ、ユニバーサル・シリアル・バス（ＵＳＢ）トランシーバ等のトランシーバ、もしくはツイストペア線、同軸ケーブル、光ファイバリンク、もしくはネットワーク１３０の有線部分等の有線ネットワークへの同様な物理的接続を経由して通信するように構成可能な同様のトランシーバ、および／または無線ネットワークトランスミッタおよび／またはブルートゥーストランシーバ、ジグビートランシーバ、Ｗｉ‐Ｆｉトランシーバ、ＷｉＭＡＸトランシーバ、無線広域ネットワーク（ＷＷＡＮ）トランシーバ等のトランシーバ、および／またはネットワーク１３０の無線部分等の無線ネットワークを経由して通信するように構成可能なその他の同様な種類の無線トランシーバを含み得る。他の種類の出力デバイスは、振動デバイス、触覚フィードバックデバイス、および非可視光発光デバイス―例えば、赤外線もしくは紫外線を発光するデバイス―を含み得る、しかしこれらに限定されない。その他の出力デバイス２０４もまた可能である。
【００２４】
処理部２０６は、１つ以上の汎用プロセッサ、中央処理装置（ＣＰＵ）、ＣＰＵコア、および／または１つ以上の専用プロセッサ（例えば、グラフィックス・プロセッシング・ユニット（ＧＰＵ）、デジタルシグナルプロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレー（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）等）を含み得る。処理部２０６は、記憶部２０８に格納されているコンピュータ読み取り可能なプログラム指示２１０および／または本明細書に記載されたようなその他の指示を実行するように構成することができる。
【００２５】
記憶部２０８は、データおよび／または指示を格納するように構成された非一時的で機械読み取り可能な記憶装置であり得る。特に、記憶部２０８は、処理部２０６により実行された場合、以下に限定はされないが、本明細書に記載されたデバイス、ネットワーク、方法、機能、およびシナリオの機能等の機能をコンピューティングデバイスに実行させることができる機械読み取り可能な指示２１０を格納することができる。
【００２６】
図２Ｂは、例示の実施形態に係る、クライアントデバイス２２０と複数の印刷デバイス２４０ａ、２４０ｂ…２４０ｎを接続するネットワーク１３０をブロック図にて概略的に示す。クライアントデバイス２２０は、入力デバイス２０２、出力デバイス２０４、処理部２０６、および記憶部２０８を有するコンピューティングデバイス２００の例である。クライアントデバイス２２０の記憶部２０８は、機械読み取り可能な指示および／または、以下に限定されないが、プリンタードライバー２３２、１つ以上のアプリケーション２３４、スプーラ２３６、およびポートモニター２３８等のソフトウェアのためのデータを格納する。実施形態によっては、図２Ｂに示されているより少ないもしくは多くの複数の印刷デバイスをネットワーク１３０に、従ってクライアントデバイス２２０に接続することができる。
【００２７】
プリンタードライバー２３２は、印刷データ―例えば、印刷される情報―を、出力として前記印刷データを印刷するために、クライアントデバイス２２０により使用される形式から１つ以上の印刷デバイス２４０ａ、２４０ｂ…２４０ｎにより使用可能な形式に変換する１つ以上の印刷デバイス２４０ａ、２４０ｂ…２４０ｎとクライアントデバイス２２０が（ネットワーク１３０を介して）通信できるように構成することができる。実施形態によっては、プリンタードライバー２３２は、ダイアログもしくはその他のユーザーインターフェースオブジェクト等のユーザーインターフェースを提供して、例えば、前記印刷ジョブを印刷するための１つ以上の印刷デバイス、印刷されるコピー、印刷の機能、前記印刷ジョブに対するフィニッシング等の印刷データを有する印刷ジョブを印刷することに関連付けて、クライアントデバイス２２０のユーザーによる等で、各種パラメータのレビュー、選択および／または変更を可能とする。実施形態によっては、印刷デバイス２４０ａ、２４０ｂ…２４０ｎは、異なる種類の印刷デバイスであり得る―例えば、異なる製造メーカー、異なる機種、および／または異なるバージョンのソフトウェア／ファームウェア。当該実施形態においては、クライアントデバイス２２０は、クライアントデバイス２２０に接続されるそれぞれ異なる種類の印刷デバイスごとに少なくとも一つのプリンタードライバーを有し、複数のプリンタードライバー２３２を有し得る。
【００２８】
アプリケーション２３４は、クライアントデバイス２２０により実行された場合、クライアントデバイス２２０にさまざまなタスクの実行を可能にするソフトウェアであり得る。タスクの例としては、以下に限定されないが、ワードプロセッシング、文書レビュー、インターネット等ネットワークとの情報交換、画像の再生および／または生成、音声および／または映像情報、ソフトウェアの開発、ファイナンシャル・プランニング、スプレッドシートの操作、計算、ゲーム、通信、およびコンピュータの管理が挙げられる。スプーラ２３６は、クライアントデバイス２２０により実行された場合、一時的に印刷データを格納し、および印刷デバイスが稼働していて印刷データを処理する（印刷する）ために待っている場合、印刷デバイス２４０ａ、２４０ｂ…２４０ｎのうちの１台等の印刷デバイスに印刷データを送信することにより印刷ジョブを整理するように構成されているソフトウェアであり得る。
【００２９】
ポートモニター２３８は、クライアントデバイス２２０により実行された場合、スプーラ２３６、プリンタードライバー２３２、およびＩ／Ｏポートのハードウェアにアクセスするカーネルモードのポートドライバーとの間で通信経路を構築するソフトウェアであり得る。ポートモニター２３８は、また、プリンターのポートを管理し構成することができる。プリンターのポートは、スプーラ２３６により管理される印刷ジョブの印刷キューと印刷デバイス、例えば、印刷デバイス２４０ａ、２４０ｂ…２４０ｎのうちの１台との間の物理的接続であり得る。
【００３０】
ポートモニター２３８は、次に、また、１つ以上の種類のポートの１つ以上のインスタンスに対応することができる。複数のポートを介する複数のプリンターデバイスを象徴する印刷キューに対して、スプーラ２３６は、次に、最初に使用可能なポートもしくは特定のポートに印刷ジョブを送信することができる。ポートモニターが、前記特定の（もしくは最初に使用可能な）ポートがふさがっているもしくはエラー状態にあることを示す場合は、スプーラ２３６は、前記特定のポートの印刷キューに前記印刷ジョブを復帰させるかもしくはポートモニター２３８によりサポートされているポートの別の印刷キューに前記印刷ジョブを追加することができる。実施形態によっては、ポートモニター２３８は、複数のポートの間で印刷ジョブを分割し、効果的に前記印刷ジョブを複数の印刷デバイスに送信するように構成することができる。
【００３１】
他の実施形態においては、プリンタードライバー２３２は、印刷ジョブが単独印刷、すなわち１台の印刷デバイスのみでの印刷により印刷されるかどうか、および分散印刷、すなわち、複数の印刷デバイスにより実行され得る印刷により印刷がされるかどうかを許可するように構成することができる。記憶部２０８に格納されたデータは、単独印刷もしくは分散印刷のいずれかに対するデフォルト設定を格納することができ、そして当該データは、デフォルト設定―例えば、プリンタードライバー２３２に対するユーザーインターフェースのためのデフォルト設定―を決定するために使用され得る。機能、特性、および印刷デバイス２４０ａ、２４０ｂ…２４０ｎ、デフォルトのプライマリ印刷デバイスおよび／またはデフォルトの代替印刷デバイス、分散印刷中に使用されるデフォルトの印刷デバイスのグループ―例えば、分散印刷ジョブに対する印刷デバイス２４０ａおよび２４０ｎを含むグループの使用―の選択に関連するその他のデータも記憶部２０８に格納することができる。
［III．分散印刷方法の例］
【００３２】
図３は、例示の実施形態に係る方法３００をフローチャートにて示す。方法３００は、複数のプリンターに接続されているコンピューティングデバイス―例えば、コンピューティングデバイス２００もしくはクライアントデバイス２２０―により実行され得る印刷ジョブに対する分散印刷の方法である。
【００３３】
方法３００は、ブロック３１０で開始することができ、分散印刷（単独印刷の使用とは対照的に）を用いて印刷ジョブの印刷をするように選択され得る。例えば、図２Ｂのプリンタードライバー２３２等のプリンタードライバーとの情報交換を可能にして、コンピューティングデバイスのユーザーが、グラフィカル・ユーザー・インターフェース（ＧＵＩ）を介して選択をすることができる。プリンタードライバー用のＧＵＩは、コンピューティングデバイスのＧＵＩを用いて開くことができ、「印刷」もしくは図２Ｂのアプリケーション２３４等、他のソフトウェアアプリケーションのオプションを選択可能にする。
【００３４】
ブロック３２０では、前記コンピューティングデバイスは、接続されている印刷デバイスを識別でき、そして前記接続されている印刷デバイスに関する印刷デバイス関連情報を取得する。前記印刷デバイス関連情報には、以下に限定されないが、状態情報―例えば、待機、稼働中、紙切れ、トナー少量／切れ等―、印刷デバイスの配置位置、印刷デバイスの製造メーカー、印刷デバイスの機種、印刷デバイスのファームウェア、印刷デバイスの機能情報、および印刷デバイスの機能の情報が挙げられる。
【００３５】
ブロック３３０では、前記コンピューティングデバイスは、分散印刷ジョブを印刷するための候補の印刷デバイスを前記接続されている印刷デバイスから選択することができる。実施形態によっては、接続されている印刷デバイスは、印刷デバイス関連情報の観点に基づいて―例えば、印刷デバイスの状態、印刷デバイスの機種／製造メーカー／ファームウェア、印刷デバイスの配置位置、所定のユーザーの基準等に基づいて―フィルタにかけて選別され得る。
【００３６】
前記コンピューティングデバイスは、前記分散印刷ジョブを印刷する際の使用に対して実行可能な選択のために、おそらく選別の後、前記接続されている印刷デバイスに関する前記印刷デバイス関連情報のいくつかもしくは全てを提供できる。例えば、前記コンピューティングデバイスは、ブロック３１０のＧＵＩを用いて、前記印刷デバイス関連情報を提供できる。そして、前記ＧＵＩは、候補の印刷デバイスをとして使用するため（もしくは使用しないため）接続されている印刷デバイスを選択するために使用され得る。候補の印刷デバイスは、前記分散印刷ジョブの印刷ジョブの割り当て分を印刷するよう指定される印刷デバイスであり得る。実施形態によっては、前記コンピューティングデバイスは、候補の印刷デバイスを、前記接続されている印刷デバイス（おそらく選別されている）の間から候補の印刷デバイスとして選択できる―これらの実施形態の特定の場合では、印刷デバイス関連情報は提示されない場合がある。
【００３７】
ブロック３４０では、前記コンピューティングデバイスは、前記分散印刷ジョブを印刷ジョブの割り当て分に分割する方法を規定し、もしくはそうでなければ決定することができる。前記分散印刷ジョブは、取得した前記印刷デバイス関連情報に応じておよび／またはユーザーの選択によって―例えば、ユーザーの選択は、ブロック３１０、およびブロック３３０のＧＵＩ等のＧＵＩを介してされ得る―分割され得る。例えば、前記分散印刷ジョブは、プリンターごとに同数のページとして分割され得る―たとえば、前記分散印刷ジョブの全体が１２０ページ有り４台の印刷デバイスの間で印刷される場合、前記分散印刷ジョブは、３０ページの４つの等しい大きさの印刷ジョブの割り当て分に分割され得る。
【００３８】
別の例として、前記印刷デバイス関連情報が、毎分当りの出力ページ数（ＰＰＭ）もしくは同様な情報を含む場合、前記分散印刷ジョブは、等しい推定の印刷時間くらいに分割され得る。下記の数式（１）は、各印刷デバイスがほぼ等しい時間で印刷するように、毎分当りの出力ページ数ベースで、ＮＰページ有る分散印刷ジョブをＰＲ台の印刷デバイスに分割するのに使用することができる。
2016136387.tif 000003
(1)
ここで、
Ｐｉ＝印刷デバイスｉに対する印刷ジョブの割り当て分のページ数、ここで、ｉε［１、ＰＲ］
ＰＲ＝分散印刷ジョブを印刷する印刷デバイス数
ＮＰ＝分散印刷ジョブのページ数
ＰＰＭｉ＝印刷デバイスｉの毎分当りの出力ページ数
【００３９】
比率
2016136387.tif 000004
は、印刷デバイスｉに対するページボリューム比率と称することができ、分子のＰＰＭｉは、複数の印刷デバイス１…ＰＲの特定の印刷デバイスｉに対する単位時間当たりの特定の出力ページ数であり、分母のΣＰＰＭは、複数の印刷デバイス１…ＰＲに対する単位時間当たりの出力ページ数の総和である。
【００４０】
例えば、上記の１２０ページの分散印刷ジョブは、以下のＰＰＭ値１５、２０、２５、３０を有する４台のプリンターの間で分割予定であったとする。そして、数式（１）において、ＰＲ＝４、ＮＰ＝１２０、ＰＰＭ１＝１５、ＰＰＭ２＝２０、ＰＰＭ３＝２５、およびＰＰＭ４＝３０、従ってΣＰＰＭ＝９０である。そして、数式（１）で判定される印刷デバイス１（１５ＰＰＭの速さで印刷する）に対する印刷ジョブの割り当て分のページ数は、Ｐ１＝１２０＊（１５／９０）＝２０ページである。同様に、各速さ２０、２５、３０ＰＰＭで印刷する各印刷デバイス２、３、および４に対しては、数式（１）で判定される各印刷デバイスに対する印刷ジョブの割り当て分の各ページ数は、Ｐ２＝１２０＊（２０／９０）＝２７ページ（丸めて）、Ｐ３＝１２０＊（２５／９０）＝３３ページ（丸めて）、およびＰ４＝１２０＊（３０／９０）＝４０ページである。各印刷デバイスの各印刷ジョブの割り当て分を印刷する推定時間は、約１．３５分である―印刷デバイス１は、２０ページ／１５ＰＰＭ＝１．３３分掛かると推定され、印刷デバイス２は、２７／２０＝１．３５分掛かると推定され、印刷デバイス３は、３３／２５＝１．３２分掛かると推定され、および印刷デバイス４は、４０／３０＝１．３３分掛かると推定される。このように、前記例示の分散印刷ジョブは、全ての印刷デバイスで約１．３５分印刷した後、ほぼ同じ時間で完了するであろう。
【００４１】
印刷ジョブの割り当て分は、コピー部数による仕切りで分割され得る。例えば、１０ページの文書の７部のコピー（全部で７０ページ）を有する分散印刷ジョブが、（ａ）ページ数による仕切りおよび（ｂ）コピー部数による仕切りで、２台の印刷デバイス間でできるだけ同等に分割される予定であったとする。例（ａ）では、前記分散印刷ジョブがページ数による仕切りで分割されたので、各印刷デバイスは、７０／２＝３５ページを印刷するであろう。例（ｂ）では、前記分散印刷ジョブがコピー部数による仕切りで分割されたので、１台の印刷デバイスは、文書の４０ページすなわち４部のコピーを印刷するであろう、そして他方の印刷デバイスは、３０ページすなわち３部のコピーを印刷するであろう。
【００４２】
印刷ジョブの割り当て分は、ブロック３１０、３３０および当該ブロックのコンテキストの中で上述したＧＵＩ等のＧＵＩを介して分割され得る。印刷ジョブの割り当て分は、ページ数ベース、コピー部数ベース、もしくは印刷ボリューム比率ベースで割り当てることができる。印刷ボリューム比率は、分散印刷ジョブの印刷ジョブの割り当て分のパーセンテージすなわち比率ベース基準であり得る。例えば、３０ページの文書の１０部のコピーで合計３００ページの分散印刷ジョブが、ＧＵＩを介して、３台の印刷デバイスの間で割り当てられる予定であったとする。そして、各印刷ジョブの割り当て分に対するページ数、各印刷ジョブの割り当て分に対するコピー部数、もしくは各印刷ジョブの割り当て分に対するページ数の印刷ボリューム比率／パーセンテージを選択するためにＧＵＩが使用されるであろう。本例では、１５０、９０、および６０ページ、５、３、２部のコピー、もしくは５０％、３０％、および２０％の印刷ボリューム比率の印刷ジョブの割り当て分を同等に指定するのにＧＵＩが使用されるであろう。分散印刷ジョブを印刷ジョブの割り当て分に分割するその他の方法もまた可能である。
【００４３】
ブロック３５０では、前記コンピューティングデバイスは、ブロック３４０で明示したように、前記分散印刷ジョブを印刷ジョブの割り当て分に分割することができる。
【００４４】
ブロック３６０では、前記コンピューティングデバイスは、前記印刷ジョブの割り当て分を、スプーラ２３６等の前記コンピューティングデバイスのスプーラに送信することができる。
【００４５】
ブロック３７０では、前記スプーラは、ポートモニター２３８等の前記コンピューティングデバイスのポートモニターに前記印刷ジョブの割り当て分を送信する。前記ポートモニターは、前記分散印刷ジョブを印刷するためにブロック３３０で選択された前記各印刷デバイスに前記各印刷ジョブの割り当て分を送信することができる。
【００４６】
ブロック３８０では、各印刷デバイスは、自身の各印刷ジョブの割り当て分を印刷することができる、そうして前記分散印刷ジョブは前記選択された印刷デバイスにより完了され得る。
【００４７】
実施形態によっては、ブロック３７０で、前記スプーラは、前記印刷ジョブの割り当て分を直接前記印刷デバイスに送信できる―すなわち、ブロック３８０は実行されない。別の実施形態では、ブロック３６０で、前記コンピューティングデバイスは、前記印刷ジョブの割り当て分を直接前記ポートモニターに送信できる―すなわち、ブロック３７０は実行されない。さらに別の実施形態では、ブロック３６０で、前記コンピューティングデバイスは、前記印刷ジョブの割り当て分を直接前記印刷デバイスに送信できる―例えば、ブロック３７０およびブロック３８０は実行されない。
【００４８】
図４は、例示の実施形態に係る方法４００のフローチャートを示す。方法４００は、複数のプリンターに接続されたコンピューティングデバイス―すなわち、コンピューティングデバイス２００もしくはクライアントデバイス２２０―によって実行され得る印刷ジョブの分散印刷のための方法である。
【００４９】
方法４００は、ブロック４１０において開始することができ、方法３００および図３のブロック３１０のコンテキストで上述したように、分散印刷を用いて印刷ジョブを印刷するために選択がされ得る。
【００５０】
ブロック４２０では、前記コンピューティングデバイスは、接続されている印刷デバイスを指定することができ、方法３００および図３のブロック３２０のコンテキストで上述したように、前記接続されている印刷デバイスに関する印刷デバイス関連情報を取得する。
【００５１】
ブロック４３０では、前記コンピューティングデバイスは、方法３００および図３のブロック３３０のコンテキストで上述したように、前記接続されている印刷デバイスから前記分散印刷ジョブを印刷するための候補の印刷デバイスを選択することができる。
【００５２】
ブロック４４０では、前記コンピューティングデバイスは、方法３００および図３のブロック３４０のコンテキストで上述したように、前記分散印刷ジョブを印刷ジョブの割り当て分に分割する方法を指定し、もしくはそうでなければ決定することができる。
【００５３】
ブロック４５０では、前記コンピューティングデバイスは、スプーラ２３６等、前記印刷デバイスのスプーラに前記分散印刷ジョブを送信することができる。
【００５４】
ブロック４６０では、前記スプーラは、ポートモニター２３８等、前記コンピューティングデバイスのポートモニターに前記分散印刷ジョブを送信することができる。前記ポートモニターは、次に、ブロック４４０で指定されたように前記分散印刷ジョブを印刷ジョブの割り当て分に分割することができる。
【００５５】
ブロック４７０では、前記スプーラは、方法３００および図３のブロック３７０のコンテキストで上述したように、前記印刷ジョブの割り当て分を前記コンピューティングデバイスのポートモニターに送信することができる。
【００５６】
ブロック４８０では、各印刷デバイスは、次に、自身の各印刷ジョブの割り当て分を印刷することができ、方法３００および図３のブロック３８０のコンテキストで上述したように、そうして、前記選択された印刷デバイスによって前記分散印刷ジョブが完了され得る。
【００５７】
方法３００と方法４００を比較すると、方法３００では、前記コンピューティングデバイスは、前記分散印刷ジョブを印刷ジョブの割り当て分に分割し、次に前記印刷ジョブの割り当て分をスプールする、一方、方法４００では、前記コンピューティングデバイスは、前記分散印刷ジョブをスプールし、前記スプーラは前記ポートモニター上に前記分散印刷ジョブを転送し、そして前記ポートモニターが前記分散印刷ジョブを印刷ジョブの割り当て分に分割する。
［IV．分散印刷シナリオの例］
【００５８】
図５は、例示の実施形態に係る、印刷出力のためのシナリオ５００において使用されるシステムを図にて示す。シナリオ５００は、ネットワーク５３０を介してすべて相互に接続されたクライアントデバイス５１０および印刷デバイス５２０ａ、５２０ｂ、５２０ｃ、５２０ｄ、および５２０ｅを含むシステムを伴う。
【００５９】
シナリオ５００では、クライアントデバイス５１０は、ソフトウェアアプリケーション５１２を実行して、前記シナリオ中で２回印刷される「Ｄｏｃ１」と題する４０ページの文書を扱う。シナリオ５００の最初では、クライアントデバイス５１０のユーザーは、「コピー９部」の分散印刷ジョブとして、文書Ｄｏｃ１の９部のコピーを印刷したいとする。シナリオ５００の後の方で、クライアントデバイス５１０のユーザーは、「コピー１２部」の分散印刷ジョブとして、文書Ｄｏｃ１の１２部のコピーを印刷したいとする。
【００６０】
図５は、各印刷デバイスの推定印字率値を示し、印刷デバイス５２０ａ、５２０ｂ、および５２０ｃは、それぞれ５０ＰＰＭの速さで印刷でき、印刷デバイス５２０ｄは５ＰＰＭの速さで印刷でき、そして印刷デバイス５２０ｅは２５ＰＰＭの速さで印刷できる。下の表１は、印刷デバイス５２０ａ乃至５２０ｅのいろいろな組み合わせが、３６０ページ印刷するのにどれだけかかるかの推定値を含む。
2016136387.tif 000005
【００６１】
従って、シナリオ５００においては、全５台の印刷デバイスを使用して分散印刷すると、３６０ページの印刷ジョブを印刷する場合の推定増速は、最速印刷デバイス単独に比べて３．６倍まで、および最遅単独印字率に比べて３６倍までとなる。
【００６２】
クライアントデバイス５１０のユーザーが、文書Ｄｏｃ１を印刷するためにアプリケーション５１２を使用してシナリオ５００が続行する。図６Ａは、例示の実施形態に係る、シナリオ５００のアプリケーション５１２に関連付けられた印刷ダイアログ６１０を示す。ダイアログ６１０は、分散印刷のための選択６１２を含む―クライアントデバイス５１０のユーザーは、選択６１２を行い、分散印刷を利用して要求されている４０ページの文書Ｄｏｃ１のコピー９部を印刷する。
【００６３】
図６Ｂは、例示の実施形態に係る、分散印刷の選択６１２がなされた後のシナリオ５００におけるアプリケーション５１２に関連付けられた印刷ダイアログ６１０を示す。分散印刷の選択６１２がされたことに応じて、プリンタードライバー、アプリケーション５１２、および／またはその他のクライアントデバイス５１０上で実行しているソフトウェアはダイアログ６１０を更新することができ、ダイアログ６１０は、少なくともページ分散選択６１４および６１６、印刷ボリューム比率設定６１８、６２０、６２２、６２４、および６２６、ならびに通知６２８を表示し、選択し、および／または変更するように構成されている。
【００６４】
ダイアログ６１０は、印刷ジョブ全体の印刷ボリューム比率すなわちパーセンテージに基づいて印刷デバイスへの分散印刷ジョブの割り当てを可能にする。当該印刷ボリューム比率は、各印刷デバイスに対して０から１００に指定され得る。一つの極端な場合、印刷デバイスに対する印刷ボリューム比率が０に設定された場合、前記印刷デバイスには分散印刷ジョブの印刷ジョブの割り当て分が割り当てられない。もう一つの極端な場合、印刷デバイスに対する印刷ボリューム比率が１００に設定された場合、前記印刷デバイスには分散印刷ジョブの全体が割り当てられる―すなわち、前記印刷デバイスは、印刷ジョブの単独印刷をするよう割り当てられる。０から１００の間に印刷ボリューム比率値を印刷デバイスに割り当てることは、前記印刷デバイスが分散印刷ジョブの印刷ジョブの割り当て分を印刷することになることを示す。印刷デバイスすべてに対する印刷ボリューム比率の合計値である総計は１００になるはずで、印刷デバイスへの分散印刷ジョブ全体の割り当てを示す。実施形態によっては、ダイアログ６１０は、すべての印刷デバイスに対する前記印刷ボリューム比率の合計値が１００に設定されるまで分散印刷ジョブの印刷を開始しないように構成され得る。
【００６５】
シナリオ５００において、前記コピー９部の分散印刷ジョブは３６０ページある。図６Ｂで示されるように、ダイアログ６１０は、各印刷ボリューム比率設定６１８および６２０を介して、印刷デバイス５２０ａおよび５２０ｂのそれぞれにコピー９部の分散印刷ジョブの４５％を割り当て、各印刷ボリューム比率設定６２２および６２４を介して、各印刷デバイス５２０ｃおよび５２０ｄに対してコピー９部の分散印刷ジョブのどの部分も割り当てず、つまり０％とし、印刷ボリューム比率設定６２６を介して、印刷デバイス５２０ｅに対してコピー９部の分散印刷ジョブの９％を割り当てるのに使用されている。通知６２８は、コピー９部の分散印刷ジョブの９９％が印刷デバイスに割り当てられ、１％が割り当てられずに残っているという情報を表示する。
【００６６】
図６Ｃは、例示の実施形態に係る、分散印刷選択６１２がされた後の印刷ダイアログ６１０ａを示す。印刷ダイアログ６１０ａは、各印刷デバイス５２０ａ、５２０ｂ、５２０ｃ、５２０ｄ、および５２０ｅに対するページ数設定６１８ａ、６１８ｂ、６１８ｃ、６１８ｄ、および６２０ａを可能とする印刷ダイアログ６１０のバリエーションである。ダイアログ６１０ａは、印刷デバイスに対してページ数ベースでの分散印刷ジョブの割り当てを可能とする。実施形態によっては、ダイアログ６１０ａは、全ての印刷デバイスに対する有効なページ数設定の合計値が前記分散印刷ジョブの総ページ数と等しくなるまで、前記コピー９部の分散印刷ジョブの印刷を開始しないよう構成され得る。
【００６７】
図６Ｃに示すように、ダイアログ６１０ａは、各ページ数設定６１８ａおよび６２０ａを介して、印刷デバイス５２０ａおよび５２０ｂのそれぞれに前記コピー９部の分散印刷ジョブの１６２ページを割り当て、各ページ数設定６２２ａおよび６２４ａを介して、各印刷デバイス５２０ｃおよび５２０ｄに対してコピー９部の分散印刷ジョブのどの部分も割り当てず、つまり０ページとし、ページ数設定６２６ａを介して、印刷デバイス５２０ｅに対してコピー９部の分散印刷ジョブの３５ページを割り当てるのに使用され得る。通知６２８ａは、分散印刷ジョブの３５９ページが印刷デバイスに割り当てられており、１ページが割り当てられずに残っているという情報を表示する。
【００６８】
シナリオ５００は、ダイアログ６１０が、前記コピー９部の分散印刷ジョブの全体（１００％）の最初の分割を３台の印刷デバイスに指定して―すなわち、印刷デバイス５２０ａに４５％、印刷デバイス５２０ｂに４５％、および印刷デバイス５２０ｅに１０％―続行する。そして、前記コピー９部の分散印刷ジョブの全体を分割した後（すなわち、一旦、印刷ボリューム比率の合計が１００に設定される）、ダイアログ６１０は、例えば、ダイアログ６１０の下方左の「印刷」ボタンの選択により、前記コピー９部の分散印刷ジョブの印刷を開始するのに使用され得る。
【００６９】
一旦印刷を開始するよう指示されると、クライアントデバイス５１０は、前記コピー９部の分散印刷ジョブを印刷ジョブの割り当て分に分割するための方法３００もしくは方法４００のいずれかの手法を使用して、前記分散印刷ジョブの割り当てられたパーセンテージを印刷するために印刷デバイス５２０ａ、５２０ｂ、および５２０ｅに印刷ジョブの割り当て分を提供する。シナリオ５００において、印刷デバイス５２０ａは、前記コピー９部の分散印刷ジョブの最初の４５％（すなわち、１６２ページ）の印刷ジョブの割り当て分を受け取り、印刷デバイス５２０ｂは、前記コピー９部の分散印刷ジョブの２番目の４５％の印刷ジョブの割り当て分を受け取り、印刷デバイス５２０ｅは、前記コピー９部の分散印刷ジョブの残りの１０％（すなわち、３６ページ）の印刷ジョブの割り当て分を受け取る。当該各印刷ジョブの割り当て分の受け取り後、印刷デバイス５２０ａ、５２０ｂ、および５２０ｅは、当該各印刷ジョブの割り当て分の印刷を開始する。
【００７０】
シナリオ５００において、前記コピー９部の分散印刷ジョブの最初の１６２ページは、ダイアログ６１０を介して印刷ジョブの割り当て分が割り当てられた最初の印刷デバイスである印刷デバイス５２０ａに割り当てられ、前記コピー９部の分散印刷ジョブの２番目の１６２ページは、ダイアログ６１０を介して印刷ジョブの割り当て分が割り当てられた２番目の印刷デバイスである印刷デバイス５２０ｂに割り当てられ、前記コピー９部の分散印刷ジョブの最後の３６ページは、ダイアログ６１０を介して印刷ジョブの割り当て分が割り当てられた３番目すなわち最後の印刷デバイスである印刷デバイス５２０ｅによって印刷されるよう割り当てられる。他のシナリオにおいては、ダイアログ６１０および／またはダイアログ６１０ａは、印刷デバイスへの印刷ジョブの割り当て分の順序の割り当てを指定するように構成され得る。例えば、ダイアログ６１０および／またはダイアログ６１０ａは、印刷ジョブの割り当て分「１」、「２ａ」、および「３」を各印刷デバイス５２０ｅ、５２０ａ、および５２０ｂに割り当てるのに使用され得る。当該例示の割り当てを踏まえて、印刷デバイス５２０ｅは、前記コピー９部の分散印刷ジョブの最初の１６２ページを印刷し、印刷デバイス５２０ａは、前記コピー９部の分散印刷ジョブの次の１６２ページを印刷し、印刷デバイス５２０ｂは、前記コピー９部の分散印刷ジョブの最後の３６ページを印刷することになる。印刷デバイスに印刷ジョブの割り当て分を割り当てるためのその他の手法もまた可能である。
【００７１】
図６Ｄは、例示の実施形態にかかる、印刷デバイス５２０ｂのエラーが印刷ジョブの割り当て分の印刷を中断した後のシナリオ５００におけるアプリケーション５１２に関連付けられたダイアログ６１０を示す。実施形態によっては、ダイアログ６１０は、分散印刷ジョブの印刷中に発生する１つ以上のエラー状態の通知を提供するように構成され得る。一旦、印刷デバイスにエラー状態が発生すると、印刷ジョブの割り当て分の印刷が自動的に中断され得る。１つ以上のエラー状態に応じて、分散印刷ジョブは変更なく再開され（例えば、用紙少量もしくは印刷デバイスが印刷ジョブの割り当て分の印刷を続けるのを妨げないその他のメッセージに応じて）、分散印刷ジョブは取り消しされ、前記印刷ジョブの割り当て分が、エラー状態にある印刷デバイスから解除され、中断され、および／または再割り当てされ得る。
【００７２】
クライアントデバイスおよび／または印刷デバイスは、１つ以上のエラー状態についてユーザーに通知することができる。例えば、エラー状態に関連する１つ以上のメッセージは、印刷デバイスに装備されている操作パネル等、印刷デバイスの表示部に示され得る。前記メッセージは、また、前記クライアントデバイスに―例えば、ダイアログ６１０の一部としてもしくはプリンター状態ウィンドウ／制御パネルの一部として―表示され得る。エラー状態に関連するメッセージは、どの印刷デバイスが１つ以上のエラー状態を有しているかという情報、１つ以上のエラー状態の情報、およびおそらく前記エラー状態の修正に関する情報を提供することができる。
【００７３】
１つ以上のエラー状態により中断されている印刷ジョブの割り当て分は、一台以上の代替の印刷デバイスに移動されおよび／または前記エラー状態が解消され次第同じ印刷デバイスで再開され得る。例えば、１００ページの印刷ジョブの割り当て分が印刷デバイスＰＤ１に割り当てられ、４０ページ印刷した後エラー状態が印刷デバイスＰＤ１に発生したとする。そして次に、前記エラー状態は、上記のように、適切な表示メッセージがダイアログ６１０および／またはプリンター状態ウィンドウ／制御パネルでの表示用に生成されて報告され得る。
【００７４】
場合によっては、残りの６０ページは代替の印刷デバイスで印刷され得る。別の関連する場合では、前記印刷ジョブの割り当て分は、印刷デバイスＰＤ１の１つ以上のエラー状態が解消される間中断され得る。一旦、前記１つ以上のエラー状態が解消されると、前記残りの６０ページが印刷デバイスＰＤ１で印刷され得るように印刷ジョブの割り当て分が再開され得る。さらに他の関連する場合には、複数のエラー状態が発生し―例えば、印刷詰まりおよびトナー切れ―、複数のエラーのすべてではないがいくつかのエラーが解消されることもある。複数のエラー状態が部分的に解消されたが完全に解消されない場合、残り６０ページのいくらかもしくはすべては、代替の印刷デバイスで印刷され得る。
【００７５】
別の例として、１０ページ＊コピー５０部＝５００ページの印刷ジョブの割り当て分が印刷デバイスＰＤ１に割り当てられ、そしてエラー状態がコピー１９部の印刷完了後に発生し、残りのコピー３１部／３１０ページが代替の印刷デバイスで印刷され得るとする。前記エラー状態の前に印刷デバイスＰＤ１によって２０部目のコピーが部分的に印刷された場合、前記代替の印刷デバイスは、残りの印刷ジョブの割り当て分として、２０部目のコピー全体の印刷かもしくはエラー状態時印刷デバイスＰＤ１により印刷されていたページかいずれかで印刷を開始し得る。あるいは、関連する例においては、印刷デバイスＰＤ１で１つ以上のエラー状態が解消される間前記印刷ジョブの割り当て分は中断され得るとし、前記エラー状態が完全に解消され得ると、残りのコピー３１部／３１０ページが印刷デバイスＰＤ１で印刷されるように印刷ジョブの割り当て分は再開され得る。複数のエラー状態が部分的に解消したが完全に解消されない場合、残りの３１部のコピーのいくらかまたはすべては、代替の印刷デバイスで印刷され得る。
【００７６】
エラー状態に応じて、印刷ジョブの割り当て分はさらに細分割され得る。例えば、エラーが発生したときの再印刷を最小化するために、クライアントデバイス５１０のポートモニターおよび／または他のソフトウェアにより、中断された印刷ジョブの割り当て分は、ページ数および／またはコピー部数に基づきより小さい下位部分に分割され得る。例えば、１００部のコピーの分散印刷ジョブが、２５部のコピーの４つの印刷ジョブの割り当て分に分割され、印刷デバイスＰＤ２を含む４台の印刷デバイスに分散されたとする。そして、印刷デバイスＰＤ２が、自身の印刷ジョブの割り当て分のうちの１３部目のコピーを印刷した後、エラー状態が発生したとする。そして次に、印刷デバイスＰＤ２の印刷ジョブの割り当て分の残り１２部のコピーが、さらに二つ以上の印刷ジョブの下位割り当て分に細分割され得る―例えば、印刷デバイスＰＤ２の残りの印刷ジョブの割り当て分がコピー各４部の３つの印刷ジョブの下位割り当て分に分割され得る。そして、すでに前記分散印刷ジョブの印刷をしている３台の印刷デバイスのそれぞれは、さらに３つの印刷ジョブの下位割り当て分の１つを割り当てられ得る。
【００７７】
別の例として、印刷デバイスＰＤ２の残りの印刷ジョブの割り当て分は、２つの印刷ジョブの下位割り当て分に分割され得る―すなわち、代替印刷デバイスが印刷するための一つのコピー６部の下位割り当て分、およびすでに分散印刷ジョブの印刷をしている前記３台の印刷デバイスのそれぞれに割り当てられる３つのコピー２部の印刷ジョブ下位割り当て分。さらに別の例として、印刷デバイスＰＤ２の残りの印刷ジョブの割り当て分は、それまでに分散印刷ジョブの印刷をしていない２台（もしくは２台以上）の代替の印刷デバイスによって印刷される２つ（もしくは２つ以上）の印刷ジョブの下位割り当て分に分割され得る。そのような挽回および／または印刷ジョブの下位分割手順は、分散印刷ジョブの印刷前に、例えば、代替印刷デバイスおよび／または印刷ジョブの割り当て分の細分割に関するデフォルト設定において設定され得る。
【００７８】
シナリオ５００において、印刷デバイス５２０ａ、５２０ｂ、および５２０ｃを使用しての前記コピー９部の分散印刷ジョブの印刷の最中に、ダイアログ６１０のステータス領域６３０の印刷デバイス５２０ｂに対するプリンターステータス６３２および「エラー！紙詰まり！」のエラーメッセージ６３４により示されるように、印刷デバイス５２０ｂは、１６２ページのうち２２ページを印刷した後、紙詰まりを発生させた。ステータス領域６３０は、また、前記コピー９部の分散印刷ジョブを印刷している他の２台の印刷デバイス―印刷デバイス５２０ａおよび５２０ｅ―は、自身の割り当て分を成功裏に印刷している途中であることを示している―印刷デバイス５２０ａは、自身の割り当てられた１６２ページのうち３８ページを印刷し、印刷デバイス５２０ｅは、自身の割り当てられた３６ページのうち２０ページを印刷している。
【００７９】
図６Ｅは、例示の実施形態において、当初印刷デバイス５２０ｂに割り当てられた、中断された印刷ジョブの割り当て分の再割り当て後のシナリオ５００におけるアプリケーション５１２に関連付けられたダイアログ６１０を示す。シナリオ５００において、印刷デバイス５２０ｂが紙詰まりを発生させ、そしてクライアントデバイス５１０のユーザーが、印刷ダイアログ６１０のプリンターステータス領域６３０によりそのように通知された後、ユーザーは、ダイアログ６１０を使用して、印刷デバイス５２０ｂの紙詰まりにより中断された印刷ジョブの割り当て分を別の印刷デバイスに再割り当てすることができる。
【００８０】
図６Ｅは、印刷デバイス５２０ｂに関連付けられた印刷ボリューム比率設定６２０が０％に設定され、そして印刷デバイス５２０ｃに関連付けられた印刷ボリューム比率設定６２２が４５％に設定された印刷ダイアログ６１０を示す。印刷ボリューム比率設定６２０を、シナリオ５００において当初設定された４５％―例えば、図６Ｂおよび図６Ｄで示されるように―から、図６Ｅに示されるように０％に変更することにより、ダイアログ６１０のユーザーは、印刷デバイス５２０ｂに割り当てられた印刷ジョブの割り当て分はもはや印刷デバイス５２０ｂに割り当てられていないことを示している。実施形態によっては、ダイアログ６１０は、印刷デバイス５２０ｂの紙詰まり状態等、エラー状態にある印刷デバイスからのみ印刷ジョブの割り当て分の割り当て解除を可能とする。
【００８１】
同様に、印刷ボリューム比率設定６２２を、シナリオ５００において当初設定された０％―例えば、図６Ｂおよび図６Ｄで示されるように―から、図６Ｅに示されるように４５％に変更することにより、ダイアログ６１０のユーザーは、前に印刷デバイス５２０ｂに割り当てられていた印刷ジョブの割り当て分が今は印刷デバイス５２０ｃ―例えば、印刷デバイス５２０ｃは、もし、あるいは印刷デバイス５２０ｂがエラー状態を発生させた場合に使用される代替の印刷デバイスである―に割り当てられていることを示している。
【００８２】
実施形態によっては、ダイアログ６１０は、印刷デバイス５２０ｂの紙詰まり状態後の印刷デバイス５２０ｃへの印刷ジョブの割り当て分の前記割り当て等、印刷ジョブの割り当て分を印刷するよう割り当てられていた印刷デバイスがエラー状態を発生させた後、代替の印刷デバイスへの印刷ジョブの割り当て分の割り当てを可能にする。他の実施形態において、ダイアログ６１０および／または別のユーザーインターフェースオブジェクトは、印刷デバイスへの印刷ジョブの割り当て分の割り当ての前もしくは割り当て中のいずれかに、代替印刷デバイスの指定を可能とするように構成されている。シナリオ５００以外のシナリオにおいて、印刷デバイス５２０ｂの前記エラー状態が解消されて―例えば、詰まっていた紙が印刷デバイス５２０ｂから除去されて―、印刷デバイス５２０ｂは印刷ジョブの割り当て分の印刷を続けることができる。
【００８３】
図６Ｅにおいて、ステータス領域６３０は、印刷デバイス５２０ｂに割り当てられた印刷ジョブの割り当て分のうちの未印刷１２０ページが「移動された」もしくは「５２０Ｃ」に再割り当てされた―シナリオ５００においてステータス領域６３０に示すように、印刷デバイス５２０ｂに当初割り当てられた印刷ジョブの割り当て分の１６２ページのうちの４２ページが印刷され、印刷デバイス５２０ｂが紙詰まりを発生させたときの未印刷１２０ページを残している―ことを示すメッセージ６３６を含む。ステータス領域６３０は、また、プリンターステータス６３８を含み、印刷デバイス５２０ｃに割り当てられた印刷ジョブの割り当て分の「１２０中の１８」ページが印刷されたことを示す。ステータス領域６３０は、また、シナリオ５００の分散印刷ジョブを印刷する他の２台の印刷デバイスが―印刷デバイス５２０ａおよび５２０ｅ―割り当てられた印刷ジョブの割り当て分を成功裏に印刷し続けていることを示す。特に、ステータス領域６３０は、印刷デバイス５２０ａが割り当てられた１６２ページのうち６２ページを印刷し、印刷デバイス５２０ｅが割り当てられた３６ページのうち３１ページを印刷したことを示している。
【００８４】
シナリオ５００は、各印刷デバイス５２０ａ、５２０ｃ、および５２０ｅが前記コピー９部の分散印刷ジョブの自身の各印刷ジョブの割り当て分を成功裏に印刷して続行する。図６Ｆおよび図６Ｇは、それぞれ、例示の実施形態に係るシナリオ５００の前記コピー９部の分散印刷ジョブに対する印刷デバイスの出力を示す。
【００８５】
クライアントデバイスは、印刷ジョブの割り当て分の出力を分散印刷ジョブの出力に集約、結合することを助けるのに使用され得る指示を提供することができる。例えば、各印刷ジョブの割り当て分は、１つ以上の指示カバーシートを有し得る。指示カバーシートは、印刷デバイスのステータス、エラー状態（もし必要であれば）、印刷デバイスの配置位置、および／または別々に印刷された印刷ジョブの割り当て分の印刷出力を分散印刷ジョブの印刷された出力に集約する方法に関する指示を示すことができる。実施形態によっては、指示カバーシートの一部もしくはすべての情報は、例えば、ダイアログ６１０もしくは別のダイアログの一部として、クライアントデバイスのユーザーインターフェースに提供され得る。
【００８６】
紙の指示カバーシートは、分散印刷ジョブの印刷された出力内の物理的な始めと終わりの位置を示すことができる。紙の指示カバーシートは、いつ他の印刷ジョブが印刷ジョブの割り当て分の前後で印刷されるかをユーザーに知らせることができる。例えば、印刷デバイスが、分散印刷ジョブの印刷ジョブの割り当て分を完了することに失敗し、残りの印刷ジョブの割り当て分が代替のプリンターに移動されたとする―例えば、印刷デバイス５２０ｂの紙詰まりおよび印刷ジョブの割り当て分の印刷デバイス５２０ｃへの移動がシナリオ５００で発生したように。この場合、別の印刷ジョブが当該分離した印刷ジョブの割り当て分の間で印刷されたかもしれない。もしくは、たとえ他の印刷ジョブが実行されないとしても、例えば、印刷ジョブの割り当て分が２台以上のプリンターで印刷される場合、別々に印刷された印刷ジョブの割り当て分は連続した部分ではないかもしれない。個別の実施形態においては、紙の指示カバーシートは、ユーザーの視認性を助けるためにカラーの用紙で印刷され得る。
【００８７】
図６Ｆは、印刷デバイス５２０ａが１６４ページ、すなわち、最初のカバーシート６４０、シナリオ５００のコピー９部の分散印刷ジョブの、最初の１６２ページの印刷ジョブの割り当て分を表す出力６４２、および最終のカバーシート６４４を印刷したことを示す。別のシナリオにおいては、印刷デバイス５２０ａは、最初のカバーシート６４０および／または最終のカバーシート６４４を印刷することなく出力６４２を生成することができる。
【００８８】
シナリオ５００においては、印刷デバイス５２０ａは、印刷ジョブの割り当て分の印刷の開始時、まず、最初のカバーシート６４０を印刷し、次に出力６４２を印刷し、その次に最終のカバーシート６４４を印刷した。最初のカバーシート６４０および最終のカバーシート６４４の両方とも、「ルーム５０１」に位置するプリンター「５２０Ａ」を印刷ジョブの割り当て分を印刷するとして特定し、前記コピー９部の分散印刷ジョブが「Ｄｏｃ１のコピー９部」を含むこと、および「集約指示」を有することを表示する。最初のカバーシート６４０は、分散印刷ジョブの印刷の開始時に利用できる情報―例えば、前記分散印刷ジョブが「３つの部分に分割」されたこと、印刷デバイス５２０ａは、「印刷ジョブの割り当て分１（１６２ページ）を印刷する」こと、および最終のカバーシート６４４を参照させる最初の集約指示を有することを示す。
【００８９】
最終のカバーシート６４４は、前記コピー９部の分散印刷ジョブが「４台のプリンターで３つの部分に分かれて印刷された」という表示等、コピー９部の分散印刷ジョブを印刷した後で利用できる情報を有する。最終のカバーシート６４４の集約指示は以下を示す―（１）印刷デバイス５２０ａで印刷された「この部分」は、コピー９部の分散印刷ジョブのコピー１乃至４およびコピー５の最初の２ページがある、（２）「ルーム５１３」に位置する印刷デバイス５２０ｂは、コピー９部の分散印刷ジョブの「コピー５の最後の３８ページおよびコピー６の最初の４ページ」を含む印刷ジョブの割り当て分「２ａ」を印刷した、（３）「ルーム６１２」に位置する印刷デバイス５２０ｃは、コピー９部の分散印刷ジョブの「コピー６の最後の３６ページ、コピー７乃至８、およびコピー９の最初の４ページ」を含む印刷ジョブの割り当て分「２ｂ」を印刷した、（４）「ルーム５０２」に位置する印刷デバイス５２０ｅは、コピー９部の分散印刷ジョブの「コピー９の最後の３６ページ」を含む印刷ジョブの割り当て分「３」を印刷した。
【００９０】
図６Ｆおよび６Ｇは、各印刷デバイス５２０ｂ、５２０ｃ、および５２０ｅが、それぞれ、シナリオ５００の一部として、４４ページ、１２２ページ、および３８ページを印刷したことを示す。印刷デバイス５２０ｂ、５２０ｃ、および５２０ｅのそれぞれは、最初のカバーシート、シナリオ５００のコピー９部の分散印刷ジョブの印刷ジョブの割り当て分に対する出力、および最終のカバーシートを印刷した。
【００９１】
印刷デバイス５２０ａ、５２０ｂ、５２０ｃ、および５２０ｅによって印刷されたコピー９部の分散印刷ジョブに対する最初のカバーシートのそれぞれは、薄い灰色で印刷され、印刷デバイス５２０ａ、５２０ｂ、５２０ｃ、および５２０ｅによって印刷されたコピー９部の分散印刷ジョブに対する最終のカバーシートのそれぞれは、濃い灰色で印刷されている。多くの場合、印刷ジョブの出力は、白色の用紙に印刷される、従って、カラーの用紙に印刷されたカバーシートは、素早いカバーシートの識別を可能とする。別のシナリオにおいては、最初のおよび／または最終のカバーシートは、灰色とは別の色の用紙に印刷され得る。
【００９２】
図６Ｆは、印刷デバイス５２０ｂが、最初のカバーシート６５０、シナリオ５００のコピー９部の分散印刷ジョブの第２の１６２ページの印刷ジョブの割り当て分の４２ページの下位割り当て分を表す出力６５２、および最終のカバーシート６５４を印刷したことを示している。図６Ｇは、印刷デバイス５２０ｃが、最初のカバーシート６６０、シナリオ５００のコピー９部の分散印刷ジョブの第２の１６２ページの印刷ジョブの割り当て分の１２０ページの下位割り当て分を表す出力６６２、および最終のカバーシート６６４を印刷したことを示している。図６Ｇは、また、印刷デバイス５２０ｅが、最初のカバーシート６７０、シナリオ５００のコピー９部の分散印刷ジョブの第３の３６ページの印刷ジョブの割り当て分を表す出力６７２、および最終のカバーシート６７４を印刷したことを示している。別のシナリオにおいては、各印刷デバイス５２０ｂ、５２０ｃ、および５２０ｅの何台かもしくは全てが、各最初のカバーシート６５０、６６０、６７０および／または各最終のカバーシート６５４、６６４、６７４を印刷することなく、それぞれ出力６５２、６６２、６７２を生成することができる。
【００９３】
シナリオ５００においては、各印刷デバイス５２０ｂおよび５２０ｅは、各印刷ジョブの割り当て分の印刷の開始時、まず各最初のカバーシート６５０、６７０を印刷し、次に各出力６５２、６７２を印刷し、そして次に各最終のカバーシート６５４、６７４を印刷した。シナリオ５００は、また、印刷デバイス５２０ｂに対する代替印刷デバイスとして引き継いだ際最初のカバーシート６６０を印刷し、出力６６２を印刷し、次に最終のカバーシート６６４を印刷した印刷デバイス５２０ｃを含む。
【００９４】
図６Ｆの最初のカバーシート６５０および最終のカバーシート６５４の両方とも、「ルーム５１３」に位置するプリンター「５２０Ｂ」を印刷ジョブの割り当て分を印刷するとして特定し、前記コピー９部の分散印刷ジョブが「Ｄｏｃ１のコピー９部」を含むこと、および「集約指示」を有することを表示する。最初のカバーシート６５０は、最初のカバーシート６４０のコンテキストにおいて上述したように、コピー９部の分散印刷ジョブの印刷の開始時に利用できる情報を示す。最終のカバーシート６５４は、最終のカバーシート６５４の集約指示は、「コピー１乃至４およびコピー５の最初の２ページ」が「ルーム５０１」の「プリンター５２０Ａ」から取得できること、および印刷デバイス５２０ａにより印刷された「この部分」が「コピー５の最後の３８ページおよびコピー６の最初の４ページ」を含むことを表示することを除き、上述した最終のカバーシート６４４の集約指示と同様な集約指示を含め、コピー９部の分散印刷ジョブを印刷した後で利用できる情報を有する。
【００９５】
同様に、図６Ｇの最初のカバーシート６６０および最終のカバーシート６６４の両方とも、「ルーム６１２」に位置するプリンター「５２０Ｃ」を印刷ジョブの割り当て分を印刷するとして特定し、前記コピー９部の分散印刷ジョブが「Ｄｏｃ１のコピー９部」を含むこと、および「集約指示」を有することを示している。最初のカバーシート６６０は、印刷デバイス５２０ｃが、コピー９部の分散印刷ジョブの印刷を引き継いだときに利用できる情報を有する―当該情報は、印刷デバイス５２０ｃが、「割り当て分２ａとして４０ページ印刷したプリンター５２０Ｂ／ルーム５１３により開始された」「部分的な印刷ジョブの割り当て分」を印刷したことおよび印刷デバイス５２０ｃが「割り当て分２ｂとしての前記印刷ジョブの割り当て分を完了する」こと、並びに最初のカバーシート６４０のコンテキストで上述された集約指示の表示を含む。
【００９６】
図６Ｇは、最終のカバーシート６６４が、最終のカバーシート６６４の集約指示が、「コピー１乃至４およびコピー５の最初の２ページ」が「ルーム５０１」の「プリンター５２０Ａ」から取得できること、および印刷デバイス５２０ｃにより印刷された「この部分」すなわち割り当て分「２ｂ」が「コピー６の最後の３６ページ、コピー７乃至８、およびコピー９の最初の４ページ」を含むことを表示することを除き、上述した最終のカバーシート６４４の集約指示と同様な集約指示を含め、コピー９部の分散印刷ジョブを印刷した後で利用できる情報を表示することを示す。
【００９７】
さらに、図６Ｇの最初のカバーシート６７０および最終のカバーシート６７４の両方とも、「ルーム５０２」に位置するプリンター「５２０Ｅ」を印刷ジョブの割り当て分を印刷するとして特定し、前記コピー９部の分散印刷ジョブが「Ｄｏｃ１のコピー９部」を含むこと、および「集約指示」を有することを表示する。最初のカバーシート６７０は、最初のカバーシート６４０のコンテキストで上述したように、コピー９部の分散印刷ジョブの印刷の開始時に利用できる情報を有する。最終のカバーシート６７４は、コピー９部の分散印刷ジョブを印刷した後に利用できる情報を表示し、最終のカバーシート６７４の集約指示が、「コピー１乃至４およびコピー５の最初の２ページ」が「ルーム５０１」の「プリンター５２０Ａ」から取得できること、および印刷デバイス５２０ｅにより印刷された「この部分」すなわち割り当て分「３」が「コピー９の最後の３６ページ」を含むことを表示することを除き、上述した最終のカバーシート６４４の集約指示と同様な集約指示を含む。
【００９８】
シナリオ５００は、別の「コピー１２部」の分散印刷ジョブが提示されて続行する―この場合、前記印刷ジョブは、全体の印刷ジョブの大きさが４８０ページにわたる、「Ｄｏｃ１」とタイトルが付けられた４０ページの文書のコピー１２部を印刷することを含む。
【００９９】
図７Ａは、例示の実施形態に係る、シナリオ５００のアプリケーション５１２に関連付けられた印刷ダイアログ６１０を示す。ダイアログ６１０は、分散印刷のための選択６１２を含む―クライアントデバイス５１０のユーザーは、選択６１２をして要求された４０ページの文書Ｄｏｃ１のコピー１２部を印刷する分散印刷を使用することができる。分散印刷選択６１２の実施に応じて、プリンタードライバー、アプリケーション５１２、および／またはクライアントデバイス５１０上で実行しているその他のソフトウェアは、少なくとも選択６１４、６１６、７１０、７１２、７１４、印刷デバイス選択情報７２０、分散印刷ジョブ情報７２２、および印刷デバイス／分散印刷ジョブステータス７３４を表示し、選択し、および／または変更するように構成されているダイアログ６１０を更新することができる。
【０１００】
マニュアルページ分散用の選択６１４がされた図６Ａに示すダイアログ６１０と対照的に、図７Ａは、自動ページ分散用の選択６１６がされたことを示す。選択６１６を行った後、ダイアログ６１０は、自動ページ分散用に関連する選択７１０、７１２、および７１４を表示するよう更新され得る。
【０１０１】
選択７１０は、分散印刷ジョブを印刷ジョブの割り当て分に分割する一部として、コピーを分割するかどうかをクライアントデバイス５１０に指示することができる。図７Ａに示すように、選択７１０に対して「Ｙｅｓ」が選択された場合、クライアントデバイス５１０は、分散印刷ジョブをコピー部数の仕切りで分割することができる、すなわち、各印刷ジョブの割り当て分は印刷する「Ｄｏｃ１」全体のコピーを有する。選択７１０に対して「ＮＯ」が選択された場合、クライアントデバイス５１０は、分散印刷ジョブをページ数の仕切りで分割することができる、すなわち、各印刷ジョブの割り当て分は印刷する「Ｄｏｃ１」全体のコピーを有するかどうかわからない。
【０１０２】
選択７１２は、分散印刷ジョブを印刷ジョブの割り当て分に分割する一部として、クライアントデバイス５１０のユーザーがプリンターの機能を選択することを可能とするかどうかをクライアントデバイス５１０に指示することができる。選択７１２に対して「Ｙｅｓ」が選択された場合、クライアントデバイス５１０は、全ての候補の印刷デバイスについて共通の機能を表示することができ、また、選択された場合、候補の印刷デバイスの数を減らすことができる共通でない機能の選択を可能とする。図７Ａに示すように、選択７１２に対して「ＮＯ」が選択された場合、クライアントデバイス５１０は、印刷デバイス特有の機能にかかわらず、分散印刷ジョブの印刷ジョブの割り当て分を印刷するために任意の候補の印刷デバイスを選択することができる。
【０１０３】
選択７１４は、少なくとも２つの基準のうちの１つに基づいて印刷ジョブの割り当て分を割り当てるためにクライアントデバイス５１０に指示することができる。「等ページ数／プリンター」基準が選択７１４に対して選択された場合、選択７１０を用いてされる「コピーを分割しない」選択を維持しながら、クライアントデバイス５１０は、分散印刷ジョブを印刷するために選択された各印刷デバイスのために等しいページ数の印刷ジョブの割り当て分に前記分散印刷ジョブを分割することができる。例えば、４台の印刷デバイスが、コピー１２部／４８０ページの前記分散印刷ジョブを印刷するよう選択された場合、各選択された印刷デバイスは、コピー３部／１２０ページの印刷ジョブの割り当て分を割り当てられるであろう。
【０１０４】
別のシナリオでは、６０ページの文書のコピー７部を印刷する分散印刷ジョブが３台の印刷デバイスの間で等しいページ数の割り当て分に分割されるとする。選択７１０を用いて「コピーを分割しない」選択がされた場合、等しいページ数の割り当て分基準もしくはコピーを分割しない選択のいずれかが緩和され得る。等しいページ数の割り当て分基準が緩和された場合、その場合は、例えば、２台の選択された印刷デバイスがコピー２部を印刷し、第３の印刷デバイスがコピー３部を印刷することができる。「コピーを分割しない」選択が緩和された場合、その場合は、各印刷デバイスには、分散印刷ジョブのページ数の１／３である１４０ページの印刷ジョブの割り当て分を割り当てることができる。等しいページ数の割り当て分基準もコピーを分割しない選択のいずれも緩和され得ない場合、その場合は、クライアントデバイス５１０は、もし利用可能であれば、追加の印刷デバイスを選択することができる、例えば、７台の印刷デバイスを選択して、各選択された印刷デバイスにコピー１部を割り当てる。場合によっては、自動ページ分散に対してなされる選択／基準が緩和できず、またさらに、緩和できない選択／基準の全てを満たし得る複数の印刷デバイスの構成がない場合には、単独印刷が使用され得る。クライアントデバイス５１０は、ハードコードされたソフトウェアの決定、ユーザーの選択および／または格納されているデータ―例えば、「コピーを分割しない」が等ページ数よりも重要であるもしくはその逆であると常に決めている―に基づいて、ダイアログ６１０を介して受け取った入力および／またはクライアントデバイス５１０のその他のユーザーインターフェースに基づいて、および／またはクライアントデバイス５１０に格納されているデフォルトの印刷決定に関するデータに基づいて、どの要件が緩和できるか選択することができる。
【０１０５】
図７Ａに示すように、選択７１４に対して「等時間で終了」基準が選択された場合、選択７１０を用いてなされた「コピーを分割しない」選択を維持しながら、クライアントデバイス５１０は、分散印刷ジョブを印刷するために選択された各印刷デバイスによりほぼ同じ印刷時間がかかる印刷ジョブの割り当て分に分散印刷ジョブを分割することができる。例えば、６０ページの文書のコピー７部を印刷する分散印刷ジョブが、３台の等しい速さの印刷デバイスにより印刷されるよう分割されるとする。そして、上記の式（１）に従って、前記分散印刷ジョブは、３つの等しいページ数の割り当て分に分割される。しかしながら、選択７１０を介して「コピーを分割しない」選択がされる場合、クライアントデバイス５１０は、ハードコードされたソフトウェアの決定、選択７１４の等ページ数／プリンターの選択に関して上述したようなユーザーの選択および／または格納されているデータに基づいて、どの要件／基準が緩和され得るか決定することができる。
【０１０６】
シナリオ７００は、ダイアログ６１０が、選択７１２を介する印刷デバイスの機能を考慮しないで、また等時間終了基準に基づいて、選択７１０を介して、コピー部数ベースでコピー１２部の分散印刷ジョブの自動ページ分散を指定して続行する。そして、ダイアログ６１０は、例えば、ダイアログ６１０の下方左の「印刷」ボタンの選択により、コピー１２部の分散印刷ジョブの印刷を開始するために使用され得る。
【０１０７】
コピー１２部の分散印刷ジョブの印刷を開始する際、クライアントデバイス５１０のユーザーは、前記「コピーを分割しない」選択もしくは前記「等時間終了」基準が緩和されるかどうか選択するよう促された。シナリオ５００においては、ユーザーは、前記「コピーを分割しない」選択が緩和されることを表示した。そして、クライアントデバイス５１０は、コピー１２部の分散印刷ジョブを印刷するために図５に示されるシステムから３台の最も速いかつ稼働中の印刷デバイスを選択した―ダイアログ６１０の印刷デバイス選択情報７２０の一部として示される印刷デバイス５２０ａ、５２０ｃ、および５２０ｅ。印刷デバイス５２０ｂは、シナリオ５００のコピー９部の分散印刷ジョブのコンテキストで上述したように、当該印刷デバイスは未だ紙詰まりがあるとして選択されなかった。
【０１０８】
図５および図７Ａのダイアログ６１０で示されるように、印刷デバイス５２０ａは５０ＰＰＭで印刷でき、印刷デバイス５２０ｃは５０ＰＰＭで印刷でき、および印刷デバイス５２０ｅは、２５ＰＰＭで印刷できる。クライアントデバイス５１０は、コピー１２部の分散印刷ジョブは、合計１２＊４０＝４８０ページの印刷を有すると計算できる。クライアントデバイス５１０は、次に、方法３００もしくは方法４００いずれかの手法を用いてコピー１２部の分散印刷ジョブを３つの印刷ジョブの割り当て分に分割できる―すなわち、印刷デバイス５２０ａに対する第１の１９２ページの印刷ジョブの割り当て分、印刷デバイス５２０ｃに対する第２の１９２ページの印刷ジョブの割り当て分、および印刷デバイス５２０ｅに対する第３の９６ページの印刷ジョブの割り当て分。他のシナリオでは、ダイアログ６１０は、図６Ｃのコンテキストで上述したように、印刷デバイスへの印刷ジョブの割り当て分の順序の割り当てを指定するように構成され得る。
【０１０９】
クライアントデバイス５１０は、また、印刷デバイス５２０ａおよび印刷デバイス５２０ｃのそれぞれは、自身の各印刷ジョブの割り当て分を印刷するのに約１９２ページ／５０ＰＰＭ＝３．８４分すなわち２３０．４秒かかり、また印刷デバイス５２０ｅは、自身の各印刷ジョブの割り当て分を印刷するのに約９６ページ／２５ＰＰＭ＝３．８４分すなわち２３０．４秒かかると判定し、そしてコピー１２部の分散印刷ジョブを印刷するために２３１秒の推定印刷時間を判定することができる。クライアントデバイス５１０は、分散印刷ジョブ情報７２２として、ダイアログ６１０に全ページ数および推定印刷時間の判定を表示させる。
【０１１０】
シナリオ５００は、クライアントデバイス５１０が、方法３００もしくは方法４００いずれかの手法を用いて、コピー１２部の分散印刷ジョブの３つの印刷ジョブの割り当て分を印刷デバイス５２０ａ、５２０ｃ、および５２０ｅに提供して続行する。当該各印刷ジョブの割り当て分を受け取った後、印刷デバイス５２０ａ、５２０ｃ、および５２０ｅは、当該各印刷ジョブの割り当て分の印刷を開始する。図７Ａは、コピー１２部の分散印刷ジョブが印刷されているプロセスにある間、印刷デバイス／分散印刷ジョブステータス７２４を示す。印刷デバイス／分散印刷ジョブステータス７２４は、印刷デバイス５２０ａは、５０ＰＰＭの速さで印刷し、自身の印刷ジョブの割り当て分の全１９２ページのうち２２ページを印刷したこと、印刷デバイス５２０ｃは、５０ＰＰＭの速さで印刷し、自身の印刷ジョブの割り当て分の全１９２ページのうち２３ページを印刷したこと、印刷デバイス５２０ｅは、２５ＰＰＭの速さで印刷し、自身の印刷ジョブの割り当て分の全９６ページのうち１１ページを印刷したこと、そしてコピー１２部の分散印刷ジョブの４８０ページのうち合計５６ページが印刷されたことを表示する。
【０１１１】
シナリオ５００は、各印刷デバイス５２０ａ、５２０ｃ、および５２０ｅが、成功裏に１２部の分散印刷ジョブの各印刷ジョブの割り当て分を印刷しながら続行する。図７Ｂおよび図７Ｃは、それぞれ、例示の実施形態に係る、シナリオ５００のコピー１２部の分散印刷ジョブに対する印刷デバイスの出力を示す。
【０１１２】
図７Ｂは、印刷デバイス５２０ａが、１９４ページ―最初のカバーシート７３０、シナリオ５００の１２部の分散印刷ジョブの第１の１９２ページの印刷ジョブの割り当て分を表す出力７３２、および最終のカバーシート７３４―を印刷したことを示す。別のシナリオにおいては、印刷デバイス５２０ａは、最初のカバーシート７３０、および／または最終のカバーシート７３４を印刷することなく出力７３２を生成することができる。
【０１１３】
シナリオ５００において、印刷デバイス５２０ａは、印刷ジョブの割り当て分の印刷の開始時、まず、最初のカバーシート７３０を印刷し、次に出力７３２を印刷し、そして次に最終のカバーシート７３４を印刷した。最初のカバーシート７３０と最終のカバーシート７３４の両方とも、「ルーム５０１」に位置するプリンター「５２０Ａ」を印刷ジョブの割り当て分を印刷するとして特定し、前記コピー１２部の分散印刷ジョブが「Ｄｏｃ１のコピー１２部」を含み、また「集約指示」を有することを表示する。最初のカバーシート７３０は、前記コピー１２部の分散印刷ジョブの印刷の開始時利用可能な情報―例えば、前記分散印刷ジョブは「３つの割り当て分に分割」され、印刷デバイス５２０ａは、「印刷ジョブの割り当て分１（１９２ページ）を印刷」し、また最終のカバーシート７３４を参照する最初の集約指示を有する情報―を有する。
【０１１４】
最終のカバーシート７３４は、前記コピー１２部の分散印刷ジョブは「３台のプリンターで印刷された」という表示等、前記コピー１２部の分散印刷ジョブの印刷の後に利用可能な情報を有する。最終のカバーシート７３４の前記集約指示は以下を表示する―（１）印刷デバイス５２０ａで印刷された「この割り当て分」は、前記コピー１２部の分散印刷ジョブの「コピー１乃至４およびコピー５の最初の３２ページを有する」、（２）「ルーム６１２」に位置する印刷デバイス５２０ｃは、前記コピー１２部の分散印刷ジョブの「コピー５の最後の８ページ、コピー６乃至９、およびコピー１０の最初の２４ページ」を含む印刷ジョブの割り当て分の「２」を印刷した、（３）「ルーム５０２」に位置する印刷デバイス５２０ｅは、前記コピー１２部の分散印刷ジョブの「コピー１０の最後の１６ページおよびコピー１１乃至１２」を含む印刷ジョブの割り当て分の「３」を印刷した。
【０１１５】
図７Ｂおよび図７Ｃは、各印刷デバイス５２０ｃおよび５２０ｅが、それぞれ、シナリオ５００の一部として１９４ページおよび９８ページ印刷したことを示す。印刷デバイス５２０ｃおよび５２０ｅのそれぞれは、最初のカバーシート、シナリオ５００の前記コピー１２部の分散印刷ジョブの印刷ジョブの割り当て分に対する出力、および最終のカバーシートを印刷した。
【０１１６】
印刷デバイス５２０ａ、５２０ｃ、および５２０ｅにより印刷された前記コピー１２部の分散印刷ジョブに対する最初のカバーシートのそれぞれは、薄い灰色で印刷され、そして印刷デバイス５２０ａ、５２０ｃ、および５２０ｅにより印刷された前記コピー１２部の分散印刷ジョブに対する最終のカバーシートのそれぞれは、濃い灰色で印刷されている。多くの場合、印刷ジョブの出力は白色の用紙に印刷される、そのため、カラーの用紙に印刷されたカバーシートは、素早いカバーシートの識別が可能である。別のシナリオにおいては、最初のおよび／または最終のカバーシートは、灰色とは別の色の用紙に印刷され得る。
【０１１７】
図７Ｂの最初のカバーシート７４０と最終のカバーシート７４４の両方とも、「ルーム６１２」に位置するプリンター「５２０Ｃ」を印刷ジョブの割り当て分を印刷するとして特定し、前記コピー１２部の分散印刷ジョブが「Ｄｏｃ１のコピー１２部」を含み、また「集約指示」を有することを表示する。最初のカバーシート７４０は、前記コピー１２部の分散印刷ジョブの印刷開始時に利用可能な情報―例えば、前記分散印刷ジョブは「３つの割り当て分に分割」され、印刷デバイス５２０ｃは、「印刷ジョブの割り当て分２（１９２ページ）を印刷」し、また最終のカバーシート７４４を参照させる最初の集約指示を有する情報―を有する。
【０１１８】
図７Ｂは、最終のカバーシート７４４が、最終のカバーシート７４４の集約指示が、「コピー１乃至４、およびコピー５の最初の３２ページ」は「ルーム５０１」の「プリンター５２０Ａ」から取得され得ること、および印刷デバイス５２０ｃにより印刷された「この割り当て分」すなわち割り当て分「２」は前記コピー１２部の分散印刷ジョブの「コピー５の最後の８ページ、コピー６乃至９、およびコピー１０の最初の２４ページ」を含むことを表示することを除き、上記の最終のカバーシート７３４の集約指示と同様な集約指示を含めて、前記コピー１２部の分散印刷ジョブの印刷後に利用可能な情報を表示することを示す。
【０１１９】
さらに、図７Ｃの最初のカバーシート７５０と最終のカバーシート７５４の両方とも、「ルーム５０２」に位置するプリンター「５２０Ｅ」を印刷ジョブの割り当て分を印刷するとして特定し、前記コピー１２部の分散印刷ジョブが「Ｄｏｃ１のコピー１２部」を含み、また「集約指示」を有することを表示する。最初のカバーシート７５０は、最初のカバーシート７３０のコンテキストで上述したように、前記コピー１２部の分散印刷ジョブの印刷の開始時に利用可能な情報を有する。最終のカバーシート７５４は、最終のカバーシート７５４の集約指示が、「コピー１乃至４、およびコピー５の最初の３２ページ」は「ルーム５０１」の「プリンター５２０Ａ」から取得され得ること、および印刷デバイス５２０ｅにより印刷された「この割り当て分」すなわち割り当て分「３」は前記コピー１２部の分散印刷ジョブの「コピー１０の最後の１６ページ、およびコピー１１乃至１２」を含むことを表示することを除き、上記の最終のカバーシート７３４の集約指示と同様な集約指示を含めて、前記コピー１２部の分散印刷ジョブの印刷後に利用可能な情報を表示する。
【０１２０】
図８Ａは、例示の実施形態に係る、印刷デバイス機能表８３０が添付された出力を印刷するためのシナリオ８００において使用されるシステムを示す。シナリオ８００は、すべてネットワーク８１４を介してすべてが相互に接続されているクライアントデバイス８１０、および印刷デバイス８２０ａ、８２０ｂ、および８２０ｃを含むシステムに関係する。シナリオ８００においては、クライアントデバイス８１０は、ソフトウェアアプリケーション８１２を実行して、シナリオ中で一回印刷される「Ｄｏｃ３」とタイトルが付けられた２０ページの文書を扱う。より具体的には、シナリオ８００においては、クライアントデバイス８１０のユーザーは、分散印刷ジョブとして、文書Ｄｏｃ３のコピー４部を印刷したいとし、コピー４部のそれぞれは両面印刷でかつ冊子仕上げである。
【０１２１】
シナリオ８００においては、各印刷デバイス８２０ａ、８２０ｂ、８２０ｃは、異なる機能を有する。各印刷デバイス８２０ａ、８２０ｂ、８２０ｃの具体的な機能は、以下の各表２Ａ、２Ｂ、および２Ｃにまとめられている。
2016136387.tif 000006
2016136387.tif 000007
2016136387.tif 000008
【０１２２】
表２Ａ乃至２Ｃの用語「ＰＤＬ」は、ページ記述言語の頭字語であり、印刷されたページのレイアウトを記述するための比較的高度な言語である。多くの印刷デバイスは、１つ以上のページ記述言語に対応している。ページ記述言語の例には、以下に限定されないが、プリンター制御言語ＸＬ（ＰＣＬ  ＸＬ）、プリンター制御言語５（ＰＣＬ５）、京セラプリンター制御言語（ＫＰＣＬ）、およびポータブルドキュメントフォーマット（ＰＤＦ）が挙げられる。
【０１２３】
シナリオ８００における全３台の印刷デバイスに共通な機能は、印刷デバイス８２０ａ、８２０ｂ、８２０ｃに共通な「単色」色モード機能等、表２Ａ乃至２Ｃにおいて通常フォントで示されているが、シナリオ８００において全３台の印刷デバイスに共通でない機能は、表２Ａに表示されている印刷デバイス８２０ａおよび表２Ｃに表示されている印刷デバイス８２０ｃの「カラー」色モード機能等、表２Ａ乃至２Ｃにおいてボールドおよびイタリックフォントにて示されている。
【０１２４】
表２Ａ乃至２Ｃのデータは、図８Ａの印刷デバイス機能表８３０にまとめられている。印刷デバイス機能表８３０は、６つの欄がある―左から右へ、当該欄は、上記表２Ａ乃至２Ｃに表示されている機能の種類を示す機能の種類欄、上記表２Ａ乃至２Ｃに表示されている具体的な機能を示す機能欄、および印刷デバイス８２０ａ、印刷デバイス８２０ｂ、印刷デバイス８２０ｃに対する機能を示すための４つの欄、並びに「共通の機能」欄すなわちシナリオ８００の全３台の印刷デバイスに存在する機能欄である。
【０１２５】
印刷デバイス機能表８３０において、表のセル内の「ｘ」は、機能が有ることを表示するために使用され、空白の表のセルは、機能が無いことを表示するために使用される。例えば、印刷デバイス機能表８３０の１番目の見出しの無い行は、「色」機能種類の「カラー」機能に関連し、印刷デバイス８２０ａおよび８２０ｃは前記機能を有し、印刷デバイス８２０ｂは前記機能を有しない、そのため、前記機能は共通の機能ではない。別の例として、印刷デバイス機能表８３０の２番目の見出しの無い行は、「色」機能種類の「単色」機能に関連し、印刷デバイス８２０ａ、８２０ｂ、８２０ｃは前記機能を有しており、そのため前記機能は共通な機能である。
【０１２６】
分散印刷ジョブにおいて、ユーザーは、すべての印刷ジョブの割り当て分が１つ以上の望ましい印刷デバイスのオプション―例えば、カラー印刷、Ａ４用紙、コピーのホッチキス止め―を用いて印刷されることを確保したいであろう。候補の印刷デバイスが、望ましい印刷デバイスの全てのオプションを有していない場合、前記候補の印刷デバイスは分散印刷ジョブの印刷ジョブの割り当て分を印刷するために選択されないであろう。望ましい印刷デバイスのオプションが利用できない場合においては、分散印刷ジョブは取り消され、単独印刷が使用され得るもしくはユーザーは印刷を続けるためにその他の印刷デバイスを選択するであろう。
【０１２７】
実施形態によっては、プリンタードライバーおよび／またはクライアントデバイス８１０のその他のソフトウェアは、選択されたすべての対象の印刷デバイスの印刷能力を比較し、すべての候補の印刷デバイスで利用可能な共通の設定を抽出できる。そして、プリンタードライバーに対するユーザーインターフェース―例えば、シナリオ５００のコンテキストで上述したおよび当該シナリオ８００のコンテキストで以下に説明するダイアログ６１０―は、共通の機能を表示して、どんな機能がすべての候補の印刷デバイスで利用可能かをユーザーに知らせる。特定の実施形態において、エラー状態を有する印刷デバイスは、候補の印刷デバイスになることから除外され、エラー状態を有する印刷デバイスの機能は共通の機能を判定するときに除外され得る。
【０１２８】
他の実施形態において、ユーザーインターフェースは、印刷解像度および／または画像品質に関連するプリンターの機能の選択を可能にする。印刷デバイスが、望ましい印刷解像度および／または画像品質に対応しない場合、たとえ印刷デバイスが前記分散印刷ジョブの印刷ジョブの割り当て分を印刷するために必要とされる他のすべての印刷デバイスの機能に対応するとしても、前記印刷デバイスは候補の印刷デバイスとしての選択から除外され得る。
【０１２９】
図８Ｂは、例示の実施形態に係る、分散印刷選択６１２がなされた後の、シナリオ８００におけるアプリケーション８１２に関連付けられた印刷ダイアログ６１０を示す。分散印刷選択６１２の実施に応じて、プリンタードライバー、アプリケーション８１２、および／またはクライアントデバイス８１０上で実行するその他のソフトウェアは、少なくともページ分散選択、コピー分割選択、およびプリンターの機能選択に関連する選択７１２を表示し、選択し、および／または変更するように構成されているダイアログ６１０を更新することができる。
【０１３０】
シナリオ８００において、前記分散印刷ジョブを印刷ジョブの割り当て分に分割しながらコピーの分割およびプリンターに等ページ数を割り当てる選択７１４を可能にして、自動ページ分散に関連する選択がなされる―これらの選択はシナリオ５００のコンテキストでより詳細に上述された。
【０１３１】
図８Ｂは、ダイアログ６１０を用いてプリンターの機能を選択する選択７１２がなされたことを示す。プリンターの機能を選択することに関連する選択７１２の実施に応じて、クライアントデバイス８１０は、ダイアログ６１０を更新して共通な機能の一覧８４０および選択８４２を表示することができる。共通な機能の一覧８４０は、図８Ａのシステムに示され、また印刷デバイス機能表８３０に共通な機能として示されている、可能性のある候補の３台の印刷デバイスすべてに共通する印刷デバイスの機能を示すことができる。図８Ｂに示されているように、共通な機能の一覧８４０は、「単色」色種類の印刷デバイス機能、「Ｎアップ」、「ポスター」、および「拡大／縮小」仕上げ種類の印刷デバイス機能、「Ａ４」、「Ｌｅｔｔｅｒ」、および「Ｌｅａｇａｌ」用紙種類の印刷デバイス機能、また「ＰＣＬ  ＸＬ」、「ＰＣＬ  ５」、および「ＫＰＤＬ」ＰＤＬ種類の印刷デバイス機能を含む。
【０１３２】
選択８４２は、ユーザーが、分散印刷ジョブを印刷するために共通の機能を使用することが「ＯＫ」（許可）もしくはそうでないかのいずれかを決定できるようにし得る。選択８４２が「Ｙｅｓ」に設定される場合、分散印刷ジョブを印刷するための共通な機能の一覧８４０に示されるような共通な機能の使用が許容される。シナリオ８００においては、しかしながら、前記印刷ジョブは、両面印刷を用いて、また冊子仕上げにて文書Ｄｏｃ３のコピー４部を印刷することに係わる。共通な機能の一覧８４０は、両面印刷および冊子仕上げを共通な機能として列挙していない、そのため、選択８４２は「Ｎｏ」に設定され、分散印刷ジョブを印刷するために共通な機能を使用することが許容されないことを表示する。
【０１３３】
選択８４２を「Ｎｏ」に設定することに応じて、クライアントデバイス８１０はダイアログ６１０を更新して、プリンター特有の印刷機能の選択８４４を表示することができる。プリンター特有の印刷機能は、すべてではないが１つ以上の候補の印刷デバイスに存在する印刷機能である―シナリオ８００の場合、プリンター特有の印刷機能は、すべてではないが１つ以上の印刷デバイス８２０ａ、８２０ｂおよび８２０ｃに存在する印刷機能である。上記の表２Ａ乃至２Ｃ、図８Ａの印刷デバイス機能表８３０、および図８Ｂの選択８４４に示されるように、シナリオ８００に対する例示のプリンター特有の印刷機能は、カラー、冊子、両面印刷、フルブリード、Ａ３用紙、およびＢ５用紙の印刷機能、並びに選択８４４の一部として示されていない印刷機能を含む。シナリオ８００において、クライアントデバイス８１０のユーザーは、選択８４４を用いて、選択８４６をして冊子のプリンター特有の機能の使用を選択し、選択８４８をして両面印刷のプリンター特有の機能の使用を選択する。別のシナリオにおいて、より多い、より少ないおよび／または異なるプリンター特有の機能が分散印刷ジョブに対して選択され得る。
【０１３４】
選択８４６および８４８に関する情報を受け取った後、クライアントデバイス８１０は、２台の印刷デバイス―印刷デバイス８２０ａおよび８２０ｂ―が冊子と両面印刷の両方の印刷機能を有することを判定することができる。シナリオ８００において、印刷デバイス８２０ａおよび８２０ｂの両方とも分散印刷ジョブの印刷ジョブの割り当て分を印刷するために利用可能である―すなわち、印刷デバイス８２０ａもしくは８２０ｂいずれに対してもエラー状態は存在しない。そして、シナリオ８００は、それぞれ印刷ジョブの割り当て分を受け取る印刷デバイス８２０ａおよび８２０ｂを選択して続行するが、ここで、前記分散印刷ジョブの印刷ジョブの割り当て分は、図８Ｂに示される選択７１４により表示されるように、等しいページ数を有する。ダイアログ６１０は、たとえば、ダイアログ６１０の下方左の「印刷」ボタンを選択することにより、前記分散印刷ジョブの印刷を開始するために使用され得る。
【０１３５】
一旦、印刷を開始するよう指示されると、クライアントデバイス８１０は、方法３００もしくは方法４００のいずれかの手法を用いてシナリオ８００の前記分散印刷ジョブを２つの等しいページサイズの印刷ジョブの割り当て分に分割することができ、そして印刷ジョブの割り当て分を印刷デバイス８２０ａおよび８２０ｂに提供することができる。当該各印刷ジョブの割り当て分を受け取った後、印刷デバイス８２０ａおよび８２０ｂは当該各印刷ジョブの割り当て分の印刷を開始する。
【０１３６】
図８Ｃは、例示の実施形態に係る、機能選択情報８５０およびプリンター選択情報８５２を有するシナリオ８００のアプリケーション８１２に関連付けられた印刷ダイアログ６１０を示す。機能選択情報８５０は、シナリオ８００の分散印刷ジョブの印刷において使用するために冊子および両面印刷の印刷機能が選択されたことを表示する―すなわち、機能選択情報８５０は、冊子の印刷デバイス機能に関連する選択８４６および両面印刷デバイス機能に関連する選択８４８がされたことを裏付ける。プリンター選択情報８５２は、印刷デバイス８２０ａおよび８２０ｂがシナリオ８００の分散印刷ジョブを印刷するために選択されたこと、従って、印刷デバイス８２０ａおよび８２０ｂが、機能選択情報８５０の一部として示される機能を有することを表示する。
【０１３７】
図８Ｃは、また、印刷中のプロセスの間、シナリオ８００の分散印刷ジョブの状況を示す。ダイアログ６１０は、印刷デバイス８２０ａが、自身の印刷ジョブの割り当て分全４０ページのうち２２ページを印刷したこと、印刷デバイス８２０ｂが、自身の印刷ジョブの割り当て分全４０ページのうち１１ページを印刷したこと、およびシナリオ８００の分散印刷ジョブの８０ページのうち合計３３ページが印刷されたことを表示する。
【０１３８】
シナリオ８００は、各印刷デバイス８２０ａおよび８２０ｂが、シナリオ８００の分散印刷ジョブの当該各印刷ジョブの割り当て分を成功裏に印刷して続行する。図８Ｄは、例示の実施形態に係る、シナリオ８００の分散印刷ジョブに対する印刷デバイスの出力を示す。
【０１３９】
図８Ｄは、印刷デバイス８２０ａおよび８２０ｂのそれぞれがシナリオ８００の一部として４２ページ印刷したことを示す―前記４２ページは、最初のカバーシート、シナリオ８００の分散印刷ジョブの印刷ジョブの割り当て分に対する出力の４０ページ、および最終のカバーシートを含む。
【０１４０】
図８Ｄの最初のカバーシート８６０および最終のカバーシート８６４の両方とも、「印刷作業部屋」に位置するプリンター「８２０Ａ」を印刷ジョブの割り当て分を印刷するとして特定し、シナリオ８００の前記分散印刷ジョブは「Ｄｏｃ３のコピー４部」を含み、また「集約指示」を有することを表示する。最初のカバーシート８６０は、シナリオ８００の前記分散印刷ジョブの印刷開始時に利用可能な情報を有する―例えば、前記分散印刷ジョブは、「２つの割り当て分に分割」され、印刷デバイス８２０ａは、両面印刷を示す「印刷ジョブの割り当て分１（２０シートで４０ページ）を印刷する」、そして最終のカバーシート８６４を参照させる最初の集約指示を有する。図８Ｄは、印刷デバイス８２０ａにより印刷される「この割り当て分」は「コピー１乃至２」を含み、そして「コピー３乃至４」は「印刷作業部屋」の「プリンター８２０Ｂから」利用可能であることを表示する、シナリオ８００の前記分散印刷ジョブに対する集約指示を含めて、最終のカバーシート８６４がシナリオ８００の前記分散印刷ジョブの印刷後に利用可能な情報を含むことを示す。
【０１４１】
さらに、図８Ｄの最初のカバーシート８７０および最終のカバーシート８７４の両方とも、「印刷作業部屋」に位置するプリンター「８２０Ｂ」を印刷ジョブの割り当て分を印刷するとして特定し、シナリオ８００の分散印刷ジョブが「Ｄｏｃ３のコピー４部」を含み、また「集約指示」を有することを表示する。最初のカバーシート８７０は、シナリオ８００の前記分散印刷ジョブの印刷開始時に利用可能な情報を有する―例えば、前記分散印刷ジョブは、「２つの割り当て分に分割」され、印刷デバイス８２０ｂは、両面印刷を示す「印刷ジョブの割り当て分２（２０シートで４０ページ）を印刷する」、そして最終のカバーシート８７４を参照させる最初の集約指示を有する。図８Ｄは、「コピー１乃至２」は「印刷作業部屋」の「プリンター８２０Ａから」利用可能であり、そして印刷デバイス８２０ｂにより印刷される「この割り当て分」は「コピー３乃至４」を含むことを表示する、シナリオ８００の前記分散印刷ジョブに対する集約指示を含めて、最終のカバーシート８７４がシナリオ８００の分散印刷ジョブの印刷後に利用可能な情報を含むことを示す。
【０１４２】
印刷デバイス８２０ａおよび８２０ｂにより印刷される、シナリオ８００の前記分散印刷ジョブに対するそれぞれの最初のカバーシートは、薄い灰色で印刷され、印刷デバイス８２０ａおよび８２０ｂにより印刷される、シナリオ８００の前記分散印刷ジョブに対するそれぞれの最終のカバーシートは、濃い灰色で印刷される。多くの場合、印刷ジョブの出力は白色の用紙に印刷される、そのためカラーの用紙に印刷されるカバーシートは素早いカバーシートの識別を可能とする。他のシナリオでは、最初のおよび／または最終のカバーシートは、灰色以外のカラーの用紙に印刷され得る。
［V．動作方法の例］
【０１４３】
図９は、例示の実施形態に係る方法を、フローチャートにて示す。
【０１４４】
方法９００は、１つ以上のクライアントデバイス１１０ａ乃至１１０ｉ、クライアントデバイスとして構成されているコンピューティングデバイス２００、およびクライアントデバイス２２０、５１０、および８１０等のクライアントデバイスにより実行され得る。
【０１４５】
方法９００は、ブロック９１０で始まり得る、そして少なくとも図３乃至８Ｄのコンテキストで上述したように、そこでクライアントデバイスは分散印刷に対する要求を受け取ることができ、また前記クライアントデバイスは複数の候補の印刷デバイスと関連付けられている。
【０１４６】
ブロック９２０で、前記クライアントデバイスは、前記複数の候補の印刷デバイスのうちから複数の印刷デバイスを決定することができる、ここで前記複数の印刷デバイスの各印刷デバイスは、少なくとも図３乃至８Ｄのコンテキストで上述したように、分散印刷に対する要求の少なくとも一部に応えるよう構成され得る。
【０１４７】
実施形態によっては、前記クライアントデバイスは、複数の印刷デバイスを決定する場合、分散印刷に対する要求に関連する１つ以上の印刷オプションを決定する。そして、少なくとも図３、４、および８Ａ乃至８Ｄのコンテキストで上述したように、前記複数の候補の印刷デバイスのうち指定された印刷デバイスに対して、前記クライアントデバイスは、前記指定された印刷デバイスが前記１つ以上の印刷オプションに対応するよう構成されているかどうか判定することができ、前記指定された印刷デバイスが前記１つ以上の印刷オプションに対応するよう構成されていると判定した後、前記クライアントデバイスは、前記指定された印刷デバイスを前記複数の候補の印刷デバイスに追加することができる。
【０１４８】
ブロック９３０で、前記クライアントデバイスは、少なくとも図３乃至８Ｄのコンテキストで上述したように、全体で前記分散印刷に対する要求を満たす複数の印刷ジョブの割り当て分を決定することができる。
【０１４９】
実施形態によっては、前記分散印刷に対する要求は、文書の複数のコピーを印刷する要求を含み得る。そして、少なくとも図３乃至５、および７Ａ乃至８Ｄのコンテキストで上述したように、前記複数の印刷ジョブの割り当て分を決定する場合、前記複数の印刷ジョブの割り当て分のうち指定された印刷ジョブの割り当て分に対して前記文書のコピーの数を決定する。
【０１５０】
他の実施形態において、前記分散印刷に対する要求には、複数のページを印刷する要求が含まれ得る。そして、少なくとも図３乃至８Ｄのコンテキストで上述したように、複数の印刷ジョブの割り当て分を決定する場合、前記複数の印刷ジョブの割り当て分のうち指定された印刷ジョブの割り当て分に対してページ数を決定する。
【０１５１】
さらに他の実施形態において、少なくとも図３乃至６Ｇのコンテキストで上述したように、前記クライアントデバイスが複数の印刷ジョブの割り当て分を決定する場合、複数の印刷デバイスのうち特定の印刷デバイスに対する印刷ボリューム比率を決定する―ここで、印刷ボリューム比率は、特定の印刷デバイスに割り当てられる、分散印刷に対する要求の比率に基づく。
【０１５２】
さらに他の実施形態において、少なくとも図３乃至８Ｄのコンテキストで上述したように、前記クライアントデバイスは、複数の印刷ジョブの割り当て分を決定する場合、複数の印刷デバイスのうち特定の印刷デバイスに対する単位時間当たりの特定のページ数を決定し、複数の印刷デバイスに対する単位時間当たりの合計のページ数を決定し、そして前記特定の印刷デバイスに対するページボリューム比率―ここで、前記ページボリューム比率は、単位時間当たりの合計のページ数に対する単位時間当たりの特定のページ数の比率に基づく―を決定する。
【０１５３】
ブロック９４０では、少なくとも図３乃至８Ｄのコンテキストで上述したように、前記複数の印刷デバイスのうち指定された各印刷デバイスに対して、前記クライアントデバイスは、少なくとも、前記指定された印刷デバイスに対して１つ以上の印刷ジョブの割り当て分を割り当て、そして前記指定された印刷デバイスに対して前記割り当てられた１つ以上の印刷ジョブの割り当て分を提供する。
【０１５４】
実施形態によっては、少なくとも図５乃至６Ｇのコンテキストで上述したように、方法９００は、さらに、印刷ジョブの割り当て分を印刷している間に不調な印刷デバイスにエラーが発生したことを判定し、不調な印刷デバイスを交替させるために代替の印刷デバイスを決定し、そして前記代替の印刷デバイスで印刷ジョブの割り当て分の印刷を続行することを含み得る。特定の実施形態においては、少なくとも図５乃至６Ｇのコンテキストで上述したように、印刷ジョブの割り当て分を印刷している間にエラーが発生したことが判定されると、クライアントデバイスでエラーに関する通知を受け取り、クライアントデバイスを用いて前記通知に関する表示が生成され得る。さらに特定の実施形態においては、前記通知に関連する表示は、一台以上の代替の印刷デバイスの表示を含み得る。そして、代替の印刷デバイスを判定するために、一台以上の代替の印刷デバイスのうちからの代替の印刷デバイスの選択内容を受け取ることができる。
【０１５５】
方法９００の他の実施形態において、複数の印刷ジョブの割り当て分のうちの特定の印刷ジョブの割り当て分には、指示のカバーページが含まれ得る。前記指示のカバーページには、少なくとも図６Ｆ、６Ｇ、７Ｂ、７Ｃ、および８Ｄのコンテキストで上述したように、１つ以上の以下に関する情報が表示され得る―前記特定の印刷ジョブの割り当て分、前記特定の印刷ジョブの割り当て分を印刷するために使用される印刷デバイス、前記特定の印刷ジョブの割り当て分を印刷するために使用されるその他のデバイス、および前記複数の印刷ジョブの割り当て分を印刷するために使用される一台以上の印刷デバイス。
【０１５６】
詳細な説明、図面および請求項に記載された例示の実施形態は限定を意図するものではない。本記載で提示された主題の主旨もしくは範囲から逸脱することなく、他の実施形態を利用し、またその他の変更をすることは可能である。全般的に本明細書に記載され、また図面に示されている本開示の諸態様が、広範囲に渡る様々な構成に再構成し、置き換え、結合し、分割し、および設計することができ、それらのすべてが本記載の中で明らかに考慮されていることは容易に理解されるであろう。
【０１５７】
図面における任意のもしくはすべてのラダー図、シナリオ、およびフローチャートに対して並びに本記載で説明されたように、各ブロックおよび／または通信は、例示の実施形態に従って情報の処理および／または情報の送信を表し得る。別の実施形態も当該例示の実施形態の範囲に含まれる。当該別の実施形態において、例えば、ブロックとして記載された機能、送信、通信、要求、応答および／またはメッセージは、ほぼ同時もしくは逆の順序も含めて、関係する機能性に応じて、示されたもしくは説明された順序から外れた順序で実行することが可能である。さらに、本記載で説明された任意のラダー図、シナリオ、およびフローチャートを用いて、より多いもしくはより少ないブロックおよび／または機能を使用することが可能であり、また当該ラダー図、シナリオ、およびフローチャートは、部分的もしくは全体的にお互いに結合することが可能である。
【０１５８】
情報の処理を表すブロックは、方法もしくは手法の特定の論理機能を実行するように構成することができる回路に対応することが可能である。それに代えてまたはさらに、情報の処理を表すブロックは、モジュール、セグメント、もしくはプログラムコードの一部（関連するデータを含めて）に対応することが可能である。前記プログラムコードは、方法もしくは手法において特定の論理機能もしくは動作を実行するために、プロセッサにより実行可能な１つ以上の指示を含むことが可能である。前記プログラムコードおよび／または関連データは、ディスクもしくはハードドライブあるいはその他の記憶媒体を含む記憶装置等、任意の種類のコンピュータ読み取り可能な媒体に格納することが可能である。
【０１５９】
前記コンピュータ読み取り可能な媒体は、また、レジスタメモリ、プロセッサキャッシュ、およびランダムアクセスメモリ（ＲＡＭ）のような、短期間データを格納するコンピュータ読み取り可能な媒体等の、非一時的でコンピュータ読み取り可能な媒体を含み得る。前記コンピュータ読み取り可能な媒体は、また、例えば、リードオンリーメモリ（ＲＯＭ）、光学もしくは磁気ディスク、コンパクトディスク・リードオンリーメモリ（ＣＤ‐ＲＯＭ）のような、二次もしくは持続的長期記憶装置等の、より長期間プログラムコードおよび／またはデータを格納する非一時的でコンピュータ読み取り可能な媒体を含み得る。前記コンピュータ読み取り可能な媒体は、また、その他の揮発性もしくは非揮発性の記憶システムであってもよい。コンピュータ読み取り可能な媒体は、例えば、コンピュータ読み取り可能な記憶媒体、すなわち有形の記憶デバイスと見なすことができる。
【０１６０】
本記載においてさまざまな態様および実施形態が開示されてきたが、他の態様および実施形態も当業者にとって明白であろう。本記載において開示されたさまざまな態様および実施形態は、例示目的であって限定することを意図するものではなく、真の範囲は以下の請求項により示されている。
【符号の説明】
【０１６１】
１００  システム
１１０ｂ  クライアントデバイス
１２０ａ  印刷デバイス
１３０  ネットワーク
【図１】
2016136387.tif 000009
【図２Ａ】
2016136387.tif 000010
【図２Ｂ】
2016136387.tif 000011
【図３】
2016136387.tif 000012
【図４】
2016136387.tif 000013
【図５】
2016136387.tif 000014
【図６Ａ】
2016136387.tif 000015
【図６Ｂ】
2016136387.tif 000016
【図６Ｃ】
2016136387.tif 000017
【図６Ｄ】
2016136387.tif 000018
【図６Ｅ】
2016136387.tif 000019
【図６Ｆ】
2016136387.tif 000020
【図６Ｇ】
2016136387.tif 000021
【図７Ａ】
2016136387.tif 000022
【図７Ｂ】
2016136387.tif 000023
【図７Ｃ】
2016136387.tif 000024
【図８Ａ】
2016136387.tif 000025
【図８Ｂ】
2016136387.tif 000026
【図８Ｃ】
2016136387.tif 000027
【図８Ｄ】
2016136387.tif 000028
【図９】
2016136387.tif 000029
【外国語明細書】
TITLE
Distributed Printing System
FIELD
[0001]         The present invention relates to a printing system.
BACKGROUND
[0002]         Printing devices have increased in number and geographic footprint throughout the world and have become increasingly connected to networks.  These networks can include a print server.  Typically, when one or more documents and/or other print data are scheduled to be printed, the print data is either directly sent to one print device, or sent to a print server.
[0003]         If the print data is sent directly to one print device, the print device completes a print job for printing the print data.  If the print data is sent to a print server, the print server selects one or more print devices for the print job.  Then, the print server sends the print data to the selected print devices for printing.  The selected print devices print the print data and complete the print job.
SUMMARY
[0004]         In a first aspect, a method is provided.  A client device receives a request for distributed printing, where the client device is associated with a plurality of candidate print devices.  The client device determines a plurality of print devices from among the plurality of candidate print devices, where each print device in the plurality of print devices is configured to service at least part of the request for distributed printing.  The client device determines a plurality of print-job portions, where the plurality of print-job portions collectively satisfy the request for distributed printing.  For each designated print device of the plurality of print devices, the client device at least allocates one or more print-job portions to the designated print device and provides the allocated one or more print-job portions to the designated print device.
[0005]         In another aspect, a system is provided.  The system includes a plurality of candidate print devices and a client device.  The client device includes one or more processors and data storage, the data storage including computer-readable instructions that, when executed by the one or more processors, causes the client device to perform functions.  The functions include: receiving a request for distributed printing; determining a plurality of print devices from among the plurality of candidate print devices, where each print device in the plurality of print devices is configured to service at least part of the request for distributed printing; determining a plurality of print-job portions, where the plurality of print-job portions collectively satisfy the request for distributed printing; and for a designated print device of the plurality of print devices, at least: allocating one or more print-job portions to the designated print device and providing the allocated one or more print-job portions to the designated print device.
[0006]         In another aspect, an article of manufacture is provided.  The article of manufacture includes computer-readable instructions that, when executed by one or more processors of a client device associated with a plurality of candidate print devices, causes the client device to perform functions.  The functions include: receiving a request for distributed printing; determining a plurality of print devices from among the plurality of candidate print devices, where each print device in the plurality of print devices is configured to service at least part of the request for distributed printing; determining a plurality of print-job portions, where the plurality of print-job portions collectively satisfy the request for distributed printing; and for a designated print device of the plurality of print devices, at least: allocating one or more print-job portions to the designated print device and providing the allocated one or more print-job portions to the designated print device.
[0007]         Other aspects, embodiments, and implementations will become apparent to those of ordinary skill in the art by reading the following detailed description, with reference where appropriate to the accompanying drawings.
[0008]         BRIEF DESCRIPTION OF THE FIGURES
FIG. 1 is a diagram illustrating a system, according to an example embodiment;
FIG. 2A is a schematic block diagram illustrating a computing device, according to an example embodiment;
FIG. 2B is a schematic block diagram illustrating a network connecting a client device and a plurality of print devices, according to an example embodiment;
FIG. 3 is a flow diagram illustrating a method, according to an example embodiment;
FIG. 4 is a flow diagram illustrating a method, according to an example embodiment;
FIG. 5 is a diagram illustrating a system used in a scenario for printing output, according to an example embodiment;
FIG. 6A shows a print dialog associated with an application in the scenario of FIG. 5, according to an example embodiment;
FIG. 6B shows a print dialog associated with an application in the scenario of FIG. 5 after a distributed printing selection has been made, according to an example embodiment;
FIG. 6C shows another print dialog after a distributed printing selection has been made, according to an example embodiment;
FIG. 6D shows a print dialog associated with an application in the scenario of FIG. 5 after a print device error interrupts printing of a print-job portion, according to an example embodiment;
FIG. 6E shows a print dialog associated with an application in the scenario of FIG. 5 after reallocation of an interrupted print-job portion, according to an example embodiment;
FIGS. 6F and 6G illustrate print device output in the scenario of FIG. 5, according to an example embodiment;
FIG. 7A shows a print dialog associated with an application in the scenario of FIG. 5, according to an example embodiment;
FIG. 7B illustrates print device output in the scenario of FIG. 5, according to an example embodiment;
FIG. 7C illustrates print device output in the scenario of FIG. 5, according to an example embodiment;
FIG. 8A illustrates a system used in a scenario for printing output accompanied by a print device feature table, according to an example embodiment;
FIG. 8B shows a print dialog associated with an application in the scenario of FIG. 8A, according to an example embodiment;
FIG. 8C shows a print dialog associated with an application in the scenario of FIG. 8A with feature selection information and printer selection information, according to an example embodiment;
FIG. 8D illustrates print device output in the scenario of FIG. 8A, according to an example embodiment; and
FIG. 9 is a flow diagram illustrating a method, according to an example embodiment.
[0009]         DETAILED DESCRIPTION
In the following detailed description, reference is made to the accompanying figures, which form a part hereof.  In the figures, similar symbols typically identify similar components, unless context dictates otherwise.  The illustrative embodiments described in the detailed description, figures, and claims are not meant to be limiting.  Other embodiments may be utilized, and other changes may be made, without departing from the scope of the subject matter presented herein.  It will be readily understood that the aspects of the present disclosure, as generally described herein, and illustrated in the figures, can be arranged, substituted, combined, separated, and designed in a wide variety of different configurations, all of which are explicitly contemplated herein.
I.    Overview
[0010]         This application relates to a distributed printing system that can specify one or more print devices as distributed destinations and send print data to the specified print devices.  The distributed printing system can include a client device, such as a personal computer or other computing device, configured to connect to a number of print devices via a computer network. The client device can distribute print data to some or all of the number of print devices for print devices to complete a print job in parallel, and so reduce printing time.  The client device can communicate directly with the print devices without using an intermediate device, such as a print server. Rather, on the client device, a port monitor can communicate with the printers through the network.
[0011]         The client device can split a print job into several print job portions based on functions, characteristics, status, and/or other criteria of print devices connected to the client device via a network.  For example, suppose a network has three connected print devices: print device A, print device B, and print device C.  Print device A can print in monochrome only, supports A4-sized paper solely, and has a finisher device for stapling, duplexing, etc. Print device B can print in monochrome only, supports A3, A4, and letter-sized paper, and does not have a finisher device.   And print device C can print in monochrome or color, supports A4-sized paper solely, and does not have a finisher device.  So, in this network, some print jobs can be sent to only one printer; e.g., print jobs that require finishing can only be sent to print device A, print jobs that use A3 or letter-sized paper can only be sent to print device B, and color print jobs can only be sent to print device C.   However, print jobs that utilize common features - monochrome printing on A4 paper - can be split and sent to some or all of print devices A, B, and C to increase printing speed.
[0012]         Continuing this example, suppose that a client device of the distributed printing system had a print job that required monochrome printing on A4 paper.  However, at the time of print job submission, suppose that print device B had an error (or fault) condition and so was inoperative. Example error conditions for a print device include, but are not limited to, the print device: having a paper jam, being disconnected and/or taken offline from a network, having a mechanical issue, running low or out of paper, and/or running low or out of toner/ink. Then, the client device can take the error condition of print device B into account and only use print devices A and C to print the print job.  
[0013]         A user of the client device can choose either distributed printing; e.g., printing one print job using multiple print devices or single printing, e.g., printing one print job using only one print device.  The user can enable a default setting to use distributed printing; e.g., using a printer driver for all print jobs, as part of user-specific data, such as user profile, on a per-application basis. Also, the user can enable or disable distributed printing on a printer driver or via an application each time he/she has a print job.
[0014]         A number of options for distributed printing can be provided.  For example, a user may choose splitting the print job on a per-copy or per-page basis when a distributed printing feature is enabled. Splitting the print job on a per-copy basis distributes whole copies of a document to a designated printer, while splitting the print job on a per-page basis allows for splitting a copy of a document to be printed by multiple printers.  For example, if a print job included three copies of a ten-page document to be printed by two identical print devices, then, on a per-copy basis, one print device would likely print one copy and the other print device would likely print the other two copies; while on a per-page basis, each print device could print 15 pages of the 30-page print job by splitting one copy between the printers.
[0015]         Print jobs can be distributed on an equal page or an equal time basis.  As another example, suppose the print job included two copies of a fifteen-page printable item to be printed by two print devices - print device “Faster” that can print 30 pages per minute (PPM), and print device “Slower” that can print 15 PPM.  On an equal-page basis, both print devices would receive 15 pages of the print job, and the job would take about one minute of printing time while print device Slower printed 15 pages at 15 PPM.  On an equal-time basis, since print device Faster is twice as fast as print device Slower, print device Faster would receive 20 pages of the 30 page print job, which is twice as many as the 10 pages that print device Slower would receive.  In this case, the amount of printing time would be reduced to about 40 seconds (2/3 of a minute), as print device Faster will take 40 seconds to print 20 pages at 30 PPM and print device Slower will take 40 seconds to print 10 pages at 15 PPM.
[0016]         A distributed print job can also include instructions on how to assemble the print job once printed.  For example, in the equal-time example above, print device Faster prints 20 pages of a print job involving two copies of a 15-page printable item, and print device Slower prints the remaining 10 pages. Then, the client device can display and/or one or both print devices can print instruction sheet(s) indicating how to assemble the combined print job; e.g., get the one whole copy and part of the second copy from print device Faster and then get the remainder of the second copy from print device Slower. Other options for distributed printing are possible as well.
[0017]         The herein-described distributed printing system can enable the client device to use a number of printing devices to provide higher-speed printing. Further, implementing a distributed printing solution that does not involve a print server is more flexible, as only client devices of the distributed printing system have software specifically for distributed printing.  Eliminating the use of print server software for distributed printing can simplify software distribution, as only client devices are updated when expanding distributed printing features and/or fixing issues in distributed printing software.
II.   System Examples
[0018]         FIG. 1 is a schematic block diagram illustrating a system 100, according to an example embodiment.  The system 100 can include client devices 110a, 110b, 110c, 110d, 110e, 110f, 110g, 110h, and 110i, and print devices 120a, 120b, 120c, 120d, 120e, 120f, and 120g that are interconnected via network 130.  In some examples, system 100 can have more, fewer, and/or different types of client devices and/or print devices than indicated in FIG. 1 
[0019]         In an example embodiment, some or all print devices 120a-120g can be connected to some or all client devices 110a-110i through one or more, possibly different, network protocols.  Data can be transmitted between client devices 110a-110i and print devices 120a-120g over wired and/or wireless links between client devices, print devices, and network 130.  The format of each respective data transmission between devices in system 100 can include one or more of a variety of different formats including: text formats, image formats, extensible mark-up language (XML), database tables, or another original or flat file format.
[0020]         Communications between the client devices and print devices can include: client devices 110a-110i sending data for print jobs and/or print job portions to print devices 120a-120g for printing and print devices 120a-120g sending alert, status, error, and/or other messages to client devices 110a-110i to inform the client devices about error or other conditions of the print devices; e.g., idle, printing, sleeping, paper jam, low or out of paper, low or out of toner/ink, etc.  Other communications between one or more client devices and one or more print devices are possible as well.
[0021]         FIG. 2A is a schematic block diagram illustrating computing device 200, according to an example embodiment.  In some embodiments, computing device 200 can be configured to perform one or more herein-described functions of client devices 110a-110i, 220, 510, and 810, print devices 120a-120g, 520a-520e, 820a, 820b, and 820c, methods 300, 400, and 900, applications 512 and 812, dialogs 610 and 610a, and/or herein-described functionality related to scenarios 500 and 800.
[0022]         Computing device 200 can include one or more input devices 202, one or more output devices 204, one or more processors 206 and memory 208.  Input devices 202 can include user input devices, network input devices, sensors, and/or other types of input devices.  For example, input devices 202 can include user input devices such as a touch screen, a keyboard, a keypad, a computer mouse, a track ball, a joystick, a camera, a voice recognition module, and/or other similar devices.  Network input devices can include wired network receivers and/or transceivers, such as an Ethernet transceiver, a Universal Serial Bus (USB) transceiver, or similar transceiver configurable to communicate via a twisted pair wire, a coaxial cable, a fiber-optic link, or a similar physical connection to a wireline network, such as wired portions of network 130, and/or wireless network receivers and/or transceivers, such as a Bluetooth transceiver, a Zigbee transceiver, a Wi-Fi transceiver, a WiMAX transceiver, a wireless wide-area network (WWAN) transceiver and/or other similar types of wireless transceivers configurable to communicate via a wireless network, such as wireless portions of network 130. Sensors can include devices configured to measure conditions in an environment of computing device 200 and provide data about that environment, such data including, but not limited to, location data, velocity (speed, direction) data, acceleration data, and other data about the environment for computing device 200.  Example sensors include, but are not limited to, GPS sensor(s), location sensors(s), gyroscope(s), accelerometer(s), magnetometer(s), camera(s), light sensor(s), infrared sensor(s), and microphone(s). Other input devices 202 are possible as well.
[0023]         Output devices 204 can include user display devices, audible output devices, network output devices, and/or other types of output devices.  User display devices can include one or more printing components, liquid crystal displays (LCD), light emitting diodes (LEDs), lasers, displays using digital light processing (DLP) technology, cathode ray tubes (CRT), light bulbs, and/or other similar devices. Audible output devices can include a speaker, speaker jack, audio output port, audio output device, headphones, earphones, and/or other similar devices. Network output devices can include wired network transmitters and/or transceivers, such as an Ethernet transceiver, a Universal Serial Bus (USB) transceiver, or similar transceiver configurable to communicate via a twisted pair wire, a coaxial cable, a fiber-optic link, or a similar physical connection to a wireline network, such as wired portions of network 130, and/or wireless network transmitters and/or transceivers, such as a Bluetooth transceiver, a Zigbee transceiver, a Wi-Fi transceiver, a WiMAX transceiver, a wireless wide-area network (WWAN) transceiver and/or other similar types of wireless transceivers configurable to communicate via a wireless network, such as wireless portions of network 130. Other types of output devices can include, but are not limited to, vibration devices, haptic feedback devices, and non-visible light emission devices; e.g., devices that emit infra-red or ultra-violet light.   Other output devices 204 are possible as well.
[0024]         Processors 206 can include one or more general purpose processors, central processing units (CPUs), CPU cores, and/or one or more special purpose processors (e.g., graphics processing units (GPUs), digital signal processors (DSPs), field programmable gated arrays (FPGAs),  application specific integrated circuits (ASICs), etc.). Processors 206 can be configured to execute computer-readable program instructions 210 that are contained in memory 208 and/or other instructions as described herein.
[0025]         Memory 208 can be non-transitory machine-readable storage configured to store data and/or instructions.  In particular, memory 208 can store machine-readable instructions 210 that, when executed by processor(s) 206, can cause a computing device to perform functions, such as but not limited to, functions of herein-described devices, networks, methods, features, and scenarios. 
[0026]         FIG. 2B is a schematic block diagram illustrating network 130 connecting client device 220 and a plurality of print devices 240a, 240b … 240n, according to an example embodiment. Client device 220 is an example of computing device 200 having input devices 202, output devices 204, processors 206, and memory 208.  Memory 208 of client device 220 stores machine-readable instructions and/or data for software, such as, but not limited to printer driver 232, one or more applications 234, spooler 236, and port monitor 238.  In some embodiments, a smaller or larger plurality of print devices can be connected to network 130, and therefore to client device 220, than shown in FIG. 2B.
[0027]          Printer driver 232 can be configured to allow client device 220 to communicate with one or more of print devices 240a, 240b … 240n (via network 130) that convert print data; e.g., information to be printed from a format used by client device 220 to a format usable by one or more of print devices 240a, 240b … 240n for printing the print data as output.  In some embodiments, printer driver 232 can provide a user interface, such as a dialog or other user interface object, to enable review, selection, and/or modification of various parameters, such as by a user of client device 220, associating with printing a print job having print data; e.g., one or more print devices to print the print job, copies to be printed, print features, finishing for the print job, etc.  In some embodiments, print devices 240a, 240b … 240n can be different types of printing devices; e.g., have different manufacturers, different models, and/or different versions of software/firmware.  In these embodiments, client device 220 can have multiple printer drivers 232 with at least one printer driver for each different type of printing device connected to client device 220.
[0028]         Applications 234 can be software that, when executed by client device 220, enables client device 220 to perform various tasks.  Example tasks include, but are not limited to, word processing, document review, interacting with networks such as the Internet, playing and/or generating images, audio and/or video information, developing software, financial planning, spreadsheet operations, calculations, games, communications, and computer administration.  Spooler 236 can be software that, when executed by client device 220, is configured to order print jobs by temporarily storing print data and sending print data to a print device, such as one of print devices 240a, 240b… 240n,  when the print device is active and waiting to process (print) the print data.
[0029]         Port monitor 238 can be software that, when executed by client device 220, establishes a communications path between spooler 236 and printer driver 232 and the kernel-mode port drivers that access I/O port hardware. Port monitors 238 can also manage and configure printer ports.  Printer ports can be a physical connection between a print queue of print jobs managed by spooler 236 and a printer device; e.g., one of print devices 240a, 240b … 240n. 
[0030]         Port monitor 238 can then support one or more instances of one or more types of ports. For print queues representing multiple printer devices (through multiple ports), spooler 236 can then send a print job to a first available port or a specific port. If the port monitor indicates that the specific (or first available) port is busy or in error, spooler 236 can restore the print job to a print queue of the specified port or add the print job to another print queue of  a port supported by port monitor 238.  In some embodiments, port monitor 238 can be configured to split a print job among multiple ports, effectively sending the print job to multiple print devices.
[0031]         In other embodiments, printer driver 232 can be configured to enable whether a print job is printed using single printing, or printing with only one print device, and distributed printing, or printing that can be performed by multiple printing devices.  Data stored in memory 208 can store a default setting for either single printing or distributed printing, and this data can be used to determine default settings; e.g., a default setting for a user interface to printer driver 232.  Other data can be stored in memory 208 related to functions, characteristics, and options of print devices 240a, 240b… 240n, a default primary printing device and/or default alternate printing devices, default groups of printing devices to be used during distributed printing; e.g., use a group including print devices 240a and 240n for distributed print jobs.
III.  Example Distributed Printing Methods
[0032]         FIG. 3 is a flow diagram illustrating method 300, according to an example embodiment.  Method 300 is a method for distributed printing of a print job that can be carried out by a computing device connected to a plurality of printers; e.g., computing device 200 or client device 220.
[0033]         Method 300 can begin at block 310, where a selection can be made to print a print job using distributed printing (as opposed to using single printing).  For example, the selection can be made by a user of the computing device via a graphical user interface (GUI) enabling interaction with a printer driver, such as printer driver 232 of FIG. 2B.  The GUI for the printer driver can be opened by using the GUI of the computing device to select a “Print” or other option of a software application, such as application 234 of FIG. 2B.
[0034]         At block 320, the computing device can identify connected printing devices and obtain print-device-related information on the connected printing devices. The print-device-related information can include, but is not limited to, status information e.g., idle, busy, out of paper, toner low/out, etc., print device location, print device manufacturer, print device model, print device firmware, print device function  information, and print device feature information.
[0035]         At block 330, the computing device can select candidate printing devices for printing the distributed print job from the connected printing devices.  In some embodiments, connected printing devices can be filtered out based on aspects of the print-device-related information; e.g., based on print device status, print device model/manufacturer/firmware, print device location, predefined user criteria, etc.
[0036]         The computing device can provide some or all of the print-device-related information about the connected printing devices, perhaps after filtering, for possible selection for use in printing the distributed print job.  For example, the computing device can provide the print-device-related information using the GUI of block 310.  Then, the GUI can be used to select connected printing devices for use (or not for use) as candidate printing devices.  The candidate printing devices can be print devices designated to print a print-job portion of the distributed print job.  In some embodiments, the computing device can select candidate printing devices from among the connected (and perhaps filtered) printing devices as candidate printing devices - in particular of these embodiments, print-device-related information may not be presented.
[0037]         At block 340, the computing device can specify, or otherwise determine, how to split the distributed print job into print-job portions.  The distributed print job can be split according to the obtained print-device-related information and/or by user selection; e.g., user selection can be made via a GUI, such as the GUI of blocks 310 and 330. For example, the distributed print job can be split as an equal number of pages per printer; e.g., if the total distributed print job includes 120 pages to be printed among four print devices, then the distributed print-job can be split into four equal-sized print-job portions of 30 pages.
[0038]         As another example, if the print-device-related information includes page-per-minute (PPM) or similar information, the distributed print job can be split as an equal amount of estimated print time.  Equation (1) below can be used to split a distributed print job having a number of pages NP to a number PR of print devices on a per-page basis so that each print device will print for a roughly equal amount of time:
2016136387.tif 000030
(1)
where:
Pi = the number of pages in the print-job portion for print device i, with iε[1, PR],
PR = the number of print devices printing the distributed print job,
NP = the number of pages in the distributed print job, and
PPMi = the number of pages per minute for print device i.
[0039]         The ratio 
2016136387.tif 000031
can be termed the page-volume ratio for print device i, where the numerator PPMi  is a particular number of pages per unit time for particular print device i of a plurality of print devices 1…PR, and where the denominator  ΣPPM is a total number of pages per unit time for the plurality of print devices 1…PR.
[0040]         For example, suppose the above-mentioned 120-page distributed print job was to be split among four printers having the following PPM values: 15, 20, 25, and 30.  Then, in terms of Equation (1), PR = 4, NP = 120, PPM1 = 15, PPM2 = 20, PPM3 = 25, and PPM4 = 30, and so ΣPPM = 90.  Then, the number of pages in the print-job portion for print device 1 (printing at a rate of 15 PPM) determined by Equation (1) is: P1 = 120 * (15/90) = 20 pages.  Similarly, for respective print devices 2, 3, and 4 printing at respective rates of 20, 25, and 30 PPM,  the respective numbers of pages in the print-job portions for respective print devices determined  by Equation (1) are: P2 = 120 * (20/90) = 27 pages (rounded up), P3 = 120 * (25/90) = 33 pages (rounded down), and P4 = 120 * (30/90) = 40 pages.  The estimated amount of time to print the respective print-job portion on each print device is about 1.35 minutes -- print device 1 is estimated to take 20 pages / 15 PPM = 1.33 minutes, print device 2 is estimated to take 27 / 20 = 1.35 minutes, print device 3 is estimated to take 33 / 25 = 1.32 minutes, and print device 4 is estimated to take 40 / 30 = 1.33 minutes.  Thus the example distributed print job should complete on all print devices at about the same time after approximately 1.35 minutes of printing.
[0041]         Print-job portions can be split on per-copy boundaries.  For example, suppose a distributed print job having seven copies of a ten-page document (total 70 pages) was to be split between two print devices as equally as possible on (a) per-page boundaries and (b) per-copy boundaries.  In example (a), each print device could print 70 / 2 = 35 pages, as the distributed print job was divided on per-page boundaries.  In example (b), one print device would print 40 pages or four copies of the document, and the other print device would print 30 pages or three copies, as the distributed print job was divided on per-copy boundaries.
[0042]         Print-job portions can be split via a GUI, such as the GUI discussed above in the context of blocks 310, 330, and this block.   Print-job portions can be allocated on a per-page basis, a per-copy basis, or a print volume ratio basis.  A print volume ratio can be a percentage or ratio-based specification of a print-job portion of the distributed print job.  For example, suppose a distributed print job of 10 copies of a 30 page document for a total of 300 pages was to be allocated among three print devices via a GUI.  Then, the GUI could be used to select a number of pages for each print-job portion, a number of copies for each print-job portion, or a print volume ratio / percentage of pages for each print-job portion.  In this example, the GUI could be used to equivalently specify print job portions of:  150, 90, and 60 pages; 5, 3, and 2 copies; or 50%, 30%, and 20% print volume ratios.  Other procedures for splitting distributed print jobs into print-job portions are possible as well.
[0043]         At block 350, the computing device can split the distributed print job into print-job portions as specified in block 340.
[0044]         At block 360, the computing device can send the print-job portions to a spooler of the computing device, such as spooler 236.
[0045]         At block 370, the spooler can send the print-job portions to a port monitor of the computing device, such as port-monitor 238.  The port monitor can send the respective print-job portions to the respective printing devices selected at block 330 to print the distributed print job.
[0046]         At block 380, each print device can then print its respective print-job portion, and so the distributed print job can be completed by the selected print devices.
[0047]         In some embodiments, at block 370, the spooler can send the print-job portions directly to the print devices; i.e., block 380 is not performed.  In other embodiments, at block 360, the computing device can send the print-job portions directly to the port monitor; i.e., block 370 is not performed.  In still other embodiments, at block 360, the computing device can send the print-job portions directly to the print devices; i.e., blocks 370 and 380 are not performed. 
[0048]         FIG. 4 is a flow diagram illustrating method 400, according to an example embodiment.  Method 400 is a method for distributed printing of a print job that can be carried out by a computing device connected to a plurality of printers; e.g., computing device 200 or client device 220.
[0049]         Method 400 can begin at block 410, where a selection can be made to print a print job using distributed printing, such as discussed above in the context of block 310 of method 300 and FIG. 3.
[0050]         At block 420, the computing device can identify connected printing devices and obtain print-device-related information on the connected printing devices, such as discussed above in the context of block 320 of method 300 and FIG. 3.
[0051]         At block 430, the computing device can select candidate printing devices for printing the distributed print job from the connected printing devices, such as discussed above in the context of block 330 of method 300 and FIG. 3.
[0052]         At block 440, the computing device can specify, or otherwise determine, how to split the distributed print job into print-job portions, such as discussed above in the context of block 340 of method 300 and FIG. 3.
[0053]         At block 450, the computing device can send the distributed print job to a spooler of the printing device, such as spooler 236. 
[0054]         At block 460, the spooler can send the distributed print job to a port monitor of the computing device, such as port monitor 238.  The port monitor can then split the distributed print job into print-job portions as specified in block 440.
[0055]         At block 470, the spooler can send the print-job portions to a port monitor of the computing device, such as discussed above in the context of block 370 of method 300 and FIG. 3.
[0056]         At block 480, each print device can then print its respective print-job portion, and so the distributed print job can be completed by the selected print devices, such as discussed above in the context of block 380 of method 300 and FIG. 3.
[0057]         To compare methods 300 and 400: in method 300, the computing device splits the distributed print job into print-job portions and then spools the print-job portions, while in method 400, the computing device spools the distributed print job, the spooler forwards on the distributed print job onto the port monitor, and the port monitor splits the distributed print job into print-job portions.
IV.   Example Distributed Printing Scenarios
[0058]         FIG. 5 is a diagram illustrating a system used in scenario 500 for printing output, according to an example embodiment.  Scenario 500 involves a system including client device 510 and print devices 520a, 520b, 520c, 520d, and 520e all interconnected via network 530.
[0059]         In scenario 500, client device 510 is executing software application 512 to work with a 40-page document entitled “Doc1” which is printed twice during the scenario.  Initially in scenario 500, a user of client device 510 would like to print nine copies of document Doc1, as a “9-copy” distributed print job.  Later in scenario 500, a user of client device 510 would like to print twelve copies of document Doc1, as a “12-copy” distributed print job.
[0060]         FIG. 5 shows estimated printing rate values for each print device: print devices 520a, 520b, and 520c can each print at a rate of 50 PPM, print devices 520d can print at a rate of 5 PPM, and print device 520e can print at a rate of 25 PPM.  Table 1 below includes estimates of how long various combinations of print devices 520a-520e would take to print 360 pages:
2016136387.tif 000032
[0061]         Therefore, in scenario 500, distributed printing using all five print devices can lead to an estimated speed up in printing the 360 page print job of up to 3.6 times over the fastest single print device and up to 36 times over the slowest single print rate.
[0062]         Scenario 500 continues with a user of client device 510 using application 512 to print the document Doc1. FIG. 6A shows a print dialog 610 associated with application 512 in scenario 500, according to an example embodiment.  Dialog 610 includes selection 612 for distributed printing - the user of client device 510 can make selection 612 to use distributed printing to print the requested nine copies of the 40 page document Doc1.
[0063]         FIG. 6B shows print dialog 610 associated with application 512 in scenario 500 after distributed printing selection 612 has been made, according to an example embodiment.  In response to making distributed printing selection 612, a printer driver, application 512, and/or other software executing on client device 510 can update dialog 610, which is configured to display, choose, and/or modify at least page distribution selections 614 and 616, print volume ratio settings 618, 620, 622, 624, and 626, and notification 628.
[0064]         Dialog 610 allows for allocation of a distributed print job to print devices on the basis of a print volume ratio, or percentage of the entire print job. This print volume ratio can be specified for each print device from 0 to 100. At one extreme, if a print volume ratio for a print device is set to 0, then the print device is not allocated a print-job portion of the distributed print job.  At another extreme, if a print volume ratio for a print device is set to 100, then the print device is assigned the entire distributed print job; i.e., the print device is assigned to single print the print job.  Assigning print volume ratio values between 0 and 100 to a print device indicates that the print device is to print a print-job portion of the distributed print job.  A sum of the total value of the print volume ratios for all print devices should be 100, to indicate allocation of the entire distributed print job to print devices.  In some embodiments, dialog 610 can be configured to not initiate printing of the distributed print job until the total value of the print volume ratios for all print devices is set to 100.
[0065]         In scenario 500, the 9-copy distributed print job has 360 pages.  As shown in FIG. 6B, dialog 610 is used to allocate 45% of the 9-copy distributed print job to each of print devices 520a and 520b via respective print volume ratio settings 618 and 620, to not allocate any portion; that is, 0%, of the 9-copy distributed print job to respective print devices 520c and 520d via respective print volume settings 622 and 624, and to allocate 9% of the 9-copy distributed print job to print device 520e via print volume ratio setting 626. Notification 628 displays information that 99% of the 9-copy distributed print job has been allocated to print devices, and 1% remains to be allocated.
[0066]         FIG. 6C shows print dialog 610a after distributed printing selection 612 has been made, according to an example embodiment. Print dialog 610a is a variation of print dialog 610 enabling page count settings 618a, 618b, 618c, 618d, and 620a for respective print devices 520a, 520b, 520c, 520d, and 520e.  Dialog 610a allows for allocation of a distributed print job to print devices on a per-page basis. In some embodiments, dialog 610a can be configured to not initiate printing of the 9-copy distributed print job until the total value of the enabling page count settings for all print devices equals a total number of pages for the distributed print job.
[0067]         As shown in FIG. 6C, dialog 610a could be used to allocate 162 pages of the 9-copy distributed print job to each of print devices 520a and 520b via respective page count settings 618a and 620a, to not allocate any portion; that is, 0 pages of the 9-copy distributed print job to respective print devices 520c and 520d via respective page count settings 622a and 624a, and to allocate 35 pages of the 9-copy distributed print job to print device 520e via page count setting 626a.  Notification 628a displays information that 359 pages of distributed print job have been allocated to print devices, and one page is remaining to be allocated.
[0068]         Scenario 500 continues with dialog 610 specifying an initial split of the entire (100%) 9-copy distributed print job to three print devices: 45% to print device 520a, 45% to print device 520b, and 10% to print device 520e.  Then, after splitting the entire 9-copy distributed print job (i.e., once the sum of print volume ratios is set to 100), dialog 610 can be used to initiate printing of the 9-copy distributed print job; e.g., by selection of the “Print” button at lower left of dialog 610.
[0069]         Once instructed to initiate printing, client device 510 can use the techniques of either method 300 or method 400 to split the 9-copy distributed print job into print-job portions and provide print-job portions to print devices 520a, 520b, and 520e for printing allocated percentages of the distributed print job.  In scenario 500, print device 520a receives a print-job portion of the first 45% (or 162 pages) of the 9-copy distributed print job, print device 520b receives a print-job portion of the second 45% of the 9-copy distributed print job, and print device 520e receives a print-job portion of the remaining 10% (or 36 pages) of the 9-copy distributed print job.  After reception of their respective print-job portions, print devices 520a, 520b, and 520e start printing their respective print-job portions.
[0070]         In scenario 500, the first 162 pages of the 9-copy distributed print job are assigned to print device 520a, which is the first print device assigned a print-job portion via dialog 610,  the second 162 pages of the 9-copy distributed print job are assigned to print device 520b, which is the second print device assigned a print-job portion via dialog 610, and the last 36 pages of the 9-copy distributed print job are assigned to printed by print device 520e, which is the third or last print device assigned a print-job portion via dialog 610. In other scenarios, dialog 610 and/or 610a can be configured to specify an assignment of an order of print-job portions to print devices. For example, dialog 610 and/or 610a could be used to assign print-job portions “1”, “2a”, and “3” to respective print devices 520e, 520a, and 520b.  In keeping with this example assignment, print device 520e could print the first 162 pages of the 9-copy distributed print job, print device 520a could print the next 162 pages of the 9-copy distributed print job, and print device 520b could print the last 36 pages of the 9-copy distributed print job.  Other techniques for assigning print-job portions to print devices are possible as well.
[0071]         FIG. 6D shows dialog 610 associated with application 512 in scenario 500 after an error of print device 520b interrupts printing of a print-job portion, according to an example embodiment.  In some embodiments, dialog 610 can be configured to provide notifications of one or more error conditions that arise during printing of distributed print jobs.  Once an error condition arises on a print device, printing of the print-job portion can be paused automatically. In response to the one or error conditions, the distributed print job can be resumed without change (e.g., in response to a paper low or other message that does not preclude the print device from continuing to print a print-job portion), the distributed print job can be canceled, the print-job portion can be removed, paused, and/or reallocated from the print device with the error condition.
[0072]         The client device and/or a print device can inform a user about one or more error conditions.  For example, one or more messages related to an error condition can be shown on a display unit of a print device, such as an operation panel equipped with the printing device.  The messages can also be displayed on the client device; e.g., as part of dialog 610 or as part of a printer status window / control panel. The message(s) related to error condition(s) can provide information about which print device is having one or more error conditions, information about one or more error conditions, and perhaps information about correcting the error condition(s).
[0073]         A print-job portion that is interrupted by one or more error conditions can be moved to one or more alternative print devices and/or can be restarted on the same print device once the error condition clears. For example, suppose 100 pages of a print-job portion are assigned to print device PD1 and an error condition arises on print device PD1 after 40 pages are printed.  Then, the error condition can be reported and suitable display message(s) generated for display on dialog 610 and/or on a printer status window / control panel as discussed above.   
[0074]         In some cases, the remaining 60 pages can be printed on an alternative print device.  In other related cases, the print-job portion can be paused while one or more error conditions on print device PD1 are cleared.  Once the one or more error conditions are cleared, the print-job portion can be restarted so that the remaining 60 pages can be printed on print device PD1.  In even other related cases, multiple error conditions can arise; e.g., a print jam and lack of toner, and some but not all of the multiple errors could be cleared.  In these cases where multiple error conditions are partially but not completely cleared, some or all of the remaining 60 pages can be printed on the alternative print device.
[0075]         As another example, suppose  10 pages * 50 copies = 500 pages of a print-job portion assigned to print device PD1 and an error condition arises after 19 complete copies are printed, then the remaining 31 copies / 310 pages can be printed on the alternative printing device.  If the 20th copy was partially printed by print device PD1 before the error condition, the alternative printing device can start with printing, as a remaining print-job portion, either the entire 20th copy or can start with the page being printed by print device PD1 at the time of the error condition. Or, in related examples, the print-job portion can be paused while one or more error conditions are cleared on print device PD1, the error condition(s) can be completely cleared, the print-job portion can be restarted so that the remaining 31 copies / 310 pages can be printed on print device PD1.  In cases where multiple error conditions are partially but not completely cleared, some or all of the remaining 31 copies can be printed on the alternative print device.
[0076]         In response to error conditions, a print-job portion can be further subdivided.  For example, a port monitor and/or other software on client device 510 may split an interrupted print-job portion into smaller sub-portions based on a number of pages and/or a number of copies, to minimize reprinting when an error happens. For example, suppose a distributed print job of 100 copies is split into 4 print-job potions of 25 copies and distributed to 4 print devices including print device PD2.  Then, suppose PD2 develops an error condition after printing the 13th copy of its print-job portion. Then, the remaining 12 copies of PD2’s print-job portion can be further subdivided into 2 or more print-job sub-portions - for example, PD2’s remaining print job portion can be split into 3 print-job sub-portions of four copies each. Then, each of the three print devices already working on the distributed print job can be further assigned one of the three print-job sub portions.
[0077]         As another example, print device PD2’s remaining print job portion can be split into two print-job sub-portions: one sub-portion of six copies for an alternative print device to print, and three print-job sub-portions of two copies to be assigned to each of the three print devices already working on the distributed print job.  As still another example, print device PD2’s remaining print job portion can be split into two (or more) print-job sub-portions to be printed by two (or more) alternative print devices not already working on the distributed print job. Such recovery and/or print-job subdivision procedures may be set before printing a distributed print job, for example in default settings about alternative print devices and/or subdividing print-job portions. 
[0078]         In scenario 500, during the printing of the 9-copy distributed print job using print devices 520a, 520b, and 520c, print device 520b developed a paper jam after printing 22 of 162 pages, as indicated by printer status 632 and the “Error! Paper Jam!” error message 634 for print device 520b in status region 630 of dialog 610.  Status region 630 also indicates that the other two print devices printing the 9-copy distributed print job - print devices 520a and 520e - are in the process of successfully printing their portions: print device 520a has printed 38 out of its allocated 162 pages and print device 520e has printed 20 out of its allocated 36 pages.
[0079]         FIG. 6E shows a dialog 610 associated with application 512 in scenario 500 after reallocation of the interrupted print-job portion initially allocated to print device 520b, according to an example embodiment.  In scenario 500, after print device 520b develops a paper jam and a user of client device 510 is so informed by printer status region 630 of print dialog 610, the user can use dialog 610 to reallocate the print-job portion interrupted by the print jam on print device 520 to another print device.
[0080]         FIG. 6E shows print dialog 610 with print volume ratio setting 620 associated with print device 520b set to 0% and print volume ratio setting 622 associated with print device 520c set to 45%.  By changing print volume ratio setting 620 from 45% as set earlier in scenario 500; e.g., as shown in FIGS. 6B and 6D, to 0% as shown in FIG. 6E, the user of dialog 610 has indicated that the print-job portion allocated to print device 520b is no longer allocated to print device  520b.  In some embodiments, dialog 610 allows deallocation of print-job portions only from print devices that have error conditions, such as the paper jam condition of print device 520b.
[0081]         By also changing print volume ratio setting 622 from 0% as set earlier in scenario 500; e.g., as shown in FIGS. 6B and 6D, to 45% as shown in FIG. 6E, the user of dialog 610 has indicated that the print-job portion previously allocated to print device 520b is now allocated device 520c; e.g., print device 520c is an alternate print device used if or when print device 520b develops an error condition.  
[0082]         In some embodiments, dialog 610 allows allocation of print-job portions to alternate print devices after a print device allocated to print a print-job portion has developed an error condition, such as the allocation of a print-job portion to print device 520c after the paper jam condition of print device 520b.  In other embodiments, dialog 610 and/or another user interface object is configured to allow specification of alternate print devices either before or during allocation of print-job portions to print devices. In scenarios other than scenario 500, the error condition of print device 520b can be cleared; e.g., the paper unjammed from print device 520b, and print device 520b can continue on with printing the print-job portion.
[0083]         In FIG. 6E, status region 630 includes message 636 that indicates that 120 unprinted pages of the print-job portion allocated to print device 520b have been “Moved” or reallocated “to 520C” - in scenario 500 as shown in status region 630, 42 of the 162 pages of the print-job portion initially-assigned to print device 520b have been printed, leaving 120 unprinted pages when print device 520b developed its paper jam. Status region 630 also includes printer status 638 to indicate that “18 of 120” pages of the print-job portion assigned to print device 520c have been printed. Status region 630 also indicates that the other two print devices printing the distributed print job of scenario 500 - print devices 520a and 520e - have continued to successfully print more of their allocated print-job portions.  In particular, status region 630 indicates that print device 520a has printed 62 of its allocated 162 pages and print device 520e has printed 31 of its allocated 36 pages.  
[0084]         Scenario 500 continues with print devices 520a, 520c, and 520e each successfully printing their respective print job portions of the 9-copy distributed print job. FIGS. 6F and 6G each illustrate print device output for the 9-copy distributed print job of scenario 500, according to an example embodiment. 
[0085]         The client device can provide instructions that can be used to assist in assembling, or combining, output of print-job portions into output of a distributed print job. For example, each print-job portion can have one or more instruction cover sheets.   An instruction cover sheet can indicate print device status, error conditions (if necessary), print device location(s), and/or instructions on how to assemble the printed output of the separately-printed print-job portions into the printed output of the distributed print job.   In some embodiments, part or all of the information in an instruction cover sheet can be provided on a user interface of the client device; e.g., as part of dialog 610 or another dialog. 
[0086]         Paper instruction cover sheets can indicate physical start and end positions within printed output of a distributed print job.  Paper instruction cover sheets can inform a user when other print jobs are printed before or after print-job portions.  For example, suppose a print device fails to complete a print-job portion of a distributed portion job, and the remaining print-job portion is transferred to the alternative printer; e.g., such as occurred in scenario 500 with the paper jam of print device 520b and transferring of the print-job portion to print device 520c. In this case, another print job may have been printed between these separate print-job portions. Or even if no other print job is performed, separately printed print-job portions may not be contiguous portions; for example, when print-job portions are printed by more than two printers.  In particular embodiments, paper instruction cover sheets can be printed in color paper to aid user visibility.
[0087]         FIG. 6F shows that print device 520a printed 164 pages:  initial cover sheet 640, output 642 representing the first 162 page print-job portion of the 9-copy distributed print job of scenario 500, and final cover sheet 644.  In other scenarios, print device 520a can generate output 642 without printing initial cover sheet 640 and/or final cover sheet 644. 
[0088]         In scenario 500, print device 520a first printed initial cover sheet 640 at the onset of printing the print-job portion, then printed output 642, and then printed final cover sheet 644.  Both initial cover sheet 640 and final cover sheet 644 identify printer “520A” located in “Room 501” as printing the print-job portion, indicate that the 9-copy distributed print job includes “9 copies of Doc1”, and have “Assembly Instructions”. Initial cover sheet 640 indicates information available at the onset of printing the distributed print job; e.g., the distributed print job was “split into 3 portions” and that print device 520a “will print Print Job Portion 1 (162 pp)”, and has initial assembly instructions that refer to final cover sheet 644.
[0089]         Final cover sheet 644 has information available after printing the 9-copy distributed print job, such as an indication that the 9-copy distributed print job was “printed on 4 printers into 3 portions”.  The assembly instructions of final cover sheet 644 indicate that: (1) “[t]his portion” printed on print device 520a “has Copies 1-4 and [the] first 2 pages of Copy 5” of the 9-copy distributed print job, (2) print device 520b located in “Room 513” has printed print-job portion “2a” that includes the “last 38 pages of Copy 5 and [the] first 4 pages of Copy 6” of the 9-copy distributed print job, (3) print device 520c located in “Room 612” has printed print-job portion “2b” that includes the “last 36 pages of Copy 6, Copies 7-8, and [the] first 4 pages of Copy 9” of the 9-copy distributed print job, and (4) print device 520e located in “Room 502” has printed print-job portion “3” that includes the “last 36 pages of Copy 9” of the 9-copy distributed print job.  
[0090]         FIGS. 6F and 6G show that respective print devices 520b, 520c, and 520e respectively printed 44 pages, 122 pages, and 38 pages as part of scenario 500.  Each of print devices 520b, 520c, and 520e printed an initial cover sheet, output for a print-job portion of the 9-copy distributed print job of scenario 500, and a final cover sheet.  
[0091]         Each of the initial cover sheets printed by print devices 520a, 520b, 520c, and 520e  for the 9-copy distributed print job are printed in a light grey color, and each of the final cover sheets printed by print devices 520a, 520b, 520c, and 520e for the 9-copy distributed print job are printed in a dark grey color.  In many cases, print-job output is printed on white paper, and so cover sheets printed on colored paper allow for ready cover sheet identification.  In other scenarios, initial and/or final cover sheets can be printed on other colors of paper than grey. 
[0092]         FIG. 6F shows that print device 520b printed initial cover sheet 650, output 652 representing a 42 page sub-portion of the second 162 page print-job portion of the 9-copy distributed print job of scenario 500, and final cover sheet 654.  FIG. 6G shows that print device 520c printed initial cover sheet 660, output 662 representing a 120 page sub-portion of the second 162 page print-job portion of the 9-copy distributed print job of scenario 500, and final cover sheet 664.  FIG. 6G also shows that print device 520e printed initial cover sheet 670, output 672 representing a third 36 page print-job portion of the 9-copy distributed print job of scenario 500, and final cover sheet 674.    In other scenarios, some or all of respective print devices 520b 520c, 520e can respectively generate outputs 652, 662, 672 without printing respective initial cover sheets 650, 660, 670 and/or respective final cover sheets 654, 664, 674.
[0093]         In scenario 500, respective print devices 520b and 520e first printed respective initial cover sheets 650, 670 at the onset of printing their respective print-job portions, then printed respective outputs 652, 672 and then printed respective final cover sheets 654, 674.   Scenario 500 also includes print device 520c printing initial cover sheet 660 upon taking over as an alternative print device for print device 520b, printing output 662, and then printing final cover sheet 664.
[0094]          Both initial cover sheet 650 and final cover sheet 654 of FIG. 6F identify printer “520B” located in “Room 513” as printing a print-job portion, indicate that the 9-copy distributed print job includes “9 copies of Doc1”, and have “Assembly Instructions”. Initial cover sheet 650 indicates information available at the onset of printing the 9-copy distributed print job such as discussed above in the context of initial cover sheet 640. Final cover sheet 654 has information available after printing the 9-copy distributed print job, including assembly instructions similar to the assembly instructions of final cover sheet 644 discussed above, except that the assembly instructions of final cover sheet 654 indicate that “copies 1-4 and [the] first 2 pages of Copy 5” can be obtained from “Printer 520A” in “Room 501” and that “this portion” printed by print device 520a includes the “last 38 pages of Copy 5, and [the] first 4 pages of Copy 6.”
[0095]         Also, both initial cover sheet 660 and final cover sheet 664 of FIG. 6G identify printer “520C” located in “Room 612” as printing a print-job portion, indicate that the 9-copy distributed print job includes “9 copies of Doc1”, and have “Assembly Instructions”. Initial cover sheet 660 has information available when print device 520c took on printing of the 9-copy distributed print job - this information includes an indication that print device 520c printed “a partial print job portion” that “was started by Printer 520B / Room 513, which printed 40 pages as Portion 2a” and that print device 520c “will complete the print job portion as Portion 2b”, as well as assembly instructions discussed above in the context of initial cover sheet 640. 
[0096]         FIG. 6G shows that final cover sheet 664 indicates information available after printing the 9-copy distributed print job, including assembly instructions similar to the assembly instructions of final cover sheet 644 discussed above, except that the assembly instructions of final cover sheet 664 indicate that “copies 1-4 and [the] first 2 pages of Copy 5” can be obtained from “Printer 520A” in “Room 501” and that “this portion” or portion “2b” printed by print device 520c includes the “last 36 pages of Copy 6, Copies 7-8, and [the] first 4 pages of Copy 9.”
[0097]         Further, both initial cover sheet 670 and final cover sheet 674 of FIG. 6G identify printer “520E” located in “Room 502” as printing a print-job portion, indicate that the 9-copy distributed print job includes “9 copies of Doc1”, and have “Assembly Instructions”. Initial cover sheet 670 has information available at the onset of printing the 9-copy distributed print job, such as discussed above in the context of initial cover sheet 640. Final cover sheet 674 indicates information available after printing the 9-copy distributed print job, including assembly instructions similar to the assembly instructions of final cover sheet 644 discussed above, except that the assembly instructions of final cover sheet 674 indicate that “copies 1-4 and [the] first 2 pages of Copy 5” can be obtained from “Printer 520A” in “Room 501” and that “this portion” or portion “3” printed by print device 520e includes the “last 36 pages of Copy 9.”
[0098]         Scenario 500 continues with another “12-copy” distributed print job being submitted; in this case, the print job includes printing twelve copies of the 40 page document entitled “Doc1”, for a total print job size of 480 pages. 
[0099]         FIG. 7A shows print dialog 610 associated with application 512 in scenario 500, according to an example embodiment.  Dialog 610 includes selection 612 for distributed printing - the user of client device 510 can make selection 612 to use distributed printing to print the requested twelve copies of the 40 page document Doc1. In response to making distributed printing selection 612, a printer driver, application 512, and/or other software executing on client device 510 can update dialog 610 which is configured to display, choose, and/or modify at least selections 614, 616, 710, 712, 714,  print device selection information 720, distributed print job information 722, and print device / distributed print job statuses 734. 
[00100]        In contrast to dialog 610 shown in FIG. 6A, where selection 614 for manual page distribution was made, FIG. 7A shows that selection 616 for automatic page distribution was made.  After making selection 616, dialog 610 can be updated to display selections 710, 712, and 714 related to automatic page distribution.  
[00101]        Selection 710 can instruct client device 510 whether or not to split copies as part of splitting the distributed print job into print-job portions. If “Yes” is chosen for selection 710, as shown in FIG. 7A, then client device 510 can split the distributed print job on per-copy boundaries; that is, each print-job portion will have a whole number of copies of “Doc1” to print.  If “NO” is chosen for selection 710 then client device 510 can split the distributed print job on per-page boundaries; that is, each print-job portion may or may not have a whole number of copies of “Doc1” to print.  
[00102]        Selection 712 can instruct client device 510 whether or not to allow a user of client device 510 to choose printer features as part of splitting the distributed print job into print-job portions. If “Yes” is chosen for selection 712, then client device 510 can indicate common features for all candidate print devices and allow selection of uncommon features that, if selected, can reduce the number of candidate print device.  If “NO” is chosen for selection 712, as shown in FIG. 7A,  then client device 510 can select any candidate print device, regardless of print-device-specific features, for printing print-job portion(s) of the distributed print job.  
[00103]        Selection 714 can instruct client device 510 to assign print-job portions based on one of at last two criteria. If the “Equal Pages/Printer” criterion is chosen for selection 714, then client device 510 can divide the distributed print job into equal page-sized print-job portions for each print device selected for printing the distributed print job, while maintaining a “do not split-up copies” choice made using selection 710.  For example, if four print devices were selected to print the distributed print job of twelve copies / 480 pages, each selected print device would be assigned a print-job portion having three copies / 120 pages.    
[00104]        In another scenario, suppose a distributed print job to print seven copies of a 60 page document is to be divided into equal page-size portions among three print devices.  If the “do not split-up copies” choice is made using selection 710, then either the equal page-size portion criterion or the do not split-up copies selection can be relaxed.  If the equal page-size criterion is relaxed, then, for example, two selected print devices can print 2 copies and a third print device can print 3 copies.  If the “do not split-up copies” choice is relaxed, then, each print device can be assigned a print job portion of 140 pages, which is 1/3 of the pages of the distributed print job.  If neither the equal page-size criterion nor the “do not split-up copies” choice can be relaxed, then client device 510 can select additional print devices, if available; e.g., select seven print devices and assign one copy to each selected print device.  In some cases, single printing can be used if selections made / criteria for automatic page distribution cannot be relaxed and yet there is no configuration of a plurality of print devices can satisfy all non-relaxable selections/criteria.  Client device 510 can choose which conditions can be relaxed based on hard-coded software decisions, user selection and/or stored data; e.g., always decide that do not split-up copies is more important than equal page-size or vice versa, based on input received via dialog 610 and/or other user interface aspects of client device 510, and/or based on data regarding default printing decisions stored on client device 510.
[00105]        If the “Equal Time to Finish” criterion is chosen for selection 714, as shown in FIG. 7A, then client device 510 can divide the distributed print job into print-job portions that should take approximately the same amount of time print by each print device selected for printing the distributed print job, while maintaining a “do not split-up copies” choice made using selection 710.   For example, suppose a distributed print job to print seven copies of a 60 page document is to be divided to be printed by three equally fast print devices.  Then, according to Equation (1) above, the distributed print-job should be divided into three equal page-sized portions.  However, if the “do not split copies” choice is made via selection 710, then client device 510 can decide which conditions/criteria can be relaxed based on hard-coded software decisions, user selection and/or stored data such as discussed above in regarding the equal pages/printer choice of selection 714.
[00106]        Scenario 700 continues with dialog 610 specifying automatic page distribution of the 12-copy distributed print job on a per-copy basis via selection 710, without considering print device features via selection 712, and based on an equal time to finish criteria.  Then, dialog 610 can be used to initiate printing of the 12-copy distributed print job; e.g., by selection of the “Print” button at lower left of dialog 610.
[00107]        Upon initiating printing of the 12-copy distributed print job, a user of client device 510 was prompted to choose whether the “do not split-up copies” selection or the “equal time to finish” criterion could be relaxed.  In scenario 500, the user indicated that the “do not split-up copies” selection could be relaxed.  Then, client device 510 selected the three fastest and in-service print devices from the system shown in FIG. 5 to print the 12-copy distributed print job - print devices 520a, 520c, and 520e as shown as part of print device selection information 720 of dialog 610.  Print device 520b was not selected as that print device still had a print jam as discussed above in the context of the 9-copy distributed print job of scenario 500.
[00108]        As shown in FIG. 5 and in dialog 610 of FIG. 7A, print device 520a can print at 50 PPM, print device 520c can print at 50 PPM, and print device 520e can print at 25 PPM.  Client device 510 can calculate that the 12-copy distributed print job has 12 * 40 = 480 total pages to print.  Client device 510 can then use techniques of either method 300 or method 400 to split the 12-copy distributed print job into three print-job portions: a first 192-page print job portion for print device 520a, a second 192-page print job portion for print device 520c, and a third 96-page print job portion for print device 520e.  In other scenarios, dialog 610 can be configured to specify an assignment of an order of print-job portions to print devices, such as discussed above in the context of FIG. 6C.
[00109]        Client device 510 can also can determine that each of print devices 520a and 520c will take about 192 pages / 50 PPM = 3.84 minutes or 230.4 seconds to print its respective print-job portion, and that print device 520e will take about 96 pages / 25 PPM = 3.84 minutes or 230.4 seconds to print its respective print-job portion, and so determine an estimated print time of 231 seconds to print the 12-copy distributed print job.  Client device 510 can cause dialog 610 to display the total page count and estimated print time determinations as distributed print job information 722.  
[00110]        Scenario 500 continues with client device 510 using techniques of either method 300 or method 400 to provide the three print-job portions of the 12-copy distributed print job to print devices 520a, 520c, and 520e. After reception of their respective print-job portions, print devices 520a, 520c, and 520e start printing their respective print-job portions.  FIG. 7A shows print device / distributed print job statuses 724 while the 12-copy distributed print job is in the process of being printed.  Print device / distributed print job statuses 724 indicates that: print device 520a prints at a rate of 50 PPM and has printed 22 of 192 total pages of its print-job portion, print device 520c prints at a rate of 50 PPM and has printed 23 of 192 total pages of its print-job portion, print device 520e prints at a rate of 25 PPM and has printed 11 of 96 total pages of its print-job portion, and that a total of 56 out of 480 pages in the 12-copy distributed print job have been printed. 
[00111]        Scenario 500 continues with print devices 520a, 520c, and 520e each successfully printing their respective print job portions of the 12-copy distributed print job. FIGS. 7B and 7C each illustrate print device output for the 12-copy distributed print job of scenario 500, according to an example embodiment. 
[00112]        FIG. 7B shows that print device 520a printed 194 pages:  initial cover sheet 730, output 732 representing the first 192 page print-job portion of the 12-copy distributed print job of scenario 500, and final cover sheet 734.  In other scenarios, print device 520a can generate output 732 without printing initial cover sheet 730 and/or final cover sheet 734. 
[00113]        In scenario 500, print device 520a first printed initial cover sheet 730 at the onset of printing the print-job portion, then printed output 732, and then printed final cover sheet 734.  Both initial cover sheet 730 and final cover sheet 734 identify printer “520A” located in “Room 501” as printing the print-job portion, indicate that the 12-copy distributed print job includes “12 copies of Doc1”, and have “Assembly Instructions”. Initial cover sheet 730 has information available at the onset of printing the 12-copy distributed print job; e.g., the distributed print job was “split into 3 portions”, print device 520a “will print Print Job Portion 1 (192 pp)”, and has initial assembly instructions that refer to final cover sheet 734.
[00114]        Final cover sheet 734 has information available after printing the 12-copy distributed print job, such as an indication that the 12-copy distributed print job was “printed on 3 printers”.  The assembly instructions of final cover sheet 734 indicate that: (1) “[t]his portion” printed on print device 520a “has Copies 1-4 and [the] first 32 pages of Copy 5” of the 12-copy distributed print job, (2) print device 520c located in “Room 612” has printed print-job portion “2” that includes the “last 8 pages of Copy 5, Copies 6-9, and [the] first 24 pages of Copy 10” of the 12-copy distributed print job, and (3) print device 520e located in “Room 502” has printed print-job portion “3” that includes the “last 16 pages of Copy 10 and Copies 11-12” of the 12-copy distributed print job.  
[00115]        FIGS. 7B and 7C show that respective print devices 520c and 520e respectively printed 194 pages and 98 pages as part of scenario 500.  Each of print devices 520c and 520e printed an initial cover sheet, output for a print-job portion of the 12-copy distributed print job of scenario 500, and a final cover sheet.  
[00116]        Each of the initial cover sheets printed by print devices 520a, 520c, and 520e for the 12-copy distributed print job is printed in a light grey color, and each of the final cover sheets printed by print devices 520a, 520c, and 520e for the 12-copy distributed print job is printed in a dark grey color.  In many cases, print-job output is printed on white paper, and so cover sheets printed on colored paper allow for ready cover sheet identification.  In other scenarios, initial and/or final cover sheets can be printed on other colors of paper than grey. 
[00117]        Both initial cover sheet 740 and final cover sheet 744 of FIG. 7B identify printer “520C” located in “Room 612” as printing a print-job portion, indicate that the 12-copy distributed print job includes “12 copies of Doc1”, and have “Assembly Instructions”. Initial cover sheet 740 has information available at the onset of printing the 12-copy distributed print job; e.g., the distributed print job was “split into 3 portions”, print device 520c “will print Print Job Portion 2 (192 pp)”, and has initial assembly instructions that refer to final cover sheet 744.
[00118]        FIG. 7B shows that final cover sheet 744 indicates information available after printing the 12-copy distributed print job, including assembly instructions similar to the assembly instructions of final cover sheet 734 discussed above, except that the assembly instructions of final cover sheet 744 indicate that “Copies 1-4 and [the] first 32 pages of Copy 5” can be obtained from “Printer 520A” in “Room 501” and that “this portion” or portion “2” printed by print device 520c includes the “last 8 pages of Copy 5, Copies 6-9, and [the] first 24 pages of Copy 10” of the 12-copy distributed print job.
[00119]        Further, both initial cover sheet 750 and final cover sheet 754 of FIG. 7C identify printer “520E” located in “Room 502” as printing a print-job portion, indicate that the 12-copy distributed print job includes “12 copies of Doc1”, and have “Assembly Instructions”. Initial cover sheet 750 has information available at the onset of printing the 12-copy distributed print job, such as discussed above in the context of initial cover sheet 730. Final cover sheet 754 indicates information available after printing the 12-copy distributed print job, including assembly instructions similar to the assembly instructions of final cover sheet 734 discussed above, except that the assembly instructions of final cover sheet 754 indicate that “Copies 1-4 and [the] first 32 pages of Copy 5” can be obtained from “Printer 520A” in “Room 501” and that “this portion” or portion “3” printed by print device 520e includes the “last 16 pages of Copy 10 and Copies 11-12” of the 12-copy distributed print job.
[00120]        FIG. 8A illustrates a system used in scenario 800 for printing output accompanied by print device feature table 830, according to an example embodiment. Scenario 800 involves a system including client device 810 and print devices 820a, 820b, and 820c all interconnected via network 814.  In scenario 800, client device 810 is executing software application 812 to work with a 20-page document entitled “Doc3”, which is printed once during the scenario.  More specifically, in scenario 800, a user of client device 810 would like to print four copies of document Doc3 as a distributed print job, where each of the four copies is duplex printed and has a booklet finish.
[00121]        In scenario 800 each print device 820a, 820b, 820c has different features.  The specific features of respective print devices 820a, 820b, and 820c are summarized in respective Tables 2A, 2B, and 2C below:
2016136387.tif 000033
[00122]        The term “PDL” of Tables 2A-2C is an acronym for Page Description Language, which is a relatively high-level language for describing a layout of a printed page. Many print devices support one or more page description languages.  Example page description languages include, but are not limited to, Printer Control Language XL (PCL XL), Printer Control Language 5 (PCL5), Kyocera Printer Control Language (KPCL), and Portable Document Format (PDF).
[00123]        The features that are common to all three print devices in scenario 800 are shown in a normal font in Tables 2A-2C, such as the “Mono” color mode feature common to print devices 820a, 820b, 820c, while features that are not common to all three print devices in scenario 800 are shown in a bold and italic font in Tables 2A-2C, such as the “Color” color mode feature of print device 820a as indicated in Table 2A and of print device 820c as indicated in Table 2C.  
[00124]        The data of Tables 2A-2C is summarized in print device feature table 830 of FIG. 8A.  Print device feature table 830 has six columns - from left to right, these columns are: a feature type column indicating feature types indicated in Tables 2A-2C above, a feature column indicating specific features indicated in Tables 2A-2C above, and four columns for indicating features for print device 820a, print device 820b, print device 820c, and “common features” or features present on all three print devices of scenario 800.
[00125]        In print device feature table 830, an “x” in a table cell is used to indicate the presence of a feature, and a blank table cell is used to indicate the absence of a feature.  For example, the first non-heading row of print device feature table 830 relates to a “Color” feature of a “Color” feature type, with print devices 820a and 820c having the feature and print device 820b not having the feature, and so the feature is not a common feature. As another example, the second non-heading row of print device feature table 830 relates to a “Mono” feature of a “Color” feature type, with print devices 820a, 820b, 820c having the feature, and so the feature is a common feature.
[00126]        In a distributed print job, a user may want to ensure that all print-job portions are printed using one or more desired print device options; e.g., use color printing, A4 paper, stapled copies. If a candidate print device does not have all of the desired print device options, then the candidate print device may not be selected to print a print-job portion of a distributed print job. In the event a desired print device option is not available, the distributed print job can be canceled, single printing can be used, or the user may choose other print devices to continue printing. 
[00127]        In some embodiments, a printer driver and/or other software of client device 810 can compare printing capabilities of all selected target printing devices and extract the common settings that are available on all candidate printing devices. Then, a user interface for the printer driver; e.g.,  dialog 610 discussed above in the context of scenario 500 and discussed below in the context of this scenario 800 can display the common features to inform a user what features are available on all candidate print devices.  In particular embodiments, print devices having error conditions are excluded from being candidate print devices, and features of print devices having error conditions can be excluded when determining common features.  
[00128]        In other embodiments, the user interface enables selection of printer features related to print resolution and/or image quality. If a print device does not support a desired print resolution and/or image quality, then the print device can be excluded from selection as a candidate print device, even if the print device supports all other print device features required to print a print-job portion of a distributed print job.   
[00129]        FIG. 8B shows print dialog 610 associated with application 812 in scenario 800, after distributed printing selection 612 has been made, according to an example embodiment.  In response to making distributed printing selection 612, a printer driver, application 812, and/or other software executing on client device 810 can update dialog 610, which is configured to display, choose, and/or modify at least page distribution selections, split-up copies selection, and selection 712 related to selecting printer features.  
[00130]        In scenario 800, selections are made that are related to automatic page distribution, allowing splitting of copies while dividing the distributed print job into print-job portions, and selection 714 for assigning equal pages to printers - these selections were discussed above in more detail in the context of scenario 500.  
[00131]        FIG. 8B shows that selection 712 to select printer features has been made using dialog 610.  In response to making selection 712 related to selecting printer features, client device 810 can update dialog 610 to display common feature listing 840 and selection 842.  Common feature listing 840 can show the print device features common to all three possible candidate print devices shown in the system of FIG. 8A and as listed as common features in print device feature table 830.  As shown in FIG. 8B, common feature listing 840 includes a “Mono” color-type print device feature, “NUp”, “Poster”, and “ Scaling” finish-type print device features, “A4”, “Letter”, and “Legal” paper-type print device features, and “PCL XL”, “PCL 5”, and “KPDL” PDL-type print device features.
[00132]        Selection 842 can allow a user to decide whether using common features for printing a distributed print job are either “OK” (acceptable) or not.  If selection 842 is set to “Yes”, then using the common features, such as shown in common feature listing 840, for printing a distributed print job is acceptable.  In scenario 800, though, the print job involves printing four copies of document Doc3 using duplex printing and with a booklet finish.  Common feature listing 840 does not list duplex and booklet features as common features, so selection 842 is set to “No” to indicate that using the common features for printing a distributed print job is not acceptable.  
[00133]        In response to setting selection 842 to “No”, client device 810 can update dialog 610 to display selection 844 of printer-specific print features.  A printer-specific print feature is a print feature that is present on one or more but not all candidate print devices - in the case of scenario 800, a printer-specific print feature is a print feature that is present on one or more but not all of print devices 820a, 820b, and 820c.  As shown in Tables 2A-2C above, print device feature table 830 of FIG. 8A, and selection 844 of FIG. 8B, example printer-specific print features for scenario 800 include color, booklet, duplex, full-bleed, A3 paper, and B5 paper print features as well as others not shown as part of selection 844.  In scenario 800, a user of client device 810 uses selection 844 to make choice 846 to select use of a booklet printer-specific feature and to make choice 848 to select use of a duplex printer-specific feature.  In other scenarios, more, fewer, and/or different printer-specific features can be selected for a distributed print job.
[00134]        After receiving information about choices 846 and 848, client device 810 can determine that two print devices - print devices 820a and 820b - have both booklet and duplex print features.  In scenario 800, both print devices 820a and 820b are available to print a print-job portion of the distributed print job; i.e., no error conditions are present for either print device 820a or 820b.  Then, scenario 800 continues with selection of print devices 820a and 820b to each receive a print-job portion, where the print-job portions of the distributed print job have an equal number of pages, as indicated by selection 714 shown in FIG. 8B.  Dialog 610 can be used to initiate printing of the distributed print job; e.g., by selection of the “Print” button at lower left of dialog 610.  
[00135]        Once instructed to initiate printing, client device 810 can use the techniques of either method 300 or method 400 to split the distributed print job of scenario 800 into two equal page-sized print-job portions and provide print-job portions to print devices 820a and 820b. After reception of their respective print-job portions, print devices 820a and 820b start printing their respective print-job portions.
[00136]        FIG. 8C shows print dialog 610 associated with application 812 in scenario 800 with feature selection information 850 and printer selection information 852, according to an example embodiment. Feature selection information 850 indicates that booklet and duplex print features were selected for use in printing the distributed print job of scenario 800; i.e., feature selection information 850 confirms that choice 846 related to the booklet print device feature and choice 848 related to the duplex print device feature were made.  Printer selection information 852 indicates print devices 820a and 820b were selected to print the distributed print job of scenario 800, and therefore, have the features indicated as part of feature selection information 850. 
[00137]        FIG. 8C also shows status of the distributed print job of scenario 800 while in the process of being printed.  Dialog 610 indicates that print device 820a has printed 22 of 40 total pages of its print-job portion, print device 820b has printed 11 of 40 total pages of its print-job portion, and that a total of 33 out of 80 pages in the distributed print job of scenario 800 have been printed.
[00138]        Scenario 800 continues with print devices 820a and 820b each successfully printing their respective print-job portions of the distributed print job of scenario 800. FIG. 8D illustrates print device output for the distributed print job of scenario 800, according to an example embodiment. 
[00139]        FIG. 8D shows that print devices 820a and 820b each printed 42 pages as part of scenario 800 - the 42 pages include an initial cover sheet, 40 pages of output for a print-job portion of the distributed print job of scenario 800, and a final cover sheet.  
[00140]        Both initial cover sheet 860 and final cover sheet 864 of FIG. 8D identify printer “820A” located in “Room PRINTSHOP” as printing a print-job portion, indicate that the distributed print job of scenario 800 includes “4 copies of Doc3”, and have “Assembly Instructions”. Initial cover sheet 860 has information available at the onset of printing the distributed print job of scenario 800; e.g., the distributed print job was “split into 2 portions”, print device 820a “will print Print Job Portion 1 (40 pp on 20 sheets)” indicating duplex printing, and has initial assembly instructions that refer to final cover sheet 864. FIG. 8D shows that final cover sheet 864 includes information available after printing the distributed print job of scenario 800, including assembly instructions for the distributed print job of scenario 800 that indicate “[t]his portion” printed by print device 820a includes “Copies 1-2” and that “Copies 3-4” are available “from Printer 820B” in “Room PRINTSHOP”.
[00141]        Additionally, both initial cover sheet 870 and final cover sheet 874 of FIG. 8D identify printer “820B” located in “Room PRINTSHOP” as printing a print-job portion, indicate that the distributed print job of scenario 800 includes “4 copies of Doc3”, and have “Assembly Instructions”. Initial cover sheet 870 has information available at the onset of printing the distributed print job of scenario 800; e.g., the distributed print job was “split into 2 portions”, print device 820b “will print Print Job Portion 2 (40 pp on 20 sheets)” indicating duplex printing, and has initial assembly instructions that refer to final cover sheet 874. FIG. 8D shows that final cover sheet 874 includes information available after printing the distributed print job of scenario 800, including assembly instructions for the distributed print job of scenario 800 that indicate that “Copies 1-2” are available “from Printer 820A” in “Room PRINTSHOP” and that “[t]his portion” printed by print device 820b includes “Copies 3-4.”
[00142]        Each of the initial cover sheets printed by print devices 820a and 820b for the distributed print job of scenario 800 are printed in a light grey color, and each of the final cover sheets printed by print devices 820a and 820b for the distributed print job of scenario 800 are printed in a dark grey color.  In many cases, print-job output is printed on white paper, and so cover sheets printed on colored paper allow for ready cover sheet identification.  In other scenarios, initial and/or final cover sheets can be printed on other colors of paper than grey. 
V.    Example Methods of Operation
[00143]        FIG. 9 is a flow diagram illustrating a method, according to an example embodiment.
[00144]        Method 900 can be carried out by a client device, such as one or more of client devices 110a-110i, computing device 200 configured as a client device, and client devices 220, 510, and 810.
[00145]        Method 900 can begin at block 910, where a client device can receive a request for distributed printing, where the client device is associated with a plurality of candidate print devices, such as discussed above in the context of at least FIGS. 3-8D.
[00146]        At block 920, the client device can determine a plurality of print devices from among the plurality of candidate print devices, where each print device in the plurality of print devices can be configured to service at least part of the request for distributed printing, such as discussed above in the context of at least FIGS. 3-8D.
[00147]        In some embodiments, the client device determining the plurality of print devices can include the client device determining one or more printing options related to the request for distributed printing.  Then, for a designated print device of the plurality of candidate print devices, the client device can determine whether the designated print device is configured to support the one or more printing options, and after determining that the designated print device is configured to support the one or more printing options, the client device can add the designated print device to the plurality of candidate print devices, such as discussed above in the context of at least FIGS. 3, 4, and 8A-8D.
[00148]        At block 930, the client device can determine a plurality of print-job portions that collectively satisfy the request for distributed printing, such as discussed above in the context of at least FIGS. 3-8D.
[00149]        In some embodiments, the request for distributed printing can include a request for printing a plurality of copies of a document.  Then, determining the plurality of print-job portions can include determining a number of copies of the document for a designated print-job portion of the plurality of print-job portions, such as discussed above in the context of at least FIGS. 3-5 and 7A-8D. 
[00150]        In other embodiments, the request for distributed printing can include a request for printing a plurality of pages.  Then, determining the plurality of print-job portions can include determining a number of pages for a designated print-job portion of the plurality of print-job portions, such as discussed above in the context of at least FIGS. 3-8D.
[00151]        In still other embodiments, the client device determining the plurality of print-job portions can include: the client device determining a print-volume ratio for a particular print device of the plurality of print devices, where the print-volume ratio is based on a percentage of the request for distributed printing to be allocated to the particular print device, such as discussed above in the context of at least FIGS. 3-6G.
[00152]        In even other embodiments, the client device determining the plurality of print-job portions can include: the client device determining a particular number of pages per unit time for a particular print device of the plurality of print devices; determining a total number of pages per unit time for the plurality of print devices; and  determining a page-volume ratio for the particular print device, where the page-volume ratio is based on a ratio of the particular number of pages per unit time to the total number of pages per unit time, such as discussed above in the context of at least FIGS. 3-8D.
[00153]        At block 940, for each designated print device of the plurality of print devices, the client device can at least allocate one or more print-job portions to the designated print device and provide the allocated one or more print-job portions to the designated print device, such as discussed above in the context of at least FIGS. 3-8D.
[00154]        In some embodiments, method 900 can further include: determining that an error has occurred while printing a print-job portion on an erring print device, determining an alternative print device to replace the erring print device; and continuing to print the print-job portion on the alternative print device, such as discussed above in the context of at least FIGS. 5-6G.  In particular embodiments, determining that an error has occurred while printing the print-job portion can include: receiving a notification regarding the error at the client device and generating a display related to the notification using the client device, such as discussed above in the context of at least FIGS. 5-6G.  In more particular embodiments, the display related to the notification can include a display of one or more alternative print devices.  Then, determining the alternative print device can include receiving a selection of the alternative print device from among the one or more alternative print devices.
[00155]        In other embodiments of method 900, a particular print-job portion of the plurality of print-job portions can include an instruction cover page.  The instruction cover page can indicate information about one or more of: the particular print-job portion, a print device used to print the particular print-job portion, any other devices used to print the particular print-job portion, and one or more print devices used to print the plurality of print-job portions, such as discussed above in the context of at least FIGS. 6F, 6G, 7B, 7C, and 8D.
[00156]        The illustrative embodiments described in the detailed description, figures, and claims are not meant to be limiting. Other embodiments can be utilized, and other changes can be made, without departing from the spirit or scope of the subject matter presented herein. It will be readily understood that the aspects of the present disclosure, as generally described herein, and illustrated in the figures, can be arranged, substituted, combined, separated, and designed in a wide variety of different configurations, all of which are explicitly contemplated herein.
[00157]        With respect to any or all of the ladder diagrams, scenarios, and flow charts in the figures and as discussed herein, each block and/or communication may represent a processing of information and/or a transmission of information in accordance with example embodiments. Alternative embodiments are included within the scope of these example embodiments. In these alternative embodiments, for example, functions described as blocks, transmissions, communications, requests, responses, and/or messages may be executed out of order from that shown or discussed, including substantially concurrent or in reverse order, depending on the functionality involved. Further, more or fewer blocks and/or functions may be used with any of the ladder diagrams, scenarios, and flow charts discussed herein, and these ladder diagrams, scenarios, and flow charts may be combined with one another, in part or in whole. 
[00158]        A block that represents a processing of information may correspond to circuitry that can be configured to perform the specific logical functions of a method or technique. Alternatively or additionally, a block that represents a processing of information may correspond to a module, a segment, or a portion of program code (including related data). The program code may include one or more instructions executable by a processor for implementing specific logical functions or actions in the method or technique. The program code and/or related data may be stored on any type of computer readable medium such as a storage device including a disk or hard drive or other storage medium. 
[00159]        The computer readable medium may also include non-transitory computer readable media such as computer-readable media that stores data for short periods of time like register memory, processor cache, and random access memory (RAM). The computer readable media may also include non-transitory computer readable media that stores program code and/or data for longer periods of time, such as secondary or persistent long term storage, like read only memory (ROM), optical or magnetic disks, compact-disc read only memory (CD-ROM), for example. The computer readable media may also be any other volatile or non-volatile storage systems. A computer readable medium may be considered a computer readable storage medium, for example, or a tangible storage device. 
[00160]        While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope being indicated by the following claims.
REFFERENCE SIGNS LIST
[00161]         
100    System
110b   Client Device
120a   Print Device
130    Network
What is claimed is:
1. A system comprising:
a plurality of candidate print devices; and
a client device comprising one or more processors and data storage, the data storage including computer-readable instructions that, when executed by the one or more processors, causes the client device to perform functions comprising:
receiving a request for distributed printing;
determining a plurality of print devices from among the plurality of candidate print devices, wherein each print device in the plurality of print devices is configured to service at least part of the request for distributed printing;
determining a plurality of print-job portions, wherein the plurality of print-job portions collectively satisfy the request for distributed printing; and
for each designated print device of the plurality of print devices, at least:
allocating one or more print-job portions to the designated print device; and
providing the allocated one or more print-job portions to the designated print device.
2. The system of claim 1, wherein the request for distributed printing comprises a request for printing a plurality of copies of a document, and wherein determining the plurality of print-job portions comprises determining a number of copies of the document for a designated print-job portion of the plurality of print-job portions.
3. The system of claim 1 or 2, wherein the request for distributed printing comprises a request for printing a plurality of pages, and wherein determining the plurality of print-job portions comprises determining a number of pages for a designated print-job portion of the plurality of print-job portions.
4. The system of any one of claims 1 to 3, wherein the functions further comprise:
determining that an error has occurred while printing a print-job portion on an erring print device;
determining an alternative print device to replace the erring print device; and
continuing to print the print-job portion on the alternative print device.
5. The system of claim 4, wherein determining the error has occurred while printing the print-job portion comprises:
receiving a notification regarding the error at the client device; and
generating a display related to the notification using the client device.
6. The system of claim 5, wherein the display related to the notification comprises a display of one or more alternative print devices, and wherein determining the alternative print device comprises receiving a selection of the alternative print device from among the one or more alternative print devices.
7. The system of any one of claims 1 to 6, wherein determining the plurality of print devices comprises:
determining one or more printing options related to the request for distributed printing;
for a designated print device of the plurality of candidate print devices, determining whether the designated print device is configured to support the one or more printing options; and
after determining that the designated print device is configured to support the one or more printing options, adding the designated print device to the plurality of candidate print devices.
8. The system of any one of claims 1 to 7, wherein determining the plurality of print-job portions comprises:
determining a print-volume ratio for a particular print device of the plurality of print devices, wherein the print-volume ratio is based on a percentage of the request for distributed printing to be allocated to the particular print device.
9. The system of any one of claims 1 to 8, wherein the determining the plurality of print-job portions comprises:
determining a particular number of pages per unit time for a particular print device of the plurality of print devices;
determining a total number of pages per unit time for the plurality of print devices; and 
determining a page-volume ratio for the particular print device, where the page-volume ratio is based on a ratio of the particular number of pages per unit time to the total number of pages per unit time.
10. The system of any one of claims 1 to 9, wherein a particular print-job portion of the plurality of print-job portions comprises an instruction cover page indicating information about one or more of: the particular print-job portion, a print device used to print the particular print-job portion, any other devices used to print the particular print-job portion, and one or more print devices used to print the plurality of print-job portions.
11. A method comprising:
receiving, at a client device, a request for distributed printing, wherein the client device is associated with a plurality of candidate print devices;
determining, via the client device, a plurality of print devices from among the plurality of candidate print devices, wherein each print device in the plurality of print devices is configured to service at least part of the request for distributed printing;
determining, via the client device, a plurality of print-job portions, wherein the plurality of print-job portions collectively satisfy the request for distributed printing; and
for each designated print device of the plurality of print devices, the client device at least:
allocating one or more print-job portions to the designated print device; and
providing the allocated one or more print-job portions to the designated print device.
12.  A computer program that, when executed by one or more processors of a client device associated with a plurality of candidate print devices, causes the client device to perform functions comprising:
receiving a request for distributed printing;
determining a plurality of print devices from among the plurality of candidate print devices, wherein each print device in the plurality of print devices is configured to service at least part of the request for distributed printing;
determining a plurality of print-job portions, wherein the plurality of print-job portions collectively satisfy the request for distributed printing; and
for each designated print device of the plurality of print devices, at least:
allocating one or more print-job portions to the designated print device; and
providing the allocated one or more print-job portions to the designated print device.
1. Abstract
PROBLEM TO BE SOLVED
To provide a distributed printing system.
2. SOLUTION
Example systems and related methods may relate to distributed printing.  A client device associated with a plurality of candidate print devices can receive a request for distributed printing. The client device can determine a plurality of print devices from among the plurality of candidate print devices.  Each print device in the plurality of print devices can be configured to service at least part of the request for distributed printing.  The client device can determine a plurality of print-job portions that collectively satisfy the request for distributed printing. Then, for each designated print device of the plurality of print devices, the client device can: allocate one or more print-job portions to the designated print device and provide the allocated one or more print-job portions to the designated print device.
3. Representative Drawing: Fig. 1
2016136387.tif 000034
2016136387.tif 000035
2016136387.tif 000036
2016136387.tif 000037
2016136387.tif 000038
2016136387.tif 000039
2016136387.tif 000040
2016136387.tif 000041
2016136387.tif 000042
2016136387.tif 000043
2016136387.tif 000044
2016136387.tif 000045
2016136387.tif 000046
2016136387.tif 000047
2016136387.tif 000048
2016136387.tif 000049
2016136387.tif 000050
2016136387.tif 000051