JP2019149146A - 印刷コンピューティング・デバイス及び印刷コンピューティング・デバイスを動作させる方法 - Google Patents

印刷コンピューティング・デバイス及び印刷コンピューティング・デバイスを動作させる方法 Download PDF

Info

Publication number
JP2019149146A
JP2019149146A JP2018234614A JP2018234614A JP2019149146A JP 2019149146 A JP2019149146 A JP 2019149146A JP 2018234614 A JP2018234614 A JP 2018234614A JP 2018234614 A JP2018234614 A JP 2018234614A JP 2019149146 A JP2019149146 A JP 2019149146A
Authority
JP
Japan
Prior art keywords
print
print job
computing device
printcast
mfp
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018234614A
Other languages
English (en)
Inventor
ベルムンド ニールポール
Bermundo Neil-Paul
ベルムンド ニールポール
ベセラ アルトゥーロ
Becerra Arturo
ベセラ アルトゥーロ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kyocera Document Solutions Inc
Original Assignee
Kyocera Document Solutions Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kyocera Document Solutions Inc filed Critical Kyocera Document Solutions Inc
Publication of JP2019149146A publication Critical patent/JP2019149146A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1206Improving or facilitating administration, e.g. print management resulting in increased flexibility in input data format or job format or job type
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1209Improving or facilitating administration, e.g. print management resulting in adapted or bridged legacy communication protocols, e.g. emulation, protocol extension
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1247Job translation or job parsing, e.g. page banding by conversion to printer ready format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1248Job translation or job parsing, e.g. page banding by printer language recognition, e.g. PDL, PCL, PDF
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1288Remote printer device, e.g. being remote from client or server in client-server-printer device configuration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Facsimiles In General (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

【課題】印刷コンピューティング・デバイスは、多機能印刷(MFP)装置に接続してMFP装置によって提供されない付加機能性と付加能力をイネーブルする。【解決手段】システムにおいて、印刷コンピューティング・デバイス102は、ネットワークに接続してネットワーク内の外部のデバイスから印刷ジョブを受信する。印刷コンピューティング・デバイスは、印刷ジョブが適切に処理されるように規則に従って印刷ジョブを処理する。印刷コンピューティング・デバイスは、MFP装置104によってサポートされない印刷ジョブがそれでも処理され得るようにMFP装置で利用できないファームウェアも含む。印刷コンピューティング・デバイスは、MFP装置で利用できない機能を実行するために、着信印刷ジョブがPDLの印刷ジョブかコマンドかどうか判定するエンジンも含む。【選択図】図1

Description

本発明は、ページ記述言語とラスター画像プロセッサシステムを有し、多機能印刷デバイスに接続して付加能力と付加機能性を提供する携帯型デバイスに関する。
プリンタ及び関連設備はアップグレードのサイクルがゆっくりで古いプリンタエンジンを保持している。プリンタエンジンの初期費用が高いために、使用されていなくても事業所で古いプリンタエンジンが長期間維持される結果となっている。新しいプリンタエンジンやその他の機能に対する需要は少ない。さらに、ハードウェア及びソフトウェアの開発課題のために製品のリリース間隔が数か月にわたる場合がある。さらに、ファームウェアの問題の解決あるいはファームウェアのアップグレードを行う費用が高い場合がある。ハードウェアの交換あるいはソフトウェアのアップデートという点のみならず、技術者がこれらの活動を実行するために顧客を訪問する点も合わせてである。
ネットワークに接続された多機能印刷(MFP)装置で外部のデバイスからの文書を印刷するための印刷コンピューティング・デバイスを開示する。前記印刷コンピューティング・デバイスは、前記ネットワークを介して受信された印刷ジョブの予定を立てるための印刷ジョブマネージャーを含む。前記印刷コンピューティング・デバイスは、前記印刷ジョブがページ記述言語(PDL)の印刷ジョブであるかどうか判定するためのエンジンも含む。前記印刷コンピューティング・デバイスは、前記印刷ジョブマネージャーからの前記PDLの印刷ジョブを処理するためのラスター画像処理(RIP)ファームウェアも含む。前記RIPファームウェアは、PDLインタープリターとグラフィックス・レンダリング・コンポーネントを含む。前記印刷コンピューティング・デバイスは、前記処理されたPDLの印刷ジョブを前記接続されたMFP装置にダウンロードするための通信レイヤも含む。
MFP装置のために、印刷コンピューティング・デバイスで印刷ジョブを処理するための方法を開示する。前記印刷コンピューティング・デバイスはネットワークを介して外部のデバイスに接続されている。前記方法は、前記外部のデバイスから受信された印刷ジョブがPDLの印刷ジョブであるかどうかエンジンを用いて判定する工程を含む。前記方法は、前記印刷コンピューティング・デバイス内のラスター画像処理(RIP)ファームウェアを用いて前記PDLの印刷ジョブを処理するかどうか判定する工程も含む。前記方法は、前記RIPファームウェアを用いて前記PDLの印刷ジョブを処理する工程も含む。前記方法は、前記MFP装置へのダウンロードのために前記処理されたPDLの印刷ジョブを通信レイヤに送信する工程も含む。前記処理されたPDLの印刷ジョブは前記MFP装置による印刷の準備ができたフォーマットになっている。
MFP装置に印刷ジョブを送信するために、外部のデバイスを有するネットワーク内の前記MFP装置と共に印刷コンピューティング・デバイスを使用するための方法を開示する。前記方法は、前記印刷コンピューティング・デバイス内の印刷ジョブマネージャーで印刷ジョブを受信する工程を含む。前記方法は、前記印刷ジョブマネージャーによって予定を立てられた場合には、エンジンを用いて前記印刷ジョブのヘッダを分析する工程も含む。前記方法は、前記ヘッダに従って前記印刷ジョブがPDLの印刷ジョブであるかどうか判定する工程も含む。前記方法は、前記MFP装置に基づき前記エンジンによって前記PDLの印刷ジョブ向けのフォーマットを判定する工程も含む。前記方法は、前記印刷コンピューティング・デバイスのRIPファームウェアを用いて前記フォーマットに従って前記PDLの印刷ジョブを処理する工程も含む。前記方法は、前記印刷コンピューティング・デバイス内の通信レイヤを用いて前記MFP装置に前記処理されたPDLの印刷ジョブをダウンロードする工程も含む。
本発明の他の様々な機能及び付随する利点は、添付図面と併せて考慮するとより十分に理解されるであろう。
本開示の実施形態に係る印刷コンピューティング・デバイスを使用して印刷動作を実行するためのシステムのブロック図を示す。 本開示の実施形態に係る印刷コンピューティング・デバイスと併せて使用されるMFPのコンポーネントのブロック図を示す。 本開示の実施形態に係る印刷コンピューティング・デバイス用のコンポーネントのブロック図を示す。 本開示の実施形態に係るモバイル・アプリケーション・システム・サービスとともに使用するためのコンポーネントのブロック図を示す。 本開示の実施形態に係るMFPに接続された場合の印刷コンピューティング・デバイスを構成するためのフローチャートを示す。 本開示の実施形態に係る印刷コンピューティング・デバイスを使用して印刷ジョブ及びprintcastコマンドを処理するためのフローチャートを示す。 本開示の実施形態に係る印刷コンピューティング・デバイスを用いてMFPで印刷ジョブを処理するためのフローチャートを示す。 本開示の実施形態に係る印刷コンピューティング・デバイスにおいてPDLの印刷ジョブを処理するためのフローチャートを示す。 本開示の実施形態に係る印刷コンピューティング・デバイスを使用してPDLの印刷ジョブをネイティブPDLに翻訳するためのフローチャートを示す。 本開示の実施形態に係る印刷コンピューティング・デバイスを使用して印刷ジョブから、サポートされる画像フォーマットでラスター画像を生成するためのフローチャートを示す。 本開示の実施形態に係る印刷コンピューティング・デバイスを使用してネイティブフォーマットの印刷ジョブを生成するためのフローチャートを示す。 本開示の実施形態に係る印刷コンピューティング・デバイスを使用してサードパーティのPDLに印刷ジョブを翻訳するためのフローチャートを示す。
本発明の具体的な実施形態について詳細に説明する。これらの実施形態の例は添付図面に示されている。本発明について十分な理解が得られるように具体的な詳細を数多く記載する。実施形態は図面と併用して説明するが、以下の説明は本発明をいずれか一つの実施形態に限定することを意図していないことは理解されよう。逆に、以下の説明は、添付の請求項の主旨と範囲内に含まれ得る代替、変更、及び同意義を含めることを意図するものである。本発明ついて十分な理解が得られるように具体的な詳細を数多く記載する。
本開示の実施形態は、ページ記述言語(PDL)システム及びラスター画像プロセッサ(RIP)システムを有する印刷コンピューティング・デバイスを含む。印刷コンピューティング・デバイスはコンピュータ処理装置、メモリ、及びオペレーティングシステムを備える外部コンピューティング・デバイスであり得る。印刷コンピューティング・デバイスは、既存のプリンタ装置に接続するための接続インターフェースも含む。また、印刷コンピューティング・デバイスは、別のプリンタ装置としてネットワーク上で自身を公表するネットワーク能力も履行する。
印刷コンピューティング・デバイスという用語は、MFP又は他の任意の装置に装着された、下記に開示された機能を有する携帯型デバイスを指してもよい。「printcast」という用語は、また、printcast印刷コンピューティング・デバイス又はprintcastコンピューティング・デバイス等の印刷コンピューティング・デバイスを指すために本明細書内使用してもよい。印刷コンピューティング・デバイスは、携帯型印刷コンピューティング・デバイス又は携帯型印刷コンピューティング・システム等の携帯型デバイスとしても知られているであろう。
開示されたprintcast印刷コンピューティング・デバイスは、プリンタ装置との接続インターフェース及び新しいPDL技術をサポートする。printcast印刷コンピューティング・デバイスは、また、エンジンファームウェアのアップグレード又はメンテナンスを行うために、ファームウェア・アップグレードをサーバから受信する。接続されたとき、printcast印刷コンピューティング・デバイスは、プリンタ装置でサポートされるネイティブPDLを検知し、そのPDLに対するパススルーを提供する。printcast印刷コンピューティング・デバイスは、サポートされていないPDLを、ネイティブPDL、又はプリンタエンジンによりサポートされているJPEG/TIFFのような基本的なラスターフォーマットに翻訳することができる。この機能により、すべてのプリンタ(他の製造会社のプリンタでも)との互換性が可能になる。
printcast印刷コンピューティング・デバイスは、また、デバイスのPDLのRIPファームウェアがより「最新版」で、プリンタエンジンに欠けている新しい機能を含む場合エンジンファームウェアコンポーネントに優先してもよい。printcast印刷コンピューティング・デバイスは、また、ファームウェア・アップグレードがエンジンに対して最終のファームウェア・アップグレードとしてインストールされる前にファームウェア・アップグレードをテストするのにも役立つ。ダムプリンタは、RIP機能がプリンタの外部に存在して動作するようにRIPオーバーライド機能付きで開発されてもよい。また、printcast印刷コンピューティング・デバイスは、プリンタエンジンに出力するために、モバイル・アプリケーション、ウェブアプリケーション、あるいはデスクトップデバイスから画像若しくはデータを受信する画像アプリケーションをホストしてもよい。printcast印刷コンピューティング・デバイスは、デバイスの管理容易性のために企業のプリンタ管理ツールに登録してもよい。
既存のプリンタドライバ及びそれに関連付けられた印刷キューは、通常どおり、依然として利用可能であろう。換言すると、ユーザがプリンタドライバに関連付けられた印刷キューを選択する場合、ユーザは、印刷キュー向け古いプリンタエンジンとプリンタドライバが提供するものと同じプリンタ機能と能力を持つことになる。printcast印刷コンピューティング・デバイス向けの対応するプリンタドライバを有する印刷キューは、古い又はサードパーティのプリンタ装置に新しい機能と能力が追加されることを可能とするためのプリンタ装置のように見えるであろう。ユーザが印刷ジョブに対する宛先としてprintcast印刷コンピューティング・デバイスの印刷キューを選択する場合、プリンタエンジンに必ずしも存在しないあるいはサポートされていないがprintcastコンピューティング・デバイスによってサポートされている新しい機能は、ユーザにとって利用可能となるであろう。ユーザは、printcast印刷コンピューティング・デバイスがプリンタエンジンを用いて実行、印刷できる新しいプリンタ機能にアクセスできる。
別の実施形態において、通常、MFP又はプリンタ用に構成されているプリンタポートを有する印刷キュー又はプリンタドライバは、その代わりに、printcast印刷コンピューティング・デバイス用のプリンタポートを有するように構成されてもよい。本開示の実施形態がプリンタドライバからprintcastデバイスまでの印刷をサポートすることを確保するのは技術的正確性のためである。Windows(登録商標)オペレーティングシステムにおけるプリンタポート等、プリンタポートは、ポートモニタによって管理されてプリンタドライバ又は印刷キューとプリンタ間の接続としての機能を果たす。プリンタポートは、また、プリンタドライバ又は印刷キューとprintcast印刷コンピューティング・デバイスとの間の接続手段でもあり得る。この構成では、プリンタドライバは、printcast印刷コンピューティング・デバイスのIPアドレスとして構成されたポートを介して、プリンタドライバが生成した印刷ジョブをネットワークに接続されたprintcast印刷コンピューティング・デバイスに送信する。本構成において、ユーザはプリンタドライバの機能を利用することができると同時に、printcast印刷コンピューティング・デバイスの機能を適用し利用することができるであろう。この機能は任意のプリンタドライバをネットワークに接続されたprintcast印刷コンピューティング・デバイスに向けることができ、さらに関連付けることができることも意味する。
定義
MFP―多機能(若しくは機能的)プリンタ及び印刷デバイス.
PDL―ページ記述言語、印刷ジョブにおける文書及びページを記述するプログラミング言語の種類。PDLの例としては、プリンタ・コマンド言語(PCL)5、PCLXL、又はPCL6、及びポストスクリプトがある。ポータブル・ドキュメント・フォーマット(PDF)及びXMLペーパー仕様(XPS)もまたこのグループに属する。JPG及びTIFF等の画像フォーマットは、印刷も可能であるが、PDLによって取り扱われる特殊なケースである。
RIP―ラスター画像プロセッサ、PDLインタープリターを含むファームウェアコンポーネント。この機能は以下において詳細に開示する。
印刷ファイル、印刷ジョブ、及びテストファイルーPDLコマンドを含むコンピュータファイルでMFPに対する未処理の印刷可能データである。印刷ジョブはプリンタドライバの出力である。PCL、PDF、又はXPS等のPDLフォーマットの一つの2進表現である。
グラフィックス・レンダリング・コンポーネント―PDLコマンド及びデータをMFPエンジンが理解できるバイナリデータに変換するRIPファームウェアの内部コンポーネント。これは、コンピューティング・デバイスが理解できるようにプログラミング言語が翻訳される機械語と同様である。バイナリデータはグラフィックス・レンダリング・レベルがハードウェアによって理解されて用紙上で実際の図あるいはピクセルに変換されるものである。このコンポーネントは以下で詳細に開示する。
GEU―グラフィックス・実行ユニット、グラフィックス・レンダリング・コンポーネントにより生成されるオーダーリストを実行して印刷ジョブ又は文書のラスター表現を作成するエンジンにあるハードウェアコンポーネント。
プリンタドライバ―文書を印刷ジョブに変換するWindows(商標)又は他のオペレーティングシステムのデバイスドライバ。
グラフィックス・オーダーリスト―PDLコマンドがグラフィック・レンダリング・コンポーネントにより変換されるバイナリデータ表現。グラフィックス・オーダーリストは、MFPのハードウェアがページ上で実際のマーキングに変換するために理解し処理する下位レベルのグラフィックス指示である。コンピュータの機械語のように、グラフィックス・オーダーリストはMFPが理解する言語である。
バンドデータ―グラフィックス・オーダーリストの処理の結果のバイナリデータの行。ページのピックスマップすなわちビットマップ画像表現のように見える。ページはバンドデータの行から成る。各行の大きさは、128バイト等同じであってもよい。実施形態によっては、各バンドの高さはダイナミックである。幅は、レンダリングされるページの幅であってもよい。
ダムプリンタ―RIPファームウェアを持たないプリンタエンジンという考えである。ラスター画像処理はプリンタの外部で行われる。プリンタは、プリンタエンジンが用紙上で実際のマーキングに対して処理ができるグラフィックス・オーダーリスト形式及びラスター形式(バンドデータ)のいずれかで完全にレンダリングされたページを受信する。
本開示の実施形態は、古い又はサードパーティのMFPに対して新しいPDL技術を付加してもよい。この機能は、プリンタエンジン又はMFPを記憶装置又はトラッシュの中に配置することとは対照的に古いプリンタエンジンの寿命を延長することができる。古いプリンタを除去することをためらい保持する会社が多い。printcast印刷コンピューティング・デバイスは会社が古いプリンタを保持して使用することを可能とする。本開示の実施形態は、printcast印刷デバイスを通して管理されるデバイスの一部としてサードパーティのMFPの使用も可能とする。
本開示のprintcast印刷コンピューティング・デバイスは、最新のRIPファームウェアを使用して、古い、又は能力が低いRIPファームウェアをオーバーライドすることも可能にしてもよい。この機能は、プリンタRIPファームウェアを置き換え又はオーバーライドしてダムプリンタを使用又は構成することができる完全なRIPファームウェアの機能性を提供する。本開示のデバイスは、エンジンハードウェアコンポーネントよりも良い性能も提供する。その理由は、携帯型コンピューティング・デバイスは最新のCPU、より大きなメモリ容量、及びアップグレードされたグラフィックス・プロセッシング・ユニット等のその他のコンポーネントを有するからである。本開示のデバイスは、通常のプリンタ(非MFP)にモバイル・アプリケーションの「スキャンから印刷まで」の能力のような新しい能力を付加し得る。エンジンは、プリンタにおけるハードウェアやソフトウェアのアップグレードとは対照的に情報技術のツールによって管理することができる。
本開示のデバイスに具現化されたprintcast印刷技術は、プリンタ及びMFPのユーザに対するいくつかの状況や問題を避けることができる。例えば、MFP若しくはプリンタのエンジンが、使われなくなったファームウェア、ハードウェアのバグを含む場合にエンジンの問題が回避されるであろう、あるいは本明細書で開示されたprintcast印刷コンピューティング・デバイスによって印刷することによって性能の問題が回避されるであろう。ファームウェアのアップグレード行う必要がある場合、printcast印刷コンピューティング・デバイスのオペレーティングシステム又はアプリケーションは、IT企業のサーバに問い合わせる、または通知を受信することができる。そして、ファームウェアをダウンロードして新しいファームウェアでエンジンを更新することができる。この機能により、会社は、現場に技術者を派遣する費用を節約することができる。
会社の環境が古い又はサードパーティのエンジンを有するのみの場合、本開示の印刷デバイスは、特にユーザが新しいPDLフォーマットの一つで印刷を望む場合に、新しいPDLやファイルフォーマットを翻訳して後方互換性のある印刷ジョブを古い及びサードパーティのエンジンにダウンロードすることができる。古くて能力が低いプリンタは、当該印刷デバイスが提供できる新しい技術によって付加用途を有することになるであろう。エンジンのファームウェアやハードウェアは古くなりあるいは使われなくなる。より良いハードウェアやファームウェアコンポーネントが開発される。一定の期間が過ぎると、古いプリンタやシステムはサポートさえされなくなる。新しいネットワーク及び印刷のソフトウェア技術はプリンタのファームウェアやハードウェアの開発速度よりも早く開発される。企業は、新しい技術を適用するために古いエンジンをめったにアップグレードしない。例えば、古いプリンタのエンジンは最新の印刷プラットフォームやプロトコルをサポートし得ない。本開示の印刷デバイスを使用することによって、大幅なアップグレードの必要なく古い又はサードパーティのエンジンを利用できるであろう。
アップグレードはprintcastデバイスを介して提供されるので、ユーザに対してより安い代替手段が提供される。本開示の実施形態は、新しいMFPのエンジンのハードウェアより費用を少なくすることができる。企業の管理ツールによって、printcast印刷コンピューティング・デバイスに提供される技術と類似の能力及び機能を有する共通のデバイスのセットの一環として古い及びサードパーティのMFPさえも管理することが可能になるであろう。当該デバイスのアプリケーションをwifi及びネットワークの能力でホストすることによって、エンジンのファームウェアにそれらの機能を付加する必要なく、エンジンに対するクラウドのサポートを有効にすることが可能である。
図1は、本開示の実施形態に係るprintcast印刷コンピューティング・デバイス102を用いて印刷動作を実行するためのシステム100のブロック図を示す。printcast印刷コンピューティング・デバイス102は、「printcastデバイス」、又は「デバイス」とも呼ばれる。システム100は、printcast印刷コンピューティング・デバイス102をMFP104と併せて使用する方法を示すためのネットワーク・アーキテクチャの例であり得る。図で示されるように、printcast印刷コンピューティング・デバイス102はMFP104に装着可能な別個のコンポーネントである。printcast印刷コンピューティング・デバイス102は、USBポートをMFP104に連結するUSBデバイスでもよい。
printcast印刷コンピューティング・デバイス102は、また、ネットワーク108に接続してモバイルデバイス110、コンピュータ112、及びサーバ114等のシステム100内の他のコンポーネントと通信する。理解できるように、システム100はMFP104にタスクを送信する多くの付加コンポーネントを含んでもよい。モバイルデバイス110は、MFP104によって処理するためのファイルを送信するスマートフォン等のハンドヘルドすなわち携帯型のコンピューティング・デバイスであってもよい。例えば、モバイルデバイス110はMFP104で印刷される画像を送信してもよい。コンピュータ112は、同様にMFP104を利用するためにネットワーク108に接続されるデスクトップ又はラップトップコンピュータであってもよい。サーバ114はMFP104にアップグレードを提供するデータ記憶装置であってもよい。これらのアップグレードは、ソフトウェアのアップグレード及びMFP104のソフトウェア又はファームウェアコンポーネントのためのパッチであってもよい。サーバ114は、また、printcast印刷コンピューティング・デバイス102と通信してもよい。printcast印刷コンピューティング・デバイス102とMFP104は記憶のためにサーバ114に情報を送信してもよい。モバイルデバイス110、コンピュータ112、及びサーバ114は、印刷及びスキャン動作を実行するために内部でアプリケーションを実行してもよい。クラウドストレージ116はインターネット又はクラウドベースの記憶場所であってもよい。
printcast印刷コンピューティング・デバイス102は、MFP104のエンジン106に直接接続する。printcast印刷コンピューティング・デバイス102は、エンジン106及びMFP104のユーザで利用可能である新しいPDL及びモバイル・アプリケーション等の新しい技術のすべてを提供する。上で述べたように、printcast印刷コンピューティング・デバイス102は、MFP104に装着される別個のコンピューティング・デバイスであってもよい。ネットワークに接続されるコンピューティング・デバイスとして、printcast印刷コンピューティング・デバイス102は、また、協調するデバイスのクラスター・フリートとして組織化されて、古い及び第3者のエンジンに対するサポートを含めて、ネットワーク108全体にわたって新しい技術を利用できるようにしてもよい。printcast印刷コンピューティング・デバイス102は、遠隔処理のため、printcastデバイス102X及び102Y、及びMFP120等のプリンタ等の他のprintcast印刷コンピューティング・デバイスから印刷ジョブ部分を受信してもよい。この機能は多忙なプリンタエンジン及び多忙な携帯型印刷デバイスの助けとなる。
このシナリオにおいて、既存のプリンタは、多くのユーザからネットワーク108を介して継続して印刷ジョブを受信することができる。多くのユーザが同じ印刷デバイスにタスクを送信することができるので、それが印刷に対するボトルネックとなる。接続されたprintcast印刷コンピューティング・デバイス102は非常に多忙であるので、接続されているプリンタエンジン106にジョブを即座に送信することができないであろう。実施形態によっては、遠隔処理向けに一以上のprintcast印刷コンピューティング・デバイスにジョブを送信することが可能である。当該ジョブは元の印刷デバイスに戻される。当該印刷ジョブは事前に処理されるかあるいは事前にレンダリングされるかもしれない。ユーザはプリントアウトを受信するために長く待つ必要はないであろう。printcast印刷コンピューティング・デバイス102は複雑な印刷ジョブを分割して他の携帯型印刷コンピューティング・デバイスに分散する能力を備える。
printcast印刷コンピューティング・デバイス102は、外部ではあるが携帯型のソフトウェア、ファームウェア、及びデバイスとして様々な接続機能をサポートする。接続機能には、これに限定されないが、wifi、ローカルエリア・ネットワーク、NFC、パラレルポート、シリアルポート、USBプリンタポート、USBデータポート、ブルートゥース(登録商標)、インターネット等が挙げられる。さらなるプリンタ、コンピュータへの接続機能が、有線及び無線の両方で、追加され、統合され、サポートされ得る。
printcast印刷コンピューティング・デバイス102の入力データは、接続部122から受信でき、接続部122は無線であってもよい。例えば、printcast印刷コンピューティング・デバイス102がUSBコンピューティング・デバイスである場合、データは、ネットワーク108に接続された無線又は有線の接続部122を通して来てもよい。printcast印刷コンピューティング・デバイス102がモバイルコンピュータである場合は、データは、無線又は有線の接続部122を介して接続されている入力ポートを通して来てもよい。printcast印刷コンピューティング・デバイス102は、また、自身の様々な接続ポートを介して出力データを生成する。接続ポートは、USBデータポート、USBプリンタポート、wifi、NFC、ブルートゥース(登録商標)、TCP/IP等であってもよい。printcast印刷コンピューティング・デバイス102は、MFP104のあらゆる入力ポートに接続してもよいし、また有線、無線、又は直接接続を含んでもよい。
printcast印刷コンピューティング・デバイス102は、USBコンピューティング・デバイス、HDMI(登録商標)コンピューティング・デバイス、ブラックベリーPi(登録商標)デバイス、パーソナルコンピュータ、モバイル若しくはスマートフォンデバイス、タブレット、ミニパーソナルコンピュータ等であってもよい。実施形態によっては、printcast印刷コンピューティング・デバイス102をMFP104内部で統合することが可能であるかもしれない、なぜならば、printcastデバイスはソフトウェア又はハードウェアで全体的に実行できる機能を含むからである。printcast印刷コンピューティング・デバイス102は、MFPファームウェアコンポーネントあるいはフラッシュメモリ領域に存在しホストされるアプリケーションであってもよい。局所的にホストされるアプリケーション又はファームウェアコンポーネントの挙動は、アップグレード可能で下記に開示する機能を提供する限り、下記に開示されるprintcast印刷コンピューティング・デバイス102のように機能することが可能である。開示された実施形態が提供することを意図している能力は、MFP104のようなあらゆる画像装置又はプリンタエンジンに、有線又は無線のいずれかによって、接続可能なあらゆるコンピューティング・デバイスですべて実行可能である。
MFP104のアーキテクチャの例を図2に示す。図2に示すアーキテクチャは、文書をスキャンして印刷、記憶、複写等の他の機能を実行するあらゆる多機能プリンタ又は画像形成装置に適用することができる。図示されているように、printcast印刷コンピューティング・デバイス102は、エンジン106に接続され、エンジン106は次にMFP104の他のコンポーネントに接続される。
MFP104は、これらの機能をサポートするための動作を実行するコンピューティング・プラットフォーム201を含む。コンピューティング・プラットフォーム201は、コンピュータ処理装置(CPU)202、画像形成部204、メモリ部206、及びネットワーク通信インターフェース210を含む。他のコンポーネントも含まれる場合があるが簡略化のために示されていない。MFP104は、コンピューティング・プラットフォーム201を用いて、スキャン、複写、印刷、ファクシミリの送受信、あるいは文書処理等の様々な動作を実行するように構成することが可能である。そのため、MFP104は、スキャナ、並びに複写機、ファクシミリ装置、及びプリンタの一以上の機能を含む印刷デバイス又は多機能周辺装置である場合がある。これらの機能を提供するために、MFP104は、印刷動作を実行するプリンタコンポーネント220、複写動作を実行する複写コンポーネント222、スキャナ動作を実行するスキャナコンポーネント224、及びファクシミリ文書を送受信するファクシミリコンポーネント226を含む。CPU202は、所望の動作を実行するためにこれらのコンポーネントに指示を出すことができる。
MFP104は、また、フィニッシャ211及び一以上の給紙カセット212を含む。フィニッシャ211は回転可能な下流側のローラを含み、所望の動作後、表面に画像が形成された用紙をトレイに移動させる。フィニッシャ211は、また、仕上がった用紙のソーティング、ステイプルでの用紙綴じ、両面印刷、折り目付け、穴あけ、折り畳み等の付加動作を実行する場合がある。給紙カセット212は、用紙に画像が形成された表面を生成するために様々なコンポーネント220、222、224及び226の画像を形成するための用紙を供給する。給紙カセット212は、様々な大きさ、色、組成等を有する用紙を含む場合がある。給紙カセット212は必要に応じて、補充のために取り出すことができる。
文書プロセッサ入力給紙トレイ230は、処理される用紙及び文書を受け取るMFP104の物理的コンポーネントであってもよい。文書は、文書をMFP104内の他のコンポーネントに移動させる文書プロセッサ入力給紙トレイ230の上若しくは中に置かれる。文書プロセッサ入力給紙トレイ230からの文書の動きはユーザが入力した指示によって制御できる。例えば、文書はスキャン動作のためにスキャナのフラットベッドに動かすことができる。これにより、文書プロセッサ入力給紙トレイ230はスキャナコンポーネント224に文書を供給する。図2に示すように、文書プロセッサ入力給紙トレイ230はエンジン106と相互作用して所望の動作を実行することができる。
メモリ部206は指示215を記憶するためのメモリ記憶場所214を含む。指示215は、CPU202及びコンポーネント220、222、224又は226内のあらゆるプロセッサ等、MFP104に関連付けられている他のプロセッサで実行可能である。メモリ部206は、また、MFP104に特有のデータと共に、様々なプログラム及びアプリケーションに関する情報を記憶することができる。例えば、メモリ記憶場所214は、MFP104内のコンポーネントをサポートするために、コンピューティング・プラットフォーム201により実行されるオペレーティングシステムを動作させるためのデータを含む場合がある。
メモリ部206は揮発性及び非揮発性メモリで構成することができる。揮発性メモリはランダム・アクセス・メモリ(RAM)を含んでもよい。非揮発性メモリの例としては、読み出し専用メモリ(ROM),フラッシュメモリ,電気的消去・プログラム可能型読み出し専用メモリ(EEPROM),デジタルテープ、ハードディスクドライブ(HDD),あるいはソリッド・ステート・ドライブ(SSD)を挙げることができる。メモリ部206は、また、他の可能性があるメモリデバイスと共に、読み込み可能又は書き込み可能な揮発性メモリ及び非揮発性メモリのあらゆる組み合わせを含む。
コンピューティング・プラットフォーム201は、CPU202等の一以上のプロセッサをホストすることが可能である。これらのプロセッサは一以上のメモリ記憶場所214に記憶された指示215を実行することができる。これらの指示を実行することにより、プロセッサはMFP104に様々な動作を実行させる。プロセッサは、また、特定用途向け集積回路(ASICs)及びフィールド・プログラマブル・ゲートアレイ(FPGAs)等の特定用途向けのプロセシングユニットを内蔵する場合がある。コンポーネント220、222、224、及び226に特有の動作を実行するためにその他のプロセッサが含まれる場合がある。換言すると、特定のプロセッサは、MFP104にプリンタ、複写機、スキャナ、及びファクシミリ装置として動作させる。
MFP104は、また、コンピューティング・プラットフォーム201に接続可能な操作パネル208を含む。操作パネル208は、MFP104にコマンドを与えるために表示部216とユーザとの対話を促進するための入力部217を含む。表示部216は液晶ディスプレイ(LCD)等のあらゆる電子映像表示部であってもよい。入力部217は、ボタン、タッチスクリーン、キーボード若しくはキーパッド、スイッチ、ダイアル等の、ユーザが操作パネル208に情報を入力できるデバイスのあらゆる組み合わせを含み得る。入力部217は、タッチを検知してユーザからの入力を受け付ける、表示部216に重なって表示されるタッチスクリーン・デジタイザを含んでいることが好ましい。この方法により、ユーザは表示部216と対話する。printcast印刷コンピューティング・デバイス102は、操作パネル208を介してエンジン106に接続することができる。
MFP104は、また、ネットワーク通信処理部218を含む。ネットワーク通信処理部218は、画像形成システムの一以上の他の画像形成装置及びサーバとの無線又は有線接続等のネットワーク通信を確立することができる。CPU202は、ネットワーク通信処理部218に、ネットワーク通信インターフェース210を用いてネットワークを介して情報を送信又は取得するよう指示することができる。データはネットワークを介してコンピューティング・プラットフォーム201で受信されるので、ネットワーク通信処理部218は着信パケットを復号化してそれをCPU202に配信する。CPU202は、それに応じて動作し、MFP104で動作を生じさせる。CPU202は、また、MFP104に関する設定等、メモリ部206に記憶されている情報を取得することができる。
MFP104は、また、エンジン106を含む。エンジン106は、タスクを遂行するために適切に動作するハードウェア、ファームウェア又はソフトウェアコンポーネントの組み合わせであってもよい。例えば、エンジン106は、文書を印刷するためのコンポーネントとソフトウェアから成る。エンジン106は、ユーザが操作パネル208を介して入力した後でコンピューティング・プラットフォーム201から指示を受信してもよい。代替案として、エンジン106は、printcast印刷コンピューティング・デバイス102から指示を受信してもよい。
エンジン106は、用紙へトナーを配置するハードウェアコンポーネント等のMFPエンジンの下位機構を管理し動作させる。エンジン106は、ハーフトナー、トナーカートリッジ、ローラ、スケジューラ、記憶装置、入力/出力動作等を管理し調整してもよい。ページ記述言語(PDLs)を解釈するラスター画像プロセッサ(RIP)ファームウェアは、画像の実際のレンダリング及びMFP104での動作中に用紙へのトナーの塗布のために下位のエンジン106に対して指示を送信する。
図3は、本開示の実施形態に係るprintcast印刷コンピューティング・デバイス102用のコンポーネントのブロック図を示す。付加コンポーネントがprintcast印刷コンピューティング・デバイス102内に実装されてもよい。printcast印刷コンピューティング・デバイス102は、デバイスが印刷ジョブを管理し、MFP104及びエンジン106と相互作用することを可能にする機能性を提供するprintcast印刷コンピューティング・システム300を含む。実施形態によっては,printcast印刷コンピューティング・システム300は、printcastシステム300と呼ばれる場合がある。printcast印刷コンピューティング・システム300については下記で詳細に開示する。
printcast印刷コンピューティング・デバイス102は、デバイスがコンピューティング・デバイスとして単独で動作することを可能にしうる、プロセッサ302及びメモリ304等のコンポーネントも含む。プロセッサ302は、指示やコマンドを実行する。プロセッサ302は、他のコンポーネントに動作を実行するように指示もする。メモリ304は、プロセッサ302により実行される指示を記憶することができる。メモリ304は、printcast印刷コンピューティング・デバイス102内のコンポーネントが使用するためのデータ及び情報を記憶してもよい。プロセッサ302とメモリ304はバス390によって接続することができる。
バス390は、printcast印刷コンピューティング・デバイス102の他のコンポーネントもプロセッサ302及びメモリ304に接続する。オペレーティングシステム306が提供される。オペレーティングシステム306は、他のプログラムがprintcast印刷コンピューティング・デバイス102上で動作するソフトウェアプラットフォームを提供するモバイル・オペレーティングシステムであってもよい。オペレーティングシステム306は、printcast印刷コンピューティング・デバイス102で利用可能な機能と特性を決定することに関与する。例えば、オペレーティングシステム306は、printcast印刷コンピューティング・システム300がprintcast印刷コンピューティング・デバイス102内で動作することを可能にする。
printcast印刷コンピューティング・デバイス102は電源308を含むことができる。実施形態によっては、電源308は、printcast印刷コンピューティング・デバイス102が別の電源から電力を引き出す必要がないように、独立していてもよい。実施形態によっては、電源308は、MFP104等の接続されたデバイスから電力を得てもよい。電源308は、電力を引き出すために一以上のコネクタ310を使用してもよい。例えば、printcast印刷コンピューティング・デバイス102がUSBハブ若しくはポートに接続されている場合、コネクタ310は、MFP104内の電力に接続するためにUSBインターフェース内の2本の線であってもよい。
printcast印刷コンピューティング・デバイス102は、また、接続されているMFP104に対してだけでなくネットワーク108を介してデータを送受してもよい。入力部312と出力部314は、無線接続部122を介して等、データをやりとりする能力を表す。入力部312と出力部314は、また、妥当な場合、printcast印刷コンピューティング・デバイス102からMFP104までUSBケーブルによる線を有してもよい。出力部314が複数の出力ポートを含むことができると同時に入力部312も複数の入力ポートを含むことができる。入力部312と出力部314は、ネットワーク108から受信したときのデータを提供するだけでなくprintcast印刷コンピューティング・システム300からコマンドとデータを受信することもできる。
printcast印刷コンピューティング・システム300は、printcast印刷コンピューティング・システム300がネットワーク108との接続をサポートすることを可能とし、またMFP104とエンジン106を管理するための詳細に開示された機能を提供することを可能とするコンポーネントを含む。これらのコンポーネントを図3に示す。
印刷ジョブマネージャー320は、ネットワーク108又はサポートされる接続方法のいずれかから印刷ジョブを受信するファームウェアコンポーネントである。印刷ジョブマネージャー320は、また、他のprintcast印刷コンピューティング・デバイス102から印刷ジョブを受信することができる。印刷ジョブマネージャー320は、着信データを独自の印刷ジョブに整える。印刷ジョブマネージャー320は、ジョブスケジューリング、文書追跡の目的、及びジョブ管理目的のためにジョブ識別(ID)、タイムスタンプ、ユーザ/所有者ID、及び同様なデータによって各印刷ジョブを特定することができる。これらのタスクを完了した後、印刷ジョブマネージャー320は、MFP104への印刷ジョブの送信予定を立て、RIPファームウェア322にその予定を伝える。
RIPファームウェア322は、printcast印刷コンピューティング・システム300に機能性を提供する完全なラスター画像プロセッサである。RIPファームウェア322は、用紙上での実際のレンダリングを除いて、プリンタエンジンのRIPファームウェアのすべての能力を提供してもよい。レンダリングはMFP104のエンジン106によって行われてもよい。RIPファームウェア322は、以下のサブコンポーネント、PDLインタープリター330及びグラフィックス・レンダリング・コンポーネント332を含む。これらについては下記で詳細に開示する。
PDLインタープリター330は、印刷ジョブマネージャー320により管理される印刷ジョブの構文解析及び処理を実行する。printcast印刷コンピューティング・システム300及びprintcast印刷コンピューティング・デバイス102によりサポートされているページ記述言語は、既にインストールされ、エンジン106のファームウェアによりポートされているPDLインタープリターのより新しいバージョンすなわちより最新のバージョンであるページ記述言語である。PDLインタープリター330は、また、エンジン106用にインストールされたものとは全く異なる、新しい、そしてサポートされていないPDLインタープリターである場合がある。この後者のシナリオでは、PDLインタープリター330は、printcast印刷コンピューティング・デバイス102により提供された新しい技術である。PDLインタープリター330は、新しいXPSインタープリター,新しいPDFインタープリター,カスタマイズされた印刷マークアップ言語(PPML)インタープリター、及び何らかの将来のPDLプロセッサであるかもしれない。実施形態によっては、printcast印刷コンピューティング・システム300は、MFP104及びネットワーク108のニーズに関連するPDLインタープリターを求めていくつかのPDLインタープリターにアクセスすることができてもよい。
グラフィックス・レンダリング・コンポーネント332は、RIPファームウェア322の第2のサブコンポーネントである。PDLインタープリター330は、PDLコマンドの翻訳のためグラフィックス・レンダリング・コンポーネント332と相互作用をしてグラフィックス・オーダーリストを生成する。グラフィックス・オーダーリストは、グラフィックス・オーダーのリストである。グラフィックス・オーダーリストは、アッセンブリ言語又はコンピュータの機械語と同様に下位のバイナリデータである。グラフィックス・オーダーは、エンジン106が実行し処理することが可能な実コンフィギュレーションであり、また描画コマンドである。グラフィックス・レンダリング・コンポーネント332は、文書に適したページの論理表現―ラスター画像又は何らかの他の符号化表現であるがーを生成することができる。実施形態によっては、グラフィックス・レンダリング・コンポーネント332は、グラフィックス・オーダーリストを実行、処理して、用紙にマーキングを付ける最後の処理のためにMFP104のエンジン106にダウンロードできるいくつかのデータのバンドを生成する。
グラフィックス・レンダリング・コンポーネント332からの出力は、エンジン106に対して少なくとも2つの方法でパッケージ化されてもよい。一つの方法は、ターゲットのMFP104又はエンジン106が処理できるように翻訳されたPDLの印刷ジョブであってもよい。もう一つの方法は、MFP104に又はプリンタエンジン106で直接処理できる新しい種類の印刷ジョブの折返えされたラスター画像でもよい。ラスター画像は、PDLインタープリター330及びグラフィックス・レンダリング・コンポーネント332によって処理された後の着信印刷ジョブのバイナリデータ表現である。MFP104がさらなるRIP処理を省略することを可能にする、エンジン106にダウンロードできる圧縮ラスター画像を生成することが可能である。ラスター画像は、印刷時、用紙へのマーキング付け又はインク付けのために直接処理されてもよい。この動作については下記で詳細に開示する。
printcast印刷コンピューティング・システム300はprintcastエンジン324も含む。printcastエンジン324は、主要なprintcast印刷コンピューティング・システム300の機能及び機能性のための管理メカニズムである。printcastエンジン324は、printcast印刷コンピューティング・デバイス102の特定、設定および能力のためにプリンタドライバと通信する。printcastエンジン324は、printcast印刷コンピューティング・デバイス102をネットワークの別の印刷キューとして公表もする。printcastエンジン324は、印刷ジョブマネージャー320から印刷ジョブを受信、処理して、PDLの印刷ジョブをパススルーするときあるいはRIPファームウェア322でPDLの印刷ジョブを処理することも決定する。printcastエンジン324は、また、ホストされているモバイル・アプリケーション・システム・サービス326と共に、管理、立ち上げ、及び調整のサポートもする。printcastエンジン324は、ネットワーク108を介してサーバ114からのより新しいバージョンで自身をアップグレードする。printcastエンジン324は、許可されかつ適用可能な場合、MFP104等の接続されている画像装置からファームウェアのアップグレードをダウンロードし、インストールする。
printcastエンジン324は、印刷ジョブに関する少なくとも2種類のデータを受信する場合がある。これらの印刷ジョブはprintcastコマンドの「印刷ジョブ」及びPDLの印刷ジョブと呼ばれることがある。印刷ジョブは、それぞれがprintcast印刷コンピューティング・デバイス102に遂行させるものにおいて異なる。printcast印刷コンピューティング・システム300に特定の動作を実行するよう指示するものもあれば、MFP104に指示を送信するだけのものもある。printcastエンジン324は、受信した印刷ジョブの種類を判定してそれに応じて動作する。各データの種類に関連付けられる機能については下記で詳細に開示する。
printcastコマンドの印刷ジョブは、管理者、コンピュータ、ネットワーク108に接続されたデバイス又はモバイルデバイスから受信することができる。これらのコマンドは、「印刷エンジン」とも呼ばれるprintcastエンジン324又はエンジン106に対して、アップグレード及び立ち上げ等の一定の動作を実行するようprintcast印刷コンピューティング・デバイス102に要求する。printcast印刷コンピューティング・システム300は、動作を実行する。アップグレードコマンドは、printcast印刷コンピューティング・システム300にファームウェアのアップグレードを実行するよう指示し、またアップグレードパス等に関連する構文を持つことがある。パスのパラメータは任意であってもよく、またファームウェアのアップグレードパッケージに対するパス向けである。換言すると、「パス」は、システム100におけるファームウェアのアップグレードパッケージの取得先をprintcast印刷コンピューティング・システム300に指示する。「パス」パラメータがない場合は、printcast印刷コンピューティング・システム300は、サーバ114、相手先商標製品の製造会社(OEM)のウェブサイト、又は安全なインターネット/クラウドストレージ116等の専用のローカルサーバからファームウェアのアップグレードパッケージを探す。スタンドアローンのprintcast印刷コンピューティング・デバイス102として、新しいツールは、MFP104等の接続された画像装置のファームウェアのアップグレードを実行することができる可能性がある。
printcast印刷コンピューティング・システム300に対する別のコマンドは、モバイル・アプリケーション・サービスを立ち上げるためのものである。このコマンドは、app_service_nameという立ち上げの構文を持つことがある。パラメータ「app_service_name」は、立ち上げるサービス・アプリケーションを決定することが求められている。printcast印刷コンピューティング・デバイス102に対して、プロセッサ302を使用して開発されまたホストされるいくつかのモバイル・アプリケーション・サービスがあることがある。ローンチコマンドの例としては、ローンチ・スキャナ・モバイルサービス・アプリケーション又はローンチ・文書変換サービス・アプリケーションであろう。
そのほかのprintcastコマンドがprintcast印刷コンピューティング・システム300向けに開発、統合、及び実行されてもよい。これらのコマンドは、printcastエンジン324に他のプリンタエンジン管理ルーチンを実行する、あるいは他のモバイル・アプリケーション・サービスを立ち上げるよう指示してもよい。立ち上げられたモバイル・アプリケーション・サービスは、スマートフォン、ラップトップ、タブレット、デスクトップ等の外部コンピューティング・デバイスにおいて、対応するモバイル・アプリケーションと接続して機能する。外部のモバイル・アプリケーションは、外部の文書を処理するための黙示の機能を実行することができる。換言すると、モバイル・アプリケーションは、printcast印刷コンピューティング・デバイス102と協働して、接続されたMFP104のジョブをダウンロード又は処理するプリンタソフトウェアとして動作する。この処理については下記で詳細に開示する。
printcastコマンドはPDLの印刷ジョブの同じチャネルを介して受信されるので、printcastエンジン324は、印刷ジョブを互いに識別する方法を持たなければならない。しかしながら、printcastコマンドは、他のあらゆるPDLの印刷ジョブと同じように見えるように現在のPDLの印刷ジョブの枠組み内で機能するようにパッケージ化されるべきである。従って、printcastコマンドは、メインのprintcastコマンドを包み込むヘッダセクションとトレーラセクションを有してもよい。printcastエンジン324及びprintcast印刷コンピューティング・システム300が適切に動作できるように、セクションは、データセグメントを特別なprintcastコマンドの「印刷ジョブ」として特定するヘッダデータとトレーラデータを含む。
例えば、可能性があるprintcastコマンドの「印刷ジョブ」は、以下のものでもよい。
255072696E744361737421(ヘッダセクション)
コマンド[パラメータ]
255072696E74436173742121(トレーラセクション)
ヘッダデータは、この例では、16進の数値符号化において、「%PrintCast!」である、符号化された開始識別子である。トレーラデータは、この例では、16進の数値符号化において、「%PrintCast!!」である、符号化された終了識別子である。この機能は、さらに強化及び再定義して他の符号化、暗号化、及びXML又はHTMLフォーマティングの使用等のフォーマット標準を使用してもよい。ヘッダセクションとトレーラセクションの間に一以上のprintcastコマンドを含めることも可能である。printcastエンジン324は、ヘッダデータの事前構文解析を行って、着信印刷ジョブデータがPDLの印刷ジョブかprintcastコマンドの印刷ジョブかどうかを特定してもよい。printcastコマンドの動作の例をいくつか挙げると、ファームウェアのアップグレード、モバイルスキャン及び印刷動作、及び文書変換であると言える。これらの例の処理については下記で詳細に開示する。
printcastエンジン324は、また、システム100内のコンポーネントからPDLの印刷ジョブを受信する。印刷ジョブは、予定されたとおりに、印刷ジョブマネージャー320から受信される。印刷ジョブの依頼が正規の印刷ジョブである場合、printcast印刷コンピューティング・デバイス102は、いくつかの相違点を除いて、通常の印刷ジョブがMFP104で扱われるようにその印刷ジョブの依頼を扱う。printcastエンジン324は、RIPファームウェア322を介してprintcast印刷コンピューティング・デバイス102において局所的にPDLの印刷ジョブを処理する、及びMFP104に中継して伝える、及びMFP104まで通過させる、のいずれであってもよい。
printcast印刷コンピューティング・システム300は、また、入力/出力及び通信レイヤ(以下において通信レイヤ)328を含み、それは、接続されたデバイス、すなわち、入力部及び出力部の両方の管理のためのインターフェース・レイヤであってもよい。これはデバイスドライバ、オペレーティングシステム306、TCP/IPインターフェース、又は他の接続技術を使用してもよい。入力態様は、印刷ジョブの受け取りのため印刷ジョブマネージャー320と連携し、システム能力に関する問い合わせに対応し、及びモバイル・アプリケーション・システム・サービス326と外部のモバイル・アプリケーション・クライアントとの間で調整し通信することによるネットワーク接続性に対応している。出力態様は、MFP104又はエンジン106等の接続された印刷デバイス又は画像装置との連携に対応している。通信レイヤ328は、また、レンダリングされた又は通過させられた印刷ジョブをprintcast印刷コンピューティング・システム300内で送信し及びダウンロードする。通信レイヤ328は、有線、無線、又は図3のコネクタ310として示される直接接続によってMFP104に接続されてもよい。
printcast印刷コンピューティング・システム300は、モバイル・アプリケーション・システム・サービス326も含む。オペレーティングシステム306、メモリ304、プロセッサ302、及び入力部312と出力部314によるネットワーク接続性を備える完全に機能的なコンピューティング・デバイスとして、ソフトウェアサービスは、printcast印刷コンピューティング・デバイス102においてホストされ、機能し、動作することができる。printcast印刷コンピューティング・システム300により立ち上げることができるアプリケーションのカテゴリ又は種類の例としては、多機能ではないプリンタのスキャンソフトウェア、文書変換ソフトウェア、オンデマンド印刷、または管理アプリケーションがある。管理アプリケーションには、printcastエンジン324にファームウェアのアップグレード、再起動、リセット、ウェイクアップ等を行うよう指示できるものが含まれる。
サーバのようなシステム・サービス・コンポーネントは、printcast印刷コンピューティング・デバイス102に統合されてprintcastエンジン324を介して管理される。printcastエンジン324とインターフェース接続することにより、図4に示すように、モバイル・アプリケーション・システム・サービス326は、printcast印刷コンピューティング・デバイス102において局所的に動作することができる。モバイル・アプリケーション・システム・サービス326のアプリケーションは、画像処理、文書変換機能、文書記憶及びユーザアカウント管理等のような多様な能力を持つことができる。アプリケーション・インターフェース(API)・サービスは、ネットワーク108を介して接続されるコンポーネント又はクライアント・アプリケーション402等の、printcast印刷コンピューティング・デバイス102の外部にいるクライアントに提供される。クライアント・アプリケーション402は、モバイルデバイス110又はコンピュータ112に存在してもよい。上記で述べたように、クライアント・アプリケーション402は、機能が外部のアプリケーションによって提供されてMFP104のエンジンを使用して動作を実行するので、printcastエンジン324を介するエンジン106に対する拡張として動作してもよい。
MFP104は、printcast印刷コンピューティング・デバイス102から出力データを受信する。MFP104とエンジン106は、他の着信印刷ジョブ又はネットワーク108からの通信のようにそのデータを処理する。実施形態によっては、printcast印刷コンピューティング・デバイス102が新しい機能と能力を既存のデバイスに提供するのでMFP104又はエンジン106のハードウェア及びファームウェアコンポーネントの変更はアップグレードのために必要ない。
MFP104とprintcast印刷コンピューティング・システム300との間の相互作用の性能及び処理効率を向上し改良するために、開示された技術で明示された技術を統合することは可能である。例えば、MFP104のエンジン106は接続されたprintcast印刷コンピューティング・デバイス102と通信するアップグレードされたファームウェアを有してもよい。printcast印刷コンピューティング・デバイス102が処理するすべての着信印刷ジョブは、アップグレードされた相互作用及び通信パスと互換性がある一定の方法でフォーマットすることができる。印刷ジョブも、MFP104で受信されたとき、より効率的に処理される。
図5は、本開示の実施形態に係るMFP104に接続された場合にprintcast印刷コンピューティング・デバイス102を設定するためのフローチャート500を示す。printcast印刷コンピューティング・デバイス102が、MFP104等の画像装置に接続される場合はいつでも、自身の機能及び能力を決定しイネーブルするために自身を設定してもよい。printcastエンジン324は、接続された画像装置に関するデータを使用してどのように機能するかを決定することができる。フローチャート500は設定を完了するために使用されるステップを示す。
各MFP104には事前にインストールされたエンジンファームウェアとその他のファームウェアが搭載されている。ファームウェアは、MFP104がオンラインにされる時点で特定のバージョンであってもよい。ファームウェアコンポーネントは、MFP104が出荷された後でアップグレードすることができる。さらに、すべてのMFPとデバイスは古くなるすなわち陳腐化する。ファームウェアの将来のバージョンは、機能、バグ修正、拡張機能等を含む場合がある。新しいアップグレードは、MFP104の既存のファームウェアと後方互換性はないかもしれない。アップグレードは、MFPの製造業者に知られており、また工場又はその他の場所でカタログが作成されているかもしれない。ファームウェアのバージョンマッピングは、例えば、工場で提供され、その後サーバ及びインターネット/クラウドに含まれるかもしれない。マッピングは、データベースにあって、SQL接続及びその他の方法を用いてクエリーを通して共有できる。換言すると、ファームウェアのアップグレード及び関連情報は、printcast印刷コンピューティング・デバイス102によって、ネットワーク108の記憶場所でアクセスすることができる。あるいは、printcast印刷コンピューティング・デバイス102を設定するときに、リソースファイルとして及びprintcast印刷コンピューティング・デバイス102のソフトウェアコンポーネントと静的にリンクされるときのいずれかのとき、このデータをパッケージ化して含めることは可能である。
ステップ502では、エンジンの能力の問い合わせを実行する。printcast印刷コンピューティング・システム300、より具体的には、printcastエンジン324は、どんなPDLs及び技術がMFP104及びエンジン106に対してイネーブルされているか判定するために、サーバ114等のサーバにファームウェアバージョンのマッピング及び関連するデータを問い合わせることができる。printcastエンジン324は、また、どんな制限、制約、課題等がMFP104に対して適用されるか問い合わせることができる。例えば、printcastエンジン324は、ファームウェア・アップグレードの必要性を判定し、及びどんなPDLsがエンジン106でサポートされているかを判定するために、エンジンのファームウェアのバージョン、能力、及びその他の関連情報を問い合わせする。
実施形態によっては、データは静的データとしてprintcast印刷コンピューティング・デバイス102に含まれていてもよい。静的データは、メモリ304に記憶されている個別のリソース・ファイルでもよく、あるいはprintcast印刷コンピューティング・システム300に静的にリンクすることができる。printcastエンジン324は、printcast印刷コンピューティング・デバイス102に局所的にすでに含まれているものよりも新しいデータについてサーバ114にのみ問い合わせることができる。換言すると、printcastエンジン324は、MFP104に関するデータもアップグレードする必要があるかどうか判定できる。
ステップ504では、MFP104のエンジン106に関するエンジンのパラメータを判定する。printcastエンジン324は、エンジンの制約、制限、機能、及びその他の能力に対する問い合わせに関するデータを受信し処理する。このデータにより、printcastエンジン324は、接続されるMFP104の能力、又は能力不足を効果的に「知る」。printcastエンジン324は、この知識を利用して、MFP104に対して新しい機能、性能向上、及びアップグレードされた能力及び技術を提供しイネーブルする。
このステップは、また、規則と能力の明確化と呼ぶことができる。printcastエンジン324は、少なくとも3つの規則と能力を明確にする。これらは、ステップ506乃至510に示すことができる。ステップ506ではPDLのパススルーサポートを明確にする。PDLのパススルーサポートは、MFP104に有効であることが分かっており、また重要な問題がないPDLsに対してイネーブルされる。印刷ジョブは、通常通り、printcast印刷コンピューティング・システム300を通過し、更にMFP104への出力のために直接、通信レイヤ328に向かってもよい。より新しいファームウェアバージョン又はアップグレードは検知されない。
ファームウェア又はハードウェアのいずれかにおいて、ローカルPDLに重要な問題があることが分かっている場合、printcastエンジン324は、着信印刷ジョブを欠陥があるPDLと共に遮断してもよい。printcastエンジン324は、RIPファームウェア322を用いて、printcast印刷コンピューティング・システム300において局所的に印刷ジョブを処理する。printcastエンジン324は、次に、処理のためMFP104に印刷ジョブを送信する。MFP104がローカルPDLの適切なバージョンを含んでいるので、PDLパススルーのサポートはイネーブルされているが、printcastエンジン324は、恐らくASIC、ハーフトーン、ハードドライブ、又はROMメモリの破損のためにローカルPDLが破損していると判定し、この遮断モードを設定する。printcastエンジン324は、MFP104からローカルPDLに関する情報を受信することができる。
ステップ508では、printcastエンジン324がPDLの遮断モードを明確化する。PDL遮断モードは、上記で明確にされたものと同様である。PDL向けの印刷ジョブは遮断されてprintcast印刷コンピューティング・システム300によって処理される。印刷ジョブはMFP104にパススルーされない。MFP104にインストールされたものよりもより良い新しいバージョンのPDLが印刷ジョブ処理に利用可能な場合、printcastエンジン324はPDLと共に印刷ジョブを遮断する。印刷ジョブは、printcast印刷コンピューティング・デバイス102で局所的に処理される。処理が完了すると、印刷ジョブはエンジン106に出力される。
ステップ510ではスピードを最適化する。エンジン106のレンダリング能力が判定できた場合、printcastエンジン324は、エンジン106によってより効率的に処理される形式に、着信印刷ジョブを生成、翻訳、又は変換できるようにしてもよい。例えば、printcastエンジン324が、MFP104が、MFPの特定用途向け集積回路(ASIC)において、ある圧縮及び解凍アルゴリズムのバージョン2.3を含むと判定した場合、printcastエンジンは、printcast印刷コンピューティング・システム300のRIPファームウェア322にそのようなバージョンについて通知する。RIPファームウェア322は、当該着信印刷ジョブをパススルーモードを経ることなく翻訳、変換してMFP104のASICの既知の圧縮及び解凍アルゴリズムのバージョン2.3に準拠するフォーマットでページのラスター画像表現を生成する。
他の規則は、printcast印刷コンピューティング・デバイス102の処理能力及びアップグレードされた機能を利用するために、イネーブル若しくはディスエーブルされてもよい。これらの規則の例としては、制限されたユーザのアクセスを明確化したり、イネーブルしたりする場合がある。ユーザによってはMFP104を使用できない場合があり、これらの規則は時間が経つにつれて変わるかもしれない。printcast印刷コンピューティング・デバイス102は、printcastエンジン324を用いてこれらの規則を施行することができる。別の例としては、文書の記憶の許可をイネーブルする場合がある。規則には、また、MFP104に対してカラー若しくは白黒印刷アクセスを明確化し、割り当てることが含まれてもよい。換言すると、MFP104にアクセスできるもの及び人に適用される規則は、本開示の実施形態に係るprintcast印刷コンピューティング・デバイス102を用いてイネーブルすることができる。
ステップ512では、機能をイネーブルする。一旦、printcast印刷コンピューティング・デバイス102が構成され、規則が明確化されると、印刷ジョブが受信されるとき、printcast印刷コンピューティング・デバイス102は、規則を適用し、実行する。printcastエンジン324は、それに応じて印刷ジョブを処理する。printcast印刷コンピューティング・デバイス102は、また、管理者から、ファームウェア・アップグレードの催促等のコマンドを受信するかもしれない。この場合、ファームウェア・アップグレードはprintcast印刷コンピューティング・デバイス102で受信してもよい。これにより、printcastエンジン324に、ローカルPDLをパススルーパラメータから遮断モードパラメータに移行させてもよい。
図6は、本開示の実施形態に係るprintcast印刷コンピューティング・デバイス102を用いて印刷ジョブ又はprintcastコマンドを処理するためのフローチャート600を示す。フローチャート600は、printcast印刷コンピューティング・デバイス102がシステム100内の他のデバイスからデータを受信した場合に起こることを示す。ネットワーク108を介して接続された外部のデバイスは、文書の印刷又はprintcast印刷コンピューティング・デバイス102への処理の実行の要求等、何らかの動作を実行してもらうためにデータを送信することが好ましい。従って、ステップ602では、外部の、遠隔の、又は接続されたデバイスからの「印刷ジョブ」あるいはアプリケーションを受信する。上記で述べたように、printcast印刷コンピューティング・デバイス102は、プリンタ又はMFP104のように、印刷ジョブ又は動作に対する宛先として選択され得る。「印刷ジョブ」という用語を使用しているが、これはprintcastコマンド及び実際のPDLの印刷ジョブを指す。
ステップ604では、印刷ジョブマネージャー320を用いて印刷ジョブの予定を立てる。印刷ジョブマネージャー320は、印刷ジョブの依頼を受信し、それに応じて予定を立てる。これは、すべての着信依頼がそのように予定が立てられるので「印刷ジョブ」として取り扱われるひとつの理由である。ジョブは順序正しく処理される。例えば、printcastコマンドは、通常の印刷ジョブよりも優先的な取り扱いを与えられない。ステップ606では、処理のために予定が立てられた場合、printcastエンジン324は印刷ジョブを受信する。printcastエンジン324は、印刷ジョブを分析して、printcast印刷コンピューティング・デバイス102での取り扱い方法を決定する。
ステップ608では、印刷ジョブのヘッダを分析する。上記で述べたように、印刷ジョブはprintcastコマンドとして印刷ジョブを特定する特定のヘッダを含む場合がある。そのヘッダのデータは、16進表記で「%PrintCast!」等の符号化された開始識別子を含む。これは、印刷ジョブがprintcast印刷コンピューティング・システム300に対するprintcastコマンドを実際に含むことをprintcastエンジン324にアラートを出すものである。ヘッダが判定された後、ステップ610では、printcastエンジン324を用いて印刷ジョブがprintcastコマンドを含むかどうかを判定する。実施形態によっては、印刷ジョブは複数のprintcastコマンドを含む場合がある。
ステップ610が「YES」である場合、次に、printcastエンジン324は、printcastコマンドとして印刷ジョブを処理する。printcastエンジン324は、printcast印刷コンピューティング・システム300内のコンポーネントに、コマンドで指定された機能を実行してあるいはprintcast印刷コンピューティング・システム300内のアプリケーションを立ち上げるよう仕事を課してタスクを遂行する。この処理については図7乃至図10を用いて、下記で詳細に開示する。
ステップ610で「NO」である場合、次に、printcastエンジン324は、印刷ジョブを通常のPDLの印刷ジョブとして処理する。printcastエンジン324は、MFP104のエンジン106ですでにサポートされているPCLXL又はPDFインタープリターのバージョンを判定することができる。この情報により、printcastエンジン324は、着信PCLXL及びPDF印刷ジョブが通過して、MFP104によって直接処理されることができるようにしてもよい。何かの理由で、エンジン106にインストールされたバージョンがファームウェアのアップグレードによって修正できない既知のバグがある、あるいはエンジン106によるサポートに関して何らかの不足がある場合、本開示の実施形態は、事前にレンダリングし、互換性のあるデータのみをMFP104にダウンロードすることによって、printcast印刷コンピューティング・デバイス102において着信印刷ジョブを処理する。従って、ステップ610において印刷ジョブと特定された着信印刷ジョブは、エンジン106に直接送信するあるいはprintcast印刷コンピューティング・デバイス102で処理されるかいずれかでステップ614で処理することができる。さらに、遮断モードがイネーブルされている場合、上記で述べたように、次に、印刷ジョブは遮断されてprintcast印刷コンピューティング・デバイス102によって処理される。
ステップ616では、ステップ612又は614の結果をMFP104へ送信する。結果は、printcastコマンド又はPDLの印刷ジョブのいずれかからprintcast印刷コンピューティング・システム300の動作によって生成されたデータであってもよい。結果は、printcast印刷コンピューティング・デバイス102の外部デバイスからの着信依頼との相互作用に起因して、MFP104に提供されるデータである。データは、MFP104に配置されるアップグレードされたファームウェア又は印刷のため処理された文書であってもよい。データはエンジン106又はMFP104によって使用可能なフォーマットであることが好ましい。結果は、MFP104と通信する通信レイヤ328から送信される。
図7は、本開示の実施形態に係るprintcast印刷コンピューティング・デバイス102を用いてMFP104で印刷ジョブを処理するためのフローチャート700を示す。フローチャート700は、ステップ614に対応するが、ステップ614は、図7に開示されたステップによって限定されない。MFP104で印刷するために受信された文書は、printcast印刷コンピューティング・デバイス102によって処理され、その結果としてエンジン106に直接送信されてもよい。上記で開示されたように、printcast印刷コンピューティング・システム300は、受信した文書をエンジン106又はMFP104内の他のファームウェアと互換性があるPDLフォーマットに変換するコンポーネントを含んでもよい。
MFP104が着信印刷ジョブのPDLをサポートしない場合、当該PDLがprintcast印刷コンピューティング・デバイス102内でサポートされる場合には、当該着信PDLの印刷ジョブはprintcast印刷コンピューティング・デバイス102で処理されるであろう。printcast印刷コンピューティング・デバイス102は、全てのサポートされない印刷ジョブの種類を遮断してprintcast印刷コンピューティング・システム300を用いて内部でそれらを処理する。
printcastエンジン324は、利用可能なより新しいファームウェアあることを見出した場合、MFP104に対してファームウェアのアップグレードを実行してもよい。そのようなより新しい又はアップグレードされたファームウェアは、サーバ114又はその他のソースからネットワーク108を介して入手可能であってもよい。ファームウェアのアップグレードは、また、printcastコマンドを用いてprintcast印刷コンピューティング・デバイス102によって実行されてもよい。実施形態によっては,これらの機能は、生産現場で印刷デバイスをアップグレードし、不使用のMFPを再生し、管理された画像装置群の一部としてサードパーティのMFPを統合し、あるいはサードパーティのMFPに新しい機能や能力を付加するために使用される。
MFP104やプリンタのような各画像装置は、ASIC、画像プロセッサ、CPU、データバス、特定かつ限定的なランダム・アクセス・メモリ(RAM)/読み出し専用メモリ(ROM)のメモリ容量、ハードドライブフォーマット,並びにデータ圧縮、符号化及び暗号化のための特定のファームウェア技術を含む。これらのすべてにより、MFPが、例えば、その製品ラインの特定の機種のバージョン2.4であると明確にされる。製品ラインに対するそれぞれの新しいアップグレードには、ますます後方互換性をなくさせる、ハードウェア、ファームウェア、およびソフトウェアコンポーネントのどれか若しくは全ての新しいセットが含まれる。製品ラインの新しいバージョンには、以前のデバイスの機能性、性能及び機能を改善することが見込まれる。その結果、より古い製品は、時が過ぎるに従って、価値が減少していくとみなされる可能性がある。
従って、print印刷コンピューティング・castデバイス102は、それらのより古いMFPやプリンタをネットワーク上に戻して新しい価値を持たせる。古いデバイスを使用すると、製品の寿命を延長し、printcast印刷コンピューティング・デバイス102を使用する事業者及び顧客により良い投資利益(ROI)を提供する。これを実現するために、printcast印刷コンピューティング・デバイス102は、MFP104の各バージョン若しくは機種の能力、技術、及び限界を知ることができる。printcast印刷コンピューティング・デバイス102は、そのような情報を、MFP104自体に、サーバ114等のローカルネットワークのサーバに、元の機器の製造業者(OEM)に、あるいはクラウドのサーバ又は場所に問い合わせることができる。
printcast印刷コンピューティング・デバイス102が、ASIC、画像プロセッサ、メモリ容量、ハードドライブフォーマット,並びにデータ圧縮、符号化及び処理のための関連付けられたアルゴリズムのどれかを知った場合、print印刷コンピューティング・castデバイス102が、MFP104で効率的にまた高品質で印刷される後方互換性があるPDLの印刷ジョブを生成しレンダリングすることは可能である。従って、MFP若しくはプリンタの一機種用に生成されたPDLの印刷ジョブは、printcast印刷コンピューティング・デバイス102がMFP若しくはプリンタの別の機種に接続された場合には異なるかもしれない。
図7を参照して、ステップ702では、printcast印刷コンピューティング・デバイス102及びMFP104に関する規則と能力を明確にする。このステップは図5のステップ504、506、508、及び510に対応する。printcastエンジン324は、エンジンの制約、限界、機能、及びその他の能力に関する問い合わせに対するデータを受信し、処理する。printcastエンジン324は、MFP104の能力又は能力の不足を知ることができる。printcastエンジン324は、次に、MFP104に印刷ジョブを配信する前に印刷ジョブを遮断する時並びに印刷ジョブを通過させる時を知る。上記で述べたように、printcastエンジン324は、重要な問題を有することが分かっているあるいはMFP104でサポートされないPDLを有する印刷ジョブを遮断する。printcastエンジン324は、また、printcast印刷コンピューティング・デバイス102によりホストされているバージョンがMFP104にインストールされているものよりも良い場合にも印刷ジョブを遮断してもよい。
ステップ704では、printcast印刷コンピューティング・システム300でPDLの印刷ジョブを受信する。ステップ706では、適用可能な、PDLの印刷ジョブ向けの規則を判定する。MFP104の規則と能力に基づいて、ステップ708では、printcast印刷コンピューティング・デバイス102内で処理するためにPDLの印刷ジョブを遮断するかどうか判定する。printcastエンジン324は、前に規定された規則が特定のジョブに適用される場合PDLの印刷ジョブを遮断するかどうかを判定してもよい。
ステップ708が「NO」の場合、ステップ710で、PDLの印刷ジョブを通信レイヤ328に送信する。PDLの印刷ジョブはMFP104のファームウェア及びハードウェアにサポートされるので、printcast印刷コンピューティング・デバイス102内で処理する必要はない。ステップ712では、printcast印刷コンピューティング・デバイス102からMFP104にPDLの印刷ジョブをダウンロードする。ステップ716では、MFP104に送信される通常の印刷ジョブのように、エンジン106を用いてPDLの印刷ジョブの文書を印刷する。文書を記憶することあるいはMFP104や別の装着されたデバイスを用いて編集ができるようにすること等、印刷以外に他の動作もこのステップで行うことができる。
ステップ708が「YES」の場合、printcast印刷コンピューティング・システム300を用いてprintcast印刷コンピューティング・デバイス102で処理するために、printcastエンジン324はPDLの印刷ジョブを遮断する。このステップについては、下記の図8乃至図12で詳細に開示する。一旦、処理が完了すると、フローチャート700はステップ710に進み、PDLの印刷ジョブを通信レイヤ328に送信する。
図8は、本開示の実施形態に係るprintcast印刷コンピューティング・デバイス102でPDLの印刷ジョブを処理するためのフローチャート800を示す。フローチャート800は、フローチャート700で開示されたステップ714に対応し得る。しかしながら、ステップ714は、フローチャート800に示される実施形態に限定されない。
printcast印刷コンピューティング・デバイス102で生成されたPDLの印刷ジョブに対して最良の性能を達成するために、生成されたPDLの印刷ジョブはラスター化された画像を含む印刷ジョブであることが好ましい。ラスター化された画像は、既に、RIPファームウェア322のPDLインタープリター330及びグラフィックス・レンダリング・コンポーネント332によって処理されている画像であってもよい。ラスター画像は、エンジン106に対してローカルなRIPファームウェア322による複製や再処理を経る必要がないMFP104のエンジン106で直接処理することができるフォーマットである。ラスター画像は、MFP104のエンジンファームウェアが直接処理して用紙上にピクセルをレンダリングできるフォーマットであることが好ましい。なぜならば、ラスター画像はエンジン106によって直接処理される「ネイティブ」フォーマットであるからである。エンジン互換性があるラスター画像は、折り返されて通常の印刷ジョブのように見えるが、エンジン106が直接処理できる画像である。従って、エンジン互換性があるラスター画像は、接続されたMFPに対してデバイス依存性があり得る。
ステップ802では、printcast印刷コンピューティング・システム300のRIPファームウェア322にPDLの印刷ジョブを提供する。フローチャート700のステップ708では、MFP104に対して規定された規則に従って、PDLの印刷ジョブは遮断されるものとすると判定する。printcastエンジン324は規則を適用してPDLの印刷ジョブを遮断する。
ステップ804では、をMFP104のエンジン106にダウンロードするためにPDLの印刷ジョブに対する最良のフォーマットを判定する。FP104に送信される印刷ジョブの主要なコンテンツは、printcast印刷コンピューティング・デバイス102内で生成されたラスター画像である。ラスター画像は、エンジン106で直接処理することができるレンダリングされた文書のページのバンド毎の圧縮データ表現であるものとする。最良の性能と互換性のために、ラスター画像は、エンジン106のラスター・プロセッシング・ユニット・レベルで処理される。実施形態によっては,圧縮されたバイナリフォーマットが「MFPのネイティブフォーマット」である場合がある。従って、printcastエンジン324は、MFP104へのダウンロードのためにラスター画像を達成するための最良の方法を判定する。
PDLの印刷ジョブをフォーマットするために4つの方法を選択することができる。付加方法も同様に考慮されてもよい。あるいは、printcastデバイスによっては開示された方法の内3つ以下を実施するのみであってもよい。4つの方法は、図9乃至図12に詳細に開示される。図8に示すように、ステップ806では、PDLの印刷ジョブをネイティブPDLに翻訳する。RIPファームウェア322によって生成されたラスター画像は、MFP104のために通常のPDLの印刷ジョブの内部で折り返される。ステップ808では、サポートされる画像フォーマットで折り返されたラスター画像を生成する。このステップでは、MFP104がすでに印刷できるフォーマットのためにサポートされる画像の内の一つでラスター画像が生成される。ステップ810では、MFPのネイティブフォーマットで折り返されたラスター画像を生成する。printcast印刷コンピューティング・デバイス102によって生成された印刷ジョブをMFP104向けのMFPのネイティブフォーマットのバンド毎に圧縮されたラスター画像を含む印刷ジョブとして特定するために新しいPDLが使用される。ステップ812では、PDLの印刷ジョブをサードパーティのPDLに翻訳する。ラスター画像は、サードパーティのPDL等、MFP104がすでにサポートするフォーマットで折り返される。サードパーティのPDLの例としては、周知のプリンタ制御言語又はページ記述言語によって独自開発されている場合がある。
以下の図9乃至図12に開示された処理の要約によって、printcast印刷コンピューティング・デバイス102がそれらのフォーマットの通常の印刷ジョブと当該フォーマットの処理された印刷ジョブを区別する方法の概要が得られる。換言すると、printcast印刷コンピューティング・デバイス102によって生成された印刷ジョブは、他のPDLの印刷ジョブから特定でき、区別されるものとする。これを行う一つの方法は、新しい種類の印刷ジョブをprintcastが生成した印刷ジョブとして特定するジョブパラメータを付加することである。
実施形態によっては,printcastの印刷ジョブのファイル形式仕様が実行されてもよい。当該ファイル形式は、PJL、PRESCRIBE、又はその他のジョブ・パラメータ・ラッパーを有する他のバイナリPDLと同様であってもよい。以下は、下に下線が引かれたprintcastの印刷ジョブパラメータを有するPCLXLの印刷ジョブの例である。
%ー12345X@PJLJOBNAME=「ジョブ名」
@PJL SET TIMEOUT=300
@PJL SET RESOLUTION=600
@PJL SET BITPERPIXEL=1
@PJL COMMENT=「INFO:NUP 1;DUPLEX OFF;QTY 1;COLORMODE COLOR;」
@PJL COMMENT=「APP:C:\プログラムファイル\MicrosftOffice\OFFICE11\WINWORD.EXE;」
@PJL SET ECONOMODE=OFF
@PJL SET USERNAME=「ユーザ名」
@PJL SET JOBNAME=「ジョブ名」
@PJL SET PRINTCAST MODE=TRUE(printcast印刷ジョブパラメータ)
@PJL SET PRINTCAST JOB ID=100(printcast印刷ジョブパラメータ)
@PJL SET QTY=1
@PJL SET KPAGESPERSHEET=1
@PJL ENTER LANGUAGE=PCLXL
ファイル中央のバイナリデータは、印刷ジョブ内の文書のページのバンド毎に圧縮されたデータの表現である。上記に示すバイナリデータは、主要なバイナリデータの見え方の例である。
上記に示す印刷ジョブは、PJL、XPSのPrintTicketフォーマット、あるいはPRESCRIBE又は印刷ジョブのPDLの種類に依存する他のジョブパラメータ仕様における印刷ジョブパラメータを含んでもよい。ジョブパラメータは、printcastの印刷ジョブをネイティブラスター画像のコンテンツを有する印刷ジョブとして特定することができる。実施形態によっては,printcastのジョブパラメータは、printcastモード及びprintcastジョブの識別(ID)である。他のprintcastのジョブパラメータは、文書名、ファイル名、印刷のタイムスタンプ、同じ文書が処理されることを確保するために情報の全てを符号化するためのCRCコード等で定義されてもよい。printcast印刷コンピューティング・デバイス102により生成される印刷ジョブの処理を促進するために、追加のprintcastのジョブパラメータが、必要に応じて付加されてもよい。
printcastモードのジョブパラメータは、着信PDLの印刷ジョブがprintcastの印刷ジョブであることをMFP104に注意を喚起するための新しいコマンドであってもよい。換言すると、着信印刷ジョブは、すでにprintcast印刷コンピューティング・デバイス102で処理されている。実施形態によっては,printcastモードのジョブパラメータは、TRUE若しくはFALSE値を有する可能性があるコマンドであってもよい。パラメータが存在しない場合、設定はデフォルトでOFF若しくはFALSEになる。TRUEの場合、MFP104のファームウェアは、ローカルのPDLインタープリター及びグラフィックス・レンダリング・コンポーネントによる印刷ジョブの処理を省いてもよい。当該印刷ジョブはエンジン106に直接ダウンロードされてもよい。
別の実施形態では、printcastモードのジョブパラメータは、PDLコマンドに対応するキーワードである。RIPファームウェア322は、これを生成された印刷ジョブに付加して、着信印刷ジョブがネイティブフォーマットのラスター画像を含むことをMFP104及び関連付けられたファームウェアに通知する。当該印刷ジョブは、エンジン106に直接ダウンロードされてもよい。
さらなる実施形態においては、printcastモードのジョブパラメータは、0若しくは偽、及び1若しくは真という設定であってもよい。当該設定はPDLに対するモードコマンドに対応する新しいコマンドである。RIPファームウェア322は、この設定を生成された印刷ジョブに付加して、着信印刷ジョブがネイティブフォーマットのラスター画像を含むことをMFP104及びそれに関連付けられたファームウェアに通知する。上記の実施形態と同様にして、当該印刷ジョブは、エンジン106に直接ダウンロードされてもよい。
別のprintcastのパラメータは、printcastのジョブIDのジョブパラメータである。ジョブIDは、printcast印刷コンピューティング・デバイス102により生成されたそれぞれの印刷ジョブに割り当てられてもよい。ジョブIDは、取り消し、中断、及びアプリケーションが印刷ジョブに実行したいかもしれない他の機能性等のジョブ管理のために使用されてもよい。このパラメータは、printcastエンジン324で生成される数値カウンタであってもよく、生成された印刷ジョブに付加されてもよい。
一旦、印刷ジョブがprintcast印刷コンピューティング・システム300及びprintcast印刷コンピューティング・デバイス102によって生成されると、ステップ814で、生成された印刷ジョブがMFP104にダウンロードされる。このステップでは、生成された印刷ジョブを通信レイヤ328送信することが含まれ、次に通信レイヤ328は印刷ジョブをMFP104に送信するする。上記で述べたように、生成された印刷ジョブは、ファームウェアをバイパスして印刷のためエンジン106に向かうことができることをMFP104に注意を喚起するものとする。
図9は、本開示の実施形態に係るprintcast印刷コンピューティング・デバイス102を用いてPDLの印刷ジョブをネイティブPDLに翻訳するためのフローチャート900を示す。フローチャート900は、フローチャート800で開示されたステップ806に対応し得る。しかし、ステップ806は、フローチャート900で示される実施形態に限定されない。フローチャート800によって開示された処理は、PDLの印刷ジョブを、MFP104によってサポートされる既知のPDL言語に翻訳することとして理解されてもよい。従って、フローチャート900では、RIPファームウェア322によって生成された結果として生じたラスター画像が、PCL5、PCLXL、XPS、又は他のPDL等の通常のPDLの印刷ジョブの内部に折り返される。上記で開示したように、printcast印刷コンピューティング・デバイス102は、必要に応じて、利用可能なPDLでアップグレードされてもよい。
ステップ902では、印刷ジョブのためにファイルのバッファを作成する。ファイルのバッファは、printcast印刷コンピューティング・デバイス102のメモリ304で作成されてもよい。ファイルのバッファは、印刷ジョブが処理されている間、当該印刷ジョブを一時的に記憶する。
ステップ904では、ネイティブPDLのジョブ、文書、及びページヘッダを生成する。ステップ906では、ジョブ、文書、及びページチケットの印刷ジョブへの付加も実行してもよい。これらのステップによって、受信された印刷ジョブからのデータによって追加されるネイティブPDLの印刷ジョブのヘッダがフォーマットされる。ヘッダは、印刷ジョブがすでにRIPファームウェア322によって印刷用にフォーマットされてしまっていることをMFP104に伝えるprintcastの印刷ジョブパラメータと併せて、上記で開示されたフォーマットにマッチしてもよい。
ステップ908では、ネイティブPDLコマンドを生成する。ステップ910では、ステップ908と共に着信PDLコマンドをネイティブPDLコマンドに翻訳もする。printcastエンジン324は、ネイティブPDLコマンドをMFP104及びそれに関連付けられたファームウェアから取得することができる。次に、printcastエンジン324は、着信コマンドを対応するネイティブコマンドに関連付けることによって着信コマンドをネイティブコマンドに翻訳する。これらの関連付けは、printcast印刷コンピューティング・デバイス102内に記憶され、printcast印刷コンピューティング・システム300によってアクセス可能であってもよい。ネイティブPDLの印刷ジョブには、翻訳されたPDLコマンドが追加される。
ステップ912では、ネイティブPDLの印刷ジョブ向けに、ネイティブPDLのジョブ、文書及びページのフッターデータが生成される。フッターは、翻訳されたPDLコマンド及び文書のページのバンド毎に圧縮されたデータの後に作成されてもよい。ステップ914では、ファイルのバッファを終了し、MFP104へのダウンロードに向けて翻訳されたネイティブPDLの印刷ジョブを通信レイヤ328に転送する。
図10は、本開示の実施形態に係るサポートされる画像フォーマットでラスター画像を生成するためのフローチャート1000を示す。フローチャート1000は、フローチャート800で開示されたステップ808に対応し得る。しかし、ステップ808は、フローチャート1000で示される実施形態に限定されない。フローチャート1000では、JPG、TIFF、PNG等、MFP104がすでに印刷できるサポートされる画像フォーマットの一つでラスター画像が生成される。この機能は、モバイルデバイス110等のモバイルデバイスからMFP104に、写真のような画像を印刷する場合に特に好ましいであろう。モバイルデバイス110は、MFP104によって認識されない画像フォーマットで印刷ジョブを送信してもよい。printcast印刷コンピューティング・デバイス102は、印刷ジョブを遮断してサポートされる画像フォーマットに変換する必要があると判定する。
ステップ1002では、印刷ジョブのためにファイルのバッファを作成する。ファイルのバッファは、printcast印刷コンピューティング・デバイス102のメモリ304に作成されてもよい。ファイルのバッファは、印刷ジョブが処理されている間、当該印刷ジョブを一時的に記憶する。
ステップ1004では、ラスター画像フォーマットのヘッダを生成する。ヘッダは、printcastの印刷ジョブパラメータが挿入される上記で開示された前例のヘッダに似ている。ステップ1006では、着信PDLの印刷ジョブをRIPファームウェア322によって処理する。
ステップ1008では、生データのバンドをグラフィックス・レンダリング・コンポーネント332によって生成する。ステップ1010では、また、グラフィックス・レンダリング・コンポーネント332によって生成された各バンドをラスター画像フォーマットに変換もする。ステップ1010はprintcastエンジン324によって遂行することができる。
ステップ1012では、変換されたバンドでラスター画像のディメンジョンを更新する。ステップ1014では、ラスター画像に対するその他のファイルのプロパティを最終決定する。ステップ1016では、印刷ジョブのファイルのバッファを終了して印刷ジョブを通信レイヤ328に転送する。
図11は、本開示の実施形態に係るネイティブフォーマットの印刷ジョブを生成するためのフローチャート1100を示す。フローチャート1100は、フローチャート800で開示されたステップ810に対応し得る。しかし、ステップ810は、フローチャート1100で示される実施形態に限定されない。本開示の実施形態では、printcastが生成した印刷ジョブを、MFP104向けのネイティブフォーマット又はMFPのネイティブフォーマットのバンド毎に圧縮されたラスター画像データを含む印刷ジョブとして特定するために新しいPDLを生成してもよい。MFPのネイティブフォーマットは、印刷ジョブの主要なコンテンツのための圧縮されたバイナリフォーマットを指すことがある。主要なコンテンツはprintcastが生成したラスター画像であってもよい。ラスター画像は、MFP104のエンジンファームウェアで直接処理することができるレンダリングされた文書のページのバンド毎に圧縮されたデータ表現である。
ステップ1102では、印刷ジョブのためにファイルのバッファを作成する。ファイルのバッファは、printcast印刷コンピューティング・デバイス102のメモリ304に作成されてもよい。ファイルのバッファは、印刷ジョブが処理されている間、当該印刷ジョブを一時的に記憶する。
ステップ1104では、PDLのジョブ、文書、及びページのヘッダを生成する。ヘッダは、印刷ジョブがすでにRIPファームウェア322によって印刷用にフォーマットされてしまっていることをMFP104に伝えるprintcastの印刷ジョブのパラメータと併せて、上記で開示されたフォーマットにマッチしてもよい。ステップ1106では、着信印刷ジョブをRIPファームウェア322によって処理する。印刷ジョブは、上記で開示したように、PDLインタープリター330によって処理することができる。
ステップ1108では、グラフィックス・レンダリング・コンポーネント332によって生データのバンドを生成する。ステップ1110では、データの生成された各バンドをネイティブフォーマットで記憶することもできる。データのバンドは、文書のページの表現であるバイナリデータを表してもよい。ステップ1112では、データのバンドを有する印刷ジョブに対するファイルのプロパティを最終決定する。ステップ1114では、印刷ジョブのファイルのバッファを終了して印刷ジョブを通信レイヤ328に転送する。
図12は、本開示の実施形態に係るサードパーティのPDLに印刷ジョブを翻訳するためのフローチャート1200を示す。フローチャート1200は、フローチャート800で開示されたステップ812に対応し得る。しかし、ステップ812は、フローチャート1200で示される実施形態に限定されない。サードパーティのPDLへの翻訳は、MFP104が、printcast印刷コンピューティング・デバイス102によって即座にサポートされないPDLをサポートする場合に好ましいであろう。当該PDLは、別の製造業者又はエンティティからのサードパーティのPDLであってもよい。従って、MFP104はprintcast印刷コンピューティング・デバイス102と同じ製造業者ではないかもしれない。このような場合、サードパーティのPDLはprintcast印刷コンピューティング・デバイス102に利用可能にされてもよい。従って、printcast印刷コンピューティング・デバイス102は、着信PDLの印刷ジョブをMFP104によってサポートされるサードパーティのPDLに翻訳することができる。
ステップ1202では、印刷ジョブのためにファイルのバッファを作成する。ファイルのバッファは、printcast印刷コンピューティング・デバイス102のメモリ304に作成されてもよい。ファイルのバッファは、印刷ジョブが処理されている間、当該印刷ジョブを一時的に記憶する。
ステップ1204では、サードパーティのPDLの印刷ジョブ、文書及びページのヘッダを生成する。ステップ1206では、印刷ジョブにジョブ、文書及びページのチケットも付加することができる。これらのステップでは、受信された印刷ジョブからのデータによって追加されるサードパーティのPDLの印刷ジョブ用のヘッダがフォーマットされる。ヘッダは、印刷ジョブがすでにRIPファームウェア322によって印刷用にフォーマットされてしまっていることをMFP104に伝えるprintcastの印刷ジョブパラメータと併せて、上記で開示されたフォーマットにマッチしてもよい。
ステップ1208では、サードパーティのPDLコマンドを生成する。ステップ1210では、ステップ1208と併せて、着信PDLコマンドをサードパーティのPDLコマンドに翻訳する。printcastエンジン324は、MFP104とそれに関連付けられたファームウェアから、あるいはアップグレードされたから印刷デバイスからサードパーティのPDLコマンドを取得することができる。次に、printcastエンジン324は、着信コマンドを対応するサードパーティのコマンドに関連付けて、着信コマンドをサードパーティのコマンドに翻訳する。これらの関連付けは、printcast印刷コンピューティング・デバイス102内に記憶され、printcast印刷コンピューティング・システム300によってアクセス可能であってもよい。
ステップ1212では、サードパーティのPDLの印刷ジョブ、文書、及びファイルの全てのページのフッターデータを生成する。フッターは、翻訳されたPDLコマンド及び文書のページのバンド毎に圧縮されたデータの後で作成されてもよい。ステップ1214では、ファイルのバッファを終了して、MFP104へのダウンロードのために翻訳されたサードパーティのPDLの印刷ジョブを通信レイヤ328に転送する。
このように、MFP装置に装着されたあるいは接続されたデバイスは外部のデバイス及びコンピュータからネットワークを介して印刷ジョブを受信することができる。印刷ジョブはフォーマットや種類が異なる場合がある。printcastエンジンは、printcastデバイスのprintcast印刷コンピューティング・システム内で処理するために印刷ジョブを遮断するかどうかを判定する。そうする場合には、処理された印刷ジョブはMFPのエンジンに直接向けられてもよい。
当業者には理解されるように、本発明はシステム、方法、及びコンピュータ・プログラム製品として具現化することができる。その結果、本発明は、全くのハードウェア実施形態、全くのソフトウェア実施形態(ファームウェア、常駐ソフトウェア、マイクロコード等を含む)、及び、本明細書において、すべて、包括的に「回路」、「モジュール」、又は「システム」と呼ばれることがある、ソフトウェア態様とハードウェア態様を組み合わせた実施形態の形を取ることができる。さらに、本発明は、媒体に具現化されたコンピュータ使用可能なプログラムコードを有する表現のうち、あらゆる物理的な媒体において具現化されたコンピュータ・プログラム製品という形を取ることができる。
一以上のコンピュータ使用可能又はコンピュータ読み込み可能な媒体の任意の組み合わせを使用することができる。コンピュータ使用可能又はコンピュータ読み込み可能な媒体は、例えばこれに限定されないが、電子的、磁気的、光学的、電磁気的、赤外線式、又は半導体のシステム、装置、機器、及び伝播媒体であってもよい。コンピュータ読み込み可能な媒体のより具体的な例(非網羅的リスト)には、以下があげられる。すなわち、1本以上の線を有する電気的接続、携帯型コンピュータディスク、ハードディスク、ランダム・アクセス・メモリ(RAM),読み出し専用メモリ(ROM),消去可能プログラマブル読み出し専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み出し専用メモリ(CD−ROM)、光学的記憶装置、インターネット若しくはイントラネットをサポートする伝送媒体等の伝送媒体、及び磁気記憶装置である。コンピュータ使用可能又はコンピュータ読み込み可能な媒体は用紙又はプログラムが印刷されるその他の適切な媒体でもよいことに留意されたい。というのは、プログラムは、例えば、用紙又はその他の媒体の光学的走査によって電子的に取り込まれ、次に、コンパイルされ、解釈され、あるいはそうでなければ、必要に応じて適切な方法で処理され、次にコンピュータのメモリに記憶されるからである。
本発明の動作を実行するためのコンピュータ・プログラム・コードは、Java(登録商標)、Smalltalk、C++等のオブジェクト指向プログラミング言語及び「C」プログラミング言語又は同様のプログラミング言語等の従来の手続き型プログラミング言語を含む一以上のプログラミング言語の任意の組み合わせで書くことができる。プログラムコードは、スタンドアローンのソフトウェアパッケージとして、ユーザのコンピュータで全体的に、又はユーザのコンピュータで部分的に、ユーザのコンピュータで部分的に、又は遠隔のコンピュータで部分的に、及び遠隔のコンピュータ又はサーバで全体的に実行してもよい。後者のシナリオでは、遠隔のコンピュータは、ローカルエリア・ネットワーク(LAN)又は広域ネットワーク(WAN)を含むあらゆる種類のネットワークを介してユーザのコンピュータに接続されてもよい、あるいは外部のコンピュータ(例えば、インターネットサービスプロバイダを用いてインターネットを介して)に接続されてもよい。
本発明は、方法、装置(システム)及び本発明の実施形態に係るコンピュータ・プログラム製品のフローチャート図及び/又はブロック図を参照して説明されている。フローチャート図及び/又はブロック図の各ブロック、並びにフローチャート図及び/又はブロック図のブロックの組み合わせは、コンピュータ・プログラムの指示によって実施することができることは理解されよう。これらのコンピュータ・プログラムの指示は、コンピュータ又はその他のプログラマブルデータ処理装置のプロセッサにより実行される指示が、フローチャート及び/又はブロック図のブロック及びブロック群で規定される機能/動作を実施するための手段を生成するように汎用コンピュータ、専用コンピュータ、又はその他のプログラマブルデータ処理装置のプロセッサに提供されて、機械を製造する。
図のフローチャート及びブロック図は、本発明の様々な実施形態に係るシステム、方法、及びコンピュータ・プログラム製品の可能な実施に関するアーキテクチャ、機能性、及び動作を例示している。この関連で、フローチャート及びブロック図の各ブロックは、モジュール、セグメント、又はコードの一部を表しており、また、規定された論理機能を実施するための一以上の実行可能な指示から成る。また、代替の実施の中には、ブロックに記載された機能は、図に記載された順序から外れて実行されることがあることに留意されたい。例えば、連続して示される2つのブロックが、実際には、ほとんど同時に実行される場合があり、あるいは、ブロック群が、関連する機能性次第で、逆順に実行される場合もある。また、ブロック図及び/又はフローチャート図の各ブロック、及びブロック図及び/又はフローチャート図のブロック群の組み合わせは、規定された機能又は動作を実行する専用ハードウェアベースシステムによって、及び専用ハードウェアとコンピュータの指示の組み合わせよって実行され得ることにも留意されたい。
本明細書で使用される技術は特定の実施形態を説明することのみが目的であり、本発明を限定することを意図していない。本明細書で使用されるように、単数形「a」、「an」、及び「the」は、文脈上で別段明確に示していない限り、複数形も同様に含むことを意図している。さらに、用語「含む(comprise)」及び/又は「含んでいる(comprising)」は、本明細書で使用される場合、記述された機能、整数、ステップ、動作、要素、及び/又はコンポーネントの存在を明示するが、一以上の他の機能、整数、ステップ、動作、要素、コンポーネント、及び/又はそれらのグループの存在又は追加を排除するものではないことは理解されよう。
実施形態は、コンピュータのプロセス、コンピューティング・システムとして、あるいはコンピュータ読み取り可能な媒体のコンピュータ・プログラム製品等の製品として実施することができる。コンピュータ・プログラム製品は、コンピュータシステムによって読み取り可能で、かつコンピュータのプロセスを実行するためのコンピュータ・プログラムの指示を符号化するコンピュータ記憶媒体であってもよい。アクセスされた場合、上記に開示された機能を実行するために、指示はプロセッサに他のコンポーネントをイネーブルさせる。
下記の請求項における、機能要素に加えて、すべての手段又はステップの対応する構造、材料、動作、及び同意義物は、具体的に請求されている他の請求要素と一緒に機能の実行をするためのあらゆる構造、材料又は動作を含むことが意図されている。本発明に関する記載は、例示及び説明の目的で提示してきたが、開示された形態で本発明を網羅あるいは限定する意図ではない。本発明の範囲と主旨から逸脱することなく多くの変更及び変形ができることは、当業者にとって明らかであろう。本発明と実用的応用の本質を最もよく説明するために、そして本発明を当業者が理解できるようにするために、考えられる特定の用途に適した様々な変更がされた実施形態について選択して説明されている。
開示されたネットワーク又はシステムの一以上の部分は、情報及びデータを交換することが可能なネットワークに接続された一以上のMFPシステムに渡って分散されてもよい。MFPシステムの様々な機能及びコンポーネントが複数のクライアントのコンピュータ・プラットフォームに渡って分散され、あるいは分散システムの一部としてタスクを実行するように構成されてもよい。これらのコンポーネントは、実行可能で、プロトコルを用いてネットワークを介して通信できる中間コード又は解釈済コードであってもよい。コンポーネントは、ネットワーク内でコンポーネントを特定するために特定のアドレス又はその他の指示子を有してもよい。
本発明の主旨及び範囲を逸脱することなく開示に対して様々な変更ができることは、当業者にとって明らかであろう。従って、変更が請求項とその同意義物の範囲に入ることを条件として、本発明が上記で開示された変更と変形を含むように意図されている。
100 システム
102 デバイス
102X デバイス
102Y デバイス
104 MFP
106 エンジン
108 ネットワーク
110 MOB
112 コンピュータ
114 サーバ
116 クラウドストレージ
120 MFP
122 無線又は有線接続

Claims (20)

  1. ネットワークに接続された多機能印刷(MFP)装置で外部のデバイスからの文書を印刷するための印刷コンピューティング・デバイスであって、
    前記ネットワークを介して受信された印刷ジョブの予定を立てるための印刷ジョブマネージャーと、
    前記印刷ジョブがページ記述言語(PDL)の印刷ジョブを含むかどうか判定するためのエンジンと、
    前記印刷ジョブマネージャーからの前記PDLの印刷ジョブを処理するためのPDLインタープリターとグラフィックス・レンダリング・コンポーネントを含むラスター画像処理(RIP)ファームウェアと、
    前記処理されたPDLの印刷ジョブを前記接続されたMFP装置にダウンロードするための通信レイヤと、
    を備える印刷コンピューティング・デバイス。
  2. 請求項1に記載の印刷コンピューティング・デバイスであって、さらに、
    電源を備える印刷コンピューティング・デバイス。
  3. 請求項2に記載の印刷コンピューティング・デバイスであって、さらに、
    前記電源を前記MFP装置に接続するためのコネクタを備える印刷コンピューティング・デバイス。
  4. 請求項1乃至3のいずれか1項に記載の印刷コンピューティング・デバイスであって、さらに、
    オペレーティングシステムを備える印刷コンピューティング・デバイス。
  5. 請求項1乃至4のいずれか1項に記載の印刷コンピューティング・デバイスであって、
    前記エンジンは、前記MFP装置に対応する規則に従って前記PDLの印刷ジョブを遮断するように構成されている印刷コンピューティング・デバイス。
  6. 請求項1乃至5のいずれか1項に記載の印刷コンピューティング・デバイスであって、
    前記エンジンは、前記MFP装置に対応する規則に従って前記PDLの印刷ジョブを前記通信レイヤにパススルーするように構成されている印刷コンピューティング・デバイス。
  7. 請求項1乃至6のいずれか1項に記載の印刷コンピューティング・デバイスであって、さらに、
    前記PDLの印刷ジョブを記憶するためのファイルのバッファを有するメモリを備える印刷コンピューティング・デバイス。
  8. 多機能印刷(MFP)装置のために、ネットワークを介して外部のデバイスに接続されている印刷コンピューティング・デバイスで印刷ジョブを処理するための方法であって、
    前記外部のデバイスから受信された印刷ジョブがページ記述言語(PDL)の印刷ジョブを含むかどうかエンジンを用いて判定する工程と、
    前記印刷コンピューティング・デバイス内のラスター画像処理(RIP)ファームウェアを用いて前記PDLの印刷ジョブを処理するかどうか判定する工程と、
    前記RIPファームウェアを用いて前記PDLの印刷ジョブを処理する工程と、
    前記MFP装置へのダウンロードのために前記処理されたPDLの印刷ジョブを通信レイヤに送信する工程と、
    を備え、
    前記処理されたPDLの印刷ジョブは、前記MFP装置による印刷の準備ができたフォーマットになっている方法。
  9. 請求項8に記載の方法であって、
    判定する工程は、前記PDLの印刷ジョブであるかどうかを判定するために前記印刷ジョブのヘッダを分析する工程を含む方法。
  10. 請求項8又は9に記載の方法であって、さらに、
    前記MFP装置に対応する規則に従って印刷コンピューティング・デバイス内の前記エンジンによって前記PDLの印刷ジョブを遮断する工程を備える方法。
  11. 請求項8乃至10のいずれか1項に記載の方法であって、さらに、
    前記PDLの印刷ジョブ向けの前記フォーマットを判定する工程を備え、
    前記フォーマットは、前記MFP装置によってサポートされている方法。
  12. 請求項8乃至11のいずれか1項に記載の方法であって、
    前記処理する工程は、前記PDLの印刷ジョブを前記MFP装置によってサポートされるネイティブPDLに翻訳する工程を含む方法。
  13. 請求項8乃至12のいずれか1項に記載の方法であって、
    前記処理する工程は、前記MFP装置によってサポートされる画像フォーマットで前記処理されたPDLの印刷ジョブを生成する工程を含む方法。
  14. 請求項8乃至13のいずれか1項に記載の方法であって、
    前記処理する工程は、前記MFP装置によってサポートされるネイティブフォーマットで前記処理されたPDLの印刷ジョブを生成する工程を含む方法。
  15. 請求項8乃至14のいずれか1項に記載の方法であって、
    前記処理する工程は、前記MFP装置によってサポートされるサードパーティのPDLに前記PDLの印刷ジョブを翻訳する工程を含む方法。
  16. 印刷ジョブを多機能印刷(MFP)装置に送信するために、外部のデバイスを有するネットワーク内の前記MFP装置と共に印刷コンピューティング・デバイスを使用するための方法であって、
    前記印刷コンピューティング・デバイス内の印刷ジョブマネージャーで印刷ジョブを受信する工程と、
    前記印刷ジョブマネージャーによって予定を立てられた場合には、エンジンを用いて前記印刷ジョブのヘッダを分析する工程と、
    前記ヘッダに従って、前記印刷ジョブがPDLの印刷ジョブを含むかどうかを判定する工程と、
    前記MFP装置に基づき前記エンジンによって前記PDLの印刷ジョブ向けのフォーマットを判定する工程と、
    前記印刷コンピューティング・デバイス内のラスター画像処理(RIP)ファームウェアを用いて前記フォーマットに従って前記PDLの印刷ジョブを処理する工程と、
    前記印刷コンピューティング・デバイス内の通信レイヤを用いて前記MFP装置に前記処理されたPDLの印刷ジョブをダウンロードする工程と、
    を備える方法。
  17. 請求項16に記載の方法であって、さらに、
    前記処理されたPDLの印刷ジョブのために少なくとも一つの印刷ジョブパラメータを生成する工程を備える方法。
  18. 請求項17に記載の方法であって、
    前記少なくとも一つの印刷ジョブパラメータは、前記MFP装置によって受信された場合には、前記PDLの印刷ジョブのRIPファームウェア処理が完了していることを示す方法。
  19. 請求項17又は18に記載の方法であって、
    前記少なくとも一つの印刷ジョブパラメータは、モードのジョブパラメータ又はジョブ識別のジョブパラメータを含む方法。
  20. 請求項16乃至19のいずれか1項に記載の方法であって、さらに、
    前記エンジンによって指示された場合には、前記印刷ジョブを前記通信レイヤまで通過させる工程を備える方法。

JP2018234614A 2017-12-19 2018-12-14 印刷コンピューティング・デバイス及び印刷コンピューティング・デバイスを動作させる方法 Pending JP2019149146A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/847,538 2017-12-19
US15/847,538 US20190187937A1 (en) 2017-12-19 2017-12-19 Printing computing device for operating a multi-function printing device

Publications (1)

Publication Number Publication Date
JP2019149146A true JP2019149146A (ja) 2019-09-05

Family

ID=66815989

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018234614A Pending JP2019149146A (ja) 2017-12-19 2018-12-14 印刷コンピューティング・デバイス及び印刷コンピューティング・デバイスを動作させる方法

Country Status (2)

Country Link
US (2) US20190187937A1 (ja)
JP (1) JP2019149146A (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL2027069B1 (en) * 2020-12-08 2022-07-07 Canon Production Printing Holding Bv Method for processing a digital image into print image data
CN112988088A (zh) * 2021-03-05 2021-06-18 珠海奔图电子有限公司 图像形成控制方法、装置及系统

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594034B1 (en) * 1997-06-04 2003-07-15 Agfa Corporation Method and apparatus for modifying raster data
US6295133B1 (en) * 1997-06-04 2001-09-25 Agfa Corporation Method and apparatus for modifying raster data
JPH11184649A (ja) 1997-07-25 1999-07-09 Seiko Epson Corp 印刷システム、方法及びプリンタ
US7466442B2 (en) * 2000-12-06 2008-12-16 Eastman Kodak Company Printing system and method for customization of a print job
US7706017B2 (en) 2001-01-11 2010-04-27 Sharp Laboratories Of America, Inc. Systems and methods for providing load balance rendering for direct printing
US7187461B2 (en) * 2001-06-25 2007-03-06 Xerox Corporation System for managing digital printers and servers via a network
US7319543B2 (en) * 2003-03-17 2008-01-15 Kabushiki Kaisha Toshiba Image forming system
CN101241426B (zh) * 2003-03-27 2011-03-23 佳能株式会社 控制装置
US20050068582A1 (en) * 2003-09-30 2005-03-31 Ferlitsch Andrew R. Systems and methods for providing printing with document indicia
US7948643B2 (en) 2004-02-27 2011-05-24 Canon Kabushiki Kaisha Information processing apparatus, method for enhancing print function, computer-readable program for enhancing print function, printer, print method, and print system
JP3977356B2 (ja) 2004-06-09 2007-09-19 キヤノン株式会社 情報処理装置およびその制御方法
US7551299B2 (en) * 2004-07-29 2009-06-23 Sharp Laboratories Of America, Inc. Method and apparatus for handling different print data formats
US20060044595A1 (en) * 2004-08-24 2006-03-02 Sharp Laboratories Of America Inc. Imaging job monitoring and pipelining
JP2006297632A (ja) * 2005-04-15 2006-11-02 Canon Inc 画像処理装置
US8130429B2 (en) * 2005-06-02 2012-03-06 Sharp Laboratories Of America, Inc. Adaptive driver for choosing hybrid raster and PDL format output
JP4689431B2 (ja) * 2005-10-14 2011-05-25 キヤノン株式会社 情報処理装置、画像処理方法、及びコンピュータプログラム
JP2007149056A (ja) * 2005-10-25 2007-06-14 Canon Inc 画像形成方法、情報処理装置、画像形成システム、コンピュータプログラム、及びコンピュータ読み取り可能な記憶媒体
JP4736761B2 (ja) 2005-12-05 2011-07-27 富士ゼロックス株式会社 印刷装置
JP4892251B2 (ja) * 2006-02-24 2012-03-07 キヤノン株式会社 画像形成装置、画像形成装置の制御方法、及びプログラム
JP5057546B2 (ja) * 2006-03-24 2012-10-24 キヤノン株式会社 文書検索装置および文書検索方法
JP4817968B2 (ja) * 2006-05-30 2011-11-16 キヤノン株式会社 帳票処理装置及び方法
AU2006246497B2 (en) * 2006-11-30 2010-02-11 Canon Kabushiki Kaisha Method and apparatus for hybrid image compression
JP4902413B2 (ja) * 2007-04-19 2012-03-21 キヤノン株式会社 印刷データ処理装置、印刷データ処理方法及びプログラム
JP5279454B2 (ja) 2008-11-04 2013-09-04 キヤノン株式会社 画像処理装置及びその制御方法、並びにプログラム
JP5183444B2 (ja) * 2008-11-28 2013-04-17 キヤノン株式会社 印刷制御装置、印刷制御方法、及びコンピュータプログラム
US8880738B2 (en) * 2009-02-27 2014-11-04 Ricoh Company, Ltd. Plug-in architecture for WSD DCP operations
JP2010269498A (ja) * 2009-05-20 2010-12-02 Fuji Xerox Co Ltd 画像出力装置及びプログラム
JP2011090478A (ja) * 2009-10-22 2011-05-06 Sharp Corp ネットワーク画像形成システム、そのシステムに用いられるサーバコンピュータおよび画像形成装置
JP5761923B2 (ja) * 2010-04-28 2015-08-12 キヤノン株式会社 印刷システム、情報処理装置及びその方法
US9891867B2 (en) * 2010-11-10 2018-02-13 Electronics For Imaging, Inc. Protocol for interaction between wireless devices and other devices
US8908206B2 (en) * 2011-03-15 2014-12-09 Xerox Corporation Automated print job modification for reduced total and color page counts
JP5843477B2 (ja) * 2011-05-16 2016-01-13 キヤノン株式会社 印刷システム
US9092164B2 (en) * 2011-05-31 2015-07-28 Microsoft Technology Licensing, Llc Printing using a platform-independent driver
JP5909899B2 (ja) * 2011-07-08 2016-04-27 株式会社リコー 画像形成システム、出力管理方法およびプログラム
US20130215451A1 (en) * 2012-02-16 2013-08-22 Xerox Corporation Method and apparatus for automatically detecting page description languages supported by image production devices
KR20140025925A (ko) * 2012-08-23 2014-03-05 삼성전자주식회사 화상 형성 장치, 화상 형성 방법, 단말 장치, 인쇄 제어 방법 및 컴퓨터 판독가능 기록매체
JP5949339B2 (ja) * 2012-08-31 2016-07-06 ブラザー工業株式会社 画像処理装置及びプログラム
JP6065523B2 (ja) * 2012-10-31 2017-01-25 株式会社リコー 画像形成装置、命令実行方法、プログラム、印刷システム
US9530083B2 (en) * 2013-02-28 2016-12-27 Ricoh Company, Ltd. Input tray selection mechanism
US9274731B2 (en) * 2013-05-24 2016-03-01 Canon Kabushiki Kaisha System and method for controlling a print job
JP6202902B2 (ja) * 2013-06-21 2017-09-27 キヤノン株式会社 システム、情報処理装置とその制御方法及びプログラム
US9442896B2 (en) * 2014-02-21 2016-09-13 Csr Imaging Us, Lp Universal mobile document viewer with high fidelity, efficient architecture and editing
US9436416B2 (en) * 2014-02-24 2016-09-06 Csr Imaging Us, Lp Mobile printer controller with high fidelity preview and print job manipulation
US10268428B2 (en) * 2015-02-24 2019-04-23 Ricoh Company, Ltd. Medium prompting mechanism
JP2016177373A (ja) * 2015-03-18 2016-10-06 株式会社リコー 情報処理装置、情報処理プログラム、および情報処理システム
JP6454213B2 (ja) * 2015-04-09 2019-01-16 キヤノン株式会社 画像出力システム、画像処理装置、画像出力装置、これらにおける方法及びプログラム
JP6827738B2 (ja) * 2016-08-30 2021-02-10 キヤノン株式会社 制御方法、プログラム及び情報処理装置
US10078798B2 (en) * 2016-08-31 2018-09-18 Kyocera Document Solutions Inc. Method of generating transformed print jobs
US10122866B2 (en) * 2016-09-02 2018-11-06 Ricoh Company, Ltd. Automated test suite mechanism

Also Published As

Publication number Publication date
US11003397B2 (en) 2021-05-11
US20190187937A1 (en) 2019-06-20
US20200285429A1 (en) 2020-09-10

Similar Documents

Publication Publication Date Title
US10585631B2 (en) Portable multi-function printing extension computing device
JP6454213B2 (ja) 画像出力システム、画像処理装置、画像出力装置、これらにおける方法及びプログラム
EP3213197B1 (en) Information processing system, information processing device, and information processing method
JP6547291B2 (ja) 情報処理システムおよび情報処理方法
JP6442976B2 (ja) 画像形成装置、ブラウザの制御方法およびプログラム
JP6927276B2 (ja) 情報処理システム、情報処理装置、情報処理方法およびプログラム
US10609509B2 (en) Information processing system, information processing apparatus, and information processing method for providing application information
JP6520577B2 (ja) 情報処理システム、情報処理装置および情報処理方法
US11003397B2 (en) Printing computing device for processing a print job to print a document at a multi-function printing device
US11175871B2 (en) Image forming apparatus, non-transitory computer readable medium, and image forming system for receipt of print data including print settings
US8683330B2 (en) Processing print data using a user interface before transmitting the print data to a printer
JP2010066876A (ja) 印刷制御装置、プログラム、記録媒体及び印刷制御方法
US10747487B2 (en) Printing extension computing device
JP5759290B2 (ja) 情報処理装置およびその制御方法、並びにプログラム
US10817227B2 (en) Printing computing device for operating a printing device
JP6244937B2 (ja) 画像形成装置、画像形成システムおよびプログラム
US10891087B2 (en) Print system, printer and non-transitory computer-readable recording medium storing instructions therefor
US10817233B2 (en) Printing computing device for operating a multi-function printing device
US11068214B2 (en) Printing computing device for printing PPL jobs having video data and methods for use with a printing system for printing PPL jobs having video data
JP2016081336A (ja) 印刷システム及び印刷制御プログラム
JP2014056424A (ja) 印刷制御装置、印刷制御方法及び印刷制御システム
JP5663983B2 (ja) 画像形成装置、接続制御方法及びプログラム
JP6614318B2 (ja) 画像形成装置、ブラウザの制御方法およびプログラム
JP2011060154A (ja) プリンタドライバ、情報処理装置、及びコンピュータ読み取り可能な記憶媒体
JP6303538B2 (ja) 情報処理システム、情報処理装置、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190416