(57)【特許請求の範囲】
【請求項１】
Ｊａｖａコマンドの系列として印刷要求を受信させるよう構成された第１の手段と、
上記Ｊａｖａコマンドの系列を画像にラスタ化させるよう構成された第２の手段と、
上記画像を記録媒体に出力させるよう構成された第３の手段とを有し、
前記印刷要求に係る複数の機能について並列的に処理を行うことを特徴とするプリンタ。
【請求項２】
上記第３の手段は、ページコマンドの終わりを受信させ、上記ページコマンドの終わりを受信した後、上記画像を出力させるよう構成された第４の手段を含むことを特徴とする請求項１記載のプリンタ。
【請求項３】
プリンタ制御インタフェースの要求を受信させるよう構成された第５の手段と、
上記プリンタ制御インタフェースを遠隔コンピュータに送信させるよう構成された第６の手段と、
上記プリンタ制御インタフェースの送信に応答して、プリンタ制御パラメータの系列を受信させるよう構成された第７の手段と、
上記プリンタ制御パラメータの系列に基づいて制御メモリを更新させるよう構成された第８の手段とを有することを特徴とする請求項１又は２記載のプリンタ。
【請求項４】
上記第８の手段は、上記遠隔コンピュータの識別に基づいて上記プリンタ制御パラメータの系列を上記プリンタの上記制御メモリに記憶させるよう構成された第９の手段を含むことを特徴とする請求項３記載のプリンタ。
【請求項５】
上記第８の手段は、上記遠隔コンピュータのインターネットアドレスに基づいて上記プリンタ制御パラメータの系列を上記プリンタの上記制御メモリに記憶させるよう構成された第９の手段を含むことを特徴とする請求項３記載のプリンタ。
【請求項６】
印刷されるべき文書の初期レイアウトを作成させるよう構成された第５の手段と、
上記初期レイアウトを遠隔コンピュータに送信させるよう構成された第６の手段と、
上記初期レイアウトがページ中で分割されるべき場所を示す丁付け指標を受信させるよう構成された第７の手段と、
上記初期レイアウトに対する上記丁付け指標によって示された通り上記ページを印刷させるよう構成された第８の手段とを有することを特徴とする請求項１又は２記載のプリンタ。
【請求項７】
待機中の印刷要求を追跡させるよう構成された第５の手段と、
上記待機中の印刷要求を第１の遠隔コンピュータに送信させるよう構成された第６の手段と、
上記第１の遠隔コンピュータからコマンドを受信させるよう構成された第７の手段と、
上記第７の手段によって受信させられた上記コマンドに基づいて印刷の順序を制御させるよう構成された第８の手段とを有することを特徴とする請求項１又は２記載のプリンタ。
【請求項８】
上記第５の手段は、上記各待機中の印刷要求を順番に発した遠隔コンピュータの指標によって待機中の印刷要求を追跡させるよう構成された第９の手段を含むことを特徴とする請求項７記載のプリンタ。
【請求項９】
上記第６の手段は、特定の指標を有する第２の遠隔コンピュータによって発せられた上記待機中の印刷要求だけを送信させるよう構成された第１０の手段を含むことを特徴とする請求項８記載のプリンタ。
【請求項１０】
上記第７の手段は、１）待機中の印刷要求の抹消、２）待機中の印刷要求の停止、３）待機中の印刷要求の再開、及び、４）待機中の印刷要求の優先度の変更の中の少なくとも一つを受信させるよう構成された第９の手段を含むことを特徴とする請求項７記載のプリンタ。
【請求項１１】
上記第６の手段と共に動作し、上記プリンタの状態を上記第１の遠隔コンピュータに送信させるよう構成された第９の手段を更に有する請求項７記載のプリンタ。
【請求項１２】
上記第９の手段は、１）トナー状態、２）ページジャム状態、３）用紙ジャム状態、及び、４）印刷されたページ数の中の少なくとも一つを送信させるよう構成された請求項１１記載のプリンタ。
【請求項１３】
上記第６の手段と共に動作し、対話型ヘルプを上記第１の遠隔コンピュータのユーザに提供するよう構成された第９の手段を更に有する請求項７記載のプリンタ。
【請求項１４】
上記第７の手段はＪａｖａアプレットを含む請求項７記載のプリンタ。
【請求項１５】
待機中の印刷要求を印刷させるよう構成された第９の手段を更に有し、
上記、第７、第８及び第９の手段は、マルチタスク機能を用いて並行に実行される、請求項７記載のプリンタ。
【請求項１６】
待機中の印刷要求を印刷させるよう構成された第９の手段を更に有し、
上記、第７、第８及び第９の手段は、単一のプロセッサ上の夫々のスレッドのマルチタスク機能を用いて並行に実行される、請求項７記載のプリンタ。
【請求項１７】
第２の遠隔コンピュータからコード更新情報を受信させるよう構成された第９の手段を更に有する請求項７記載のプリンタ。
【請求項１８】
第２の遠隔コンピュータからフォントをダウンロードさせるよう構成された第９の手段を更に有する請求項７記載のプリンタ。
【請求項１９】
状態レポートをシステム管理者に定期的かつ自動的に送信させるよう構成された第９の手段を更に有する請求項７記載のプリンタ。
【請求項２０】
上記第８の手段は、プリンタパラメータの系列をデータベースに格納させるよう構成された第９の手段を含む、請求項３記載のプリンタ。
【発明の詳細な説明】
発明の背景
発明の分野
本発明は、画像のラスタリング制御及び印刷制御のためJave言語を使用するプリンタ又はプリンタシステムに関する。
背景の説明
インターネットは爆発的に普及し始め、多数の新技術がこの普及に遅れないように開発されている。従来、アプリケーションを迅速に開発するため、アプリケーション開発者は、多数のハードウェア及びソフトウェアのプラットフォーム用のアプリケーションを作成する専用化されたクロス・プラットフォームアプリケーション開発技術を使用したいと考えている。例えば、オペレーティングシステム（すなわち、Solaris, Windows 95, Windows 3.x, OS/2, UNIX）は、アプリケーション及び実行可能ファイルを別々に作成し、種々のプロセッサタイプ（Intelプロセッサ, 680x0, Power PC, Sun SPARC）に実装されている。全てのオペレーティングシステム及びハードウェアの組合せに対するアプリケーションを開発することは困難であり、かつ、製品開発サイクルを長期化する。クロス・プラットフォーム開発を高速かつ容易に行うためサン・マイクロシステムズは、オブジェクト指向でありながら簡単な言語であるＪａｖａと称される言語を開発した。Java言語は、参考のため引用したDavid Flannagan,“Java in a Nutshell: A Desktop Quick Reference for Java Programmers”, O'Reilly & Associates, Inc.、並びに、Prenrice Hall Booksから出版されたサン・シリーズの刊行物であるCornell著の“Core Java”、Pew著の“Instant Java”、Jackson著の“Java by Example”及びVan Der Linden著の“Just Java”に記載されている。Java言語の一つの利点は、オペレーティングシステム及びハードウェアのアークテクチャから独立した移植可能言語であることである。また、Java言語を使用して開発されたアプリケーションは、新しいクラスを動的にダウンロードし、ダウンロードされたクラスを既存のクラス階層に追加することができるＪａｖａ言語の能力を用いて適合又は拡張可能である。Java言語によれば、流通、言語翻訳、セキュリティ、高性能及びマルチ・スレッド(thread)実装について利点が得られる。
Java言語は、拡張可能なオブジェクトの集合を用いてアプリケーションを記述することが可能であり、このオブジェクトの各集合はパッケージと称されるオブジェクトの別個のグループ内に定義される。Java言語用のオブジェクトのコア集合は、java.langパッケージに定義され、Java言語の最も中心的な特徴を表す。Java言語の一つの利点は、Javaが使用する文字型が、Java言語を用いて作成されたアプリケーション又は文書中で英語及びアジアの言語の文字を整合的に同時に表現できるUnicode標準であることである。
文書がプリンタに現れるとき、他の言語が文書のレイアウトを表現するため使用されている。アドベ(Adobe）のPostScript言語は、同一ページのテキスト及びグラフィックスを支援する拡張可能ページレイアウト言語である。PostScript言語のある局面は、参考のため引用したHenry McgiltonとMary Campioneによる“PostScript by Example”, Addison-Wesley Publishing Companyに記載されている。PostScript言語は、言語を拡張するためスタック及び辞書を使用する。一部のPostScript対応型プリンタは、プリンタ用のコンフィギュレーション情報を格納するため使用される不揮発性メモリが具備されている。しかし、PostScript言語は、堅固なセキュリティ特徴が欠けているので、プリンタの不当なユーザが不揮発性メモリに格納されたパラメータを更新することが可能であり、これによって、ネットワーク環境内のプリンタのユーザが妨害される。
Hewlett-PackwardのPCL言語のような他のプリンタ言語は、単方向、ドットマトリクス式プリンタから進化したので、画像のページ上の配置を制御する多数の演算子が不足する。また、PCL言語はモジュール性がない。PCL言語によって定義されたマクロは、この言語よって定義された他のマクロの性能に影響を与える可能性のある大域変数を使用する。
従来、ホストシステムから印刷する全てのアプリケーションは、内部文書フォーマットをPostScript又はPCLに変換し、変換された文書を、接続されたプリンタの仕様で動作するように設計されたプリンタドライバを使用してプリンタにダウンロードする必要がある。特徴及び／又はバグの集合が少しずつ相違する多数のプリンタが使用される可能性があるので、従来、エンドユーザは特定のプリンタに対するプリンタドライバだけを実際に必要とするにもかかわらず、多数のプリンタドライバがアプリケーションと共に提供されている。
その上、従来の印刷技術を用いる場合、使用されるプリンタドライバの不注意の変更によって、プリンタは、ページをレイアウトすべき形式を記述する命令を翻訳し、翻訳して得られた画像を描くのではなく、その命令を印刷することがある。また、ダウンロード可能なフォントをサポートするプリンタの場合、フォントのダウンロードは、プリンタのＲＡＭ、ＲＯＭフォントカートリッジ、又は、付属ハードディスクへのダウンロードに制限されることが多い。
このアプリケーションとプリンタドライバの相互作用のモデルは、プリンタの柔軟性の不足及び限定された通信機能のため、アプリケーションとの通信の際にエンドユーザによってなされる作業量を増加させる。
発明の概要
本発明の目的は、プリンタ言語の実装の際に生じる上記の少なくとも一つの欠点を解決することである。
本発明の別の目的は、ページレイアウト要求を翻訳するためJava言語を使用するプリンタを提供することである。
本発明の別の目的は、ユーザがページ又は一連のページがどのようにレイアウトされるべきかを定義できるようにアプリケーション又はプリンタドライバとJava対応型プリンタとの間に双方向通信を提供することである。
本発明の別の目的は、本発明のJava対応型プリンタを制御するワールド・ワイド・ウェブ形のインタフェースを提供することである。
本発明の別の目的は、改良型プリンタを実現するため、Java言語特有のオブジェクト指向、流通、翻訳、セキュリティ、アーキテクチャ及び中立性、移植可能性、性能、マルチスレッド性、並びに、動的ローディングの特徴を使用することである。
【図面の簡単な説明】
本発明と本発明の付随的な利点は、添付図面と関連させ付けて以下の詳細な説明を参照することによってより良く理解され、完全に認められよう。図面中、
図１は本発明の第１の実施例によるJava対応型プリンタシステムの配置図であり、
図２は本発明の第２の実施例によるJava対応型プリンタシステムの概要図であり、
図３は本発明のJava対応型プリンタのコンフィギュレーション設定するウェブ・ブラウザ・インタフェースの概要図であり、
図４及び５は、本発明のJava対応型プリンタを用いる印刷を制御するキューマネージャの概要図であり、
図６は、Java対応型プリンタに送信された文書の丁付けを制御するため使用されるウェブブラウザにおけるJavaアプレットの概要図であり、
図７は、キューマネージャアプレットがロード、実行されるべきJava互換ワールド・ワイド・ウェブ・ブラウザを識別するため使用されるＨＴＭＬ文書の概要図であり、
図８は、レターヘッドへの印刷を実現するためJava言語のプリンタクラスを拡張するクラスの概要図である。
好ましい実施例の詳細な説明
以下、添付図面を参照する。図面中、同じ参照番号は同一若しくは対応した部品を示す。図１は本発明のJava対応型プリンタシステムのレイアウト図である。従来のレーザプリンタ１００は、高速通信リンク１０６（例えば、ＳＣＳＩバス）を介してプリントサーバ１０２に接続され、プリントサーバ１０２は、ネットワークリンク（イーサネット、トークンリング、ＡＴＭ）、ＩＳＤＮコネクション、或いは、モデムコネクションでもよい外部通信リンク１０４を介してジョブを受信する。プリントサーバ１０２は、Javaインタープリタを実行することが可能であり、特に、少なくとも中央処理ユニット（ＣＰＵ）と、ランダムアクセスメモリ（ＲＡＭ）と、大容量記憶装置（例えば、ハードディスク、磁気光学式ディスク）と、入力装置（例えば、マウス、キーボード、ヘッドアップディスプレイ、仮想現実用ヘッドセット）とを含むいかなる汎用コンピュータシステムでも構わない。また、プリントサーバ１０２は、入手可能な商業的オペレーティングシステム（例えば、UNIX, Windows 95, Windows NT, OS/2, Linux）と、ネットワーク又はインターネット通信を実現するため必要とされる他のソフトウェアとを含む。
第１の実施例において、Java対応型印刷要求は、指定されたポート（たとえば、ハイパーテキスト転送プロトコル用のポート８０）上のソケットリスニングを通じて外部通信リンク１０４を経由してプリントサーバ１０２によって受信され、プリントサーバ１０２は、Java要求から受信された印刷要求を付属したレーザプリンタ１００のプリンタ言語で、付属したレーザプリンタ１００用のプリンタ要求に変換する。また、プリントサーバ１０２は、標準ハイパーテキスト転送プロトコル（ＨＴＴＰ）要求を受信し、その結果としてワールド・ワイド・ウェブ（ＷＷＷ）ページを生成し、或いは、ＨＴＴＰ要求がシステム管理者又は権限のあるユーザから送信された場合にはレーザプリンタ１００のコンフィギュレーションを更新し得る。
図２に示される如く、レーザプリンタ１００、プリントサーバ１０２及び通信リンク１０６は、外部通信リンク１０４に接続されたJava対応型プリンタ１１０である一台のネットワークプリンタに組み合わせることが可能である。第２の実施例において、Java対応型プリンタ１１０は、適当なポートを傾聴することにより印刷要求又はＷＷＷ／ＨＴＴＰ要求を直接受信する。Javaはアーキテクチャ上中立であるため、Java対応型プリンタ１１０及び対応したクラスの生成は、新しいプロセッサが利用できるようになったとき、新しいレーザプリンタで使用される新しいプロセッサに迅速に移植又は移すことができる。また、Java言語Unicode命令を直接実行するJava対応型プロセッサが利用できるようになったとき、Java対応型プリンタ１１０はJava対応型プロセッサを用いて実現することが可能である。Java対応型プリンタ１１０は、Java仮想マシン仕様書（Java Virtual Machine Specification）に準拠しなければならない。１９９５年８月２１日付けのＪＶＭ仕様書リリース１．０ベータ案バージョンを参考のため引用する。
Javaは、PostScript及びPCLに匹敵する豊富なグラフィックス演算子の集合を有し、また、拡張性のあるオブジェクト指向言語であるため、既存のグラフィックスプリミティブのサブクラスである新しい複雑なグラフィックス演算子を生成し、これにより、複雑な画像をコンパクトに記述できるようになる。本発明は、ページ上での画像の描写を制御するため、新クラスPrinterを実装することによりjava.awtパッケージのグラフィックスクラスを拡張する。グラフィックスクラスの他の各メソッドは、カラー及びフォントの変更が行え、かつ、線と塗りつぶし若しくは中空の多角形とを描写できるように同様に実装される。例えば、java.awt.Printer.drawString(msg, x, y)を呼び出すことにより、文字列“msg”はページ上の位置(x,y）に描写される。Printerクラスは、PostScriptの“show page”コマンドと類似した、ページ全体が描かれ、得られた画像がJava対応型レーザプリンタ１１０に転送されるべきことを通知する関数を実現する。また、Java言語の組込型セキュリティ、ネットワーク性能及び多言語性に基づいて、Java対応型プリンタは多数の言語の異なるプラットフォームからの入力を処理し、所望の文書を作成することが可能である。
図３に示される如く、Java対応型プリンタ１１０のコンフィギュレーション設定を行おうとするシステム管理者は、Java対応型プリンタ１１０のコンフィギュレーションを遠隔的に設定するため、標準ＷＷＷブラウザ（例えば、Netscape Navigator, Mosaic, Microsoft Navigator, IBM Web Explorer）を使用可能である。ウェブブラウザ画面１２０は、タイトルバー１２２と、メニューバー１２４と、ボタンアイコン１２６と、文書識別テキスト入力ボックス１２８と、コンフィギュレーションが設定され得るインターネットコネクションのリストを収容するドロップボックス１３０のような複数の付加的コントロールとを含む。システム管理者は、利用可能なセキュリティ技術（例えば、機密ソケットレイヤ、公開鍵暗号化、対称鍵暗号化、又は、ユーザＩＤ及びパスワードハッシュ）を用いてJava対応型プリンタ１１０に対し本人であることを証明する。ここで、公開鍵、秘密鍵、又は、有効ユーザＩＤ及びパスワードハッシュはJava対応型プリンタ１１０の不揮発性メモリ若しくはJava対応型プリンタ１１０が安全に通信することができる遠隔ローカルに格納される。本人認証した後、システム管理者は、テキスト入力ボックス１２８の適当なＵＲＬ、例えば、http://printer1.companyname.com/configureを指定することによってプリンタ１のコンフィギュア文書を、オープンすべき文書として選択する。
適切なポートを監視しているJava対応型プリンタ１１０がこの文書に対する要求を受信したとき、Java対応型プリンタ１１０は要求の残りの部分から要求された文書の名前を解析し、システム管理者が特定のユーザのためプリンタのコンフィギュレーションを設定しようとしていることを判定する。（ＨＴＴＰ要求又は応答の完全なフォーマットの仕様は、ＨＴＴＰ標準（バージョン１．１又は１．０）に記載されている。ＨＴＭＬに関する情報は、Musciano及びKennedyによる“Using HTML: The Definitive Guide”に記載され、インターネット情報サービスに関する情報は、Liu他による“Managing Internet Information Services”に記載されている。これらの文献の内容は参考のため引用される。）文書に対する要求に応答して、Java対応型１１０は、要求を送信するため使用されるソケットを介してブラウザに、図３に参照番号１３１を付して示されたページのような応答を返送する。Java対応型プリンタ１１０は、デフォルトの応答を変更すべきがどうかを判定するため要求中の他の情報を使用する。この応答は、システム管理者の自国語のテキスト、又は、類似した言語／文化的変更を含むよう変更しても良い。システム管理者は、複合ボックス１３０からのインターネット番号を選択することにより、そのコンフィギュレーションが何れのユーザのインターネット番号に対するものであるかを選択することができる。当業者に明らかなように、複合ボックスは多数のインターネットアドレスに対する多数のコンフィギュレーションが同時に設定され得るように選択ボックスによって置き換えても良い。返送されたページ１３１によって、システム管理者は、Ａ４用紙、８．５×１１用紙又は法定寸法用紙を選択するラジオボタンの中の一つを選択することによって用紙サイズを確定することができる。また、デフォルトトレイが指定された場合、システム管理者は、レターヘッド用紙若しくは白紙を選択することができる。
また、本発明に関して当業者に明らかなように、上記パラメータの他に図３に示されるように付加的な値を設定することができる。実際上、プリンタ上のボタンによって通常設定される任意のパラメータが標準ＷＷＷインタフェースを用いて設定され得る。さらに、プリンタ上のＬＣＤ画面を用いて容易に表示できないオンライン情報は、ハイパーテキストリンク１３４を選択することによって与えられる。このヘルプ情報は、ローカルヘルプ、又は、Java対応型プリンタ１１０の製造元のＷＷＷサイトに記憶されるような遠隔的に格納されたヘルプの何れを指示してもよい。
また、Java対応型プリンタ１１０、又は、プリントサーバ１０２及びレーザプリンタ１００の組合せは、印刷、或いは、最新情報のプリンタコードへのローディングのようなJava対応型プリンタ１１０の動作の変更のため、他のウェブサイトから文書若しくは文書の一部を受け取るよう動的に外部通信リンク１０４を利用することができる。Java対応型プリンタ１１０は、フォントが必要になったとき、遠隔地からフォントをダウンローディングするため外部通信リンク１０４を使用することができる。フォント、変更又は他の情報をダウンロードするため、Java対応型プリンタ１１０は、内蔵されたJavaパッケージによって実現された転送プロトコル、例えば、HTTP, FTP, Gopher等を使用することができる。情報を獲得すべき場所のURLを指定し、java.net.getContent(）メソッドを使用することにより、情報が文字列Stringとして受信される。その上、新しい、即ち、以前に実装されていないプロトコルに対し、java.net.URLConnectionオブジェクトが、新しい文書型を受信、解析するため使用される。上記の通り、これにより、フォントを使用するためＲＡＭ、ＲＯＭ若しくはハードディスクに予めフォントをロードする必要があるPostScript対応型プリンタに対する利点が得られる。以下の表１は、HP/PCL及びPostScriptを使用する代わりにJavaを使用する利点の一部が示されている。
0003695595.tif 000002
図４に示される如く、Java対応型プリンタ１１０は、標準ＷＷＷインタフェース１２０を使用してJava対応型プリンタ１１０を制御し得るキューマネージャを用いて付加的にコンフィギュレーション設定を行ってもよい。図４には、システム管理者がJava対応型プリンタ１１０からのキュー情報を要求し、システム管理者にコンフィギュレーション情報を与えるアプレットを受信した場合が示されている。システム管理者が次のURL、即ち、http://printer1.companyname,com/queueを使用するとき、ウェブブラウザ１２０は要求されたページがキューマネージャを表現することを反映させるためタイトルバーを変更する。返送されたページ１３６は、文書、文書のタイトル、文書の印刷時間、及び、ジョブが発行されたインターネットアドレスを表現する一連のグラフィックス１６０を含む。これらのグラフィックス１６０は、スクロールバー１３８によって制御されるスクロールウィンドウ１４４に表示される。また、アプレットは、スクロールバーウィンドウ１４４に表示されたグラフィックス１６０をフィルタリングするため、関連した複合ボックス１４０を備えたフィルタを含む。図５に示される如く、インターネットアドレスがフィルタとして使用されるとき、指定されたインターネットアドレス（例えば、123.45.67.89）によって発せられていない全ての文書はスクロールウィンドウ１４４から削除される。再度図４を参照するに、合うレットには、Java対応型プリンタ１１０が文書を処理する方法を制御するボタン１４６、１４８、１５０、１５２及び１５６が置かれている。印刷ジョブを制御するため、何れかのグラフィックス１６０が強調され、ボタン１４６、１４８、１５０、１５２及び１５６の中の１個のボタンが押下される。キューマネージャは、次に、押下されたボタンに応じて、強調されたジョブに対するキュー特性を変更する。
Java対応型プリンタはマルチスレッド式であるため、Java対応型プリンタ１１０は、その機能（例えば、現在のジョブの印刷、ジョブの中断、ジョブの停止、次のジョブが印刷される、若しくは、最後のジョブが印刷されるようなジョブが行われるようにジョブの順番を入れ換え、ジョブの特性を表示、中断されたジョブを再開、デフォルトコンフィギュレーション情報を設定、又は、プリンタの状態を判定）の間でマルチタスクを行うことが可能である。従来のプリンタは、同時に一つのジョブを実行し、上記のような印刷能力をもたない。
図４及び５に示される如く、Java対応型プリンタ１１０の別の利点は、他の動作が実行されている間に状態情報１３９を要求できる点である。状態情報１３９は現在の状態の断片に過ぎないが、アプレットは、Java.netパッケージによって実現されるようなDatagram Packet、DatagramSocket及びSoketクラスにより提供されるJava及びブラウザのネットワーク能力を用いて状態情報１３９を定期的に更新することができる。また、Java対応型プリンタ１１０は、アクティブなマルチタスクを実行するので、別の実装されたプロトコル（例えば、SMTP、FTP等）を用いて状態レポートをシステム管理者若しくは他のユーザに定期的に送信することができる。
図６に示される如く、Java対応型プリンタ１１０は、Javaを印刷言語として使用するアプリケーションに基づいて対話式の丁付けを実行し得る。Java対応型プリンタ１１０は、アプリケーションが丁付けを指定し、印刷要求を予めフォーマットされたページでJava対応型プリンタ１１０に送信する従来のプリンタ、或いは、印刷を要求するアプリケーションが、Java対応型プリンタ１１０にプリンタの特性に基づいてデフォルト丁付けを作成することを要求するため、Java対応型プリンタ１１０の拡張能力を使用する従来のプリンタとして使用することが可能である。
図６には、Java対応型プリンタ１１０によって丁付けされた文書が示されている。ＷＷＷ／ＨＴＴＰ要求の形でJava対応型プリンタ１１０にJavaコードを送信した後、丁付けアプレット、又は、Javaをサポートするため記述されたアプリケーションの一部は、Java対応型プリンタ１１０によって指定されたように結果を表示する。図６において、文書は、Java対応型プリンタ１１０によって設定された通りの文書のレイアウトを描写する４個の寸描１７０に分割される。４個の寸描１７０は、図が第２の寸描１７０と第３の寸描１７０とによって二つの部分１７２ａ及び１７２ｂに分かれることを示す。その上、テキストのパラグラフは、第１のページと第２のページの間で分割され、単一の行１７１ａが残りのテキスト１７１ｂから分離されている。デフォルト丁付けを変更するため、アプリケーションは、ユーザが実際に丁付けしたい場所を示すため、ページ矢印１７３を寸描１７０の隣に置く。ページ矢印１７３を用いることによって、テキストの単一の行１７１ａをテキストの残りの部分１７１ｂに集めることができ、画像１７２ａ及び１７２ｂを一つにすることができる。ユーザがページ矢印１７３を設定したとき、ユーザは寸描１７０を再作成し新しい結果をウェブブラウザ又は丁付け出力／アプリケーションに返送するJava対応型プリンタに、新しいコンフィギュレーションを送信するため再送出(RESUBMIT)ボタン１７４を用いる。寸描１７０がユーザの要求を満たすとき、ユーザが丁付けを認容し、ページを印刷すべきことを通知するため了解(OK)ボタン１７６が使用される。また、ユーザが印刷を取り止めたいとき、取消(CANCEL)ボタン１７８が押下される。これにより、Java対応型プリンタ１１０は、待機中の丁付けの未決定キューからJava印刷要求を削除することができる。この情報を明示的に削除することによって、Javaインタープリタのガーベッジコレクション処理は、Java対応型プリンタ１１０のメモリを非常に高速に再利用できる。図６は、ページ矢印１７３に関して説明されているが、ページが丁付けされる方法を記述するためいかなるタイプの丁付け識別子を使用しても構わない。例えば、連続的なスクロール可能な画像が提示され、ユーザは丁付けをすべき場所に線を描くためアプレット／アプリケーションを使用する。また、別の実施例では、改ページが行われる場所を示すため、ＨＴＭＬの標準ハードリターンタグ＜ＨＲ＞を使用してもよい。さらに、寸描１７０は、ページ１２０に表示可能であるタイプのグラフィックスであればよい。これらのグラフィックスには、寸描のGIF、Java画像などが含まれ、その中の幾つかがjava.imageパッケージによってサポートされる。
図７に示される如く、図４及び５のアプレットは、Javaをサポートするブラウザと共に標準ＨＴＭＬコードを用いて生成され得る。アプレット(APPLET)キーワードを用いることにより、ブラウザは、キューマネージャクラスをロードし、幅５００及び高さ３００のウィンドウを表示することが分かる。
図８に示される如く、Java対応型プリンタ１１０は、図８のLetterheadクラスのような新しいクラスを用いて拡張することができる。Letterheadクラスは、本発明の基本的な印刷機能を提供する印刷クラスを拡張する。図示されたLetterheadクラスは、最初にレターヘッドテキストを印刷されるべきページに印刷し、次に、Printクラスがページの残りの部分の印刷を実行する。本例のクラスの場合、２ページに対し異なる文字列及び位置を指定することによって、レターヘッドと、カバーシートと、その他の全部の中の２種類のページへの印刷が可能である。レターヘッドクラスは、他の実施例において、多数の文字列及び位置を各レターヘッドページ毎に格納させるため、Java言語によってサポートされるのに従って配列を使用するよう拡張され得る。
さらに、PostScript及びPCLからJavaへの移行を円滑に行うため、PostScript、PCL又は両者を受信し、描写するPrinterクラスのサブクラスを利用するJava対応型プリンタが実現され得る。これらのクラスは、それらが利用可能になるときに、システム管理者によって動的に追加することさえ可能である。新しいクラスは、システム管理者によって指定されたＵＲＬを用いてロードしてもよい。他方で、ＧＤＩコールを利用する従来のプリンタドライバは、受信されたＧＤＩアプリケーションからJavaコードを生成するよう変更することが可能である。例えば、Windows文書は、標準ＧＤＩコールを使用して生成されるので、Java対応型プリンタ１１０は他のサポートされたプリンタと同様に選定され、Java対応型プリンタドライバはWindowsのＧＤＩコールを、Java対応型プリンタ１１０に送信できるJavaコードに変換する。
本発明の意図された範囲を逸脱することなく、上記の教示の観点から本発明の多数の変更及び変形をなし得ることが明らかである。かかる変更には、ユーザプロファイル情報をJava対応型プリンタ１１０自体ではなく、遠隔データベースに格納することが含まれる。JDBC（Javaデータベースコネクティビティ）という名前で公知のJava SQL（ストラクチャード・クエリー・ランゲージ）APIを使用することにより、遠隔データベースはユーザプロファイル情報を格納することが可能であり、アプレットは、ユーザプロファイル情報を問い合わせ、更新し続ける。JDBC仕様書は完成していないので、１９９６年５月７日付けのバージョン０．７０仕様案を参考のため引用する。
【図１】
0003695595.tif 000003
【図２】
0003695595.tif 000004
【図３】
0003695595.tif 000005
【図４】
0003695595.tif 000006
【図５】
0003695595.tif 000007
【図６】
0003695595.tif 000008
【図７】
0003695595.tif 000009
【図８】
0003695595.tif 000010