JP2005169672A - 印刷装置、印刷方法および印刷制御プログラム - Google Patents
印刷装置、印刷方法および印刷制御プログラム Download PDFInfo
- Publication number
- JP2005169672A JP2005169672A JP2003409354A JP2003409354A JP2005169672A JP 2005169672 A JP2005169672 A JP 2005169672A JP 2003409354 A JP2003409354 A JP 2003409354A JP 2003409354 A JP2003409354 A JP 2003409354A JP 2005169672 A JP2005169672 A JP 2005169672A
- Authority
- JP
- Japan
- Prior art keywords
- printing
- data
- print job
- cpu
- 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
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
- Storage Device Security (AREA)
- Storing Facsimile Image Data (AREA)
- Facsimile Transmission Control (AREA)
Abstract
【課題】 企業における秘密情報などの印刷を制限する。
【解決手段】 プリンタ100は、コントローラ部103において、PC107などから入力された印刷データを印刷可能なデータ(例えば、中間言語データやページイメージデータなど)へと変換する。その一方で当該変換処理と並行して、セキュリティーチェック部105は、印刷を禁止されている情報が印刷データに含まれているか否かを判定する。もし、印刷を禁止されている情報が含まれていなければ、印刷可能なデータの印刷処理を実行する。印刷を禁止されている情報が含まれていた場合には、印刷処理を停止もしくは中止したり、印刷データを削除したりする。また、印刷を停止または中止された印刷データを管理者等の所定アドレスに送信してもよい。
【選択図】 図1
Description
本発明は、印刷装置の制御技術に係り、とりわけ、印刷対象のデータに印刷を禁止されている秘密情報が含まれているどうかに基づいて当該データの印刷を制限する技術に関する。
今日、電子メールやWWW(ワールドワイドウェブ)などのインターネット技術が企業活動を支えているが、一方で、企業内における秘密文書等が外部に漏れる危険性が指摘されている。これらを防止すべく、様々な試みがなされている。
例えば、電子メールについては、社内のネットワーク管理者がネットワーク機器を適宜設定することにより、当該電子メールが私的に利用されていないか、あるいは極秘情報を社外に送信していないか等をチェックしている。
また、社内ユーザーが社外のWWWへアクセスする際にもプロキシサーバ等を用いて自動的にチェックしたり、特定のサイトへのアクセスをブロックしたりしている。
ところで、ユーザーが文書の印刷を行なう場合は、ユーザーの使用するパソコン内のプリンタドライバが文書データを印刷データ(すなわち、プリンタコマンド群)に変換し、この印刷データをプリンタに送信して印刷を実行している。
もし文書データに企業秘密が含まれている場合には、企業内のセキュリティーポリシーに基づいて印刷の実行を制限できることが望ましいだろう。
そこで、本発明の関連技術として、印刷の許可/不許可の判定を行なう「セキュリティーチェックサーバ」を、ユーザーのパソコンとプリンタとの間に設置することを検討する。この関連技術に係るセキュリティーチェックサーバは、印刷データをコード化してコード化データを作成し、当該コード化データに「極秘」、「社外秘」または「Confidential」等のキーワードが含まれていないかを全文検索する。当該キーワードが発見された場合には、当該サーバが、さらに印刷を許可されたユーザーかどうかを確認する。最終的に、印刷が許可されていないユーザーと判断されれば、印刷データを削除してプリンタに送信しないようにし、同時にユーザーに対して「印刷不許可」の警告メッセージを送信することになる。
なお、本願発明に直接的に関連するものではないが、本願発明の出願時の技術水準を示すものとして特許文献1に記載の技術がある。この発明は、プリンタドライバにおいて紙幣等を認識し、紙幣の偽造を防止する技術に関連している。
特開2000−196876号公報。
しかし、上述の関連技術では、「セキュリティーチェックサーバ」の設置に伴い、ネットワーク環境の整備コストが上昇するだけでなく、ネットワーク管理者には当該サーバの管理負担が新たに発生しする。したがって、管理者の日常業務が増加してしまうおそれがある。
また、印刷データのコード化処理やキーワードの全文検索が終了するまでは、サーバからプリンタへと印刷データが送信されない。これは、プリンタがイメージデータへの変換処理等を実行できないことを意味する。そのため、印刷完了までの待ち時間が増加してしまうおそれがある。企業内では、日々、大量の印刷ジョブが発生するため、多くの社内ユーザーは、印刷が完了するまでプリンタの前で待たされることになり、日常業務に悪影響が生じるかもしれない。
そこで、本発明は、このような課題および他の課題を解決することを目的とする。なお、他の課題については明細書の全体を通して理解できよう。
上記課題を解決すべく、本発明の印刷装置は、入力された印刷データを印刷可能なデータ(例えば、中間言語データやページイメージデータなど)へと変換する一方で、当該変換処理と並行して、印刷を禁止されている情報が印刷データに含まれているか否かを判定する。もし、印刷を禁止されている情報が含まれていない場合には、印刷可能なデータの印刷処理を実行する。印刷を禁止されている情報が含まれていた場合には、印刷処理を停止もしくは中止したり、印刷データを削除したりする。また、印刷を停止または中止された印刷データを管理者等の所定アドレスに送信してもよい。
本発明によれば、印刷装置において、印刷に必要なデータ変換処理と印刷禁止の判定処理とをほぼ並行して進めることで、秘密情報等の印刷禁止と印刷処理の待ち時間の改善とを両立させることができる。
以下に本発明の上位概念、中位概念および下位概念の理解に役立つ一実施形態を示す。なお、以下の実施形態に含まれる概念について、そのすべてが特許請求の範囲に記載されているとは限らない。ただし、これは特許発明の技術的範囲から意識的に除外したのではなく、特許発明と均等の関係にあるため特許請求の範囲には記載していない場合があることを理解していただきたい。
[第1の実施形態]
図1は、本実施形態に係る印刷装置の例示的なブロック図である。プリンタ100は、ユーザーのパソコン107から連続して送信される印刷ジョブデータを受信する。印刷ジョブデータとは、印刷ジョブを実行する際に必要となるプリントコマンドなどのデータをいう。プリンタ100は、受信・分岐部102、コントローラ部103、エンジン部104、セキュリティーチェック部105、および条件保存部106を備えており、それぞれ不図示の共通バスを介して接続されている。
図1は、本実施形態に係る印刷装置の例示的なブロック図である。プリンタ100は、ユーザーのパソコン107から連続して送信される印刷ジョブデータを受信する。印刷ジョブデータとは、印刷ジョブを実行する際に必要となるプリントコマンドなどのデータをいう。プリンタ100は、受信・分岐部102、コントローラ部103、エンジン部104、セキュリティーチェック部105、および条件保存部106を備えており、それぞれ不図示の共通バスを介して接続されている。
受信・分岐部102は、印刷ジョブデータを受信すると、当該印刷ジョブデータを印刷処理のためのデータとセキュリティーチェックのためのデータとに分割し、コントローラ部103とセキュリティーチェック部105に送付する。なお、データを分割する際には、印刷ジョブデータの先頭に印刷ジョブ番号とユーザー情報と付加することで、コントローラ部103とセキュリティーチェック部105とが印刷ジョブを特定できるようにしている。また、分割の際には、印刷ジョブデータをコピーすることでもう一つの印刷ジョブデータを作成してもよい。あるいは、物理的に一つの印刷ジョブデータを双方から参照可能なようにデータを管理してもよい。このように、分割とは、受信した印刷ジョブデータをコントローラ部103とセキュリティーチェック部105とがそれぞれ並行して利用できるようにすることを意味し、必ずしも当該データをばらばらに分離することを意味するわけではない。
コントローラ部103は、印刷ジョブデータを受信して保存する受信バッファ110と、受信バッファ110中の印刷ジョブデータをトランスレート(翻訳)して中間言語データとして保存する中間バッファ111、中間言語データからラスタライズ処理して得たページイメージデータを保存するスプール領域112等で構成されている。また、指示待機プログラム113は、セキュリティーチェック部105から印刷許可を受信すると、スプール領域112に保存しておいたページイメージデータがビデオ信号化されてエンジン部104に送信され、印刷が実行される。
セキュリティーチェック部105は、印刷ジョブデータを受信して保存する受信バッファ120と、受信バッファ120中の印刷ジョブデータをコード化処理して得られたコード化データを保存するコード化データ保存バッファ121と、受信した印刷ジョブデータやコード化データを保存しておく保存領域122とを含んでいる。コード化データは、印刷ジョブデータに印刷を禁止されている情報が含まれているか否かをセキュリティーチェック部105が判断する際に役立つデータのことである。コード化データ保存バッファ121に記憶されているコード化データは、条件チェック処理において、キーワードによる全文検索が行われる。オプションとして、キーワードが存在した場合に印刷が許されたユーザーかどうかを判定してもよい。印刷ジョブデータに関する印刷許可/不許可の判定結果は、コントローラ部103の指示待機プログラム113に送出される。
条件チェック処理において使用される判定条件(印刷不許可キーワードや、印刷が許可されたユーザーかどうかの情報など)は、予め管理者のPC108を通して条件保存部106に設定される。条件チェック処理を行なう場合は、条件保存部106から読み出された判定条件が利用される。条件保存部には、所定のウィルスチェックパターンを記憶し、所定のビット列を含むウィルスプログラムに印刷データが汚染していないか否かを判定することができる。本実施形態でのセキュリティチェックは、単なる文字列検索に限定されるものではなく、所定の画像パターンを画像認識アルゴリズムにより検出した場合に印刷を不許可とするようにしてもよい。
条件チェック処理において、印刷不許可と判定された場合は、印刷ジョブデータを送信したユーザーPC107に対して「印刷不許可」を表す警告情報を送信する。また、印刷不許可とされた印刷ジョブについて、保存領域122に保存しておいた受信データとコード化データとを管理者のPC108に送信する。これにより、管理者は、受信データとコード化データをPC108において表示させることで詳細に調べることができ、必要であれば、ユーザーと直接対面して調査を進めることができるようになる。
なお、上記コントローラ部103の処理とセキュリティーチェック部105の処理は、ほぼ並行してパイプライン的に進められるので、秘密文書の印刷禁止と印刷スピードとを両立させることができる。
次に、上記機能に関するハードウエア上の実現手段の一例を図2ないし図6を用いて説明する。図2は、本実施形態に係る受信・分岐部102の基本構成例を示す図である。CPU201は、システムバスに接続された各デバイスを統括的に制御する演算装置である。ROM202は、ブートプログラムや各種の制御プログラムを記憶する記憶回路である。RAM203は、CPU201の主メモリ、ワークエリア等として機能する記憶回路である。共通バス接続部204は、コントローラ106などの他の機能部と通信するための共通バスに接続する接続回路である。ネットワーク接続部205は、任意のネットワークを介してユーザーのPC107や管理者のPC108と接続して通信するための通信制御回路である。
図3は、本実施形態に係る条件保存部の構成例を示した図である。CPU301、ROM302、RAM303および共通バス接続部304に加え、外部記憶装置306を備えている。この外部記憶装置306は、条件判定のためのキーワードや、当該キーワードごとの許可ユーザーに関する情報等を記憶する記憶装置である。外部記憶装置306としては、例えば、HDD(ハードディスクドライブ)やフラッシュROMなどを採用できる。
図4は、本実施形態に係るエンジン部の基本構成例を示す図である。CPU401、ROM402、RAM403および共通バス接続部404に加え、コントローラ部103との接続部408、給紙・現像定着・排紙装置409が含まれている。なお、接続部408は、ページイメージデータをビデオ信号の形式でコントローラ部103から受信し、それを給紙・現像定着・排紙装置409に送出する。つまり、共通バスや制御部内のローカルバスを経由することなく、直接、給紙・現像定着・排紙装置409にビデオ信号の形式でページイメージデータを送出するように構成したので、共通バスやローカルバスの負荷を軽減できる利点がある。
図5は、本実施形態に係るコントローラ部の基本構成例を示す図である。CPU501、ROM502、RAM503、共通バス接続部504および外部記憶装置506に加え、エンジン部104との接続部508が含まれている。これは、エンジン部104にページイメージのビデオ信号を送信するための回路である。なお、ROM502には、受信プログラム510、トランスレートプログラム511、ラスタライズプログラム512、指示待機プログラム113、印刷出力プログラム514が記憶されている。これらのプログラムはそれぞれマルチタスクで動作するようにすれば、より一層効果が高まるであろう。RAM503には、受信バッファ110、中間バッファ111、管理表515、ワーク領域516が設けられている。外部記憶装置506は、HDD(ハードディスクドライブ)などで、スプール領域112が設けられている。
受信プログラム510は、受信・分岐部102から印刷ジョブデータ(プリントコマンドなど)を受信して受信バッファ110に保存するためのプログラムである。また、保存開始時には、印刷ジョブ番号を発行し、当該印刷ジョブ番号を管理表515に登録する。これにより印刷ジョブを管理できるようにする。トランスレートプログラム511は、受信バッファ110に記憶されているプリントコマンドを中間言語データに変換して中間バッファ111に記憶するプログラムである。ラスタライズプログラム512は、中間バッファ111に記憶されている中間言語データをラスタライズしてページイメージデータに変換し、スプール領域112に記憶するプログラムである。印刷ジョブデータについて、スプール領域へのイメージデータの保存が完了すると、管理表515にスプール完了を登録する。
図6は、本実施形態に係るセキュリティーチェック部の基本構成例を示す図である。CPU601、ROM602、RAM603、共通バス接続部604および外部記憶装置606が含まれている。ROM602には、受信プログラム610、コード化プログラム611、条件チェックプログラム612が記憶されている。RAM603には、受信バッファ120、コード化データ保存バッファ121、管理表615、ワーク領域616が設けられている。外部記憶装置606には、受信データ617やコード化データ618の保存領域が設けられている。なお、管理表615と管理表515は、このように別々に設けてもよいし、共通化してもよい。
受信プログラム610は、受信・分岐部102から印刷ジョブデータ(プリントコマンドなど)を受信して受信バッファ120に保存するプログラムである。保存開始時には、管理表615に印刷ジョブ番号とユーザー情報を登録し、以後、印刷ジョブを管理できるようにする。また、受信データを外部記憶装置606の保存領域にも保存する。
コード化プログラム611は、受信バッファ120に記憶されている受信データ(プリントコマンド)をコード化し、コード化されたデータを保存バッファ121に保存する。また、コード化データを外部記憶装置606の保存領域122にも保存する。
条件チェックプログラム612は、保存バッファ121に記憶されているコード化データに対し、キーワードによる全文検索して条件チェックを実行する。そして、キーワードが存在した場合は、そのキーワードについて印刷を許可されたユーザーかどうかをチェックし、印刷の許可/不許可を判定する。なお、上記キーワードやユーザー情報は、条件保存部106から読み出して取得する。また、印刷の許可/不許可の判定結果は、コントローラ部103に送出する。さらに、不許可の場合は、印刷ジョブを送信したユーザーのPC107に対して「印刷不許可」の警告メッセージを送信する。警告メッセージは、プリンタドライバが受信して表示するようにしてもよいし、電子メール等の他の伝達手段により送信してよい。なお、プリンタドライバが受信した場合には、印刷ジョブデータの送信を中止するようにしてもよい。一方、管理者のPC108には、対応する受信データとコード化データとを送信する。当該データを送信する際には、独自のプロトコルを用いてもよいし、電子メール等のよく知られたプロトコルを用いて送信してもよい。
次に、フローチャートを用いて第1の実施形態に係る動作を説明する。図7は、本実施形態に係る受信・分岐部102の動作を説明するためのフローチャートである。
ステップS701において、CPU201は、プリンタ100の電源がオフにされたかをチェックし、YESであれば動作を終了する。NOであればステップS702に進み、CPU201は、新規の印刷ジョブデータを受信したかどうかを判定する。YESであればステップS703に進み、印刷ジョブ番号を発行し、当該印刷ジョブ番号と送信者情報とを印刷ジョブデータの先頭にを付加する。さらに、受信データを分割し、コントローラ部103とセキュリティーチェック部105とに送信する。送信者の情報もユーザーPC107から受信するものとする。そのあとは、ステップS701に戻って、最初からのステップを繰り返す。
ステップS702でNOであればステップS704に進み、CPU201は、セキュリティーチェック部105の条件チェックプログラム612で使用するためのチェック条件を受信したかどうか判定する。YESであればステップS705に進み、CPU201は、チェック条件に関するデータを条件保存部106に送信する。そのあとは、ステップS701に戻る。
ステップS704でNOであればステップS706に進み、CPU201は、印刷不許可となった印刷ジョブデータを送信してきたユーザーに対する「印刷不許可」警告メッセージの送信指示を、条件チェックプログラム612から受信しているかどうかを判定する。YESであればステップS707に進み、印刷ジョブデータを送信してきたPC107に「印刷不許可」の警告メッセージを送信する。そのあとは、ステップS701に戻る。
ステップS706でNOであればステップS708に進み、CPU201は、条件チェックプログラム612から、管理者のPC108に対するデータ送信指示があったかを判定する。YESであればステップS709に進み、CPU201は、印刷不許可と判定した印刷ジョブに関する送信者情報、印刷ジョブデータおよびコード化データを管理者のPC108に送信する。そのあとは、ステップS701に戻る。
ステップS708でNOであればステップS710に進み、CPU201は、条件チェックプログラム612から、印刷ジョブデータの受信中止指示(印刷ジョブ番号の指定を含む。)を受信したかを判定する。YESであればステップS711に進み、CPU201は、中止対象となっている印刷ジョブの番号に基づいて、該当の印刷ジョブを受信中であるかどうかを判定し、受信中であれば当該印刷ジョブの受信を停止する。ステップS711のあと、あるいはステップS710でNOであればステップS701に戻る。 図8は、本実施形態に係る条件保存部106の動作を説明するためのフローチャートである。
ステップS801において、CPU301は、プリンタ100の電源がオフにされたかチェックし、YESであれば動作を終了する。NOであればステップS802に進み、CPU301は、新しいチェック条件が、受信・分岐部102から届いているかどうかを判定する。YESであればステップS803に進み、CPU301は、新しい条件を外部記憶装置306に保存し、ステップS801に戻る。
ステップS802においてNOであればステップS804に進み、CPU301は、セキュリティーチェック部105の条件チェックプログラム612から、チェック条件の問い合わせが合ったかどうかを判定する。YESであればステップS805に進み、チェック条件を読み出して条件チェックプログラム612に送信する。ステップS805のあと、あるいは、ステップS804でNOの場合は、ステップS801に戻る。
図9は、本実施形態に係るエンジン部104の動作を説明するためのフローチャートである。
ステップS901において、CPU401は、プリンタ100の電源がオフにされたかを判定する。YESであれば動作を終了する。NOであればステップS902に進み、コントローラ部103の印刷出力プログラム514から給紙開始の指示があったかを判定する。YESであればステップS903に進み、CPU401は、給紙装置409を制御して給紙を開始する。さらに、給紙を開始したことを印刷出力プログラム514に通知する。そのあとは、ステップS901に戻る。
ステップS902においてNOの場合は、ステップS904に進み、印刷出力プログラム514によって送信されるビデオ信号の受信を開始したかを判定する。YESであればステップS905に進み、CPU401は、ビデオ信号に応じて画像を用紙に転写し、定着し、排紙する。ステップS905のあと、あるいはステップS904でNOであればステップS901に戻る。
図10は、本実施形態に係るコントローラ部103の受信プログラムの動作を説明するためのフローチャートである。
ステップS1001において、CPU501は、プリンタ100の電源がオフにされたかを判定する。YESであれば動作を終了させる。NOであればステップS1002に進み、CPU501は、受信・分岐部102から、新規の印刷ジョブに係る受信データを受信しているかどうかを判定する。YESであればステップS1003に進み、CPU501は、管理表515に印刷ジョブ番号を登録する。次にステップS1004に進み、CPU501は、受信バッファ110に受信データを保存する。
なお、新規の印刷ジョブの受信が開始されると、あとはDMA転送によって、自動的に印刷ジョブの最後まで受信作業が行われるようにしてもよい。このようにすれば、受信プログラム510は受信処理から開放される利点がある。
ステップS1004のあと、あるいは、ステップS1002でNOであればステップS1001に戻る。
図11は、コントローラ部103のトランスレートプログラムの動作を説明するためのフローチャートである。
ステップS1101で、CPU501は、プリンタ100の電源がオフにされたかどうかを判定する。YESであれば動作を終了させる。NOであればステップS1102に進み、CPU501は、受信バッファ110に印刷ジョブデータがあるかどうかを判定する。YESであればステップS1103に進み、CPU501は、印刷ジョブデータ(プリントコマンド)を中間言語データにトランスレートし、中間バッファ111に保存する。処理済の受信データは、受信バッファ110から削除する。そのあとは、ステップS1101に戻る。なお、中間言語データとは、プリントコマンドを描画しやすくするために、単純化したコマンドデータである。この中間言語データに基づいて、ラスタライズプログラム512が最終的なページイメージデータを作成する(図13)。
ステップS1102でNOであればステップS1104に進み、CPU501は、コントローラ部103の指示待機プログラム113から、印刷ジョブ番号を指定したトランスレート処理の停止指示があったかを判定する。YESであればステップS1105に進み、CPU501は、指定された印刷ジョブがトランスレート中かを判定する。YESであればステップS1106に進み、CPU501は、トランスレート処理を停止する。ステップS1106のあと、ステップS1105でNOの場合、あるいはステップS1104でNOの場合は、ステップS1101に戻る。
図12は、本実施形態に係るラスタライズプログラムの動作を説明するためのフローチャートである。
ステップS1201で、CPU501は、プリンタ100の電源がオフにされたかを判定する。YESであれば動作を終了させる。NOであればステップS1202に進み、CPU501は、中間バッファ111に印刷ジョブデータがあるかどうかを判定する。YESであればステップS1203に進み、CPU501は、印刷ジョブデータをラスタライズし、ラスタライズにより生成されたページイメージデータを外部記憶装置506のスプール領域112に保存する。ステップS1204において、CPU501は、印刷ジョブの部分的なラスタライズ完了を管理表515に記録する。そのあとは、ステップS1201に戻る。
ステップS1202でNOの場合は、ステップS1205に進み、CPU501は、指示待機プログラム113から、印刷ジョブ番号を指定したラスタライズ処理の停止指示を受信しているかを判定する。YESであればステップS1206に進み、CPU501は、指定された印刷ジョブがラスタライズ中であるかどうかを判定する。YESであればステップS1207に進み、CPU501は、指定された印刷ジョブのラスタライズ処理を中止する。ステップS1207のあと、ステップS1206でNOの場合、あるいはステップS1205でNOの場合は、ステップS1201に戻る。
図13は、本実施形態に係る指示待機プログラムの動作を説明するためのフローチャートである。
ステップS1301で、CPU501は、プリンタ100の電源がオフにされたかを判定する。YESであれば動作を終了させる。NOであればステップS1302に進み、CPU501は、セキュリティーチェック部105の条件チェックプログラム612から、印刷ジョブについて印刷許可/不許可の指示を受信しているかどうかを判定する。YESであればステップS1303に進み、CPU501は、当該印刷ジョブについて印刷許可/不許可を管理表515に記録する。そのあとは、ステップS1301に戻る。
ステップS1302でNOであればステップS1304に進み、CPU501は、管理表515に、印刷を許可された印刷ジョブが登録されているかどうかを判定する。YESであればステップS1305に進み、CPU501は、全ページについてラスタライズが完了しているかを判定する。NOであればステップS1301に戻る。YESであればステップS1306に進みCPU501は、印刷ジョブについて印刷実行を印刷出力プログラム514に指示する。そのあとは、ステップS1301に戻る。
ステップS1304でNOであればステップS1307に進み、CPU501は、管理表515に印刷不許可の印刷ジョブが登録されているかを判定する。YESであればステップS1308に進み、全ページについてラスタライズが完了しているかを判定する。NOであればステップS1309に進み、CPU501は、トランスレートプログラム511、ラスタライズプログラム512に対し、対応する印刷ジョブのトランスレート処理、ラスタライズ処理の停止を指示する。さらに、CPU501は、受信バッファ110または中間バッファ111に記憶されている対応印刷ジョブのデータを削除する。
ステップS1309のあと、あるいはステップS1308でYESの場合は、ステップS1310に進み、スプール領域112から対応印刷ジョブに係るページイメージデータを削除する。また、管理表515からも当該印刷ジョブの記録を削除する。
ステップS1310のあと、あるいはステップS1307でNOの場合は、ステップS1301に戻る。
図14は、本実施形態に係る印刷出力プログラムの動作を説明するためのフローチャートである。
ステップS1401で、CPU501は、プリンタ100の電源がオフにされたかどうか判定する。YESであればこのプログラムの動作を終了させる。NOであればステップS1402に進み、CPU501は、指示待機プログラム113から、印刷ジョブ番号を指定した印刷実行の指示があったかを判定する。YESであればステップS1403におて、CPU501は、エンジン部104に給紙の指示を送出する。ステップS1404において、CPU501は、エンジン部104から給紙開始の通知を受信するまで待機する。給紙開始の通知があると、ステップS1405に進み、CPU501は、スプール領域112から対応する印刷ジョブのページイメージデータを読み出して、ビデオ信号を作成し、エンジン部104に送信する。ステップS1406において、CPU501は、1ページ分のビデオ信号についての送信が完了するまで待つ。送信が完了すると、ステップS1407に進み、CPU501は、印刷ジョブの最後のページまでビデオ送信を完了したかを判定する。NOであればステップS1403ないしS1406までの処理を繰り返す。
ステップS1407においてYESであればステップS1408に進み、CPU501は、印刷完了した印刷ジョブに係るページイメージデータをスプール領域112からすべて削除し、管理表515からも対応印刷ジョブの記録を削除する。
ステップS1408のあと、あるいはステップS1402でNOの場合は、ステップS1401に戻る。
図15は、本実施形態に係るセキュリティーチェック部105の受信プログラムの動作を説明するためのフローチャートである。
ステップS1501において、CPU601は、プリンタ100の電源がオフにされたかを判定する。YESであればこのプログラム610の動作を終了する。NOであればステップS1502に進み、CPU601は、新規の印刷ジョブに関する受信データが届いているかどうかを判定する。YESであればステップS1503に進み、CPU601は、管理表615に印刷ジョブ番号と送信者情報を登録する。ステップS1504において、CPU601は、セキュリティーチェック部105の受信バッファ120に受信データを保存する。ステップS1505において、CPU601は、受信データを外部記憶装置606の保存領域122にも保存する。ステップS1505のあと、あるいはステップS1502でNOであればステップS1501に戻る。
図16は、本実施形態に係るコード化プログラムの動作を説明するためのフローチャートである。
ステップS1601において、CPU601は、プリンタ100の電源がオフにされたかどうかを判定する。YESであればこのプログラム611の動作を終了する。NOであればステップS1602に進み、CPU601は、受信バッファ120に印刷ジョブデータがあるかどうかを判定する。YESであればステップS1603に進み、CPU601は、当該印刷ジョブデータ(受信データ)にダウンロードフォントが含まれているかを判定する。YESであればステップS1604に進み、CPU601は、パターンマッチングにより、ダウンロードされた各文字パターンのコードを同定する。
ステップS1603においてNOの場合、あるいはステップSS1604のあとは、ステップS1605に進み、CPU601は、受信データがイメージ部分を含むかどうかを判定する。YESであればステップS1606に進み、CPU601は、パターンマッチングにより、イメージ部分内の文字列のコードを同定する。なお、フォント基づく同定処理と、イメージに基づく同定処理は、どちらか一方のみを実行してもよいし、双方を実行していもよい。
ステップS1605でNOの場合、あるいはステップS1606のあとは、ステップS1607に進み、CPU601は、受信データの文字列部分の全体をシフトJISコードに変換する。ステップS1608に進み、CPU601は、シフトJISコードに変換したコード化データをコード化データ保存バッファ121に保存する。同時に、外部記憶装置606の保存領域618にも保存する。そして、受信バッファ120にあるコード化処理済の受信データを削除する。
ステップS1608のあと、あるいはステップS1602でNOの場合は、ステップS1601に戻る。
図17は、本実施形態に係る条件チェックプログラムの動作を説明するためのフローチャートである。
ステップS1701において、CPU601は、プリンタ100の電源がオフにされたかを判定する。YESであればこのプログラム612の動作を終了する。NOであればステップS1702に進み、CPU601は、コード化データ保存バッファ121内にコード化データが存在するかを判定する。YESであればステップS1703に進み、CPU601は、チェック条件を読み込んであるかどうかを判定する。YESであればステップS1704に進み、CPU601は、条件保存部106に保存されているチェック条件に関するデータが新規のデータに変更されているかを判定する。ステップS1704でYES、あるいはステップS1703でNOであればステップS1705に進み、CPU601は、条件保存部106からチェック条件に関するデータを読み込む。ステップS1705のあと、あるいはステップS1704でNOの場合は、ステップS1706に進み、CPU601は、条件検索処理を実行する。条件検索処理の詳細は図18を用いて後述する。ステップS1707において、CPU601は、検索処理済のコード化データをコード化データ保存バッファ121から削除する。
ステップS1708において、CPU601は、条件検索処理の結果に基づいて、印刷ジョブの印刷許可/不許可の判定を行なう。許可であれば、ステップS1709に進み、CPU601は、印刷ジョブの全データについて、条件検索処理を終了したかを判定する。YESであればステップS11710に進み、CPU601は、コントローラ部103の指示待機プログラム113に、印刷ジョブ番号とともに印刷可を通知する。そして、外部記憶装置606の保存領域122から、対応印刷ジョブの受信データ、コード化データを削除し、さらに管理表615からも対応印刷ジョブの記録を削除する。ステップS1710のあと、あるいはステップS1709でNOの場合は、ステップS1701に戻る。
ステップS1708において印刷不許可の場合は、ステップS1711に進み、CPU601は、指示待機プログラム113に、印刷ジョブの番号とともに印刷不許可を通知する。また、印刷ジョブを送信したユーザーのPC107にも、受信・分岐部102を経由して「印刷不許可」の警告メッセージを送信する。
そのあとステップS1712において、CPU601は、受信・分岐部102に対して、印刷ジョブの番号とともに受信停止の指示を送出する。また、コード化処理プログラム611に対して、コード化処理の停止指示を送出する。そして、受信バッファ120、コード化保存バッファ121から、対応印刷ジョブの受信データ、コード化データをそれぞれ削除する。そして、保存領域122に記憶されている対応印刷ジョブの受信データおよびコード化データを、受信・分岐部102を経由して管理者のPC108に送信する。そのあとで、CPU601は、PC108に送信した受信データおよびコード化データを保存領域122から削除し、管理表615からも対応印刷ジョブの記録を削除する。そのあとは、ステップS1701に戻る。
図18は、本実施形態係る条件検索処理(S1706)の一例を説明するためのフローチャートである。
ステップS1801において、CPU601は、チェック条件に関するデータに含まれるキーワード数を変数nにセットし、変数mに0をセットする。そのあと、ステップS1802に進み、CPU601は、m番目のキーワードについて、コード化保存バッファ121のコード化データを全文検索する。ステップS1803において、CPU601は、当該キーワードが抽出されたかどうかを判定する。抽出された場合は、ステップS1804に進み、CPU601は、そのキーワードについて、印刷ジョブを送信してきたユーザーが印刷を許可されているかどうかを判定する。例えば、あらかじめ各キーワードごとに、許可されているユーザーまたは許可されていないユーザーの識別情報を対応付けたデータベースを作成し、当該データベースを条件保存部106に保存しておくことで、印刷許可/非許可を判定できる。NOであればステップS1805に進み、CPU601は、この印刷ジョブを「印刷不許可」と決定し、このルーチンからリターンする。
ステップS1804においてYESであれば、CPU601は、ステップS1806に進み、コード化データにおいて未だに検索されていない領域があるかどうかを判定する。YESであればステップS1807に進み、CPU601は、検索未済領域において、m番目のキーワードの検索を実行し、ステップS1803に戻る。
ステップS1806においてNO、あるいはステップS1803においてNOであればステップS1808に進み、CPU601は、変数mに1を加える。ステップS1809において、CPU601は、変数mが変数nより小さいなら、ステップS1802に戻って、(m+1)番目のキーワードについて検索を実行する。
ステップS1809においてNOであれば、CPU601は、今回コード化データを検索した範囲に関し当該印刷ジョブを「印刷可」と決定し、このルーチンからリターンする。
以上説明したように第1の実施形態によれば、以下の点で有利と考えられる。
(1)コントローラ部103による印刷処理と、セキュリティーチェック部105によるセキュリティーチェック処理とをほぼ並行して進められるので、極秘文書等の印刷制限と、印刷処理の遅延軽減とを両立させることができる。
(2)セキュリティーチェック部105をコントローラ部103から分離して構成しているため、ソフトウエアおよびハードウエアの観点から、セキュリティーチェック部105をオプションとして製品化することができる。すなわち、既存製品の共通バスへと追加して接続可能なようにセキュリティーチェック部105を構成すれば、既存製品にも本発明を適用できる利点がある。
(3)「印刷不許可」と決定した時点で、印刷不許可と決定された印刷ジョブの受信を中止するようにしたので、ユーザーのパソコン107から無駄に印刷ジョブデータを送信しないようにすることができる。とりわけ、イメージ部分を相当数含んだ印刷ジョブや、数十ページの巨大な文書データの場合には、この効果が顕著になろう。
(1)コントローラ部103による印刷処理と、セキュリティーチェック部105によるセキュリティーチェック処理とをほぼ並行して進められるので、極秘文書等の印刷制限と、印刷処理の遅延軽減とを両立させることができる。
(2)セキュリティーチェック部105をコントローラ部103から分離して構成しているため、ソフトウエアおよびハードウエアの観点から、セキュリティーチェック部105をオプションとして製品化することができる。すなわち、既存製品の共通バスへと追加して接続可能なようにセキュリティーチェック部105を構成すれば、既存製品にも本発明を適用できる利点がある。
(3)「印刷不許可」と決定した時点で、印刷不許可と決定された印刷ジョブの受信を中止するようにしたので、ユーザーのパソコン107から無駄に印刷ジョブデータを送信しないようにすることができる。とりわけ、イメージ部分を相当数含んだ印刷ジョブや、数十ページの巨大な文書データの場合には、この効果が顕著になろう。
[第2の実施形態]
第1の実施形態では、各制御部がそれぞれCPU等を備え、それぞれ独立して動作する構成であった。しかしながら、いくつかの機能部をハードウエア的に統合してもよい。例えば、受信・分岐部102をコントローラ部103に含め、同一のCPU、ROM、RAM、およびローカルバスを用いて動作させてもよい。その場合、ネットワーク接続部もコントローラ部103に付属することになろう。
第1の実施形態では、各制御部がそれぞれCPU等を備え、それぞれ独立して動作する構成であった。しかしながら、いくつかの機能部をハードウエア的に統合してもよい。例えば、受信・分岐部102をコントローラ部103に含め、同一のCPU、ROM、RAM、およびローカルバスを用いて動作させてもよい。その場合、ネットワーク接続部もコントローラ部103に付属することになろう。
同様に、条件保存部106も、セキュリティーチェック部105に含めてもよい。また、極端に言えば、複数のプログラムによるマルチタスク動作によって充分なパフォーマンスが得られるのであれば、コントローラ部103とセキュリティーチェック部105を単一のCPU、ROM、RAM、およびローカルバスを用いて動作させてもよい。
何れの場合でも、印刷処理とセキュリティーチェック処理が、ほぼ並行して実行される点では、第1の実施形態と共通する。
このように、第2の実施形態によれば、上述した制御部をより少ない数のグループにまとめ、当該グループ内においては、CPU、ROM、RAM、およびローカルバス等を共通に利用するようにしたので、第1の実施形態に比較し、CPU等を削減できるため、コストを削減できる利点がある。
[第3の実施形態]
第1の実施形態では、セキュリティーチェック部105の条件チェックプログラム612により、印刷ジョブデータが「印刷不許可」と判断された時点で、受信・分岐部102における印刷ジョブデータの受信を停止し、「印刷不許可」と判断した時点までの受信データとコード化データを管理者に送信するように構成していた。これにより、ユーザーからの無駄なデータの送信を抑制できる利点はあった。しかしながら、この途中までの受信データとコード化データでは、管理者が十分に調査できないことも考えられる。
第1の実施形態では、セキュリティーチェック部105の条件チェックプログラム612により、印刷ジョブデータが「印刷不許可」と判断された時点で、受信・分岐部102における印刷ジョブデータの受信を停止し、「印刷不許可」と判断した時点までの受信データとコード化データを管理者に送信するように構成していた。これにより、ユーザーからの無駄なデータの送信を抑制できる利点はあった。しかしながら、この途中までの受信データとコード化データでは、管理者が十分に調査できないことも考えられる。
そこで、第3の実施形態では、ある印刷ジョブに関してユーザーが送信する印刷ジョブデータをすべて受信してコード化し、「印刷不許可」となった印刷ジョブデータとコード化データをすべて管理者に送信することとした。これによって、管理者は印刷ジョブデータそのものの調査を十分に行なえるようになる。また、「印刷不許可」の印刷ジョブデータを送信した社内ユーザーに対する直接的な対面調査も、充分な根拠に基づいて実行できる利点がある。
なお、第3の実施形態において第1の実施形態と同一または類似の個所は、記載の明瞭化のために省略することとする。なお、同一または類似の個所には同一の参照符号を付す。
図19は、本実施形態に係る印刷システムの応用例を示す図である。図の(1)において、ユーザーは、印刷を行なうためにPC107からプリンタ100に印刷ジョブデータを送信する。(2)において、プリンタ100は、条件チェック処理を実行することにより「印刷不許可」と判断するが、すぐにはユーザーからのデータ受信を停止せず、引き続きすべての印刷ジョブデータを受信し、コード化も完了させる。その時点で、ユーザーPC107に「印刷不許可」の警告メッセージを送信する。(3)において、プリンタ100は管理者のPC108に、「印刷不許可」となった印刷ジョブに関するすべての受信データとコード化データを送信する。(4)において、管理者は、PC108上に印刷ジョブデータおよびコード化データを表示させ、詳細に調査を行なうことができる。また、必要であれば、問題のユーザーに対して、直接的な対面調査を行なうこともできる。その際には、印刷ジョブデータおよびコード化データを印刷出力して、出力結果を証拠として使用してもよい。
なお、全ての印刷権限を有する許可ユーザーとして管理者を登録しておけば、印刷不許可キーワードが含まれているにもかかわらず、プリンタ100は印刷ジョブデータおよびコード化データを印刷出力することができる。
また、印刷不許可の原因(不許可キーワードごとの重要度など)に依存して、プリンタ100は、ユーザーPC107への警告メッセージの送信を省いて、管理者のPC108にのみ上記データを送信してもよい。これにより、管理者は、いきなり問題のユーザーへの直接的な対面調査を実施することが可能となる。
図20は、第3の実施形態に係るコントローラ部103の受信プログラムの動作を説明するためのフローチャートである。図20に示したフローチャートは、図10に示したフローチャートにステップS2005およびステップS2006を追加したものである。
ステップS1002においてNOと判定されると、ステップS2005に進み、CPU501は、印刷ジョブの番号を伴う印刷ジョブデータの受信読み飛ばし指示があったかどうかを判定する。この指示は、指示待機プログラム113から送信されるものとする。判定の結果がYESであればステップS2006に進み、CPU501は、当該印刷ジョブ番号を有する印刷ジョブデータについて、受信の読み飛ばし処理を実行する。
なお、読み飛ばし処理とは、外部からは印刷ジョブデータを受信したように見せる処理のことであり、例えば、受信バッファに受信データを記憶することなく廃棄し、それ以後の印刷処理も実行しない。このように、指示された印刷ジョブの送信が完了するまで、読み飛ばし処理は続行する。印刷ジョブの終了は、印刷ジョブデータの最後に、プリントコマンドの「ジョブ終了コマンド」が付加されているので、容易に判断できる。
ステップS2006のあと、あるいはステップS2005でNOの場合は、ステップS1001に戻る。
図21は、第3の実施形態に係る指示待機プログラムの動作を説明するためのフローチャートである。図13に示した指示待機プログラムと比較し、ステップS1309をS2109に置き換えた点で相異している。
ステップS2109において、CPU501は、受信プログラム510に対し、印刷ジョブ番号を指定した読み飛ばし処理を指示する。さらに、トランスレートプログラム511、ラスタライズプログラム512に対し、それぞれ当該印刷ジョブ番号によって特定される印刷ジョブのトランスレート処理、ラスタライズ処理の停止を指示する。そして、CPU501は、当該印刷ジョブ番号に基づき、受信バッファ110および中間バッファ111に記憶されている印刷ジョブのデータ特定し、それぞれ削除する。
図22は、第3の実施形態に係る条件チェックプログラムの動作を説明するためのフローチャートである。図17に示したステップS1711とステップS1712の部分をステップS2201ないしステップS2205へと変更している。
ステップS1708において「印刷不許可」と判定されると、ステップS2201に進み、CPU601は、指示待機プログラム113に、印刷ジョブ番号とともに「印刷不許可」を通知する。ステップS2202において、CPU601は、コードデータ保存バッファ121から、当該印刷ジョブ番号に対応するコード化データを削除する。ステップS2203において、CPU601は、当該印刷ジョブ番号に対応する印刷ジョブのすべてについて、受信データおよびコード化データデータを保存領域122に保存したかを判定する。すなわち、途中までではなく、最後まで印刷ジョブデータを受信し、コード化も実行する。判定の結果がNOであればステップS2202に戻り、印刷ジョブに関するすべての受信データおよびコード化データデータが保存領域122に記憶されるのを待つ。
ステップS2203においてYESと判定されると、ステップS2204に進み、CPU601は、ユーザーPC107に「印刷不許可」の警告メッセージを送信する。ステップS2205に進み、CPU601は、保存領域122に保存されている「印刷不許可」になった印刷ジョブに関する受信データおよびコード化データを管理者のPC108に送信する。そして、CPU601は、当該受信データおよびコード化データを保存領域122から削除するとともに、管理表615からも印刷ジョブの記録を削除する。そのあとは、ステップS1701に戻る。
以上説明したように、第3の実施形態によれば、ユーザーが送信する印刷ジョブデータをすべて受信し、すべてコード化するようにしたので、「印刷不許可」となった印刷ジョブデータとコード化データをすべて管理者に送付することができる。その結果、管理者は、印刷ジョブデータそのものの調査を十分に行なうことが可能となる。また「印刷不許可」の印刷ジョブを送信した社内ユーザーに対し、充分な根拠(印刷ジョブデータやコード化データ)に基づいて直接的に対面調査を行なうこともできる利点がある。
[第4の実施形態]
上述の実施形態では、印刷ジョブを単位として、コントローラ部103における処理(トランスレート処理、ラスタライズ処理およびページイメージのスプール処理など)と、チェック部105における処理(コード化処理および条件チェック処理)とをほぼ並行して実行していた。とりわけ、印刷ジョブの全ページにわたりセキュリティーに関する問題がなければ、その時点で印刷の実行を指示するように構成していた。
上述の実施形態では、印刷ジョブを単位として、コントローラ部103における処理(トランスレート処理、ラスタライズ処理およびページイメージのスプール処理など)と、チェック部105における処理(コード化処理および条件チェック処理)とをほぼ並行して実行していた。とりわけ、印刷ジョブの全ページにわたりセキュリティーに関する問題がなければ、その時点で印刷の実行を指示するように構成していた。
しかしながら、印刷ジョブの全てにわたってチェックが済むまで、印刷エンジンが待たされてしまう問題がある。すなわち、印刷処理の遅延防止の観点からは、セキュリティーチェックを完了したページについては随時印刷処理を行なった方が、より効果が高いと考えられる。
そこで、第4の実施形態では、印刷ジョブに含まれるページを単位として、印刷の許可/不許可を判定しつつ、印刷出力処理もページ単位で実行するようにした。これによって、第1の実施形態よりも印刷の高速化を図れる。なお、上述の説明と共通する点ついては同一の参照符号を付すことで説明を省略する。
図23は、第4の実施形態に係る指示待機プログラムの動作を説明するためのフローチャートである。
ステップS2302において、CPU501は、セキュリティーチェック部105から、特定ページの印刷の許可/不許可の指示が届いたかを判定する。YESであればステップS2303に進み、CPU501は、管理表515に特定ページの許可/不許可を記録し、ステップS1301に戻る。
ステップS2304においてNOの場合は、ステップS2304に進み、CPU501は、管理表515に印刷許可のページが存在するかを判定する。YESであればステップS2305に進み、CPU501は、そのページのラスタライズが完了しているかを判定する。NOであればステップS1301に戻る。
ステップS2305においてYESであればステップS2306に進み、CPU601は、印刷出力プログラム514に、そのページの印刷を指示し、ステップS1301に戻る。
ステップS2304においてNOの場合は、ステップS2307に進み、CPU501は、管理表515に印刷不許可の印刷ジョブが存在するかを判定する。YESであればステップS2308に進み、CPU501は、そのジョブのラスタライズが完了しているかを判定する。NOであればステップS2309に進み、トランスレートプログラム511およびラスタライズプログラム512に対し、それぞれ、当該印刷ジョブに関するトランスレート処理およびラスタライズ処理の停止をそれぞれ指示する。さらに、受信バッファ110および中間バッファ111に記憶されている当該印刷ジョブのデータを削除する。
ステップS2309のあと、あるいはステップS2308でYESの場合は、ステップS2310に進み、スプール領域112から当該印刷ジョブのページイメージデータを削除し、管理表515からも当該印刷ジョブの記録を削除する。
ステップS2310のあと、あるいはステップS2307でNOの場合は、ステップS1301に戻る。
図24は、第4の実施形態に係る印刷出力プログラムの動作を説明するためのフローチャートである。図14と共通の処理については同一の参照符号を付すことで説明を省略する。ステップS2402において、CPU501は、指示待機プログラム113から特定ページの印刷指示を受信しているか否かを判定する。YESであればステップS1403およびS1404を実行する。
続いて、ステップS2405において、CPU501は、スプール領域112に保持されている当該ページのページイメージデータを連続的にビデオ信号へと変換し、当該ビデオ信号をエンジン部104に送信する。その後、ステップS1406を実行し、ステップS2408に進み、CPU501は、スプール領域112から当該ページのページイメージデータを削除する。また、管理表515から当該ページの記録を削除する。
図25は、条件チェックプログラムの動作を説明するためのフローチャートである。図17と共通する処理については、同一の参照符号を付すことで説明を省略する。
ステップS1708においてYESと判定されると、ステップS2509に進み、CPU601は、コントローラ部103の指示待機プログラム113に、印刷ジョブ番号とページ番号とともに「印刷可」を通知する。なお、この通知は各ページごとに行なわれる。また、印刷指示済みのページに関する記録は管理表615から削除する。
なおコード化データの検索処理が済んでいないページが存在する場合、当該ページを「印刷可」と判定しない。
ステップS2510においてCPU601は、印刷ジョブの検索がすべて終了したかを判定する。YESであればステップS2511に進み、保存領域122から、当該印刷ジョブの受信データおよびコード化データを削除する。また、管理表615からも当該印刷ジョブの記録を削除する。
ステップS2511のあと、あるいはステップS2510でNOの場合は、ステップS1701に戻る。
以上説明したように第4の実施形態によれば、印刷ジョブ内のページを単位として、印刷の許可/不許可を判定しつつ、印刷処理を実行するようにした。したがって、印刷ジョブデータの全体についてセキュリティーチェックが済んでから印刷を開始する場合よりも、印刷開始までの待ち時間を短縮できる利点がある。
[他の実施形態]
以上、様々な実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。例えば、スキャナ、プリンタ、スキャナ、PC、複写機、複合機及びファクシミリ装置の如くである。
以上、様々な実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。例えば、スキャナ、プリンタ、スキャナ、PC、複写機、複合機及びファクシミリ装置の如くである。
なお、本発明は、前述した実施形態の各機能を実現するソフトウェアプログラム(本実施形態では図7ないし25に示したフローチャートに対応するプログラム)を、システム若しくは装置に対して直接または遠隔から供給し、そのシステム若しくは装置に含まれるコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される。
従って、本発明の機能・処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、MO、CD−ROM、CD−R、CD−RW、磁気テープ、不揮発性のメモリカード、ROM、DVD(DVD−ROM,DVD−R)などがある。
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザーに対してダウンロードさせるWWWサーバも、本発明の構成要件となる場合がある。
また、本発明のプログラムを暗号化してCD−ROM等の記憶媒体に格納してユーザーに配布し、所定の条件をクリアしたユーザーに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
Claims (9)
- 印刷エンジンを備えた印刷装置であって、
入力された印刷データを印刷可能なデータへと変換する変換手段と、
前記変換手段による変換処理と並行して、前記印刷データに印刷を禁止されている情報が含まれているか否かを判定する判定手段と、
前記印刷を禁止されている情報が含まれていないと判定されると、前記印刷可能なデータの印刷処理を実行するよう前記印刷エンジンを制御する印刷制御手段と
を含む印刷装置。 - 印刷エンジンを備えた印刷装置であって、
印刷データを受信する受信手段と、
前記受信した印刷データを印刷可能なデータへと変換する第1の変換手段と、
前記第1の変換手段による変換処理と並行して、前記印刷データに印刷を禁止されている情報が含まれているか否かを認識する際に役立つ認識可能データへと、前記印刷データを変換する第2の変換手段と、
前記認識可能データに基づいて、前記印刷データに印刷を禁止されている情報が含まれているか否かを認識する認識手段と、
前記印刷を禁止されている情報が含まれていない場合に、前記印刷可能なデータの印刷処理を実行するよう前記印刷エンジンを制御し、前記印刷を禁止されている情報が含まれていた場合に、前記印刷可能なデータを削除するよう制御する印刷制御手段と
を含む印刷装置。 - 前記印刷制御手段は、前記第1の変換手段における変換処理及び前記印刷エンジンによる前記印刷可能なデータの印刷処理のうち少なくとも一方を停止させる停止手段を含む、請求項2に記載の印刷装置。
- 前記認識手段は、
前記印刷を禁止されている情報を認識するために必要となる基準情報を記憶する記憶手段と、
前記基準情報を参照して、前記認識可能データの中から前記印刷を禁止されている情報を検索する検索手段と
を含む請求項2または3に記載の印刷装置。 - 前記印刷データに前記印刷を禁止されている情報が含まれていた場合に、該印刷データに関するユーザーに対し警告メッセージを出力する警告出力手段をさらに含む請求項2ないし4の何れかに記載の印刷装置。
- 前記印刷データに前記印刷を禁止されている情報が含まれていた場合に、該印刷データ、および、対応する前記認識可能データのうち少なくとも一方を所定のアドレスまたは装置に送信する送信手段をさらに含む請求項2ないし5の何れかに記載の印刷装置。
- 印刷エンジンを備えた印刷装置における印刷方法であって、
入力された印刷データを印刷可能なデータへと変換する変換ステップと、
前記変換ステップによる変換処理と並行して、前記印刷データに印刷を禁止されている情報が含まれているか否かを判定する判定ステップと、
前記印刷を禁止されている情報が含まれていないと判定されると、前記印刷可能なデータの印刷処理を実行するよう前記印刷エンジンを制御する印刷制御ステップと
を含む印刷方法。 - 印刷エンジンを備えた印刷装置における印刷方法であって、
印刷データを受信する受信ステップと、
前記受信した印刷データを印刷可能なデータへと変換する第1の変換ステップと、
前記第1の変換ステップによる変換処理と並行して、前記印刷データに印刷を禁止されている情報が含まれているか否かを認識する際に役立つ認識可能データへと、前記印刷データを変換する第2の変換ステップと、
前記認識可能データに基づいて、前記印刷データに印刷を禁止されている情報が含まれているか否かを認識する認識ステップと、
前記印刷を禁止されている情報が含まれていない場合に、前記印刷可能なデータの印刷処理を実行するよう前記印刷エンジンを制御し、前記印刷を禁止されている情報が含まれていた場合に、前記印刷可能なデータを削除するよう制御する印刷制御ステップと
を含む印刷方法。 - 請求項7または8に記載の印刷方法に関する各ステップをコンピュータ上で実行するための印刷制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003409354A JP2005169672A (ja) | 2003-12-08 | 2003-12-08 | 印刷装置、印刷方法および印刷制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003409354A JP2005169672A (ja) | 2003-12-08 | 2003-12-08 | 印刷装置、印刷方法および印刷制御プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005169672A true JP2005169672A (ja) | 2005-06-30 |
Family
ID=34730764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003409354A Withdrawn JP2005169672A (ja) | 2003-12-08 | 2003-12-08 | 印刷装置、印刷方法および印刷制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005169672A (ja) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007038565A (ja) * | 2005-08-04 | 2007-02-15 | Matsushita Electric Ind Co Ltd | 画像形成装置、画像形成方法およびそのプログラムを記憶した記憶媒体 |
JP2007264916A (ja) * | 2006-03-28 | 2007-10-11 | Dainippon Printing Co Ltd | 印刷管理システムおよびサーバプリンタ |
JP2008141442A (ja) * | 2006-11-30 | 2008-06-19 | Brother Ind Ltd | 画像記録装置、情報処理装置および画像記録システム |
JP2009070337A (ja) * | 2007-09-18 | 2009-04-02 | Fuji Xerox Co Ltd | 情報処理装置、情報処理システムおよび情報処理プログラム |
US8004716B2 (en) | 2006-03-30 | 2011-08-23 | Oki Data Corporation | Image forming apparatus that restricts printing of specific information |
JP2012038144A (ja) * | 2010-08-09 | 2012-02-23 | Ricoh Co Ltd | データ中継装置,画像形成装置,画像形成システム,印刷制御方法,印刷制御プログラム,および記録媒体 |
US8179551B2 (en) | 2007-11-01 | 2012-05-15 | Canon Kabushiki Kaisha | Print control apparatus, print controlling method and medium |
US8228523B2 (en) | 2006-03-27 | 2012-07-24 | Oki Data Corporation | Image forming apparatus |
JP2013244730A (ja) * | 2012-05-29 | 2013-12-09 | Oki Data Corp | 画像形成装置及び画像形成システム |
-
2003
- 2003-12-08 JP JP2003409354A patent/JP2005169672A/ja not_active Withdrawn
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007038565A (ja) * | 2005-08-04 | 2007-02-15 | Matsushita Electric Ind Co Ltd | 画像形成装置、画像形成方法およびそのプログラムを記憶した記憶媒体 |
US8228523B2 (en) | 2006-03-27 | 2012-07-24 | Oki Data Corporation | Image forming apparatus |
JP2007264916A (ja) * | 2006-03-28 | 2007-10-11 | Dainippon Printing Co Ltd | 印刷管理システムおよびサーバプリンタ |
US8004716B2 (en) | 2006-03-30 | 2011-08-23 | Oki Data Corporation | Image forming apparatus that restricts printing of specific information |
US8339628B2 (en) | 2006-03-30 | 2012-12-25 | Oki Data Corporation | Image forming apparatus that restricts printing of specific information |
JP2008141442A (ja) * | 2006-11-30 | 2008-06-19 | Brother Ind Ltd | 画像記録装置、情報処理装置および画像記録システム |
JP2009070337A (ja) * | 2007-09-18 | 2009-04-02 | Fuji Xerox Co Ltd | 情報処理装置、情報処理システムおよび情報処理プログラム |
US8179551B2 (en) | 2007-11-01 | 2012-05-15 | Canon Kabushiki Kaisha | Print control apparatus, print controlling method and medium |
JP2012038144A (ja) * | 2010-08-09 | 2012-02-23 | Ricoh Co Ltd | データ中継装置,画像形成装置,画像形成システム,印刷制御方法,印刷制御プログラム,および記録媒体 |
JP2013244730A (ja) * | 2012-05-29 | 2013-12-09 | Oki Data Corp | 画像形成装置及び画像形成システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7861282B2 (en) | Information processing apparatus, printing apparatus and printing system including thereof apparatuses | |
KR100937785B1 (ko) | 인쇄 잡의 검색 기능을 포함하는 정보 처리 장치, 정보처리 방법, 및 기록 매체 | |
JP4485293B2 (ja) | 情報処理装置、クライアント端末、画像形成装置、データ加工方法およびその方法をコンピュータに実行させるプログラム | |
US8169631B2 (en) | Printing apparatus, information processing apparatus, control method thereof, print management system, and program | |
EP1727349B1 (en) | Recording of history information of input and output jobs of an image processing apparatus | |
JP5113545B2 (ja) | 文書処理システム、文書処理システムの制御方法、プログラム及び記憶媒体 | |
JP2006081119A (ja) | 画像処理装置、画像処理システムおよびその制御方法 | |
JP4890990B2 (ja) | 画像処理装置、その画像処理装置の制御方法およびプログラム | |
US20140240784A1 (en) | Information processing device capable of outputting print data to print device, and control method thereof | |
JP5426843B2 (ja) | 情報処理装置、情報処理方法、プログラムおよびプログラムを格納する記憶媒体 | |
JP2005169672A (ja) | 印刷装置、印刷方法および印刷制御プログラム | |
JP2010003282A (ja) | 画像処理装置、画像処理方法およびそのプログラムならびに記憶媒体 | |
JPH11177788A (ja) | 印刷制御方法および印刷装置 | |
US8144351B2 (en) | Print system, information processing apparatus, and information processing method, including log information | |
JP2007140846A (ja) | データ管理システム及びデータ管理方法 | |
JP2007156619A (ja) | 印刷処理システム、印刷処理方法及びプログラム | |
JP4817968B2 (ja) | 帳票処理装置及び方法 | |
JP4757208B2 (ja) | 情報処理装置およびその制御方法 | |
JP2005309829A (ja) | 文書管理装置および文書管理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体および文書管理プログラム | |
JP5854644B2 (ja) | 画像形成装置、制御方法、及びプログラム | |
JP2009277093A (ja) | 画像処理装置、方法、及び、プログラム | |
JP2007281658A (ja) | データ処理装置、出力装置、画像処理装置、印刷システム、ジョブ処理方法、プログラム | |
JP2004152108A (ja) | 印刷システム | |
JP2006222508A (ja) | 画像形成システム | |
JP6102595B2 (ja) | 印刷ジョブ編集方法、印刷ジョブ編集プログラム、印刷ジョブ編集プログラムを記録した記録媒体、および印刷ジョブ編集システム |
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: 20070306 |