JP2006252406A - 拡張機能制御装置 - Google Patents
拡張機能制御装置 Download PDFInfo
- Publication number
- JP2006252406A JP2006252406A JP2005070934A JP2005070934A JP2006252406A JP 2006252406 A JP2006252406 A JP 2006252406A JP 2005070934 A JP2005070934 A JP 2005070934A JP 2005070934 A JP2005070934 A JP 2005070934A JP 2006252406 A JP2006252406 A JP 2006252406A
- Authority
- JP
- Japan
- Prior art keywords
- protocol
- extended function
- image processing
- definition
- control
- 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.)
- Withdrawn
Links
Abstract
【課題】 画像処理装置に容易に機能拡張およびカスタマイズさせることが可能で、かつ画像処理装置自身の処理能力や記憶容量を圧迫しない拡張機能制御装置を提供することである。
【解決手段】 第一の通信経路より送受信する前記第一の制御プロトコルを、第二の通信経路に送受信する第二の制御プロトコルに、および第二の制御プロトコルを第一の制御プロトコルに変換することの可能なプロトコル変換手段と、外部装置と通信し、画像処理装置を制御し機能拡張するための動作を記述する、拡張機能定義を受信して、所定の記憶領域に記憶する記憶手段と、拡張機能定義を読み出して解釈し、前記第一の制御コマンドプロトコルを生成して、前記プロトコル変換手段に送信して画像処理装置を制御する。
【選択図】 図1
【解決手段】 第一の通信経路より送受信する前記第一の制御プロトコルを、第二の通信経路に送受信する第二の制御プロトコルに、および第二の制御プロトコルを第一の制御プロトコルに変換することの可能なプロトコル変換手段と、外部装置と通信し、画像処理装置を制御し機能拡張するための動作を記述する、拡張機能定義を受信して、所定の記憶領域に記憶する記憶手段と、拡張機能定義を読み出して解釈し、前記第一の制御コマンドプロトコルを生成して、前記プロトコル変換手段に送信して画像処理装置を制御する。
【選択図】 図1
Description
本発明は、画像処理装置に接続される拡張機能制御装置に関し、特に、画像処理装置と所定の通信プロトコルに従い通信し、画像データおよびプリント、スキャン等のジョブの送受信、および画像処理装置の操作部の操作を行なうことの可能である、機能拡張装置上で動作する通信ソフトウェアモジュールを用いて、画像処理装置の持つ複数の機能を組み合わせた機能の実装やカスタマイズを容易に行なうことのできる拡張機能制御装置に関する。
従来より、複写機などの画像処理装置に接続される、外部コントローラ装置が提供されている。この外部コントローラ装置は、例えば、ホストコンピュータのプリント・ドライバで生成されたPDLプリントジョブをネットワーク経由で受信し、PDL言語を解釈してプリントジョブをページ画像に展開し、ジョブコントロールコマンドと共に画像処理装置に送って、用紙媒体上に画像を形成するという目的で使用されている。
また近年、複写機はMFP化してきており、実行することのできるジョブも、リモートコピーやBox画像の送信など、多種多様になってきている。これに伴い、外部装置との通信I/Fプロトコルも複雑化してきており、特定目的の外部装置を作成する場合、複雑なプロトコルの中から目的とする動作をさせるコマンドを選択するだけでも、プロトコルに精通している必要があって、困難となってきている。
そのため、特定目的に特化したより簡単なプロトコルを、上記のネイティブ・プロトコルに精通していない開発者、例えば外部コントローラ装置ベンダーに提供する必要が生じ、外部コントローラOS上で動作するプロトコル変換モジュールが開発された。これにより、外部コントローラ装置ベンダーは、MFPの複雑なネイティブ・プロトコルを理解すること無しに、目的とする機能を提供する外部コントローラ装置を速やかに開発できるようになり、また複写機メーカーとしては、対自社製機器・ソフトの通信のみで使用する、特定目的以外の外部ベンダーに触らせたくないコマンドを使えないようにするなど機密保持することを可能とするとともに、このプロトコル変換機能を外部装置側で実行させることにより、複写機CPUに余分な負荷を与えず処理を最適化することが可能となった。
また、あまり市場規模の見込めない、ニッチなユーザのニーズに個別に対応したいという要求もあって、これに対応するため、画像処理装置の既存の機能を組み合わせ、操作部をカスタマイズして、個々のユーザに会った機能を追加するという技術がいくつか存在する。
例えば、特許文献1においては、外部の拡張装置から、拡張メニューファイルを印刷装置にダウンロードするという機能を提案している。また、特許文献2においては、IDに応じたアプリケーションソフトをMFPにダウンロードするという機能を提案している。
特開平09−167061号公報
特開2002−298561号公報
しかしながら、多様なニーズに対応するため、外部コントローラ装置の種類自体も増えてきており、これに伴いベンダーも増加しつつある。ベンダー毎に、開発する装置のハードウェアやOSは異なるため、上記のプロトコル変換モジュールを開発する上では、各種プラットフォームに対応する必要があり、開発負荷を上げる一因となってきた。
さらに、ニッチなユーザのニーズへの個別対応に関しては、上記の特許文献1や特許文献2に見られるとおり、画像処理装置自体がメニューファイルを解釈したりアプリケーションソフトを格納し実行するなどする必要があり、一部のユーザのためだけに、画像処理装置の記憶容量や処理能力が圧迫され、またこのための専用の仕組みを内蔵する必要があって、画像処理装置単体の開発・製造コストアップに繋がっている恐れがあった。
本発明は、以上の点に着目して成されたもので、開発負荷を下げることが可能で、必要なユーザにのみに最低限のコストで提供することが可能な拡張機能制御装置を提供することを目的とする。
本発明は、上記の問題点を解消するための、
第一の通信経路により受信した第一の制御プロトコルに従って、第二の通信経路に接続する画像処理装置の制御を行なう画像処理装置の拡張機能制御装置であって、
前記第一の通信経路より送受信する前記第一の制御プロトコルを、前記第二の通信経路に送受信する第二の制御プロトコルに、および前記第二の制御プロトコルを前記第一の制御プロトコルに変換することの可能な、プロトコル変換手段と、
外部装置と通信し、前記画像処理装置を制御し機能拡張するための動作を記述する、拡張機能定義を受信して、所定の記憶領域に記憶する拡張機能定義記憶手段と、
前記拡張機能定義記憶手段より拡張機能定義を読み取って解釈し、前記第一の制御コマンドプロトコルを生成して、前記プロトコル変換手段と送受信する制御を行なう拡張機能定義実行手段と
を有することを特徴とする。
第一の通信経路により受信した第一の制御プロトコルに従って、第二の通信経路に接続する画像処理装置の制御を行なう画像処理装置の拡張機能制御装置であって、
前記第一の通信経路より送受信する前記第一の制御プロトコルを、前記第二の通信経路に送受信する第二の制御プロトコルに、および前記第二の制御プロトコルを前記第一の制御プロトコルに変換することの可能な、プロトコル変換手段と、
外部装置と通信し、前記画像処理装置を制御し機能拡張するための動作を記述する、拡張機能定義を受信して、所定の記憶領域に記憶する拡張機能定義記憶手段と、
前記拡張機能定義記憶手段より拡張機能定義を読み取って解釈し、前記第一の制御コマンドプロトコルを生成して、前記プロトコル変換手段と送受信する制御を行なう拡張機能定義実行手段と
を有することを特徴とする。
また、これに加えて、前記第一の通信経路には外部装置が接続され、外部装置から送受信される前記第一の制御プロトコルを前記第二の制御プロトコルに変換し、前記画像処理装置に対する制御を行なうことを特徴とする。
また、これに加えて、前記第一の制御プロトコルとは、前記画像処理装置への画像印刷動作を指示するプロトコルであることを特徴とする。
また、これに加えて、前記第一の制御プロトコルとは、前記画像処理装置への原稿読取動作を指示するプロトコルであることを特徴とする。
また、これに加えて、前記第一の制御プロトコルとは、前記画像処理装置の操作部への表示および入力の受信を行なうための制御プロトコルであることを特徴とする。
また、これに加えて、前記拡張機能定義には、前記拡張機能制御装置上で実行することのできる外部プログラムの実行の指示を含めることが可能なことを特徴とする。
また、これに加えて、前記拡張機能定義は、前記拡張機能制御装置内部の記憶領域に存在する外部データを参照できることを特徴とする。
また、これに加えて、前記第一の通信経路および前記第二の通信経路を、異なったハードウェアI/F装置に接続することを特徴とする。
あるいは、前記第一の通信経路および前記第二の通信経路を、同一のハードウェアI/F装置に接続することを特徴とする。
本発明によれば、多様なユーザ・ニーズに対応するための、外部コントローラ装置ベンダーの増加に対応し、プラットフォーム依存性を少なくしたプロトコル変換装置を提供して、開発負荷を下げることが可能となる。
さらに、ニッチなユーザのニーズへの個別対応に関しては、画像処理装置の記憶容量や処理能力を圧迫することなく、必要なユーザにのみに最低限のコストで、機能拡張装置を提供することが可能となる。
以下に図面を参照して本発明の好適な実施例を示す。
図1は、本発明の第1の実施例を示す画像処理システムのハードウェア構成を説明する概略ブロック図である。
この画像処理システムは、ネットワーク(101)を介して1台以上のホストコンピュータ(102)と、機能拡張装置としてPDLプリントジョブなどのジョブを解釈し画像展開するなどの画像処理を行なう外部コントローラ装置(103)と、外部コントローラ装置が接続する画像処理装置(104)、および外部コントローラ装置(103)と画像処理装置(104)を接続し、外部コントローラ装置(103)との通信プロトコル(A)を画像処理装置(104)が直接解釈することのできるネイティブ通信プロトコル(B)に変換することのできるプロトコル変換装置(105)から構成されている。
外部コントローラ装置(103)は、HDD(114)またはROMメモリ(115)等に格納されたプログラムを、CPU(113)が実行することにより動作しており、プログラムに応じて、受け取ったPDLジョブをビットマップ画像データに画像展開(RIP)したり、画像処理装置にジョブを表すコマンドスクリプトや画像データを送受信したり、あるいは内部バスに接続されている各機器部の制御を行なうことができる。内部バスにはネットワークI/F1(112)およびネットワークI/F2(117)も接続されている。外部コントローラ装置(103)は、ネットワークI/F1(112)を介して外部ネットワーク(101)に接続され、ネットワークI/F2(117)を介して画像処理装置と接続されている。また、ユーザ・インタフェースあるいは他のインタフェース、その他の装置(116)を備えていることもできる。
本実施例における画像処理装置(104)は、MFPタイプの複写機であって、外部と通信を行なうための不図示のネットワークI/F部を備え、さらに用紙媒体上に画像形成を行なう画像形成部、原稿画像を読み取り画像データとする画像読取部、LCDタッチパネルおよびハードキーにより構成されるUI部等を備えている。そしてネットワークI/F部を介して、外部からのジョブコマンドスクリプトを受信したり、画像データを送受信して、用紙媒体上に画像形成するプリントジョブや、原稿画像を読み取るスキャンジョブ、あるいは、UIのLCD画面への表示指令を実行することが可能である。これらの指令を表すコマンド群は、画像処理装置(104)が直接解釈することのできるプロトコルとなっており、これを本実施例ではネイティブ・プロトコルあるいはプロトコル(B)と呼ぶ。
プロトコル変換装置(105)は、外部コントローラ装置(103)と同様に、CPU(123)、HDD装置(124)、プログラムデータなどを格納するROMとプログラムの作業領域等に使用するRAM(125)、ネットワークI/F1(122)およびネットワークI/F2(127)を備えている。ただし、メインとなる処理は後述するプロトコル変換処理であるので、それほど負荷は大きくなく、通常は外部コントローラ装置(103)よりも低コストのハードウェアを用いて構成しても問題はない。
ネットワークI/F1(122)には、外部コントローラ装置(103)のネットワークI/F2(117)が接続されており、外部コントローラ装置(103)からのプリントジョブ、スキャンジョブやUI表示などのコマンドを受信する。これらの指令のコマンドは、上記プロトコル(B)と比べ、外部コントローラ装置(103)で必要と思われるもの、および他社ベンダーに公開しても良い範囲に絞った、より簡単なプロトコル(A)で表される。プロトコル(A)は、そのままでは画像処理装置(104)には解釈できないため、プロトコル変換装置にてプロトコル(A)からプロトコル(B)への変換処理を行なう。これについては、後述する。
なお、本実施例の場合、外部コントローラ装置(103)の外部接続用I/Fと画像処理装置(104)の外部装置接続用I/F、およびプロトコル変換装置(105)の両I/Fを、すべてネットワークI/F(イーサネット(登録商標))で構成しているが、外部ネットワークあるいは画像処理装置(104)のI/F構成に合わせて、一部あるいは全部を他のI/Fハードウェアにしてももちろん良い。例えば、画像処理装置(104)の外部装置接続用I/Fが専用ハードウェアI/Fとなっていた場合、プロトコル変換装置(105)のネットワークI/F2(127)を専用ハードウェアI/Fと置き換えたり、さらに外部コントローラ(105)間とのI/Fである122と117を、USB2.0やIEEE1394などの他の汎用的なI/Fハードウェアに置き換えて構成することももちろん可能である。また、高解像度カラー多値画像などの大容量データを転送する必要がある場合には、複数の専用ハードウェアI/Fと汎用I/Fを組み合わせて実装することももちろん可能である。
また、プロトコル変換装置(105)を、画像処理装置(104)に内蔵する構成とすることももちろん可能である。プロトコル変換装置(105)はオプション装置であるので、メカ的には内蔵した場合、ネットワークI/F2(127)に相当する内部I/Fを実装すればよい。
次に、外部コントローラ装置(103)で処理するジョブの一例として、PDLプリントジョブを記述するPDLデータについて説明する。
アドビ(ADOBE)社のPostScript(登録商標)言語に代表されるPDL(Page Description Language)は、1ページの画像を、(i)文字コードによる画像記述、(ii)図形コードによる図形記述、(iii)ラスタ画像データによる画像記述などの要素を組み合わせて記述するための言語であり、それで記述されたデータがPDLデータである。
該PDLデータは、このように文字コードや図形コード、言い換えると図形描画コマンドを中心として構成されているので、ラスタ画像データのみの場合に比べて、一般にプリントジョブのデータ量が少なくて済む。このため、多数の機器が接続されるネットワークを介してジョブを送る場合、トラフィックを減らして高速にジョブを転送することが可能である。
このようなPDLデータよりなるPDLプリントジョブを、1ページずつラスタ画像データの形式に展開することをRIP処理という。すなわちPDLプリントジョブを印刷するためには、RIP処理を行なってラスタ画像データ(ビットマップ)に変換する必要がある。
画像処理装置(104)が特定PDLに対するRIP機能を持っていない場合は、本実施例のように、外部コントローラ装置(103) とプロトコル変換装置(105)を接続し、外部コントローラ装置(103)に特定PDLのRIP機能を持たせることによって、画像処理装置(104)を機能拡張して特定PDLプリントシステムとして提供できるようになる。
外部コントローラ装置(103)は、図1においてHDD(114)上に格納されたプログラムにより、CPU(113)が動作することにより、RIP機能を実現している。展開されたラスタ画像は、RAM(115)上に圧縮された状態で一時保持され、プロトコル変換装置(105)を介してプリントジョブコマンドスクリプトと共に、画像処理装置(104)へと送られてプリント処理される。
以上はPDLプリント処理機能を持たせた外部コントローラ装置(103)についての説明であるが、同様の仕組みで、これ以外にも例えば、画像処理装置(104)に原稿画像をスキャンさせ、読み取った画像に対してOCR等の何らかの処理を行なう機能や、あるいは画像処理装置(104)の不図示のUI等を制御して所望のユーザに対するメッセージ等を表示する機能を実現する外部コントローラ装置(103)を提供することももちろん可能である。
次に図2を用いて、プロトコル変換装置(105)の内部で動作するソフトウェア構成について説明する。
図2におけるハードウェア201とは、図1で説明したネットワークI/F1および2(122,127)を含む、プロトコル変換装置(105)のハードウェア全般を模式的に示している。これの上に、ハードウェア制御のためのデバイスドライバを含むOS(202)プログラムが動作する。尚、本実施例におけるプロトコル変換装置(105)は、Windows(登録商標)やLinuxなどの汎用OSを用いている。
OS上で動作するプログラムモジュールとしては、本発明に特に関わる機能拡張エージェント(203)、アップローダ(206)、プロトコル変換を行なうプロトコル変換モジュール(204)、および転送モジュール(205)が動作する。この他、ドライバソフトを通じて装置全般の必要なハードウェア制御を行なう制御モジュールなども存在する。
プロトコル変換モジュール(204)は、プロトコル変換装置(105)のメインの機能となるプロトコル変換処理を提供するものであって、前述の通り、画像処理装置を制御する複雑なプロトコル(B)を、より簡単な特定機能に特化したプロトコル(A)に変換するソフトウェアモジュールである。プロトコル(A)による外部コントローラ装置(103)からジョブ送信指令等のコマンドを受けると、プロトコル変換モジュール(204)は、画像処理装置が直接解釈することのできるプロトコル(B)に変換し、送信する。
同様に、画像処理装置からプロトコル(B)で来た外部コントローラ装置(103)に対する返信等のコマンドを、プロトコル(A)に変換して伝える。実際には両プロトコルのコマンドやパラメータは1対1とは限らず、複数のコマンドやパラメータを一つのコマンドにまとめたり、その逆を行なったり、あるいはプロトコル変換モジュール(204)としての内部状態を持ち、内部状態に応じた特定コマンドシーケンスやパラメータに変換したり、複数の種類の異なったプロトコル(B)を組み合わせて送受信するなど、複雑な変換アルゴリズムを実現している。
この、プロトコル変換処理の一例を図3に示す。図3において、31、32および33のそれぞれの(1)はプロトコル(A)でのコマンドのパケット構造を表し、(2)はコマンドに対するリプライのパケット構造を表している。プロトコル変換モジュール(204)が、それぞれのコマンドパケット(1)を受信したときに行なわれる処理が、(3)に示してあり、このうち斜体文字部分が情報処理装置(104)に対する指令すなわちプロトコル(B)を模式的に示すものである。もちろん実際のプロトコル(B)のパケット構造は規定に従いコードやパラメータを集めたデータとなっている。
31は、PrintJobStartコマンドであって、プリントジョブを送信する際に外部コントローラ(103)が最初に送信するコマンドである。
図に示す通りコマンドコード0x1002と、通常のプリントであるかあるいはBox投入ジョブであるのか等のジョブの種類を示すJob mode、Box投入ジョブである場合に宛先Boxを示すBox number、ジョブの名称を示す文字列Job name、ユーザ名を示すUser name、ジョブに対するパスワードを設定するPassword、部数Copies、複数部のジョブを1部ずつ順に出力するかあるいはページごとにまとめて出力するかや、まとまりの区切りでシフトするかあるいは用紙を90度回転させて出力するかなどを示すSort mode、ステイプルするか否かおよびその位置を示すStapling、ページ画像データのフォーマットを示すData format、画像形成する用紙媒体のサイズやタイプあるいは給紙段を示すPrint medium、片面か両面かおよび両面時の閉じ位置を示すPlex、省トナーモードで印刷するかどうかを示すPrint toner saving、ライン等のエッジを滑らかにする画像処理を行なうかどうかを示すEdge smoothing、段階的に色味の変化するグラデーション部において色の変化を滑らかにする画像処理を行なうGradation smoothing、カラー印刷するか白黒印刷するかを示すColor mode、といったパラメータにより構成されている。
31−(1)のPrintJobStartコマンドを受信すると、プロトコル変換モジュール(204)は31−(3)に示す動作を行なう。すなわち、まず、画像処理装置(104)の予め定められたポート(Well known port)に接続し、Print job serviceを使用することを通知するReserveコマンドを発行する。すると画像処理装置(104)からのリプライとして、現在Print jobを送ることのできるプリント用ポート番号を通知してくる。
これを受けてプロトコル変換モジュールは、次に、指定された番号のプリントポートに接続し、プリントジョブのStartコマンドパケットを生成し、送る。その返信として、ジョブのIDが返される。
そして次に、このジョブIDに対して、各パラメータを一つずつセットするためのSetコマンドパケットを生成し、順に送ってリプライを受け取る。このSetパケット送信においては、特定条件のときのみ送るパラメータがあったり、外部コントローラ装置(103)から指定されていなくとも、必ずなんらかの値をセットしなければならないものなどがあるため、個別に条件判断を行なっている。
例えば、ジョブ名称が指定されていない場合は、”Unknown”という文字列を指定したり、予め調べてある画像処理装置(104)の機種に応じて、対応していないデータフォーマットが指定された場合には、途中でキャンセルを行なったりしている。尚、本実施例では、カラー画像の圧縮データフォーマットとしてJpeg、白黒2値画像の圧縮データフォーマットとしてJBIGをサポートしている。
また、例えばプロトコル(A)において省トナーモードオンである場合、これはプロトコル(B)では濃度を調整することになっているので、濃度をプロトコル変換装置で定めた50%とするなどの処理を行なう。
また、本実施例の画像処理装置(104)においては、プロトコル(B)は、ジョブをDocument単位に分割し、複数Documentのジョブを扱うことができるようになっている。これによりジョブ中での一部パラメータの設定変更を容易にしているのであるが、この機能は外部コントローラ装置(103)に公開したくないものとしている。従って、プロトコル(A)により受け取るジョブは、必ず1documentとなるようにしている。
パラメータには、ジョブ全体に付随するパラメータと、Document単位で付随するパラメータがあって、Document単位のパラメータをSetする場合には、DocumentのStartコマンドを送る必要がある。プロトコル(A)で送られたパラメータのうち、ジョブ全体に対するパラメータ設定が終わったら、DocumentをStartし、然る後にDocument単位のパラメータをセットするという処理を行なう。
全てのプロトコル(B)のコマンド送信手順が正しく行なわれリプライが正常値で戻ってきた場合、プロトコル(A)に対するリプライパケット31−(2)を生成し、外部コントローラ装置(103)に返す。もし一連のプロトコル(B)の手順で異常が発生した場合には、対応するエラーコードをもってエラーのリプライパケットを返し、プロトコル(B)の処理は途中で中止する。
尚、JobおよびDocumentには、それぞれ2バイトのIDが付けられStartのリプライとして返されてくるが、これをプロトコル(A)に変換する際には、上位2バイトをジョブIDとし、下位2バイトをDocumentIDとして、全体をプロトコル(A)におけるJob handleとして31−(2)で返信するようになっている。また、1つのコマンド送った後は、一旦ポートをクローズするようになっている。
次に32のページ画像およびページ単位のパラメータを送信するためのPrintPageコマンドについて説明する。外部コントローラ装置(103)は、PrintJobStart後にそのジョブに含まれる各ページデータを順に、複数のPrintPageコマンドを用いて送ってくる。
PrintPageコマンドのコードは0x1003となっている。パラメータには、どのジョブに対するページであるかを示すためのJob handle、ページ画像データ全体のサイズを示すData size、データの主操作方向の画素数を示すData pixels on lineと副走査方向のライン数を示すData lines on page、用紙に対する画像の書き出し位置を示すImage left offsetおよびImage top offset、そして、ページ毎に切替可能なパラメータとして、用紙サイズおよびタイプを示すPrint media、カラーか白黒かどちらで印刷するかを示すColor modeがある。これらのパラメータは同様のものがJobに対してもあるが、Jobの方のパラメータはJob全体に対するデフォルト値となり、ページごとの指定が無い場合にはJobのパラメータが使用されるようになっている。
そして、PrintPageのパラメータの一つとして、画像データであるPage dataがある。先に説明したとおり、本実施例の画像処理装置(104)は、JpegまたはJBIGデータを受信可能であるので、ここに入るデータはいずれかのフォーマットのファイルをパケット化したものであり、Data sizeはファイルサイズとなる。
プロトコル変換モジュール(105)は、31での処理と同様に(3)に示す処理を行なう。すなわち、まずプリントポートに接続し、PageのStartコマンドを送る。そしてページのIDを得る。つぎに各パラメータを必要に応じて条件判断し、Setコマンドを送る。
次にデータの転送となるが、画像処理装置(104)は画像データ受信用のポートはプリントポートとは別に開いているので、31でプリントポート番号を得たのと同様に、データ転送先のポート番号を問い合わせる。
画像データは、縦横のPixel数および全体のファイルサイズを、ヘッダとして画像データファイルとまとめたものを送る必要があるため、そのパケットを(1)として受信したパケットから生成して、データ転送ポートに接続し、送信する。
送信完了となったらデータおよびプリントポートをクローズし、外部コントローラ装置(103)に対して31と同様に結果とPage handleを返信する。
ジョブに含まれるすべてのページをPrintPageで送った後、外部コントローラ装置(103)は33−(1)に示すPrintJobEndコマンドを送信する。すなわちPrintJobStart−>複数のPrint page−>PrintJobEndが、プロトコル(A)における1つのプリントジョブを表すコマンドシーケンスである。
PrintJobEndに対するプロトコル変換モジュール(204)の変換処理も31や32に説明したのと同様で、まずプリントポートに接続し、Job handleをJob IDとDocument IDに変換した後、まずはDocumentに対するEndコマンドをDocumentIDと共に送り、その後にJobに対するEndコマンドをJobIDと共に送る。
またPrintJobEndはジョブの途中キャンセルに用いることも可能で、この場合にはEnd modeパラメータがキャンセルとして設定されている。このときには、プロトコル(B)としては、EndコマンドではなくCancelコマンドをJobIDとして送る。
ちなみに、本実施例のプロトコル変換装置は、プロトコル(A)のI/Fとして、用途に応じた複数のポートを開くことができる。上で説明したようなPrint系のジョブ指令コマンド等をやり取りするのはPrintポートであり、他にScan系のジョブ指令コマンドのやりとりをするSjobポートや、UI表示等のコマンドのやり取りを行なうためのUIポート、各種Statusの入手や通知等に用いられるAdminポート等があって、これらは並行して処理することが可能である。またこれらプロトコル(A)に対するポートが、画像処理装置(104)のプロトコル(B)に対するポートと必ずしも1対1に対応しているわけではなく、例えば上で説明したPrint時の場合ではWell known port+Print port+Data transfer portの3つのポートを使ったように、必要に応じてプロトコル(B)の複数のポートを組み合わせて使用する。
次に、図2の転送モジュール(202)について説明する。これは、ネイティブ・コマンドプロトコル(B)について、画像処理装置(104)がネットワーク上のホストコンピュータ等他の機器と、直接やりとりをするためのものであって、OSを通じてネットワークI/F2(127)での通信とネットワークI/F1(122)での通信をアドレス変換して直接結びつけるスルー転送動作を行なう。
本実施例の構成においては、外部コントローラ装置(103)にもまったく同様の転送モジュールを搭載する必要があるため、プラットフォームに合わせた転送モジュールを外部ベンダーに提供している。
これによって、画像処理装置(104)は、外部コントローラ装置(103)を増設する前の対ネットワーク機能は損なうことなく、機能拡張が可能になる。例えば、SNMPやHTTPなどの汎用プロトコルを使用するサービスを、画像処理装置が外部ネットワーク上の機器に対して公開する場合、スルーモジュールによって、この機能はそのまま外部機器から利用可能となる。さらに、外部機器からは、アドレス的に一つの装置として、外部装置を含んだ画像処理装置システムとして認識することができ、IPアドレスを1つのみ割り当てれば良いようにできる。
次に図2におけるアップローダ・モジュール(206)について説明する。
本実施例のプロトコル変換装置(105)は、内蔵するHDD(124)に、機能拡張定義ファイル(207)、外部コマンド(208)および拡張データ(209)を保存することが可能である。アップローダ(207)は、ネットワークI/F1(122)(および外部コントローラ装置(103)に搭載した転送モジュール)を介して、外部ネットワーク(101)に接続されるホストコンピュータ端末と、所定のプロトコルをもって接続することが可能である。そして、ホストコンピュータより、これら207〜209のデータを受け取り、HDD(124)に格納するという動作を行なう。尚、この所定のプロトコルとしては、FTPなどの汎用のファイル転送プロトコルを用いることも可能であり、アップローダとして汎用プロトコルに対するサーバプログラムを用いて構成することももちろん可能である。
本実施例の画像処理システムを提供する上で、ユーザに機能カスタマイズを許すならば、外部のホストコンピュータ端末上でアップローダへの接続ツールを提供し、使い方を公開すると共に、後述する拡張機能定義マクロの仕様や外部コマンドに対する要求仕様等を公開する。特定ベンダーのみに拡張機能マクロを作らせる場合には、そのベンダーのみに同様の公開をし、サービスマンが接続ツールを用いて、ユーザの要求に合ったマクロをダウンロードするという運用形態をとる。
ここで、機能拡張定義(207)とは、画像処理装置104を簡単に機能拡張させるための動作を記述したマクロ定義のテキストファイルであって、一例として図4に示すようなものとなる。
図4は、マーカー処理を定義したファイルである。マーカー処理とは、例えば図5において、Aの白黒の原稿に対し、501に示すようにカラーのマーカーペンで一部領域を囲ったとすると、マスキングと呼ばれる処理においては、Bに示すように囲った部分を消したページ画像を生成し、トリミングと呼ばれる処理においては、Cに示すように囲った部分のみを表示するページ画像を生成するという処理であって、カラー読取装置をもつデジタル複写機においては古くから搭載されている機能である。しかし一部ユーザにしか使用されていない機能でもあるため、近年標準機能としない機種も増えてきている。
図4の拡張機能定義マクロを詳細に説明する。拡張機能定義マクロは、拡張データ定義部、変数定義部、メインメニュー定義部およびサブメニュー定義部より構成されており、各定義部は所定のラベルにより開始する。尚、ラベルは“:”文字で終わる行として定義される。
まず、Data list:のラベルで始まるエリアは画口調データ定義部であり、マクロ中で参照する拡張データ(209)を定義している。本実施系においては、拡張データ(209)はHDD(124)に格納されるファイルであるので、ファイル名“sample1.jpg”,“sample2.jbg”のファイルに対するIndexとして、マクロ中でd1およびd2が使用できるように宣言する部分である。
次に、Val list:のラベルで始まる領域は、変数定義部であり、マクロ中で使用する変数やバッファを宣言している。“:”の前の[]で括られた数字が、変数の大きさを表すバイト数であって、例えばtmpimgやoutimgは画像データを格納するバッファとして用いるので、十分に大きな領域を確保する宣言となっている。
Main:ラベルで始まる領域は、メインメニュー定義部であり、画像処理装置(104)のUIにおいて、拡張機能画面に遷移するボタンを押した際に最初に表示される画面の内容を表している。FormatID=5とは、表示する画面のフォーマットを予め定められたID:5のものを用いることを示している。フォーマットによって、表示できるボタンの数や配置、文字数等が異なっているため、必要に応じて適正なIDを選択する必要がある。Tileの項目は、画面上部に表示するタイトル文字列を示す。
Button1,Button2はそれぞれのボタンに表示する内容と機能を定義しており、{}で括られた中でStringがボタンの文字、Actionがボタンが押されたときになすべき処理を表している。このActionの定義内における命令moveto()は、()内のラベルへと処理を移すことを示している。尚、ラベルとしては表示するサブメニューごとに付けられるラベル(例えばMenu1)や、“Main”自体もこのラベルとして指定可能であり、また、Actionの定義内において複数行に処理が渡る場合には、その途中に所望のラベルを挿入してこれを指定するようにすることも可能である。
サブメニュー定義部については、所望の文字列を使用することができる。図4の例ではMenu1およびMenu2をサブメニュー定義の文字列として使用している。
サブメニューMenu1は、メインメニューにおいてButton1すなわち“マーカー処理コピー”が押されたときに表示するメニューの定義である。Main定義と同様の記述となっており、FormatIDとしては6を使用、Titleとしては“マーカー処理コピー”を設定している。Actionとしては、複数行にまたがる定義となっており、各行につき一つの命令を記載している。ここで、com()は、画像処理装置(104)の指定ポートに対し、図3で説明したような、プロトコル(A)の指定コマンドを、続くパラメータと共に送り、そのリプライを受け取ることを指示する命令である。
尚、リプライパケットに付随するパラメータは、次のコマンドが送られるまで、バッファに保存されており、マクロ中で参照することが可能である。これらのパラメータを別のコマンドを送った後に使用する場合には、変数定義領域で宣言した変数へ代入しておくことが可能である。Action定義中で、“:=”を挟んで左に変数、右にパラメータ名を指定している行が、代入文である。
次にexecp()は、外部コマンド(208)を実行するための命令である。ここで、外部コマンドは、プロトコル変換装置上で動作するフィルタ型のプログラムを想定しており、コマンド名と引数の組み合わせで示される。例えば、トリミングに対する外部コマンドとしては、マーカー処理フィルタ“marker”を使用し、第一引数にトリミングモードを示す1の値、第二引数に、ScanRetrieveコマンドで受け取った1ページの画像データを格納してあるバッファ領域tmpimgを指定する。フィルタプログラムであるので出力は、標準出力に排出されるが、これをリダイレクトしてoutimgのバッファ領域へ格納するように支持している。マスキングのときも全く同様で、マスキングモードを示す2を第一引数として指定させるところのみ異なる。
chk()命令は、条件判定を行なう命令である。条件が真のときに、“:”に続く命令を実行する。
尚、図4においてMenu2に相当する“サンプル画像プリント”の定義については、記載は省略するが、ここではデータ定義部で宣言している拡張データファイルに対応する宣言d1およびd2を選択し、プリント処理するものとなっている。
次に、機能拡張エージェント(203)は、機能拡張定義マクロ(207)を読み出し、マクロの定義に従って、プロトコル変換モジュール(204)に対し、必要なタイミングでプロトコル(A)のコマンドのやり取りを行なう。すなわち、プロトコル変換モジュール(204)にとっては、外部コントローラ装置(103)と並列に存在するクライアント端末の一つに過ぎず、またプロトコル変換モジュール(204)は複数のクライアントからの接続を許可するようになっている。
この機能拡張エージェント(203)の処理を、図6および図7のフローチャートを用いて説明する。
機能拡張エージェント(203)は、起動されるとS601からの処理を開始する。尚、この処理は、アップローダ(206)により拡張機能定義(207)が更新された後等に、所定のトリガによっても再起動される。
S601が起動するとS602の処理として、まずHDD(124)から拡張機能定義ファイル(207)を読み込む。
そして、S603の処理として、まずデータ定義部を読み出し、拡張データファイルを使用できるように内部のデータ名に関連付ける。この処理は、画像データ等の大容量のものであることが多いため、サイズに応じてOSのメモリマッピング機能を使用して、HDD上にありつつも内部でメモリのように取り扱えるようにして実現している。
次にS604として、変数定義領域を読み出し、スタック上に領域を確保する。これも大容量の場合には、HDDのスワップ領域を利用したり、あるいは上記と同様メモリマッピング機能を用いて実現する。
次に、S605の処理として、Mainメニュー定義部を読み出し、定義に従ってIDに対応するプロトコル(A)のUI表示コマンドのパケットを作成する。例えばID=5に対応するUI表示コマンドは、DisplayMenu5というコマンドであり、そのパラメータとして使用するボタンの数および各ボタンのストリングを指定できる。このID=5の画面が表示されているときに、ハードキーまたはLCDタッチパネルに表示されるボタンが、ユーザにより押下されると、画像処理装置(104)でイベントが発生し、イベント通知を登録してあるクライアントに通知される仕組みとなっている。また、Mainメニュー定義部には明記されていなくとも、Exitキーを表示するためのパラメータを、自動的に付け加える。
同様に、S606の処理において、各サブメニューに対応するUIコマンドパケットを生成する。図4の例では、Menu1およびMenu2に対する2つのコマンドパケットが生成される。これらのパケットは、ラベルMainおよびMenu1とMenu2でそれぞれ検索可能なように、メモリ上に格納される。
次に、S607の処理において、プロトコル変換モジュール204に対してプロトコル(A)でのイベントポートに接続し、UIキー押下イベントの通知登録を行なう。これを受けたプロトコル変換モジュール(204)は、画像処理装置104に対し、プロトコル(B)でのイベント受信クライアント登録を行なう。すなわち、プロトコル変換モジュール(204)は、画像処理装置(104)にとってはクライアントの一つとなり、以後、プロトコル(B)によるキー押下イベントを受けて、プロトコル(A)に変換し、機能拡張エージェント(203)に伝えるようになる。
また、機能拡張エージェント(206)は、内部変数として、現在表示中あるいは表示しようとしているメニューの位置を示す実行ラベルと、Action定義の中で実行する命令の位置を示す実行ポインタという2種類の内部変数を持っている。S608においては、実行ラベルを初期状態であるMainラベルに設定している。
次にS610において、キー入力のイベント受信を待つ。そしてS611において、受信したキーが拡張機能画面に遷移させるための遷移キーであるかどうかを判定し、遷移キーでない場合にはS610の処理に戻ってイベント待ちを続ける。
遷移キーイベントが受信されたら、S612の先に生成したMainメニュー表示のためのUIコマンドパケットをプロトコル変換モジュール(204)に送信する。プロトコル変換モジュール(204)はこれをうけて、情報処理装置(104)のLCD画面上にMainメニューを表示させる。
そしてS613において、次のキー入力のイベントを待つ。
キー入力を受信すると、S614において、現在の実行ラベルがMainであり、かつ押されたキーがExitキーであるかどうかを判定する。
Exitキーである場合には、表示している拡張機能画面のクローズコマンドをプロトコル変換モジュール経由で画像処理装置(104)に送り、画面をクローズさせるとともにS610の処理へと戻る。
Exitキーでない場合、S616の処理を実行する。これは図7のフローチャートに示す処理であって、まずS702にて、入力されたキーの判定を行なう。
そして、S703において、実行ラベルに対応する定義を読み出し、対応するButton1のAction定義1行目に実行ポインタをセットする。例えば、図4の拡張機能定義でMainメニュー表示時にButton1が押下されたとすると、Button1のAction定義1行目のcom(Sjob,ScanJobStart,…)に実行ポインタが移される。
そして、S704において実行ポインタ位置の行を読み出し、命令を判定する。
命令がmovetoであれば、S705の処理において、実行ラベルを指定されたラベルへと変更する。但し、指定されたラベルがAction定義内のラベルである場合には、実行ポインタをラベルの次の行に変更する。そして、変更したのが実行ラベルかどうかをS714にてしらべ、実行ラベルならば処理終了となりS616の処理をぬける。実行ラベルでない場合には、S712の処理を行い、実行ポインタをAction定義内ラベルの次の行に進め、S713にてこれが、そのAction定義内で最終行か否かを調べて、最終行でない場合にはS704の処理へと戻る。
命令がcomであれば、S706にてプロトコル変換モジュール(204)の指定ポートにコマンドを送信し、プロトコル変換モジュールが画像処理装置(104)と通信し終わってリプライを返すまで待ち、S707にてリプライを受信する。そして、S712で実行ポインタを1行進める。尚、このとき実行ポインタがAction定義内ラベルとなったら、さらにもう一つ実行ポインタを進める。そしてmovetoと同様、S713にて最終行か否かの判断を行い、最終行ならば処理終了、最終行でなければS704の次の行の命令判定に戻る。
命令がchkであるときは、S709の処理にて、指定された条件文が真であるかどうかを指定する。この条件文には、変数と定数の比較文が使用可能である。もし条件文が真である場合には、“:”の後ろに定義された実行命令部を実行すべく実行ポインタを移し、S704の処理へと戻る。死んでない場合には、S712の処理へと移り、“:”以降は実行せず次の行へと実行ポインタを進める。
S704での判定結果が代入文であった場合には、S711の処理において“:=”の左辺に記述される変数に、右辺のパラメータ値を代入する。このパラメータ値とは、直前にcom命令により送信されたコマンドのリプライパケットに付随するパラメータであって、前述したように次のcom命令を実行するまではStackに保存されているため参照可能となっている。
以上のS616の処理により、キーに対応するAction定義がすべて実行されると、S617の処理として、実行ラベルに対応するメニュー表示のUIコマンドパケットを送信する。このとき、実行ラベルが前回と変更がない場合であっても、ボタン押下によって画像処理装置のLCD上で反転表示されたボタンを戻すため、コマンドパケットは送信する。
そしてS613の処理に戻り、次のキー入力イベントを待つ。
尚、Mainで前述したとおり、それぞれのサブメニューの定義に記載されなくとも表示されるExitボタンがあり、これらのExitキーが押下された場合には、S616の不図示の処理として、一つ前の実行ラベルに戻すという処理も行なっている。これによりツリー状のメニュー階層の前後を行き来することを可能としている。
以上説明した各モジュールは、プロトコル変換装置(105)の電源投入時に、自動的に起動され、並列に動作する。
このようなソフト構成を持つ画像処理装置の外部装置としてのプロトコル変換装置を提供することにより、簡単な機能については、マクロで定義し、複雑な重い拡張機能については専用の外部コントローラ装置を接続することによって、機能に見合ったコストをかけて画像処理システムの機能拡張を行なっていくことを可能としている。
本発明を、図8に示す接続形態として適用することも可能である。
図8において、801〜827の各部/各装置については、それぞれ図1の101〜127と全く同等であるので、詳細な説明は省略する。
図8においては、図1におけるネットワークI/F2(117)を取り外したハードウェア構成となっている。そして、プロトコル変換装置805は、図1の実施形態のように、ダイレクトに外部コントローラ装置803と接続するのではなく、一旦外部ネットワーク801と接続され、ネットワーク801を経由して外部コントローラ装置803と通信する。
すなわち、外部コントローラ装置803においては、同一のI/Fハードウェアを用いて、ホストコンピュータ802とも、プロトコル変換装置805を経由した画像処理装置804とも通信することになる。
また、このような形態とするメリットとしては、外部コントローラ装置803を、特定の画像処理装置(804)1台のための機能拡張装置とするのではなく、複数の画像処理装置に対して機能拡張を行なう、機能拡張サーバとして構築することが可能となる。さらに、ホストコンピュータ等の外部コントローラ装置以外の外部装置と画像処理装置との通信は、外部ネットワークとプロトコル変換装置(805)のみを介して行なわれるため、外部コントローラ装置のプラットフォーム合わせた転送モジュールを開発する必要が無くなり、よりプラットフォーム依存性を無くすことが可能となる。
図8におけるプロトコル変換装置のソフトウェア構成図は、図2と全く同様で良く、実行する機能も同等でよいので、詳細な説明は省略する。
もちろん実現する機能としては、実施例1と同等でも良いし、複数台の画像処理装置と通信可能であることを利用した新しい機能を実現することも可能である。
さらに、本発明を、図9に示す接続形態として適用することも可能である。
図9においては、図8と同じく、901〜925の各部/各装置については、それぞれ図1の101〜125と全く同等であるので、詳細な説明は省略する。
図9には、図8と比べ、プロトコル変換装置805=905のネットワークI/F2(827)をさらに取り外したハードウェア構成となっている。そして、プロトコル変換装置905は、図8の実施形態のように、直接画像処理装置804と接続するのではなく、一旦外部ネットワーク901と接続され、ネットワーク901を経由して画像処理装置804と通信する。もちろん外部コントローラ装置903とも図8と同様にネットワーク901を介して通信する。
このような形態とするメリットとしては、まず、図2における転送モジュール205自体が必要なくなり、より簡単にプロトコル変換装置(905)を提供できるようになることがある。
また、図8での外部コントローラ装置805と同様に、プロトコル変換装置(905)を、特定の画像処理装置(904)1台のための機能拡張装置とするのではなく、複数の画像処理装置に対してのプロトコル変換機能を提供する装置とすることも可能となり、ハードウェア投資のためのコストをより押さえることも可能となる。
もちろん複数の画像処理装置を制御可能な特性を生かした機能を提供する、拡張機能マクロや外部コントローラを構築することも可能となる。例えば、カラーMFPでスキャンしたカラー画像をなんらかの画像処理を行なって、白黒画像に変換し、白黒MFPが出力するといった機能も、拡張機能定義マクロで定義することが可能となるのは自明である。もちろんこの場合には、図4や図6,7で説明したよりもさらに命令や制御文を、提供したい機能に応じて追加していけばよい。
101 ネットワーク
102 情報処理装置
103 外部コントローラ装置
104 画像処理装置
105 プロトコル変換装置
111 内部バス
112 ネットワークI/F 1
113 CPU
114 HDD
115 RAM/ROM
116 UI/他のI/F装置等
117 ネットワークI/F 2
121 内部バス
122 ネットワークI/F 1
123 CPU
124 HDD
125 RAM/ROM
127 ネットワークI/F 2
102 情報処理装置
103 外部コントローラ装置
104 画像処理装置
105 プロトコル変換装置
111 内部バス
112 ネットワークI/F 1
113 CPU
114 HDD
115 RAM/ROM
116 UI/他のI/F装置等
117 ネットワークI/F 2
121 内部バス
122 ネットワークI/F 1
123 CPU
124 HDD
125 RAM/ROM
127 ネットワークI/F 2
Claims (9)
- 第一の通信経路により受信した第一の制御プロトコルに従って、第二の通信経路に接続する画像処理装置の制御を行なう拡張機能制御装置であって、
前記第一の通信経路より送受信する前記第一の制御プロトコルを、前記第二の通信経路に送受信する第二の制御プロトコルに、および前記第二の制御プロトコルを前記第一の制御プロトコルに変換することの可能な、プロトコル変換手段と、
外部装置と通信し、前記画像処理装置を制御し機能拡張するための動作を記述する、拡張機能定義を受信して、所定の記憶領域に記憶する拡張機能定義記憶手段と、
前記拡張機能定義記憶手段より拡張機能定義を読み取って解釈し、前記第一の制御コマンドプロトコルを生成して、前記プロトコル変換手段と送受信する制御を行なう拡張機能定義実行手段と、
を有することを特徴とする拡張機能制御装置。 - 前記第一の通信経路には外部装置が接続され、外部装置から送受信される前記第一の制御プロトコルを前記第二の制御プロトコルに変換し、前記画像処理装置に対する制御を行なうことを特徴とする請求項1に記載の拡張機能制御装置。
- 前記第一の制御プロトコルとは、前記画像処理装置への画像印刷動作を指示するプロトコルであることを特徴とする請求項1に記載の拡張機能制御装置。
- 前記第一の制御プロトコルとは、前記画像処理装置への原稿読取動作を指示するプロトコルであることを特徴とする請求項1に記載の拡張機能制御装置。
- 前記第一の制御プロトコルとは、前記画像処理装置の操作部への表示および入力の受信を行なうための制御プロトコルであることを特徴とする請求項1に記載の拡張機能制御装置。
- 前記拡張機能定義には、前記拡張機能制御装置上で実行することのできる外部プログラムの実行の指示を含めることが可能なことを特徴とする請求項1に記載の拡張機能制御装置。
- 前記拡張機能定義は、前記拡張機能制御装置内部の記憶領域に存在する外部データを参照できることを特徴とする請求項1に記載の拡張機能制御装置。
- 前記第一の通信経路および前記第二の通信経路を、異なったハードウェアI/F装置に接続することを特徴とする請求項1に記載の拡張機能制御装置。
- 前記第一の通信経路および前記第二の通信経路を、同一のハードウェアI/F装置に接続することを特徴とする請求項1に記載の拡張機能制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005070934A JP2006252406A (ja) | 2005-03-14 | 2005-03-14 | 拡張機能制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005070934A JP2006252406A (ja) | 2005-03-14 | 2005-03-14 | 拡張機能制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006252406A true JP2006252406A (ja) | 2006-09-21 |
Family
ID=37092811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005070934A Withdrawn JP2006252406A (ja) | 2005-03-14 | 2005-03-14 | 拡張機能制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006252406A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009294773A (ja) * | 2008-06-03 | 2009-12-17 | Ricoh Co Ltd | 情報処理装置、情報処理方法、情報処理プログラム、記録媒体 |
WO2012108133A1 (en) * | 2011-02-08 | 2012-08-16 | Canon Kabushiki Kaisha | Image forming apparatus, control method for image forming apparatus, and program thereof |
JP2017004535A (ja) * | 2013-03-11 | 2017-01-05 | 富士ゼロックス株式会社 | 仮想プリンタインタフェースデバイス及びシステム |
-
2005
- 2005-03-14 JP JP2005070934A patent/JP2006252406A/ja not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009294773A (ja) * | 2008-06-03 | 2009-12-17 | Ricoh Co Ltd | 情報処理装置、情報処理方法、情報処理プログラム、記録媒体 |
WO2012108133A1 (en) * | 2011-02-08 | 2012-08-16 | Canon Kabushiki Kaisha | Image forming apparatus, control method for image forming apparatus, and program thereof |
JP2012162034A (ja) * | 2011-02-08 | 2012-08-30 | Canon Inc | 画像形成装置、画像形成装置の制御方法、およびそのプログラム |
US8526046B2 (en) | 2011-02-08 | 2013-09-03 | Canon Kabushiki Kaisha | Image forming apparatus, control method for image forming apparatus, and program thereof |
JP2017004535A (ja) * | 2013-03-11 | 2017-01-05 | 富士ゼロックス株式会社 | 仮想プリンタインタフェースデバイス及びシステム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4565505B2 (ja) | 印刷制御装置、印刷制御方法、プログラム及び記録媒体 | |
JP7250471B2 (ja) | 情報処理システム、画像形成装置、端末、情報処理方法、プログラム | |
JP4345858B2 (ja) | 画像形成システム、サーバ装置、画像形成プログラム、および画像形成方法 | |
JP5677047B2 (ja) | 印刷システム、情報処理装置、印刷方法、及び、プログラム | |
JP5679624B2 (ja) | 印刷装置及びその制御方法とプログラム | |
JP6489880B2 (ja) | 画像形成装置、画像形成装置の制御方法、およびプログラム | |
EP0991228A1 (en) | Network user interface with profile depandable function display | |
US8830492B2 (en) | Data processing apparatus for sending a single job based on common document information | |
JP3787434B2 (ja) | 画像形成装置及びその制御方法、並びに画像入力装置及びその制御方法 | |
JP4389968B2 (ja) | プリンタドライバおよび情報処理システム | |
JP2019070937A (ja) | 制御装置、ショートカットアイコン登録方法及びショートカットアイコン登録制御プログラム | |
US8531694B2 (en) | Appending restriction information to a job before transmission | |
JP5699991B2 (ja) | 文書データ送受信システム、画像形成装置、文書読込み装置、情報処理装置、および文書データ送受信方法 | |
JP4991449B2 (ja) | 画像処理装置、画像処理装置の制御方法、及び、コンピュータプログラム | |
JP4865590B2 (ja) | 複合画像処理装置、複合画像処理装置の制御方法 | |
JP4748261B2 (ja) | 画像形成システム、サーバ装置、画像形成プログラム、および画像形成方法 | |
JP2007025864A (ja) | 画像処理装置 | |
US20050108649A1 (en) | Control apparatus, control instruction apparatus, control program product and control instruction program product for transmitting/receiving data described in extensible markup language | |
JP5144429B2 (ja) | 画像形成装置、方法、プログラム | |
US7149436B2 (en) | Mode information conversion device, image forming device and image forming system | |
JP2006252406A (ja) | 拡張機能制御装置 | |
US20100231937A1 (en) | Print apparatus and print system and method of controlling the print apparatus | |
JP2018161761A (ja) | 画像形成装置及び画像形成プログラム | |
JP2005169838A (ja) | 画像出力装置 | |
KR20100034909A (ko) | 화상형성장치 및 그의 인쇄 처리 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080603 |