(57)【要約】【課題】  プリンタに出力する印刷データを印刷と並行して、記録装置へ保存する機能を持たないプリンタドライバ及びプリンタを使用し、プリンタドライバの操作手順を変更することなく、印刷データを記録装置に保存する機能を実現することを目的としている。【解決手段】  印刷データを捕そくするプログラムを、オペレーティングシステムと、プリンタドライバの間に介在させ印刷データを取得する。補そくした印刷データから、画像データ、文字データ、線分データ、色情報データ、印刷制御データを抽出し、印刷内容を再現し記録装置への保存やネットワーク上の他の情報処理端末に送信する。さらに、印刷データから抽出した画像データ、文字データ、線分データ、色情報データを編集して、印刷物で使用するインクやトナーの消費量を制御するデータを生成することを特徴とする。【選択図】図２
2008123471.tif 000002
【特許請求の範囲】
【請求項１】
情報処理端末から通信手段を介してプリンタに印刷データを送る印刷システムにおいて、前記情報処理端末内に記憶されるプリンタ制御プログラムであるプリンタドライバへの印刷データを捕そくする機能を特徴とするコンピュータプログラム。
【請求項２】
前記コンピュータプログラムにおいて、捕そくした印刷データの中から、文字データ、画像データ、線分データ、色情報データ、印刷制御データを抽出し、情報処理端末の記録装置に保存する機能を特徴とするコンピュータプログラム。
【請求項３】
前記コンピュータプログラムにおいて、捕そくした印刷データの中から抽出した文字データ、画像データ、線分データ、色情報データ、印刷制御データをネットワークに接続した情報処理端末に送信する機能を特徴とするコンピュータプログラム。
【請求項４】
前記コンピュータプログラムにおいて、捕そくした印刷データの中から抽出した線分データを編集し、印刷物で使用するインクやトナーの消費量を制御するデータを生成する機能を特徴とするコンピュータプログラム。
【請求項５】
前記コンピュータプログラムにおいて、捕そくした印刷データの中から抽出した画像データを編集し、印刷物で使用するインクやトナーの消費量を制御するデータを生成する機能を特徴とするコンピュータプログラム。
【請求項６】
前記コンピュータプログラムにおいて、捕そくした印刷データの中から抽出した色情報データを編集し、印刷物で使用するインクやトナーの消費量を制御するデータを生成する機能を特徴とするコンピュータプログラム。
【請求項７】
請求項１〜６のいずれか一項に記載のコンピュータプログラムを記録した、情報処理端末読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は情報処理端末のオペレーティングシステムを構成する要素のプリンタドライバに関する。
【背景技術】
【０００２】  近年、情報処理端末からの情報漏えい対策を行うシステムにおいて、プリンタから出力する印刷物の管理が課題となっている。一般的なプリンタから出力される印刷物のデータは一過性のもので、印刷が完了すると破棄され保存されない。印刷物の情報漏えい対策の一つとして、プリンタからの印刷物の出力と同時に、印刷データを記憶装置に保存することにより、情報漏えい元の調査や、使用者への情報漏えいに対する注意を喚起するシステムがある。【０００３】  例えば、印刷データの保存機能を持ったプリンタドライバにより印刷データを保存する機能を実現するもの。（特許文献１）
印刷データの保存機能を持ったプリンタドライバとプリンタにより印刷データを保存する機能を実現するもの。（非特許文献１）
プリントサーバに印刷データの保存機能を持ったもの。（特許文献２）
仮想プリンタドライバを使用して、印刷データを保存する機能を実現するもの。（特許文献３、非特許文献２）【０００４】
【特許文献１】  特開２００６−２６０２４３
【特許文献２】  特開２００２−１４９３７１
【特許文献３】  特開２００４−１１８２４３
【非特許文献１】  株式会社リコー社製  ＪＢＰｒｉｎｔ電子カタログ  ５ページ解決２の項  ｈｔｔｐ：／／ｗｗｗ．ｒｉｃｏｈ．ｃｏ．ｊｐ／ｐｄｆ／３４１３１５１２／Ｒｉｄｏｃ＿ＩＯ＿ＪＢＰｒｉｎｔ．ｐｄｆ
【非特許文献２】  株式会社ＦＦＣ社製  ＰｒｉｎｔＢａｒｒｉｅｒ  電子カタログ  ｈｔｔｐ：／／ｗｗｗ．ｉｎｆｏｂａｒｒｉｅｒ．ｃｏｍ／ｐｒｉｎｔｂａｒｒｉｅｒ／ｄｏｗｎｌｏａｄ／ｐｄｆ／ＰｒｉｎｔＢａｒｒｉｅｒＶ３＿ｃａｔａｌｏｇ．ｐｄｆ
【発明の開示】
【発明が解決しようとする課題】
【０００５】  しかしながら上記において、印刷データの保存機能を有するプリンタ、プリンタドライバやプリントサーバを使用する方法（特許文献１、２、非特許文献１）では、使用者が現在所持しているプリンタやプリンタドライバがそのまま使えない。そのため新たに機器を導入する必要がある。導入するプリンタ機器選択の際も保存機能を持つプリンタ、プリンタドライバやプリントサーバに限定されるため、プリンタの機器の選択肢が狭まることとなる。【０００６】  また、従来の仮想プリンタドライバを用いる方法（特許文献４、非特許文献２）では、アプリケーションから見た印刷先は仮想プリンタとなる。アプリケーションから出力した印刷データは仮想プリンタ内部のページ画像メモリに全て展開した後、最終的に印刷物を出力するプリンタのプリンタドライバへ印刷出力することになる。この方法では、使用者が操作するのは仮想プリンタドライバとなり、プリンタドライバの設定画面などの操作がいままで使用していたプリンタと異なるため、使用者に対して不便を強いる。また仮想プリンタドライバの能力がいままで使用していたプリンタより劣る場合、例えばサポートする紙のサイズなどが異なる場合などは、不具合が生じる。加えて、情報漏えいを行おうとする者に対し、仮想プリンタドライバを使っていることを知らしめることとなり、セキュリティホールを発見される恐れもある。【０００７】  本発明は、使用者が現在所持している、印刷データの保存機能のないプリンタドライバ及びプリンタを使用し、プリンタドライバの操作手順を変更することなく、印刷データを記録装置に保存する機能を実現することを目的としている。
本発明を適用することにより、情報処理端末に印刷データの保存機能を追加できるだけでなく、現在使用してるプリンタを買い換える必要もない。さらにプリンタドライバの操作も変更する必要がないことは使用者にとって有用である。
【課題を解決するための手段】
【０００８】  請求項１記載の発明は、オペレーティングシステムから出力される、印刷データを捕そくするプログラムである。捕そくプログラムは、プリンタドライバと同じアプリケーションプログラムインターフェイスを備える。オペレーティングシステム側から見た捕そくプログラムはプリンタドライバとして認識される。オペレーティングシステムから出力される印刷データは、まず捕そくプログラムに入力され、その後プリンタドライバに出力する機能を特徴とする。【０００９】  請求項２記載の発明は、補そくした印刷データから、画像や文字データ、線分データ、色情報データ、印刷制御データを抽出し、印刷内容を再現する方法である。オペレーティングシステムからプリンタドライバへの印刷データをページ画像メモリに展開することにより印刷内容を再現し、画像や文字データとして記録装置に保存する機能を特徴とする。【００１０】  請求項３記載の発明は、補そくした印刷データから抽出した画像や文字データ、色情報データ、線分データ、印刷制御データをネットワークを通じて、ネットワークに接続した他の情報処理端末へ送信することを特徴とする。【００１１】  請求項４記載の発明は、補そくした印刷データから抽出した線分データの中の幅情報に注目し、幅を細くすることにより、印刷物で使用するインクやトナーの消費量を制御するデータを生成することを特徴とする。【００１２】  請求項５記載の発明は、補そくした印刷データから抽出した画像データに対して白黒化、白ピクセルの挿入、縮小を行い、印刷物で使用するインクやトナーの消費量を制御するデータを生成することを特徴とする。【００１３】  請求項６記載の発明は、補そくした印刷データから抽出した色情報データに対して、色の変更を行い、印刷物で使用するインクやトナーの消費量を制御するデータを生成することを特徴とする。【００１４】  請求項７記載の発明は、請求項１〜６のいずれか一項に記載のプログラムが記録された情報処理端末が読み取り可能な記録媒体を最も主要な特徴とする。
【発明の効果】
【００１５】  本発明により、印刷データの保存機能のないプリンタドライバ及びプリンタであっても、印刷データを保存ことが可能となる。加えて、抽出した印刷データの内の画像データや文字データ、線分データ、色情報データを編集することにより、印刷に必要なインクやトナーの消費量を制御する機能も実現する。
【発明を実施するための最良の形態】
【００１６】  以下、本発明の実施例を添付図面に基づいて詳細に説明する。以下に述べる実施例は、本発明の好適な実施例であるから技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。【００１７】  なお、例として現在最も一般的なオペレーティングシステムである、Ｗｉｎｄｏｗｓ（Ｒ）の動作を用いて説明するが、オペレーティングシステムとプリンタドライバが別プログラム構成であり、オペレーティングシステムとプリンタドライバ間のインターフェイスが定められているシステムにおいても本発明の方法は有効である。【００１８】  アプリケーション２、オペレーティングシステム３、プリンタドライバ４、捕そくプログラム６は情報処理端末１で動作する。アプリケーション２はオペレーティングシステム３の印刷描画命令を使うものであれば種類を問わない。Ｗｉｎｄｏｗｓ（Ｒ）においては印刷描画命令はグラフィックデバイスインターフェイス、略してＧＤＩとして提供されている。プリンタドライバ４はプリンタ５を制御するプログラムであり、プリンタ５に対してプリンタドライバ４は対の関係となっている。【００１９】  図１は、本発明を適用しない場合の、アプリケーション２からの印刷操作が、プリンタ５に伝わるまでの処理である。印刷データがどのように処理されるかを番号順に説明する。
（１）まず、アプリケーション２が印刷を開始する。印刷は使用者の操作などにより開始する。アプリケーション２はオペレーティングシステム３の印刷描画命令を使い、印刷内容の描画を行う。
（２）オペレーティングシステム３はアプリケーション２から受け取った印刷描画命令を解析し、プリンタドライバ４に印刷データを出力する。
（３）プリンタドライバ４はオペレーティングシステム３から送付された印刷データを解析し、プリンタ５に対してページ記述言語データを出力する。通常、ページ記述言語はプリンタ独自の言語体系となっている。ページ記述言語としては、ＰｏｓｔＳｃｒｉｐｔ、ＨＰ−ＰＣＬ、ＬＩＰＳ、ＥＳＣ／Ｐａｇｅ、ＰＲＥＳＣＲＩＢＥなどが代表的である。
（４）プリンタ５はプリンタドライバ４からページ記述言語データを受け取り、印刷物を出力する。【００２０】  図２は本発明を適用した場合の処理の、アプリケーション２からの印刷操作が、プリンタ５に伝わるまでの処理内容である。印刷データがどのように処理されるかを番号順に説明する。
（１）アプリケーション２が印刷が開始する。
（２）オペレーティングシステム３は印刷処理を行う。アプリケーション２から受け取った印刷描画命令を解析し、捕そくプログラム６に印刷データを出力する。
（３）捕そくプログラム６は印刷データを解析して、描画データの場合は、内部のページ画像メモリに描画を行う。また文字データの場合はこれを保存する。同時に、印刷データをプリンタドライバ４に出力する。
（４）補そくプログラム６から出力された印刷データはプリンタドライバ４へ入力される。プリンタドライバ４はプリンタ５に対してページ記述言語データを出力する。
（５）プリンタ５はプリンタドライバ４からページ記述言語データを受け取り、印刷物を出力する。
以上のように、捕そくプログラム６を経由することにより、印刷データの取得が可能となる。【００２１】  次に捕そくプログラム６の設定方法と詳細な動作について説明する。
図２で示した処理を実現するために、捕そくプログラム６をオペレーティングシステム３とプリンタドライバ４の間に設定する方法について説明する。【００２２】  オペレーティングシステム３はアプリケーション２からの印刷描画命令で印刷を開始すると、印刷先のプリンタ５に対応するプリンタドライバ４のパス名を設定ファイルから検索する。Ｗｉｎｄｏｗｓ（Ｒ）の場合の設定ファイルは、レジストリファイルとなる。【００２３】  オペレーティングシステム３は設定ファイルの記述内容からプリンタドライバ４のパス名を取得し、メモリ上にロードしてプリンタドライバ４を実行可能な状態にする。そこで、オペレーティングシステム３が設定ファイルを読み込む前に、パス名を捕そくプログラム６のパス名に書換えておく。すると、オペレーティングシステム３が印刷を開始すると、捕そくプログラム６が読み込まれることとなる。捕そくプログラム６はオペレーティングシステム３に読み込まれた後、書換え前のパス名に存在するプリンタドライバ４をメモリ上にロードし実行可能な状態にする。【００２４】  オペレーティングシステム３とプリンタドライバ４との間のインターフェイスは、オペレーティングシステム３の仕様として決められている。Ｗｉｎｄｏｗａ（Ｒ）の場合は、デバイスドライバインターフェイス（以下ＤＤＩと略す）がこれに当たる。【００２５】  捕そくプログラム６はＤＤＩインターフェイスを実装している。ＤｒｖＴｅｘｔＯｕｔ、ＤｒｖＢｉｔＢｌｔ、ＤｒｖＬｉｎｅＴｏなどの描画関数、ＤｒｖＳｔａｒｔＰａｇｅ、ＤｒｖＥｎｄＰａｇｅなどの印刷制御関数など、主要な関数は全て実装している。以上の実装と、捕そくプログラム６が出力データを経由することにより、オペレーティングシステム３から見た捕そくプログラム６は、プリンタドライバ４と認識される。【００２６】  以上の方法により、オペレーティングシステム３が捕そくプログラム６を呼び出すことが可能となる。その結果、図３のように、例えば、オペレーティングシステム３がＤｒｖＴｅｘｔＯｕｔという関数を呼び出すと、捕そくプログラム６のＤｒｖＴｅｘｔＯｕｔが呼び出され、捕そくプログラム６を経由してプリンタドライバ４のＤｒｖＴｅｘｔＯｕｔが呼び出されることとなる。【００２７】  プリンタドライバ４の設定画面など、プリンタドライバ４の操作を行う印刷制御データの場合も、捕そくプログラム６を経由して、プリンタドライバ４が処理を行うので、オペレーティングシステム３使用者は本発明適用前の操作方法でプリンタドライバ４が使用可能となる。使用者が操作する画面からは、本発明を適用しているか、適用していないかが判別できない。したがって使用者にプリンタドライバ変更に伴う余計な負担を与えないばかりでなく、情報漏えいを画策している者に手がかりを与えないので、セキュリティ上好ましい。【００２８】  次に、図４を用いて、捕そくプログラム６内部の詳細な動作について説明する。
オペレーティングシステム３からの印刷データは、インターフェイスの仕様に基づき、捕そくプログラム６の各関数に入力される。（Ｓ０１）ＤＤＩの場合、機能別に、テキストの出力の関数はＤｒｖＴｅｘｔＯｕｔ、画像の転送はＤｒｖＢｉｔＢｌｔ、線分の描画はＤｒｖＬｉｎｅＴｏ、ページの開始はＤｒｖＳｔａｒｔＰａｇｅ、ページの終了はＤｒｖＥｎｄＰａｇｅなどが代表的な関数である。【００２９】  印刷データがページの開始命令、ＤＤＩの場合はＤｒｖＳｔａｒｔＰａｇｅであった場合（Ｓ０２）ページ画像メモリを初期化する。（Ｓ１０）ページ画像メモリは捕そくプログラム６上に存在する。印刷するページサイズ、解像度から大きさを算出、メモリを確保し初期化する。【００３０】  描画データ、ＤＤＩの場合はＤｒｖＴｅｘｔＯｕｔ、ＤｒｖＢｉｔＢｌｔ、ＤｒｖＬｉｎｅＴｏなどであった場合（Ｓ０３）、ページ画像メモリに描画を行う。（Ｓ１１）描画データは主に、文字の描画、線分の描画、画像の描画などである。【００３１】  ＤｒｖＴｅｘｔＯｕｔであった場合、印刷データの中がら、文字データを取り出し、記録装置に保存する。さらに位置情報、色情報も参照し、ページ画像メモリに文字の描画を行う。
ＤｒｖＢｉｔＢｌｔであった場合、印刷データの中がら、ビットマップ画像を取り出し、位置情報を参照し、ページ画像メモリにビットマップ画像の描画を行う。
ＤｒｖＬｉｎｅＴｏであった場合、印刷データの中から、線分情報、位置情報を参照し、ページ画像メモリに線分の描画を行う。【００３２】  ページ終了データ、ＤＤＩの場合はＤｒｖＥｎｄＰａｇｅであった場合（Ｓ０４）、ページ画像メモリの内容を読み取り、記憶装置に保存する。（Ｓ１２）保存する際に、保存の日時、ページ数などの属性情報をあわせて保存してもよい。【００３３】  保存したデータを他のアプリケーションプログラムでも処理可能な形で保存すると、保存データを使用した印刷履歴を管理するシステムに利用可能である。保存先をデータベースにして、保存の日時、ユーザ名を検索キーにすると印刷済みの印刷データを抽出するシステムに利用可能である。ページ画像メモリの内容を画像ファイル、例えばＪＰＥＧファイルに保存し、そのＪＰＥＧファイルを蓄積すると、過去の印刷内容を再印刷可能なアプリケーションプログラムに利用可能である。【００３４】  なお、上記説明では印刷データを記録装置に保存する場合について説明したが、ページ画像メモリの内容をネットワークなどの通信手段を用いて、他の情報処理端末に送信しても良い。【００３５】  全ての印刷データは、捕そくプログラム６を経由して、プリンタドライバ４にも出力する。（Ｓ０６）プリンタドライバ４は図１のオペレーティングシステム３から呼び出された場合と同様に印刷データを受け取るので、プリンタドライバ４を何ら修正することなく印刷を行うことができる。【００３６】  プリンタドライバ４に出力する際に、節約モード設定が有効の場合（Ｓ０５）は、プリンタドライバ４に出力する印刷データに編集を行う。（Ｓ１３）節約モードは、出力データの描画データの編集を行うことにより、インクの使用量を制御する効果をもたらす。【００３７】  節約モードの詳細を図５を用いて説明する。
線分データであれば（Ｓ１０２）線分の幅情報を細くする。（Ｓ１１０）これにより、線の描画にかかるインクの消費量を減らすことができる。例えば幅１０ドットの線を１ドットにすることにより、単純計算で１／１０のインク使用量の削減となる。線分の幅を細くしても印刷物の大まかなレイアウトは変わらないため、確認のための印刷などに用いる。【００３８】  画像データであれば（Ｓ１０３）白黒画像への変換（Ｓ１１１）を行うことにより、黒以外のカラーインクの消費量を減らすことができる。黒以外のカラーインクが不足している場合などに有効である。【００３９】  また、画像中のピクセルを等間隔または、全てを白ピクセルと置き換えることにより、インクの消費量を減らすことができる。多くのプリンタの場合、白は紙の色となるのでインクを消費しない。【００４０】  さらに、画像を印刷した際に判別できる程度に縮小することにより、印刷される面積が減り、インクの消費量を減らすことができる。印刷物の文字データを読むだけの用途で印刷する時など、画像が重要でない場合は画像の縮小や白ピクセルを増やすなどを行えば、インクの節約になる。【００４１】  例えば横１００ピクセル縦１００ピクセルが全て黒ピクセルの画像に対して、縦横１ドットおきに白ピクセルと置き換えると、黒ピクセルの数が半減するので、５０％のインクの節約となる。横１００ピクセル縦１００ピクセルの画像を横５０ピクセル縦５０ピクセルに縮小すると、印刷される面積は２５％になるのでインクも２５％の節約となる。【００４２】  色情報データであれば（Ｓ１０４）カラーの色を白黒のグレー値にする（Ｓ１１２）ことにより、黒以外のカラーインクの消費量を減らすことができる。カラーの印刷物が必要ない場合などに用いる。また重要な文字や画像を印刷する際に、目立つ色に変更して印刷することもできる。例えば、”機密文書”の文字がある場合、アプリケーション２では黒色の印刷描画命令を出力したが、捕そくプログラム６で赤色に変更して出力することができる。
以上の節約モードはトナーを使用するプリンタにも有効である。
【図面の簡単な説明】
【００４３】
【図１】本発明を適用しない場合の図である。
【図２】本発明を適用した場合の図である。
【図３】オペレーティングシステム、捕そくプログラムとプリンタドライバの関係図である。
【図４】捕そくプログラムの内部動作を表す図である。
【図５】節約モードの動作を表す図である。
【符号の説明】
【００４４】１      情報処理端末
２      アプリケーション
３      オペレーティングシステム
４      プリンタドライバ
５      プリンタ
６      捕そくプログラム
【図１】
2008123471.tif 000003
【図２】
2008123471.tif 000004
【図３】
2008123471.tif 000005
【図４】
2008123471.tif 000006
【図５】
2008123471.tif 000007