JPH11249838A - 記録済みデータの記憶媒体 - Google Patents

記録済みデータの記憶媒体

Info

Publication number
JPH11249838A
JPH11249838A JP10351540A JP35154098A JPH11249838A JP H11249838 A JPH11249838 A JP H11249838A JP 10351540 A JP10351540 A JP 10351540A JP 35154098 A JP35154098 A JP 35154098A JP H11249838 A JPH11249838 A JP H11249838A
Authority
JP
Japan
Prior art keywords
printer
data
class
print
communication
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
JP10351540A
Other languages
English (en)
Other versions
JPH11249838A5 (ja
Inventor
Marcus A Smith
マーカス・エー・スミス
Deverl N Stokes
デヴァール・エヌ・ストークス
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH11249838A publication Critical patent/JPH11249838A/ja
Publication of JPH11249838A5 publication Critical patent/JPH11249838A5/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Stored Programmes (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 プリンタのアドレス空間の制限なくプリ
ンタの機能を進化させることができる。 【解決手段】 コンピュータ・システム100におい
て、サブシステム102はPC110とプリンタ112
とインターフェース114とを備え、サブシステム10
4はサーバ126とネットワーク・リンク122とネッ
ト・インターフェース130,132と、少なくとも一
つのPC120と、少なくとも一つのプリンタ124お
よび134とを備え、サブシステム106はネット・イ
ンターフェース142とプリンタ144とを備えてい
る。各プリンタは、印刷を管理する情報を受取り、リン
クによりプリンタの動作状態を示す。コンピュータ・シ
ステム100は、PC、サーバ、又はプリンタのメモリ
を占有する分布処理アプリケーション・プログラムを備
え、進化プリンタの機能進化を助長する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プリンタに係り、
より詳細には、機能を追加又は修正することにより進化
するプリンタおよびコンピュータ・システムの要求事項
に応じて、プリンタ能力を拡大する方法における記録済
みデータの記憶媒体に関する。
【0002】
【従来の技術】事務従事者、技術者、および科学者が使
用するコンピュータ・システムは、頻繁に変更を受け
る。ある変更としては、コンピュータ・システムが所定
のコンピュータ・システムの仕様の目標により近づいて
実行するように改善することである。また他の変更とし
ては、元来のコンピュータ・システムの仕様の範囲を越
えて、たとえば、ユーザが期待する新たな機能を持つよ
うにコンピュータ・システムを改善することである。コ
ンピュータ・システムにおいて新しい技術を急速に適用
する場合、元来の構成要素にはなかった望ましい機能を
追加することができないと、ユーザはその構成要素が時
代遅れであるとみなす。
【0003】従来のコンピュータ・システムは、一つの
筐体の中に堅く結合されたメモリおよび処理資源を有す
る汎用コンピュータの構成要素を備えている。別の構成
要素は、たとえば入力/出力機器として、通常他の別の
筐体に納められている。これら別々に囲まれたコンピュ
ータ・システムの構成要素は、「周辺装置」と言われて
いるが、たとえば、レーザ・プリンタなど幾つかの構成
要素が特殊な目的の動作システムと周辺装置のプログラ
ムとの実行に専用される多数の内部メモリおよび処理資
源を有する専用の計算回路を備えるように、複雑になっ
てきている。
【0004】汎用の計算用構成要素(コンピュータ)お
よび周辺装置の入力/出力機器(プリンタ、走査器、な
ど)は、別々の供給者により開発され市販されている。
コンピュータおよび周辺装置の機能的な協働動作は、コ
ンピュータにおいて実行される駆動装置のソフトウェア
に依存し、周辺装置を効率良く動作させる。駆動装置の
ソフトウェアは、周辺装置プログラムに埋め込まれてい
る周辺装置の機能を利用できずに、印刷の品質を低下さ
せてしまうことがある。一例として、そのような印刷の
低品質は、駆動装置のソフトウェアが円のような幾何学
的な図形画像をプリンタに伝えることができず、図形画
像をビットマップ形態にレンダリングし、ビットマップ
のデータだけをプリンタに伝える場合に生ずることがあ
る。このような場合に、周辺装置のプログラムの縁辺強
調機能( edge enhancement function)を利用できな
い。
【0005】
【発明が解決しようとする課題】周辺装置のプログラム
・コードは通常、不揮発性メモリにおいて直接実行でき
る書式で記憶されている。周辺装置のプログラムの能力
は、周辺装置の機能的局面(機能)として明示される。
周辺装置の機能を修正又は追加するためには、元来のメ
モリの構成要素の代わりに不揮発性メモリの構成要素を
追加又はインストールする。これらの追加された構成要
素は、追加で記憶された直接実行可能なプログラム・コ
ードを与える。特定の字体で印刷するレーザ・プリンタ
の能力のような、幾つかの機能は、実行不能な書式で規
定されている。このような機能を修正又は追加するに
は、プログラムされた不揮発性メモリの構成要素をイン
ストールするか、又はデータを電気信号としてインター
フェースを介して伝達し、揮発性メモリに記憶する。こ
のような伝達を通常ダウンロードという。
【0006】従来における専用の計算回路のアドレス空
間は、不揮発性メモリおよび揮発性メモリにおいてそれ
ぞれ、一つ又は所定の2,3の領域に限定されている。
追加の機能をインストールすると、周辺装置プログラム
はアドレス空間を走査して、インストールされダウンロ
ードされたプログラム・コードおよびデータを識別し、
周辺装置プログラム、結果として周辺装置の機能局面に
それらプログラム・コードおよびデータを組込む。
【0007】周辺装置は、機能を修正又は追加した結
果、新しい又は修正された機能が一つ以上の元来設けら
れた機能に関連していることが多いことから、「進化す
る( evolve )」と言われる。コンピュータ・システム
は、頻繁な変更を受けることから、その変更に応じるた
めにあまり苦労せずに進化することができる周辺装置を
備えることが望ましい。問題点としては、物理的なメモ
リの構成要素のインストール、ダウンロードに費やされ
る時間、および通常のシステムのアドレス空間の制限が
ある。これらの問題点により、変化する環境で所有する
ための費用および変化する仕様を満たすシステムを維持
する費用など、コンピュータ・システムに関連する費用
が大幅に増大する。
【0008】上述の問題および関連する問題を考慮し
て、プリンタの機能の進化を容易にするシステムおよび
方法の必要性が求められている。
【0009】更に他の技術的背景には、1993年マサ
チューセッツ州ウェーズレーのQED出版グループ発行の
W.H.Inmon著である「発展する依頼人/サーバの用
途」、1994年カンサス州レンスのR&DD出版発行のGu
y Eddon著である「NT用RPC」、および1991年
ニューヨーク州ニューヨークのHalstedPress発行のGord
onBlair等の編集した「オブジェクト指向言語( Object
-Oriented Languages)、システムおよび用途」、19
94年ワシントン州レドモンドのMicrosoft Press発行
のJeffery Richter著である「進歩したウィンドウズN
T」、1996年ワシントン州レドモンドのMicrosoft
Press発行のStephen R.Davis著である「今やJava+
+を学べ」、およびそれらに記載された参考書目があ
る。
【0010】本発明は、物理的なメモリの構成要素のイ
ンストール、ダウンロードに費やされる時間、およびプ
リンタのアドレス空間の制限なく、プリンタの機能を進
化させることを可能にする記録済みデータの記憶媒体を
提供することを目的とする。
【0011】
【課題を解決するための手段】したがって、本発明にお
ける一実施形態の記録済みデータの記憶媒体( a prere
corded data storage medium)は、データ記憶媒体およ
びその媒体に記録されたしるし( indicia)を備えてい
る。しるしは、コンピュータに結合された所与のプリン
タの機能を進化させる第1の方法を所与のコンピュータ
ー上で実行するための指令を備える。プリンタはプリン
タ機能を備えている。第1の方法は、(1)プリンタに
おいて、画像処理を行う第2の方法を備えた所定のクラ
スの規定を受取ること、(2)クラスの規定に応答して
オブジェクトの事例( object instance)を形成するこ
と(オブジェクトの具体化)、および(3)プリンタの
機能が第2の方法に従って実行され、それにより機能が
進化するように、オブジェクトを拘束する(オブジェク
トの拘束)こと、を備えている。
【0012】このような実施形態の第1の局面によれ
ば、第2の方法に従ってプリンタの機能が実行されると
き、プリンタの能力、すなわち、プリンタ機能の機能的
局面が拡大される。
【0013】第2の局面によれば、機能の進化は、通常
のコンパイル、リンク、およびロードのようなソフトウ
ェアを発達させる技法を導入せずに行なわれ、拡大され
たプリンタの機能を非常に簡単にする。
【0014】他の局面によれば、オブジェクトの具体化
(instantiation)および拘束( binding)は、プリン
タのアドレス空間を直接参照せずに行なわれる。したが
って、アドレス空間に関する制限は容易に回避される。
【0015】更に他の局面によれば、後で他の目的のた
めに使用される空いているメモリを一時的に割り当てる
ことによって具体化および拘束が行なわれると、別々の
機能の進化をメモリのアドレス空間の制限なしに別々の
時刻に行なうことができる。
【0016】なお他の局面によれば、クラスの規定を、
データ通信又は事前にプログラムされた記憶装置の通常
のインストールによってプリンタで受取ることができ
る。このような実施形態によれば、機能進化を、いわゆ
る「プラグアンドプレイ( plug and play)」およびデ
ータ通信の組合せで達成することができる。
【0017】更に他の局面によれば、拘束により、第2
の方法に従うプリンタ機能の実行が可能になる。プリン
タの機能が第2の方法の要求を有するとき、第2の方法
は、プリンタ機能の同様な名称の方法を無効にする( o
verride )か、又は別の(補足的)機能能力を与えるこ
とができる。第2の方法がプリンタ機能の要求を有する
とき、プリンタ機能は、第2の方法の一部を条件付きで
無効にするか、又は別の(補足的)機能能力を与えるこ
とができる。これらすべての場合において、プリンタ機
能のような従来のソフトウェアの機能は、従来のソフト
ウェアを再コンパイルすることなく進化する。
【0018】本発明の他の実施形態は、プリンタによる
印刷の方法を与える。プリンタは、機能を有する第1の
クラスの規定を備えている。印刷方法は、(1)プリン
タとコンピュータとの間で第2のクラスの規定を交換す
ること、(2)プリンタにおいて第2のクラス規定のオ
ブジェクトを具体化すること、(3)オブジェクトの参
照を行なったときプリンタ機能が実行されるようにオブ
ジェクトを拘束すること、および(4)プリンタ機能の
実行に応答して印刷すること、を含んでいる。
【0019】このような方法の第1の局面によれば、コ
ンピュータおよびプリンタは、第2のクラスの規定がプ
リンタにより準備されたかコンピュータにより準備され
たかに関係なく第2のクラスの規定を共通に認識してか
ら、協働する。第2のクラスの規定がコンピュータによ
り準備されたとき、ビデオ用図形レンダリング方法のよ
うな別の方法を第2のクラスに追加することができる。
第2のクラスの規定がプリンタにより準備されたとき、
印刷用図形レンダリング方法のような現在インストール
されている方法を第2のクラスに追加することができ
る。その結果、印刷すべき画像がビデオ表示装置上に一
層正確に表現され、かつビデオ表示装置のビデオモニタ
に表示される画像がプリンタ上に一層正確に表現され
る。モニタとプリンタとの間のこのような整合性は、い
わゆる「画面上のものがそのまま印刷されて出る」( w
hat-you-see-is-what-you-get,WYSIWYG)システ
ムの能力に望ましい改善を与える。
【0020】別の局面によれば、ビデオ・システムおよ
びプリンタ・システムについて画像処理の改善が共通に
与えられている。たとえば、改善されたビデオ用レンダ
リング方法がプリンタに対して利用できるようになり、
逆も同様である。
【0021】本発明の更に他の実施形態によるコンピュ
ータ・システムは、コンピュータおよびプリンタを備え
ている。コンピュータは、与えられたモニタに表示すべ
き画像を処理する方法に対する記憶されたしるし( sto
red indicia )を備えている。コンピュータは、しるし
に応答してクラス規定を形成し、そのクラス規定をプリ
ンタに伝える。プリンタは、クラス・ローダを備えてい
る。プリンタはクラス規定を受取り、コンピュータによ
り与えられた方法を行い、その方法に応答して印刷す
る。
【0022】このようなコンピュータ・システムの一局
面によれば、クラス・ローダ付きプリンタはコンピュー
タにより与えられた方法を使用して印刷することができ
る。この方法に含まれる計算は、プリンタにより行なわ
れ、コンピュータの計算負荷が減少する。
【0023】第2の局面によれば、プリンタを同等のク
ラス・ローダを有する第2のプリンタで置き換えること
は、コンピュータにおける変更には関係しない。したが
って、コンピュータ・システムの進化が簡単になる。
【0024】
【発明の実施の形態】本発明は、機能の追加又は修正す
ることによって進化するプリンタを備えたどんなシステ
ムにおいても実施することができる。このようなシステ
ムは適切に、相互に動作して計算又は測定の仕事を行な
う構成要素のある群を備えている。図1は本発明の一実
施形態におけるコンピュータ・システム100のブロッ
ク図である。たとえば、記録済みデータの記憶媒体を備
えるコンピュータ・システム100は、通常のネットワ
ーク・リンク116,122,140により結合されて
いるサブシステム102,104,106を備え、通常
の様々なオフィス・オートメーションの仕事を行なう。
サブシステム102は、パーソナル・コンピュータ(P
C)110と、プリンタ112と、インターフェース1
14とを備えている。サブシステム104は、サーバ1
26と、ローカル(又は広域)エリアのネットワーク・
リンク122と、ネット・インターフェース130およ
び132と、少なくとも一つのPC120と、少なくと
も一つのプリンタ124と、少なくとも一つのプリンタ
134とを備えている。サブシステム106は、ネット
・インターフェース142とプリンタ144とを備えて
いる。
【0025】コンピュータ・システム100では、印刷
は、サブシステム102,104,106の各々におい
て、進化プリンタ112,124,134,144で行
なわれる。プリンタ112,124,134,144
は、たとえば、レーザ・プリンタ、インクジェット・プ
リンタ、インパクト・プリンタ、写真プリンタなどの通
常の技術を使用する印刷装置を表している。各印刷装置
は適切に、たとえば、コンピュータ用出力プリンタ、計
測レコーダ、オフィス複写機、FAX機械、およびラベ
ル又はレシート用プリンタなどのすべての用途に役立
つ。
【0026】PC110,120、およびサーバ126
は適切に、通常のキーボードおよびディスク駆動装置の
構成要素(図示せず)と、通常のモニタ108,118
とを備えている。通常のPCでは、走査線は、コンピュ
ータとモニタとの間を電気的にインターフェースを介し
て連絡している。多数のコンピュータ・システムでは、
このインターフェースはネットワーク・リンクとして使
用するための設備を備えていない。したがって、信号周
波数およびデータの帯域幅は、コンピュータとモニタと
を堅く結合するよう選定されており、その結果、モニタ
が単一のコンピュータに専用される。
【0027】対照的に、各プリンタ112,124,1
34,144は、それぞれリンク113,123,13
3,143によりコンピュータ・システム100の別の
構成要素に結合されている。各プリンタは、リンクによ
り、印刷を管理する情報を受取ったり又はプリンタの動
作状態を示す。リンク113,123,133,143
は、対応するネットワーク・リンクの機能との少なくと
も一つの物理的な接続を使用して、様々なデータ通信プ
ロトコルとの専用サービス又は共有サービスを支持す
る。各プリンタ112,124,134,144は機能
が進化することにより、同じプリンタがいずれのリンク
113,123,133,143にも取り付けられ、人
手の介入なしに動作することができる。
【0028】リンク113,123,133,143、
およびネット・インターフェース114,130,13
2,142は適切に、特定のチャンネルに対するデータ
通信の物理的および電気的要求を満足させるための通常
の回路を備えている。チャンネルには、すべての通信媒
体、たとえば、電気および光のケーブル、音響信号(電
話)、無線周波数、および赤外線がある。従来のネット
・インターフェースでは、通信プロトコル、たとえば、
衝突検出マルチアクセス( collision detectmultiple
access )、時間領域マルチプレックス( time domain
multiplexing)、およびパケット切替え、の各通信プロ
トコルの少なくとも一つのレベルを行なう。必要なら、
リンクおよびネット・インターフェースの支持を、各々
を接続する機器に取り入れることができる。たとえば、
プリンタ144およびネット・インターフェース142
を物理的および電気的に一つに組み合わせることができ
る。
【0029】本発明のコンピュータ・システムは更に、
進化するプリンタの機能進化を助長する分布処理アプリ
ケーション・プログラムを備えている。分布処理アプリ
ケーション・プログラムは、リンク又はネット・インタ
ーフェースを介して機能を行なうために協働するすべて
の組のコンピュータ・プログラム・フアイルおよびデー
タ・ファイルを備えている。たとえば、図1のコンピー
タ・システム100は、図2、図3、および図4を参照
して下に説明する本発明の方法を行なうための適切なフ
ァイルを備えている。これらの方法は、進化する周辺装
置の機能進化を助長することにより上に説明した問題を
解決している。
【0030】分布処理アプリケーション・プログラムの
特定の構成は、様々な供給者により独立に開発された構
成要素の特別の配置をとり、各構成要素が所定のインタ
ーフェースに適合し、分布処理アプリケーション・プロ
グラムとして協働する。ソフトウェア・システム20
0、300、および400の構成要素は、ソフトウェア
(たとえば、Intel Pentium Assembly言語のような機械
コード、又はJavaPコードのようなバイトコード)にお
いて、ファームウェア、汎用回路、状態機械回路( sta
te machine circuit)、又はこれら通常の技法の組合せ
により、実施されうる。
【0031】ソフトウェア・システム200、300、
および400の構成要素のプロセスおよびデータ項目を
少なくとも一つの供給業者から供給することができる。
たとえば、プロセス202、206、および220を動
作システムの供給業者から、プロセス204およびデー
タ項目214,244をワード処理アプリケーション・
プログラムの供給業者から供給することができ、またプ
ロセス208、210、および212をモニタの供給業
者から、プロセス228をネットワークの供給業者から
供給することができ、さらにプロセス224、226、
および240〜256をプリンタの供給業者から供給す
ることができる。ユーザは通常、特別に選択した特定の
構成要素プロセスと、これら構成要素間の所定のインタ
ーフェースとの協働に頼っている。
【0032】第1の分布処理アプリケーション・プログ
ラムは、プリンタと連結されたPCに対する進化機能を
助長するプログラムである。図2は、図1におけるコン
ピュータ・システムの第1のサブシステム102を使用
する表示及び印刷の方法を示すフローチャートである。
たとえば、ソフトウェア・システム200は、PC11
0と、リンク113と、プリンタ112とに対する進化
機能を助長する。ソフトウェア・システム200は、P
C110およびプリンタ112に一組の構成要素プロセ
スおよびデータ項目を備えている。PC110におい
て、ソフトウェア・システム200は、グラフィカル・
ユーザ・インターフェース(GUI)202と、ユーザ
・プログラム204と、ビデオ・パイプ205と、動作
システム印刷パイプ225と、PC印刷パイプ219
と、PC字体データ214と、PC通信プロセス229
とを備えている。プリンタ112において、ソフトウェ
ア・システム200は更に、プリンタ通信プロセス24
1と、プリンタ字体データ244と、プリンタ印刷パイ
プ243と、アクセス・プロセス253とを備えてい
る。
【0033】ソフトウェア・システム200は、どんな
通常のユーザ・インターフェースでも、たとえば、GU
I202を、備えることができる。ユーザ・インターフ
ェースは、ユーザからの指示を受入れ、データを表示又
は印刷する命令を発する。GUI202は、ワシントン
州レドモンドのMicrosoftから市販されているWind
ows動作システムのような動作システムにより与えら
れる形式のものである。
【0034】ソフトウェア・システム200は、どんな
通常のユーザ・プログラム204でも、たとえば、ワー
ド・プロセッサ又はコンピュータ援用設計プログラム
( computer aided design program)を、備えることが
できる。このようなユーザ・プログラムは、データを表
示又は印刷する命令をメモリ又はデイスクのファイルか
ら受取る。ユーザ・プログラム204は、通常の技法に
より、印刷しようとする主題(subject)事項を識別す
る。下に説明する際に例示の目的で、主題は、拡大縮小
できる字体で表した文字列と、重ね図形画像とを備えて
いる。別のある程度複雑な主題事項を表示又は印刷のた
めに識別することもできる。
【0035】ビデオ・パイプは、表示のために識別され
たデータをモニタ108のようなラスタ表示装置に提示
するための走査線に書式設定し直す少なくとも一つのプ
ロセスを備えている。たとえば、ビデオ・パイプ205
は、ビデオ駆動装置206と、レンダリング・プロセス
208と、ラスタ化プロセス210とを備えている。ビ
デオ駆動装置は、主題データからビットマップ書式の中
間データを準備する。たとえば、ビデオ駆動装置206
は、通常の技法により、ベクトル、記号、輪郭、位置、
および制御、又はビットマップ書式で表された主題デー
タからビットマップ書式の中間データを準備する。ビデ
オ駆動装置206は、通常のアルゴリズム規定およびパ
ラメータ規定から、線、幾何学的形状、および文字列の
ような一般に使用されるビットマップ画像を作り出す方
法を備えている。
【0036】レンダリング・プロセスは、中間データを
画像データ構造に統合する(レンダリングする)。たと
えば、レンダリング・プロセス208は、通常の技法に
より、更に処理が必要である画像の部分的な中間データ
からビットマップ形態の画像データ構造を準備する。こ
のような処理は、重ね画像、許容表示区域を越えて広が
っている画像、縁又は色の強調、スケール、向き、陰
影、又は動画などの画面構成の事項に対する補償を備え
ることができる。画像データ構造内のビットは、一般に
表示すべき画素に対応する。
【0037】ラスタ化プロセスは、画像データ構造から
走査線内のデータを与える。たとえば、ラスタ化プロセ
ス210は、通常の技法により、モニタ108により使
用される各色平面の各水平走査線について、2進の画素
強度値を順次に与える。ラスタ化プロセス210は、画
面の大きさ、残像( persistence)、又は輝度の事項を
左右する。ラスタ化プロセス210は、モニタ108の
代わりに、受取った画像データ構造の幾つか又は全部を
交互性のモニタ上に表示するためのベクトルに変換する
方法を備えている。必要なら、プロセス208および2
10を通常の技法により混合して、画像データ構造を維
持するのに必要なメモリの量を減らすことができる。
【0038】表示プロセスは、ビデオ・パイプから出力
を受取り、たとえば、蓄電管、陰極線管、液晶、又は電
解放出表示装置などの通常の表示装置を動作させる。た
とえば、モニタ108に関する表示プロセスは、ビデオ
・パイプ205から走査線を受取り、通常のグラフィッ
クス・ラスタ表示( graphics raster display)を行な
う。表示プロセス212は、全体に又は部分的に新しい
画像によって置き換えられるまでモニタ108上で画像
を表示する。
【0039】印刷可能な主題に関しては、印刷された画
像がモニタに表示された画像により近づくことが望まし
い。本発明によれば、印刷の準備に使用されるプロセス
は、上に説明した画像の表示を準備するプロセスを使用
することができる。
【0040】印刷パイプは、印刷のため識別されたデー
タをリンクによりプリンタ112のようなプリンタに伝
達するための書式に書式設定し直す少なくとも一つのプ
ロセスを備えている。たとえば、動作システム(OpS
ys, operating system)印刷パイプ225は、OpS
ys書式化221と、ビットマップ書式で表した画像デ
ータをポート・モニタ224に与えるOpSys待ち行
列223とを備えている。OpSys書式化221およ
びOpSys待ち行列223は、デフォルト印刷能力、
たとえばMicrosoft社により市販されているWindo
ws32ビット動作システムの印刷パイプを供給するた
めに動作システムに統合されている形式のものである。
このような印刷パイプを、Java Developer's Kit(JDK)
1.1.x.を支持する場合のように、すべての項目をレンダ
リングするように設定することができる。
【0041】進化するプリンタ機能を支持する印刷パイ
プは、リンクにより伝達すべきデータをプリンタに供給
する前に最少限の再書式設定動作を行なう。たとえば、
PC印刷パイプ219は、いくつかの書式の一つで表さ
れたデータをポート・モニタ224に与える印刷駆動装
置220と、待ち行列222とを備えている。他に、印
刷駆動装置220は、デフォルト又はユーザ入力に応答
し、OpSys印刷パイプ225を介して識別された主
題データの印刷を指示するか、又は進化するプリンタ機
能をサポートするためのPC印刷パイプ219を介して
識別されたデータを処理する。
【0042】主題データをOpSys印刷パイプ225
に導くと、主題データは、OpSys書式化・プロセス
221によりレンダリングされ、ビデオ駆動装置プロセ
ス206およびレンダリング・プロセス208について
上に説明したようにビットマップの画像データ構造を与
える。OpSys書式化221は、通常のアルゴリズム
規定およびパラメータ規定から、線、幾何学的形状、お
よび文字列のような一般に使用されるビットマップ画像
を作り出す方法を備えることができる。得られるビット
マップの画像データ構造はポート・モニタ224に与え
られてリンク113により伝えられる。
【0043】他方、主題データがPC印刷パイプ219
を通って進むと、印刷駆動装置220は、プリンタ11
2の能力を活用し、またプリンタ112の限界に適応す
る。たとえば、プリンタ112によりレンダリングされ
ることができる画像品目について、印刷駆動装置220
は、主題データを書式設定し直して、プリンタとの間に
介在する通信プロセスおよびプリンタ112に適合する
書式で表された識別情報又は規定情報をポート・モニタ
224に与える。プリンタ112がレンダリングできな
い画像品目については、印刷駆動装置220は、上に説
明したように主題データをビットマップ書式の中間デー
タに書式設定し直す。印刷駆動装置220は、通常のア
ルゴリズム規定およびパラメータ規定から、線、幾何学
的形状、および文字列のような一般に使用されるビット
マップ画像を作り出す方法を備えることができる。得ら
れるビットマップの画像データ構造はポート・モニタ2
24に与えられてリンク113により伝えられる。
【0044】上述のビットマップ書式の中間データへの
変換および上述のレンダリング・プロセスにより、印刷
駆動装置220は、更に簡潔なデータをポート・モニタ
224に与え、効率良い連絡を行なう。したがって、P
C110は、印刷すべきレンダリングのデータを処理す
る重荷から解放され、PC110のメモリは、更に良く
利用されるようになり、プリンタ112は、プリンタ1
12において特別に構成された方法に従って効率よいレ
ンダリングおよびラスタ化が可能になる。
【0045】PC字体データベース214およびプリン
タ字体データベース244は、通常の字体データ構造を
備えている。ビデオ駆動装置206および印刷駆動装置
220は、PC字体データベース214から文字列の文
字を指定する情報を得る。PC字体データベース214
にある情報は、図2の214および244により示され
ているように、プリンタ字体データベース244から拡
張されることができ、又プリンタ字体データベース24
4と共有される。
【0046】印刷待ち行列は、順次要求される印刷のデ
ータを記憶する。印刷待ち行列は、一般に先入れ先出し
プロトコルにあるデータをバッファーし、待ち行列の内
容に関する管理機能を与えることができる。たとえば、
OpSys待ち行列223は、大型の中間データ構造の
記憶空間を備え、複合体による監視、取消し、および優
先制御を行なってデータの流れを管理する。データは、
いくつかの関連する主題のデータ項目の最初の項目をレ
ンダリングし始めたときから最後の関連する主題のデー
タ項目の通信が成功するときまでOpSys待ち行列2
23に留まっている。この期間は、レンダリングの複雑
さおよび大型の中間データ構造を伝達する継続時間によ
り延長される。
【0047】対照的に、待ち行列222は、PC110
内部でレンダリングされるのではなく、識別され又は規
定されるべき画像品目(幾何学的形状、拡大縮小し得る
字体文字、濃淡のあるオーバーレイ図形などのような)
に一般に使用される記憶空間を備えている。画像品目
は、基準、たとえば識別された固定サイズの字体の情況
内での文字数基準により識別される。また画像品目は、
アルゴリズム的レンダリングに対するパラメータ、たと
えば、特定の点の大きさ、ウエート、および色の濃淡矩
形又は拡大縮小し得る文字を示すデータ構造により規定
される。好適実施形態では、待ち行列222は、ポート
・モニタ・プロセス224が印刷駆動装置プロセス22
0の出力と歩調をそろえることができるため、省略され
る。
【0048】通信プロセスは、リンクによるデータの転
送を補助するプログラムである。たとえば、PC通信プ
ロセス229は、中間データのビットマップ書式、画像
のビットマップ書式、クラス規定、仲介メッセージ、通
信状態メッセージ、および通信制御メッセージのデータ
のリンク113による転送を補助する。PC通信プロセ
ス229は、ポート・モニタ224と、ページ記述言語
(PDL, page description language )プロセス22
6と、通信スタブ228と、仲介スタブ252とを備え
ている。プリンタ112のプリンタ通信プロセス241
は、通信スタブ・プロセス240と、PDLプロセス2
42と、仲介スタブ254とを備えている。
【0049】ポート・モニタは、PCの状態、命令、お
よびデータをプリンタに伝える。たとえば、ポート・モ
ニタ224は、PDLプロセス226および図示しない
保守プロセスによりメッセージを送受することによりプ
リンタ112と通信する。保守プロセスは、媒体供給の
状態、現在の構成の詳細、紙詰まりなどのプリンタの状
態を報告する。保守メッセージの伝達は、たとえば、通
常の簡易ネットワーク管理プロトコル(SNMP, Simp
le Network Management Protocol)を使用して行なわれ
る。ポート・モニタ224は、OpSys印刷パイプ2
25およびPC印刷パイプ219からデータを受け、こ
れらのデータから通常のメッセージ・プロトコルに従っ
てメッセージを組み立て、各メッセージをPDLプロセ
スに伝える。
【0050】ページ記述言語(PDL)は、プリンタへ
のデータ転送のための通信プロトコルである。PDL
は、図形および文字列の両方の通信能力を与え、プリン
タ字体データベース244の識別および規定を備えてい
る。通常のPDLは、カリフォルニア州パロアルトのHe
wlett Packard会社により市販されている言語、カリフ
ォルニア州サン・ノゼのAdobeにより市販されているPos
tscript言語、およびフロリダ州ボカラトンのInternati
onal Business Machinesにより市販されているIPDS
などのPCL( printer control language )である。
一対のPDLプロセスは、どれかのPDLに従って通信
する。たとえば、PDLプロセス226および242は
協働して、PCL言語に従ってメッセージの組み立てお
よび分解を行う。PDLプロセス226および242
は、ポート・モニタ224に出入りするデータ構造をP
DLに従うメッセージに変換およびメッセージをデータ
構造に変換する入出力の機能を与える。
【0051】通信スタブは、パケット・データ通信を支
持する最低レベルの通信プロトコル機能を与えるプロセ
スである。たとえば、通信スタブ・プロセス228およ
び240は、通常の技法を採用してデータを通常の電気
的なインターフェース、たとえば、リンク113により
PC110とプリンタ112との間で伝達する。通信ス
タブ・プロセスは、信号の識別、パケットのチェック、
伝送手順、および受取り通知手順などのメッセージ伝達
機能を支持する構造的および電気的信号を伝達する通信
プロトコルを与えることにより、通常のデータ通信を支
持する。
【0052】プリンタの印刷パイプは、何を印刷すべき
かを記述したデータを受取り、応答して印刷エンジン
(図示せず)を動作させ、記録された媒体を作成する。
従来の印刷パイプは、縁辺強調、見かけの解像度を高く
するためのドット移動、機械的位置と現在の温度と現在
の電圧とのような印刷エンジンの予想したおよび測定し
た構造的局面の適応、および媒体の予想したおよび測定
した構造的局面の適応、のような印刷画像の品質を改善
する技法を備えている。たとえば、印刷パイプ243
は、レンダリング・プロセス246と、ラスタ化プロセ
ス248と、印刷プロセス250とを備えている。
【0053】レンダリング・プロセス246およびラス
タ化プロセス248は、画像の表示に関して上に説明し
たプロセス208および210と同様の仕方で、レーザ
印刷内でそれぞれレンダリングおよびラスタ化の機能行
なう。レンダリング・プロセス246は、ページを所定
時刻にレンダリングするための、又は、必要なら、所定
時刻にバンドをレンダリングするためのビットマップの
画像データ構造を作成する。ラスタ化プロセス248
は、画像データ構造を走査線に変換してプロセス250
により印刷する。必要なら、プロセス246および24
8を通常の技法により組み合わせて、画像データ構造を
保持するのに必要なメモリの量を減らすことができる。
【0054】印刷プロセスは、通信プロセスからデータ
を受取り、電子写真印刷、レーザ印刷、フィルム上への
走査又はベクトル駆動による光学的画像作成、およびイ
ンクジェット印刷などの通常の媒体マーキング機構を動
作させる。たとえば、印刷プロセス250は、プリンタ
通信プロセス241から走査線を受取り、レーザ印刷動
作を導くことによりレーザ印刷機を動作させて所望の画
像を支持する紙を作成する。全カラー印刷の場合には、
高速カラー印刷のために走査線を通常の仕方で原色によ
ってまとめるか、又は同時に与えることができる。
【0055】アクセス・プロセスは、リンクにより機能
を公開する( expose )プロセスである。たとえば、ア
クセス・プロセス253は、進化するプリンタ機能を助
長する目的で、プリンタ112にある機能のクラスを公
開する。アクセス・プロセス253は、印刷ピア( pri
nt peer )256および固有代用( native proxy )2
58を備えている。
【0056】PDLプロセス242、レンダリング・プ
ロセス246、およびラスタ化プロセス248は、図2
に示すように進化機能を備えたプロセスの例である。こ
れらプロセスは、プリンタの計算回路のプログラムのア
ドレス空間内にインストールされた実行可能なプログラ
ム・コード、プリンタの計算回路のデータのアドレス空
間内にインストールされた機械言語に翻訳可能なプログ
ラム・コード又はデータ構造、又は実行可能および翻訳
可能の両方のプログラム・コードの組合せを備えてい
る。実行可能又は翻訳可能なプログラム・コードで実施
される機能は、置き換え( replacing)、拡張( exten
ding)、補足( supplementing)、又はその動作の条件
付き修正により修正されると本発明に従って進化する。
このような修正は、たとえば、オブジェクトの動的拘束
を有するオブジェクト志向の実行時間環境により容易で
ある。
【0057】機能進化は、クラス( class)、オブジェ
クト、インターフェース、および動的な拘束などを含む
オブジェクト志向プログラミング概念の下記を参照する
と一層良く理解することができる。ソフトウェア・シス
テム200、300、および400を記述するのに使用
される概念および用語は、現在の研究、工業規格、およ
びコンピュータ・システムおよびソフトウェアの現在の
主要製造業者および開発者の慣例と矛盾しないようにす
る。
【0058】クラスは、一つ以上のオブジェクトを規定
するのに使用される型板である。クラスは、Java、
C++、Smalltlak、又はEiffelのよう
なオブジェクト志向プログラミング言語の構文法を使用
するソースコードで規定されている。クラスは、少なく
とも三つの形式の構成要素、すなわち、変数、変数で動
作する方法、およびインターフェース、を指定する。ク
ラスは通常、たとえば、図6(A)に示したように、階
層を成して規定されている。階層は、方法の割り当てお
よび機能の進化を考慮している。
【0059】オブジェクトは、そこからオブジェクトが
規定されたクラスの事例である。オブジェクトは、実行
時間中に具体化( instantiation)されることにより成
立する。子のオブジェクトの具体化は、子のオブジェク
トに対する変数およびポインタを記憶するためのデータ
メモリの他に、クラス階層で子より上にあるすべての親
のオブジェクトにより規定される変数およびポインタの
メモリの割り当ておよび初期設定に関係している。
【0060】オブジェクト志向プログラミング言語は、
クラスのロードおよび動的リンクと協働して、実行時間
中にクラス階層の修正を支持する。たとえば、基礎のク
ラスを使用して、獲得されるクラスを規定することがで
き、この場合獲得クラスは、(a)既に基礎クラスで規
定されているオブジェクトに対する別の方法(過負荷
( overloading))、(b)基礎クラスで規定された方
法の代わりに使用されるべき新しい代替方法(無効( o
verriding ))、(c)既に規定されている(本来の)
方法を利用する新しいオブジェクト、(d)動的リンク
中に方法の継承(inheritance)が修正されるように既
に規定されているオブジェクト間の階層関係の交換、又
は(e)これら技法のある組合せ、を備えている。修正
されたクラスは、修正されたクラスのオブジェクトが具
体化され、動的に拘束されているとき機能進化を与え
る。
【0061】クラスは、各方法について仕様および恐ら
くは実施法(翻訳可能な又は実行可能なプログラム・コ
ード)を規定することにより方法を規定する。仕様は、
情報( signature)および方法を行なうとき生ずること
のある(オーバフローなどのような)例外的状態に対す
る設備を備える。情報は、方法の名称、その趣旨の名称
および形式、およびその返戻値(存在すれば)の形式を
含む。方法の実施法(翻訳可能な又は実行可能なプログ
ラム・コード)には少なくとも一つの入り口点( entry
point)、すなわち、メモリ・アドレス又は作業(実行
又は翻訳)が開始される場所を識別するオフセット、が
ある。仕様に実行される方法が付随していないときは、
方法は仮想機能と言われる。インターフェースから得る
クラスで規定されるオブジェクトは、まとめて仮想機能
表と言われるポインタを介して協働する。ある実行時間
の環境では、仮想機能表はオブジェクトが具体化された
とき割り当てられるデータ構造の一つである。仮想機能
表には実行時間に決定された入り口点の値に対するポイ
ンタ変数、入り口点をオフセットするときコンパイル時
に予測できるポインタ定数、又は変数および定数の組合
せが入っている。
【0062】特定の方法とオブジェクトとの関連を拘束
という。拘束は、少なくとも部分的に実行時に行なわれ
るとき、動的拘束といわれる。特定のオブジェクトの方
法が動的に拘束されているとき、入り口点の値が特定の
オブジェクトの仮想機能表にある適切なポインタ変数に
割り当てられる。その後、仮想機能表の間接的な参照に
より方法の実行が始まる。方法にとってどの入り口点が
適切であるかの決定は、最初の合致が見つかるまで、方
法の情報(又は単に名称)を(特定のオブジェクトから
始めて)クラス階層内のすべての方法の情報(又は名
称)と比較することにより行なわれる。クラス階層内に
存在することがある別の合致の可能性に関係なく最初の
合致を選択することにより、特定のオブジェクトの挙動
が、無効、過負荷、又は継承により別のオブジェクトの
挙動を共有することにより、多形性を示す。
【0063】オブジェクト志向の実行時間の環境は、た
とえば、直接実行により又は翻訳により、実行時間の多
形性を支持する。たとえば、ソフトウェア・システム2
00、300、および400は、CおよびC++プログ
ラミング言語で開発された実行可能なプログラム・ファ
イルおよびリアルタイムの動作システムなどのオブジェ
クト志向の実行時間環境を備えている。更に、印刷ピア
256は、クラス・ローダおよび通常のJava仮想機
械(JVM, Java Virtual Machine)を備えている。ク
ラス・ローダは、通常のJavaプログラミング言語で
開発されたクラス規定を認識し、それらをJVMによる
翻訳のために準備する。JVMは、(クラス・ローダに
よりロードされた)クラスにより記述されたオブジェク
トを具体化し、具体化されたオブジェクトの方法を行な
うことによりプリンタのピア(同位)機能を行なう。オ
ブジェクトの方法を行なう前に、方法を入り口点に関連
づけねばならない。このような関連づけのプロセスは、
オブジェクトが具体化される時刻に、又はオブジェクト
の特定の方法を行なおうとする直前に、通常の動的拘束
を備える。
【0064】アクセス・プロセス253は、仲介スタブ
・プロセス252および254と協働してプリンタ11
2のプリンタ機能を公開しPC110により使用される
ようにし、PC110の機能を公開してプリンタ112
により使用されるようにする。PDLプロセス242
は、翻訳可能なプログラム・コード(バイトコード)で
実施するオブジェクトのクラスを備えている。レンダリ
ング・プロセス246およびラスタ化プロセス248
は、オブジェクト志向プログラミング言語に関係なく開
発された実行可能なプログラム・コードで表された継承
( legacy )サブルーチンを備えている。固有代用25
8は、プロセス246および248において入り口点を
見分け、PDLプロセス242のクラスにおける仕様に
より与えられたクラス・インターフェースと同様の書式
の継承クラス・インターフェースを与える。したがっ
て、印刷ピア・プロセス256は、PDLプロセス24
2のクラスばかりでなく継承レンダリング・プロセス2
46および継承ラスタ化プロセス248のクラスをも一
様参照することができる。
【0065】仲介スタブは、オブジェクト資源の仲介を
行なうプロセスである。たとえば、仲介スタブ・プロセ
ス252および254は、通常のオブジェクト資源の仲
介設備、たとえば、リモート手続きの呼出し(RPC,
remote procedure call )、Javaソフト会社により
市販されているリモート方法呼出し(RMI, remoteme
thod invocation)、オブジェクト管理グループ(産業
組合)により規定されているCORBA規格、又は、Mi
crosoft社により市販されている分布共通オブジェクト
モデル(DCOM)、の技法から発展し、これと適合す
る仲介設備、を備えている。このような仲介設備には、
(a)ネットワークの他の構成要素( member )のクラ
スの識別、(b)ネットワークの構成要素の間のクラス
規定(データ構造)の転送、および(c)例外状態(ネ
ットワークのノードの利用不能、クラスが見つからな
い、など)の通知、のための仲介メッセージの転送手段
がある。他に、仲介は、クラス規定を受取るためのメモ
リの割り当て、クラス規定を受信側のクラス階層に組込
むためのクラス・ローダとの協働およびびクラス規定の
オブジェクトの具体化、方法の動的拘束、およびクラス
規定に従う方法の実行、のための仮想機械との協働が関
係している。方法の情報がネットワークの他の構成要素
に伝えられてしまったとき、方法は公開されるといわれ
る。受け取った構成要素は、このときオブジェクト資源
の仲介の途中で受取った実施のコピーを行なうことによ
り、それら互いに無関係の目的のために方法を利用でき
るようになる。PC110によるプロセスの公共的方法
は、仲介スタブ・プロセス252により公開され、たと
えば、レンダリング・プロセス208、ラスタ化プロセ
ス210、PDLプロセス226、又は他の役立つ方法
がプリンタ112に利用可能になる。
【0066】第2の分布処理アプリケーション・プログ
ラムは、印刷サーバにより支持されているプリンタの進
化機能を助長するプログラムである。図3は、図1にお
けるコンピュータ・システムの第2のサブシステム10
4を使用する表示及び印刷の方法を示すフローチャート
である。たとえば、ソフトウェア・システム300は、
サーバ126により支持されているプリンタ124およ
び134の進化機能を助長する。下記に示すものを除い
て、ソフトウェア・システム300のプロセスは、ソフ
トウェア・システム200のプロセスにおいて100小
さい番号の付いたものと機能的および構造的に同一であ
る。
【0067】ソフトウェア・システム300は、PC1
20およびプリンタ124および134に一組の構成要
素プロセスおよびデータ項目を備えている。PC120
において、ソフトウェア・システム300は、グラフィ
カル・ユーザ・インターフェース(GUI)302と、
ユーザ・プログラム304と、ビデオ・パイプ305
と、PC印刷駆動装置372と、PC字体データ314
と、PC通信プロセス373とを備えている。サーバ1
26において、ソフトウェア・システム300は、通信
スタブ・プロセス378と、動作システム印刷パイプ3
25と、サーバ印刷パイプ317と、通信プロセス33
1とを備えている。プリンタ124では(および同様に
別に図示してないプリンタ134では)、ソフトウェア
・システム300は更に、プリンタ通信プロセス341
と、プリンタ字体データ344と、プリンタ印刷パイプ
343と、アクセス・プロセス353とを備えている。
【0068】ソフトウェア・システム200の印刷駆動
装置220の機能は、PC印刷駆動装置372とサーバ
印刷駆動装置382との間で通常の仕方で分割されてい
る。たとえば、PC印刷駆動装置372は、伝達すべき
共通の書式データをサーバ印刷駆動装置382に与え
る。サーバ126で実行されるサーバ印刷駆動装置38
2は、PC120にかかる計算負荷を少なくするように
プリンタ124又は134に対して独特の機能および他
の動作を行なう。PC印刷駆動装置372は、通信スタ
ブ378と協働して共通書式で表されたデータをOpS
ys印刷パイプ321に又はサーバ印刷パイプ317に
伝える。
【0069】ソフトウェア・システム300の通信スタ
ブ・プロセスは、ネットワークおよび専用リンクに対し
て適切な通信プロトコルの支持を与える。たとえば、プ
ロセス376および378は、リンク121を支持し
(図1に示す)、プロセス383および340は、プリ
ンタ124用リンク123およびプリンタ134用リン
ク133を支持する。リンク133を(一様性のため
の)ネットワーク・リンク又は(安全、速度、又は保守
の目的の)専用リンク、としてよい。リンクの通信プロ
トコルには、たとえば、ethernet、TCP/IP( Tra
nsmission ControlProtocol/Internet Protocol)、H
TTP( Hypertext Transfer Protocol)、および上に
説明したSNMPがある。リンク123および133の
変形では、別の(代わりの又は重畳)リンク・プロトコ
ルが通常の技法を使用して実施されている。
【0070】ソフトウェア・システム300の仲介スタ
ブ・プロセスは、ソフトウェア・システム200につい
て説明した形式のオブジェクト資源の仲介を行なう。た
とえば、ソフトウェア・システム300における資源の
仲介は、プリンタ124および134の機能をサーバ1
26におよびPC120に公開し、PC機能をサーバ1
26におよびプリンタ124および134に公開する。
【0071】ソフトウェア・システム300では、サー
バ印刷駆動装置382は、ソフトウェア・システム20
0を参照して説明した機能進化と同様の仕方で機能進化
を示す。たとえば、PC印刷駆動装置372からのクラ
スをサーバ126に転送してサーバ印刷駆動装置382
を規定する又は修正することができる。
【0072】第3の分布処理アプリケーション・プログ
ラムは、ユーザの相互作用なしでリンクを創始又は維持
するプリンタの進化機能を助長するプログラムである。
図4は、図1におけるコンピュータ・システムの第3の
サブシステム106を使用する表示及び印刷の方法を示
すフローチャートである。たとえば、ソフトウェア・シ
ステム400は、サーバ126により支持されるプリン
タ144の進化機能を助長する。下記に示すことを除い
て、ソフトウェア・システム400のプロセスは、ソフ
トウェア・システム200において200小さい番号、
およびソフトウェア・システム300において100小
さい番号の付いたプロセスと機能的および構造的に同一
である。
【0073】ソフトウェア・システム400は、サーバ
126およびプリンタ144に一組みの構成要素プロセ
スおよびデータ項目を備えている。サーバ126におい
て、ソフトウェア・システム400は、設置先マネージ
ャ485と、ページ・バンク484と、ページ・パイプ
489と、通信プロセス429とを備えている。プリン
タ144において、ソフトウェア・システム400は、
プリンタ通信プロセス445と、プリンタ印字データ4
44と、プリンタ印刷パイプ487と、アクセス・プロ
セス453とを備えている。
【0074】設置先マネージャは、ネットワーク・アド
レスにより識別され、データをリンクにより供給するプ
ロセスである。たとえば、設置先マネージャ485は、
HTTPを使用して要求を受け、HTMLに従ってメッ
セージ又はファイルとして「ページ」を送信することに
よって応答するURL( uniform resource locator)
により識別される通常の設置先マネージャである。デー
タは、完全なアドレス、部分的なアドレス、一組みのサ
ーチ規準、又は前に識別されたページからのリンクの結
果としての指定などの通常の技法により、要求される。
データ転送は、通常の技法、たとえば、TCP/IPに
より行なわれる。加えて、設置先マネージャ・プロセス
485は、通常のネットワーク管理能力、たとえば、フ
ァイル・サーバ、データベース・システム、又はインタ
ーネット若しくは全世界的ネットワークの構成要素とし
て動作する能力を備えている。
【0075】ページ・パイプは、サーバ印刷パイプ31
7のような単純な印刷パイプに類似の方法で、データを
待ち行列に与える。たとえば、ページ・パイプ498
は、データを待ち行列422に与えるページ駆動装置4
86を備えている。ページ駆動装置は書式に無関係のペ
ージ待ち能力を与える。たとえば、ページ駆動装置プロ
セス486は、HTMLのファイル発生器および待ち行
列マネージャを与える。ページ・バンク484が既にH
TML書式になっている一つ以上のページを備えている
とき、ページ駆動装置は要求されたページを単に待つだ
けである。他の場合には、HTMLで表されたメッセー
ジは、ページ・バンク484又は設置先マネージャ48
5、仲介スタブ474又は図示されていないサーバ動作
システムにより与えられる情報のようなシステム情報、
から定式化される。
【0076】通信プロセス429は、図2を参照して説
明したPC通信プロセス229を簡略化した類似のもの
である。通信プロセス429は、ポート・モニタ424
と、通信スタブ428と、仲介スタブ・プロセス474
とを備えている。ページ記述言語プロセスは、ページ駆
動装置486がHTML書式で表されたデータを与え、
TCP/IPに対する支持が通信スタブ428により与
えられるので、通信プロセス429から省略されてい
る。仲介スタブ・プロセス474の構造および機能は、
図2を参照して説明した仲介スタブ252と同様であ
る。仲介スタブ・プロセス474は、設置先マネージャ
485、ページ駆動装置486、又は図示してないサー
バ動作システムの公開方法(存在すれば)へのアクセス
を行なう。
【0077】通信プロセス429は、通信プロセス44
5と協働してリンク140を支持する。通信プロセス4
45は、通信スタブ・プロセス440と、設置先ポール
488と、仲介スタブ454とを備えている。設置先ポ
ール・プロセスは、リンクによりデータの要求を開始す
ることができるブラウザ又はファイル転送機能体であ
る。たとえば、設置先ポール・プロセス488は、通常
のネットワーク・ブラウザ又はファイル転送機能体を備
えており、さらに必要ならば、ユーザによる人手の介入
なしに、一日の所定時刻に所定ページ(又はサーチ規
準)に関する要求を呼び出すシェル( shell)又はスク
リプト( script )と共にMicrosoft又はNetscapeによ
り市販されている形式のブラウザを備えている。
【0078】通信スタブ・プロセス428,440と、
仲介スタブ・プロセス474,4454とは、上に説明
したように、通常のデータ通信、およびオブジェクト資
源の仲介能力、たとえば、プリンタ144の機能をサー
バ126に公開する能力およびサーバ126の機能をプ
リンタ144に公開する能力を備えている。
【0079】分布処理アプリケーション・プログラム
は、上述のように、PC、サーバ、またはプリンタのメ
モリを占有し、一般にメモリ割当て図により示される。
図5は、本発明の一実施形態によるプリンタの計算回路
におけるアドレス空間のメモリ割当てを示す図である。
たとえば、メモリ割当て図500は、一般に本発明の一
実施形態におけるどれか一つのプリンタ112、12
4、134、又は144のメモリの一部に対応する。メ
モリ割当て図500は、ソフトウエア・システム20
0、300、又は400の適切な構成要素を備えてい
る。不揮発性メモリ510のアドレス空間は、パワーが
加えられたとき動作するファームウェアを備えている。
空間520は、オブジェクト志向の実行時間システムを
有するプリンタ動作システムのカーネルを備えている。
必要なら、プリンタ動作システムのカーネルは、通信ス
タブ240,340,440のファームウェアと、Wind
Rivwe Systems Iinc.によりVxWorksとして市販
されている種類の埋め込み動作システムと、クラス・ロ
ーダと、およびJava仮想機械(JVM)とを備えて
いる。JVMは、適時コンパイルを行なう形式の通常の
プロセッサ(ファームウェアおよび/又はハードウェ
ア)を備えている。印刷プロセス250,350,45
0のような印刷プロセスは、空間522(印刷エンジン
制御)を占有している。レンダリング・プロセス24
6,346,446およびラスタ化プロセス248,3
48,448は空間524(書式化)を占有している。
【0080】メモリ・マネージャ・プロセスは、空間5
62を占有している。メモリ・マネージャは、個性( p
ersonality)562および字体564のようなダウンロ
ードされた項目を見分け、空間562から570までご
み収集(参照しなかったメモリの再割当て)を行なう通
常のファームウェアを備えている。
【0081】空間528,530,532は、組込み
(すなわち、固有の)機能のために取っておかれる。そ
れらの空間には、PDLプロセス242又は342(個
性)が組込まれる。また、字体データベース244、3
44、および444(字体)が組込まれる。また、カー
ネルのクラスの実施を行う部分、クラス・ローダ、JV
M、固有代用(258,358,458)、印刷ピア
(256,356,456)、および仲介スタブ(25
4,354,454)が組込まれる。
【0082】アドレス空間534,536,538,5
40は、追加される個性(PDLの能力)、字体、およ
びプリンタ144における設置先ポール488と印刷駆
動装置プロセス420のためのクラスのようなJava
クラスなどの不揮発性の拡張能力のためにプログラムさ
れる記憶装置のインストールのために取ってある。
【0083】上に説明した実施形態に対する揮発性メモ
リ512のアドレス空間は、パワーを加えてから初期設
定される区域を備えている。空間552は、共通変数、
および主としてカーネルのファームウェアにより使用さ
れるスタックのために取っておかれる。ページ識別バッ
ファ558は、PDLプロセス242、342、又は待
ち行列422により与えられる中間データのビットマッ
プ書式の項目のために作業用メモリを備えている。ペー
ジ・バッファ554は、レンダリング・プロセス24
6,346,446により与えられる画像データとして
識別される画像配列のための作業用メモリを備えてい
る。ラスタ・バッファ552は、ラスタ化プロセス24
8,348,448により与えられる走査線のページ又
はバンドのための作業用メモリを備えている。空間56
0にある通信バッファは、通信スタブ240,340,
440、および仲介スタブ254,354,454によ
り割り当てられるメモリを支持する。
【0084】空間562、564、および566は、個
性(PDLを支持するプロセス)、字体、およびJav
aクラスのどんな組合せも従来のページ記述言語のデー
タ移動機構又は上述の仲介スタブ機構によりダウンロー
ドする可能性を示す。特定のロードされた項目が現在参
照されていなければ、ごみ収集はその項目が使用するメ
モリを再使用できるようにする。断片のメモリのアドレ
ス空間は、ごみ収集プロセスにより合体され、ダウンロ
ードされる項目および具体化されるオブジェクトはもっ
と大きいアドレス空間を利用できる。
【0085】空間568は、変数、仮想機能表、および
他のデータ構造のための空間を含む具体化されたオブジ
ェクト用のメモリを示す。揮発性メモリの空間568に
ある仮想機能表のポインタ値は、不揮発性メモリ(たと
えば、空間524、528、532、534、および5
38にある)および/又は揮発性メモリ(たとえば、空
間562、566、および568にある)に記憶されて
いる方法の実施形態の入り口点(たとえば、物理的アド
レス)の値との動的拘束により設定される。
【0086】進化するプリンタは、修正されたクラス規
定に応答する。図6および図7は、本発明の一実施形態
によるプリンタのプログラムのクラス階層を示す図であ
る。たとえば、一実施形態の進化するプリンタ112,
124,134,144は、図6(A),(B)および
図7の階層図に示したように修正されたクラス規定に応
答する。修正クラス規定は、図2を参照して下に示す本
発明の方法に従って準備され、印刷に使用される。
【0087】1.PCにおける印刷駆動装置220は、
現在利用可能な(組込まれた又はインストールされてい
る)プリンタ機能を調べる必要性があると、クラス内の
すべての方法の情報のために、仲介スタブ252および
254を介してクラス名によって要求を伝える。オブジ
ェクト.構成要素.容器.図形.印刷ピア
【0088】2.印刷ピア256は、ビデオ描画方法が
役立つことを知っており、クラス内のすべての方法の情
報のために、仲介スタブ254および252を介してク
ラス名によって要求を伝える。オブジェクト.構成要
素.容器.図形.ビデオ・クラス
【0089】3.仲介スタブ252は、レンダリング・
プロセス208から公開された公然の方法回転、描画_
三角形(等辺)、および描画_星(6点星)を含む第2
の方法を備えたクラス規定600で応答する。
【0090】4.印刷ピア256は、クラス規定600
により受取った公然の方法の実施形態のコピーを備えた
オブジェクトの事例である修正クラス規定620を創
る。これらの実施形態は、印刷ピアのオブジェクトから
又はビデオのオブジェクトから適切に継承される描画_
線のような原子方法( atomic method)に頼っていると
仮定されている。クラス・ローダは、クラスを揮発性メ
モリのアドレス空間566に配置する。図5を参照。
【0091】5.印刷ピア256は、クラス規定600
の各共有方法に対する代用を備えた修正クラス規定64
0を創る(各代用は、適切なPDL命令を発して下層の
印刷ピアの方法を呼び出す)。
【0092】6.仲介スタブ254は、修正クラス規定
640を仲介スタブ252に戻し、ユーザ・プログラム
204が星画像の項目を効率よく印刷できるようにす
る。
【0093】7.星画像の項目の発生を導くPDL命令
を受取ると、レンダリング・プロセス246は、クラス
規定620の印刷ピアの描画_星を参照する。
【0094】8.クラス規定620の印刷ピアのオブジ
ェクトを具体化する。
【0095】9.具体化されたオブジェクトの動的拘束
は、描画_星の方法に対するプログラムの流れを描画_
三角形および回転の方法に導く(すなわち、ポインタが
空間566のアドレスに割り当てられる)。
【0096】10.具体化されたオブジェクトの動的拘
束は、原子描画_線の方法(レンダリング_三角形に必
要)を組込まれている描画_線の方法に導く(すなわ
ち、ポインタを空間524内のアドレスに割り当て
る)。および
【0097】11.レンダリング・プロセス246は、
受取った描画_星の実施のJVMの翻訳および空間52
4の固有の継承コードを使用して星の画像を作製する。
空間524のコードは、近隣画素への適応、たとえば、
縁辺強調技術、などの印刷エンジンの物理的属性、を考
慮する方法で描画_線を実施する。
【0098】本発明の別の方法によるWYSIWYG画
像の印刷は、下記ステップを備えている。
【0099】1.表示された(又は表示可能な)フレー
ム(容器クラスのオブジェクト)の内容を無効にするス
テップ、
【0100】2.画面の再レンダリングのオブジェクト
の出力を、たとえば、代用の再印刷の獲得されたオブジ
ェクトの下級クラスを作ることにより、進化するプリン
タ機能を支持する印刷パイプに導くステップ、オブジェ
クト.構成要素.容器.図形.印刷ピア(したがって原
子レベルの印刷出力方法を継承する)および
【0101】3.代用の再印刷のオブジェクトを作動さ
せ、それにより画像を印刷するステップ。
【0102】これまでの説明は、本発明の公然の実施形
態を説明するものであり、本発明の範囲を逸脱すること
なく変更又は修正可能である。たとえば、プリンタ機能
を行なう指令を備えたプログラム・コードをEEPRO
M、EPROM、ROM、CDROM、又はハード・デ
ィスク、フレキシブル・ディスク、又はテープなどのど
んな通常の記憶装置にも記憶することができる。このよ
うな媒体には、圧縮書式および保障書式などの書式で表
したしるしがある。プリンタ機能には、ここに記したよ
うに、印刷出力を発生することに依存するアクセスたと
えば印刷ピア・プロセス256、356、又は456、
通信プロセス、レンダリング・プロセス、およびラスタ
化プロセス(書式設定)など、および当業界に既知の通
常の機能がある。
【0103】これらのおよび他の変形例および修正案
は、本発明の範囲内に入れるつもりである。説明を明瞭
にするためおよび説明しやすくするために、本発明の幾
つかの特定の実施形態を説明してきたが、本発明の範囲
を下に示した特許請求の範囲により判断するつもりであ
る。説明を徹底的にしたり、又は本発明を開示した形態
に限定したりするつもりはない。本発明の別の変形案が
当業者には本発明の開示および実施に照らして明らかで
あろう。
【0104】以下に本発明の実施の形態を要約する。
【0105】1. 所与のコンピュータ(110、12
6)上で前記コンピュータに結合しプリンタの機能を有
する所与のプリンタ(112、124、134、14
4)の機能を進化させる第1の方法を実行するための指
令を備えた記録されたしるしを有する記録済みデータの
記憶媒体であって、前記第1の方法が、前記プリンタに
おいて、第2の方法(619)を備えたクラス規定(6
00)を受取るステップと、前記クラス規定に応じて、
オブジェクトの事例(620)を形成するステップと、
前記プリンタ機能が前記第2の方法に従って行なわれる
ように前記オブジェクトを拘束し、それにより機能進化
を達成するステップと、を備えているものである記録済
みデータの記憶媒体。
【0106】2. 前記第1の方法が更に、前記クラス
規定を要求するステップを備えているものである上記1
に記載の記録済みデータの記憶媒体。
【0107】3. 前記プリンタが更に、第1のクラス
の名称を有する第1のクラス規定を備え、前記クラス規
定を要求するステップが前記第1のクラスの名称を有す
る上記1に記載の記録済みデータの記憶媒体。
【0108】4. 前記第1のクラス規定は、前記プリ
ンタ機能を実施する第1の方法を備え、前記拘束は前記
第1の方法を無効にする上記1に記載の記録済みデータ
の記憶媒体。
【0109】5. 前記クラス規定の要求は、SNM
P、HTTP、ページ記述言語、RPC、リモート方法
呼出し、およびCORBAから成るグループの通信プロ
トコルに適合している上記4に記載の記録済みデータの
記憶媒体。
【0110】6. 前記クラス規定は、SNMP、HT
TP、ページ記述言語、RPC、リモート方法呼出し、
およびCORBAから成るグループの通信プロトコルで
受取る上記1に記載の記録済みデータの記憶媒体。
【0111】7. プリンタ機能は、プリンタにおいて
データを受取るための指令を備えている上記1に記載の
記録済みデータの記憶媒体。
【0112】8. 受取るステップは、ページ記述言語
に従う方法を備えている上記1に記載の記録済みデータ
の記憶媒体。
【0113】9. 受取るステップは、ネットワーク管
理の通信プロトコルに従う方法を備えている上記1に記
載の記録済みデータの記憶媒体。
【0114】10. プリンタ機能にアクセスする方法
を行なうための指令を備えた記録されたしるしを有する
記録済みデータの記憶媒体であって、前記プリンタ機能
にアクセスする方法がクラス規定を前記プリンタから伝
えることを含み、前記クラス規定がプリンタ機能の識別
を有するものであることを特徴とする記録済みデータの
記憶媒体。
【0115】
【発明の効果】本発明によれば、プリンタのアドレス空
間の制限なくプリンタの機能を進化させることができ
る、記録済みデータの記憶媒体を提供することができ
る。
【図面の簡単な説明】
【図1】本発明の一実施形態におけるコンピュータ・シ
ステムのブロック図である。
【図2】図1におけるコンピュータ・システムの第1の
サブシステムを使用する表示及び印刷の方法を示すフロ
ーチャートである。
【図3】図1におけるコンピュータ・システムの第2の
サブシステムを使用する表示及び印刷の方法を示すフロ
ーチャートである。
【図4】図1におけるコンピュータ・システムの第3の
サブシステムを使用する表示及び印刷の方法を示すフロ
ーチャートである。
【図5】本発明の一実施形態によるプリンタの計算回路
におけるアドレス空間のメモリ割当てを示す図である。
【図6】本発明の一実施形態によるプリンタのプログラ
ムのクラス階層を示す図である。
【図7】本発明の一実施形態によるプリンタのプログラ
ムのクラス階層を示す図である。
【符号の説明】
100 コンピュータ・システム 102,104,106 サブシステム 108,118 モニタ 110,120 PC 112,124,134,144 プリンタ 113,121,123,133,143 リンク 114,130,132,142 ネット・インターフ
ェース 116,122,140 ネットワーク・リンク 126 サーバ 200 ソフトウエア・システム 202 GUI 204 ユーザ・プログラム 205 ビデオ・パイプ 206 ビデオ駆動装置 208,246 レンダリング 210,248 ラスタ化 212 表示 214 PC字体データベース 219 PC印刷パイプ 220 印刷駆動装置 221 OpSys書式化 222 待ち行列 223 OpSys待ち行列 224 ポート・モニタ 225 動作システム印刷パイプ 226,242 PDL 228,240 通信スタブ 229 PC通信プロセス 241 プリンタ通信プロセス 243 プリンタ印刷パイプ 244 プリンタ字体データベース 250 印刷 252,254 仲介スタブ 253 アクセス・プロセス 256 印刷ピア 258 固有代用

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 所与のコンピュータ(110、126)
    上で前記コンピュータに結合しプリンタの機能を有する
    所与のプリンタ(112、124、134、144)の
    機能を進化させる第1の方法を実行するための指令を備
    えた記録されたしるしを有する記録済みデータの記憶媒
    体であって、前記第1の方法が、 前記プリンタにおいて、第2の方法(619)を備えた
    クラス規定(600)を受取るステップと、 前記クラス規定に応じて、オブジェクトの事例(62
    0)を形成するステップと、 前記プリンタ機能が前記第2の方法に従って行なわれる
    ように前記オブジェクトを拘束し、それにより機能進化
    を達成するステップと、を備えているものであることを
    特徴とする記録済みデータの記憶媒体。
JP10351540A 1997-12-11 1998-12-10 記録済みデータの記憶媒体 Pending JPH11249838A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/989-258 1997-12-11
US08/989,258 US6031623A (en) 1997-12-11 1997-12-11 Computer system with evolving printer

Publications (2)

Publication Number Publication Date
JPH11249838A true JPH11249838A (ja) 1999-09-17
JPH11249838A5 JPH11249838A5 (ja) 2004-07-22

Family

ID=25534917

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10351540A Pending JPH11249838A (ja) 1997-12-11 1998-12-10 記録済みデータの記憶媒体

Country Status (4)

Country Link
US (1) US6031623A (ja)
EP (1) EP0926593B1 (ja)
JP (1) JPH11249838A (ja)
DE (1) DE69832462T2 (ja)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581092B1 (en) * 1999-09-29 2003-06-17 Ricoh Co., Ltd. Method and system for remote diagnostic, control and information collection based on various communication modes for sending messages to users
US6260044B1 (en) 1998-02-04 2001-07-10 Nugenesis Technologies Corporation Information storage and retrieval system for storing and retrieving the visual form of information from an application in a database
US20030009464A1 (en) * 1998-10-02 2003-01-09 Campbell Rene L. System and method for managing computer and phone network resources
US6604111B1 (en) * 1998-12-17 2003-08-05 International Business Machines Corporation Method and system for spooling virtual machine data-presentation jobs via creation of an executable file
US6609153B1 (en) 1998-12-24 2003-08-19 Redback Networks Inc. Domain isolation through virtual network machines
US6762851B1 (en) 1998-12-30 2004-07-13 Pitney Bowes Inc. Method and system for print stream job determination and analysis
US6433881B1 (en) * 1998-12-30 2002-08-13 Pitney Bowes Inc. Method of establishing a set of print stream objects in an object oriented environment
US6657744B2 (en) 1998-12-30 2003-12-02 Pitney Bowes Inc. Message structure for a print stream determining and analysis system
US6581097B1 (en) 1998-12-30 2003-06-17 Pitney Bowes Inc. Method and system of determining a job ticket for a print stream determining process
AU2883000A (en) 1999-02-17 2000-09-04 Diebold Incorporated Method and system for connecting services to an automated transaction machine
US6488423B1 (en) 1999-11-03 2002-12-03 Toshiba Tec Kabushiki Kaisha Synchronous printing
US7143150B1 (en) * 1999-12-09 2006-11-28 Ricoh Company, Ltd. Method of configuring a computer to include the available options of a printer
US7133873B1 (en) * 1999-12-14 2006-11-07 United Parcel Service Of America, Inc. System and method for modifying output of computer program without source code modifications
US7082436B1 (en) 2000-01-05 2006-07-25 Nugenesis Technologies Corporation Storing and retrieving the visual form of data
US6615372B1 (en) * 2000-02-22 2003-09-02 Ricoh Company, Ltd. Method of retrieving and displaying problematic information about a printer prior to a print job being printed on the printer
US7123372B2 (en) * 2000-06-22 2006-10-17 Konica Corporation Image forming apparatus administration system
AU2001288344A1 (en) * 2000-08-21 2002-03-04 Bsquare Corporation Method and apparatus for producing functionality and user interfaces for deviceshaving an embedded operating system
JP2002091732A (ja) * 2000-09-14 2002-03-29 Minolta Co Ltd 記録媒体、プリンタ制御方法、プリンタ制御システム
US7002703B2 (en) * 2001-01-18 2006-02-21 Hewlett-Packard Development Company, L.P. Automatic download to print job retention
JP2002230195A (ja) 2001-01-30 2002-08-16 Konica Corp 管理システム、管理装置、中継サーバー、被管理装置及び管理方法
US7773240B2 (en) * 2001-05-18 2010-08-10 Hewlett-Packard Development Company, L.P. Image forming devices and methods of assisting with maintenance of image forming device consumables
US20030184782A1 (en) * 2002-03-27 2003-10-02 Perkins Gregory E. Printer driver configured to dynamically receive printer self-description
US8051131B2 (en) * 2002-06-12 2011-11-01 Hewlett-Packard Development Company, L.P. E-mail addressing and document management
DE10250189A1 (de) * 2002-10-28 2004-05-13 OCé PRINTING SYSTEMS GMBH Verwaltung einer Steuervariablen eines Drucksystems mit Hilfe einer Datenbasis
JP4250408B2 (ja) * 2002-11-29 2009-04-08 キヤノン株式会社 画像供給デバイス、記録装置及び記録システムとその制御方法
US20040160623A1 (en) * 2003-02-18 2004-08-19 Michael Strittmatter Wireless device imaging
US7529823B2 (en) * 2003-03-27 2009-05-05 Microsoft Corporation Notifications for shared resources
JP4444752B2 (ja) * 2003-09-11 2010-03-31 株式会社リコー サービス提供装置、サービス提供プログラム、記録媒体及びサービス提供方法
JP2006110861A (ja) * 2004-10-14 2006-04-27 Canon Inc 画像形成装置、画像形成方法及びそのプログラム
US7525685B2 (en) * 2004-10-27 2009-04-28 Avago Technologies General Ip (Singapore) Pte. Ltd. True-color computer monitor preview of a color print
US8296741B1 (en) * 2007-03-05 2012-10-23 Google Inc. Identifying function-level code dependency by simulating runtime binding
US8769518B1 (en) * 2010-06-29 2014-07-01 Ca, Inc. Ensuring determinism during programmatic replay in a virtual machine
US9152437B2 (en) * 2010-10-28 2015-10-06 Hewlett-Packard Development Company, L.P. Dynamically installing image processing
US10540148B2 (en) * 2014-06-12 2020-01-21 Oracle International Corporation Complex constants

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4999766A (en) * 1988-06-13 1991-03-12 International Business Machines Corporation Managing host to workstation file transfer
EP0501613A3 (en) * 1991-02-28 1993-09-01 Hewlett-Packard Company Heterogeneous software configuration management apparatus
US5339430A (en) * 1992-07-01 1994-08-16 Telefonaktiebolaget L M Ericsson System for dynamic run-time binding of software modules in a computer system
US5515536A (en) * 1992-11-13 1996-05-07 Microsoft Corporation Method and system for invoking methods of an object through a dispatching interface
US5566278A (en) * 1993-08-24 1996-10-15 Taligent, Inc. Object oriented printing system
US5550957A (en) * 1994-12-07 1996-08-27 Lexmark International, Inc. Multiple virtual printer network interface
US5636333A (en) * 1994-12-20 1997-06-03 Lexmark International, Inc. Multi-protocol network interface
US5572643A (en) * 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking
JP3466808B2 (ja) * 1996-02-29 2003-11-17 キヤノン株式会社 画像処理装置及び方法
US5844554A (en) * 1996-09-17 1998-12-01 Bt Squared Technologies, Inc. Methods and systems for user interfaces and constraint handling configurations software
US5870544A (en) * 1997-10-20 1999-02-09 International Business Machines Corporation Method and apparatus for creating a secure connection between a java applet and a web server

Also Published As

Publication number Publication date
EP0926593B1 (en) 2005-11-23
DE69832462D1 (de) 2005-12-29
US6031623A (en) 2000-02-29
DE69832462T2 (de) 2006-08-24
EP0926593A2 (en) 1999-06-30
EP0926593A3 (en) 2003-04-09

Similar Documents

Publication Publication Date Title
EP0926593B1 (en) Computer system with evolving printer
US5982996A (en) Mechanism for printer driver switching in windows operating systems to allow distribution of print jobs to an output device from a single print request within an application
USRE37258E1 (en) Object oriented printing system
US6006281A (en) Network printing system with data merge feature
US7102768B2 (en) Printer drivers using filters that are operating system-independent and printer-independent
US7755786B2 (en) Systems and methods for support of various processing capabilities
US20090094539A1 (en) Controlling a computer peripheral device using a universal driver and device-generated user interface information
JP3201515B2 (ja) 印刷データ生成装置、印刷データ生成方法、印刷装置及び印刷システム
JP2001199105A (ja) 可変データ・パブリッシング印刷装置
US20030090694A1 (en) Just-in-time printer discovery and driver installation system and method
US8020170B2 (en) Information processing apparatus, method of operating it, and computer readable information recording medium
JPH10133987A (ja) クライアントサーバシステム、クライアント装置、サーバ装置、データ処理方法、プログラム作成装置および方法、情報記憶媒体
US5857064A (en) System for imaging complex graphical images
EP1241575A2 (en) System and method for distributed processing
JP4590080B2 (ja) プリンタシステム及びその制御方法
US20120218585A1 (en) Image forming method and system using xhtml-print data
US5592654A (en) Apparatus and method for converting a job conforming to a first protocol into a job conforming to a second protocol
JP2009251931A (ja) 画像形成システム及び制御方法
CN114579065A (zh) 一种云桌面的打印机重定向方法及系统
JP2001243157A (ja) ネットワークシステム、ダウンロード装置、サーバ、ネットワーク管理方法
JPH11143670A (ja) インターネット情報印刷システム
JPH1173381A (ja) 画像送信装置、画像受信装置および画像処理システム、並びに文書・画像フォーマット
JP2003533798A (ja) ディジタル印刷データストリームを変換する方法および装置、ならびに対応するプリンタおよびプリンタサーバ
JPH11348380A (ja) 画像出力装置および方法、画像処理装置および方法、並びに記憶媒体
JP3608906B2 (ja) アプリケーション統合環境におけるページデータ出力方法および出力装置、並びに、その処理を実行するためのプログラムを記録した記録媒体

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051220

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060516