【事件の表示】
　特許第３１６８５８０号「ページ記述言語インタープリタ」の請求項１〜２、５〜６、８〜１７、２１、２３、２５〜３２、３４〜３９に係る特許に対する特許異議の申立てについて、次のとおり決定する。
【結　論】
　訂正を認める。
　特許第３１６８５８０号の請求項１〜２、５〜６、８〜１１、１２、１６、１８、２０〜２１、２２、２４〜２９に係る特許を維持する。
【理　由】
　
１．手続の経緯
　本件特許第3168580号の請求項１〜２、５〜６、８〜17、21、23、25〜32、34〜39に係る発明についての出願は、平成３年（1991年）４月５日（優先権主張 1990年４月５日 日本国）を国際出願日とする特許出願であって、平成13年（2001年）３月16日にその発明について特許権の設定登録がなされ、その後、その特許について、異議申立人相原光政より特許異議の申立てがなされ、取消しの理由が通知され、その指定期間内である平成14年６月20日に訂正請求がなされるとともに特許異議意見書が提出されたものである。
　
２．訂正の適否についての判断
　
〔2-1〕訂正の内容
  特許権者が求めている訂正の内容は次のとおりのものである。
（１）訂正事項ａ
　特許請求の範囲の請求項１の
「【請求項１】　ソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
　前記情報処理機器群中のいずれかの情報処理機器が、
前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有する情報処理システム。」
を
「【請求項１】　ソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
　前記情報処理機器群中のいずれかの情報処理機器が、
前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有し、
　前記情報処理機器群中のいずれかの情報処理機器が、
他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する
情報処理システム。」
に訂正する。
（２）訂正事項ｂ
　特許請求の範囲の請求項12〜16及び請求項27〜31を削除する。これに伴い、訂正前の請求項17〜26の項番号を５番繰り上げて請求項12〜21に訂正し、また、訂正前の請求項32〜39の項番号を10番繰り上げて請求項22〜29に訂正する。これに伴い、訂正前の請求項18〜26、33、36、38及び39（訂正後の請求項13〜21、23、26、28及び29）中で引用されている請求項の項番「17」、「18」、「19」、「21」、「22」、「24」、「32」、「35」、「37」及び「38」を、それぞれ、項番「12」、「13」、「14」、「16」、「17」、「19」、「22」、「25」、「27」及び「28」に訂正する。
（３）訂正事項ｃ
　特許請求の範囲の項番訂正後の請求項12（項番訂正前の請求項17）の
「【請求項17】　他の情報処理機器と粗結合され得る情報処理機器において、
ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルのうちの少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有する情報処理機器。」
を
「【請求項12】　他の情報処理機器と粗結合され得る情報処理機器において、
前記ソースファイルに含まれる２以上の図形要素から．前記図形要素の相互間の位置関係に基づいて．それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルのうちの少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有する情報処理機器。」
に訂正する。
（４）訂正事項ｄ
　特許請求の範囲の項番訂正後の請求項24（項番訂正前の請求項34）の
「【請求項34】　ソースファイル又はこのソースファイルから変換された中間コードファイルを印刷のための画素情報に変換するラスタライズ処理機能を有し、他の情報処理機器と粗結合され得る情報処理機器であって、
　自機器で印刷要求の発生した第１のソースファイル又はこの第１のソースファイルから変換された第１の中間コードファイルのラスタライズ処理を部分的に前記他の機器に担当させるためのクライアント手段と、
　前記他の機器で印刷要求の発生した第２のソースファイル又はこの第２のソースファイルから変換された第２の中間コードファイルのラスタライズ処理を部分的に自機器で担当するためのサーバ手段と、
　与えられたファイルについてのラスタライズ処理を実行するラスタライズ手段とを有し、
　前記クライアント手段は、
前記第１のソースファイル又は前記第１の中歓呼コードファイルを、独立してラスタライズ処理することが可能な複数の部分ファイルに分割する手段と、
前記複数の部分ファイルのラスタライズ処理を部分的に前記他の機器に担当させるために、前記複数の部分ファイルのうちの一部分を前記他の機器に送る手段と、
前記複数の部分ファイルのうち前記他の機器に送った部分を除く残りの部分を前記ラスタライズ手段に送る手段と、
前記他の機器でのラスタライズにより得られた部分的な画素情報を前記他の機器から受け、これと前記ラスタライズ手段から得られる前記残りの部分についての画素情報とを組み合わせて全体的な画像情報を得る手段と、
を有し、
　前記サーバ手段は、
前記第２のソースファイルの又は前記第２の中間コードファイルの部分ファイルを、前記他の機器から受けて前記ラスタライズ手段に送る手段と、
前記ラスタライズ手段により得られた前記部分ファイルについての画素情報を前記他の情報処理機器に送る手段と、
を有する情報処理機器。」
を
「【請求項24】　ソースファイル又はこのソースファイルから変換された中間コードファイルを印刷のための画素情報に変換するラスタライズ処理機能を有し、他の情報処理機器と粗結合され得る情報処理機器であって、
　自機器で印刷要求の発生した第１のソースファイル又はこの第１のソースファイルから変換された第１の中間コードファイルのラスタライズ処理を部分的に前記他の機器に担当させるためのクライアント手段と、
　前記他の機器で印刷要求の発生した第２のソースファイル又はこの第２のソースファイルから変換された第２の中間コードファイルのラスタライズ処理を部分的に自機器で担当するためのサーバ手段と、
　与えられたファイルについてのラスタライズ処理を実行するラスタライズ手段とを有し、
　前記クライアント手段は、
前記第１のソースファイル迄含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記第１のソースファイル又は前記第１の中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する手段と、
前記複数の部分ファイルのラスタライズ処理を部分的に前記他の機器に担当させるさせるために、前記複数の部分ファイルのうちの一部分を前記他の機器に送る手段と、
前記複数の部分ファイルのうち前記他の機器に送った部分を除く残りの部分を前記ラスタライズ手段に送る手段と、
前記他の機器でのラスタライズにより得られた部分的な画素情報を前記他の機器から受け、これと前記ラスタライズ手段から得られる前記残りの部分についての画素情報とを組み合わせて全体的な画像情報を得る手段と、
を有し、
　前記サーバ手段は、
前記第２のソースファイルの又は前記第２の中間コードファイルの部分ファイルを、前記他の機器から受けて前記ラスタライズ手段に送る手段と、
前記ラスタライズ手段により得られた前記部分ファイルについての画素情報を前記他の情報処理機器に送る手段と、
を有する情報処理機器。」
に訂正する。
（５）訂正事項ｅ
　特許請求の範囲の項番訂正後の請求項25（項番訂正前の請求項35）の
「【請求項35】　粗結合された複数台の情報処理機器を利用してソースファイルから印刷のための画素情報を得る情報処理方法において、
　前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理可能な複数の部分ファイルに分割する過程と、
前記複数の部分ファイルを前記複数の情報処理機器で分散的にラスタライズして複数の部分的画素情報を得る過程と、
前記複数の情報処理機器で得られた前記複数の部分的画素情報を集め、それら集めた部分的画素情報を組み合わせて全体的な画素情報を得る過程と、
を有する情報処理方法。」
を
「【請求項25】　粗結合された複数台の情報処理機器を利用してソースファイルから印刷のための画素情報を得る情報処理方法において、
　前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理可能な複数の部分ファイルに分割する過程と、
　前記複数の部分ファイルを前記複数の情報処理機器で分散的にラスタライズして複数の部分的画素情報を得る過程と、
　前記複数の情報処理機器で得られた前記複数の部分的画素情報を集め、それら集めた部分的画素情報を組み合わせて全体的な画素情報を得る過程と、
を有する情報処理方法。」
に訂正する。
（６）訂正事項ｆ
　特許請求の範囲の項番訂正後の請求項26（項番訂正前の請求項36）の末尾の「機器。」を「方法。」に訂正する。
（７）訂正事項ｇ
　特許請求の範囲の項番訂正後の請求項27（項番訂正前の請求項37）の
「【請求項37】　他の情報処理機器と粗結合された情報処理機器において、ソースファイルから印刷のための画素情報を得る情報処理方法において、
　前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理可能な複数の部分ファイルに分割する第１の通過と、
　前記複数の部分ファイルのうちの少なくとも１つを、前記他の情報処理機器にラスタライズさせるために前記他の情報処理機器へ送る第２の過程と、
　前記複数の部分ファイルのうち前記他の情報処理機器へ送った残りの部分ファイルを、自身でラスタライズする第３の過程と、
　(1) 前記他の情報機器でのラスタライズで得た部分的な画素情報を前記他の情報処理機器から集め、それら集めた部分的な画素情報と、自身でラスタライズ処理して得た画素情報とを組み合わせて全体的な画素情報を得る、
　(2) 前記他の情報処理機器に前記全体的な画素情報を得させるために、自身でラスタライズ処理して得た画素情報を前記他の情報処理機器に送る、
の(1)又は(2)のいずれか一方を行う第４の過程と
を有する情報処理方法。」
を
「【請求項27】　他の情報処理機器と粗結合された情報処理機器において、ソースファイルから印刷のための画素情報を得る情報処理方法において、
　前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理可能な複数の部分ファイルに分割する第１の過程と、
　前記複数の部分ファイルのうちの少なくとも１つを、前記他の情報処理機器にラスタライズさせるために前記他の情報処理機器へ送る第２の過程と、
　前記複数の部分ファイルのうち前記他の情報処理機器へ送った残りの部分ファイルを、自身でラスタライズする第３の過程と、
　(1) 前記他の情報機器でのラスタライズで得た部分的な画素情報を前記他の情報処理機器から集め、それら集めた部分的な画素情報と、自身でラスタライズ処理して得た画素情報とを組み合わせて全体的な画素情報を得る、
　(2) 前記他の情報処理機器に前記全体的な画素情報を得させるために、自身でラスタライズ処理して得た画素情報を前記他の情報処理機器に送る、
の(1)又は(2)のいずれか一方を行う第４の過程と
を有する情報処理方法。」
に訂正する。
（８）訂正事項ｈ
　「発明の詳細な説明」中の「発明の開示」の次行から「図面の簡単な説明」の前行まで（本件特許公報第４頁右欄第47行から第５頁左欄第９行まで）の「本発明はソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
　前記情報処理機器群中のいずれかの情報処理機器が、
前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有する情報処理システムを提供する。」
を
「本発明はソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
　前記情報処理機器群中のいずれかの情報処理機器が、
前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、を有し、
　前記情報処理機器群中のいずれかの情報処理機器が、
他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する情報処理システムを提供する。」
に訂正する。
　
〔2-2〕訂正の目的の適否、新規事項の有無、特許請求の範囲の拡張・変更の存否
（１）訂正事項ａについて
　訂正事項ａは、特許査定時の明細書における「PDLのインタープリタは文字、図形を画素に変換する操作が対象となる、このことは複数個の文字／図形が重なり合って形成する１つの図形群（グループ）が、１ページの印刷用紙に相当する空間に複数個ある場合、個々の『図形グループ』が空間上で離れて存在すれば、それらを『切り離されて存在する一つ一つのグループ』ごとに画素に置き換えることは可能であることを示している。そこで本発明は『切り離しても他の図形に影響を及ぼさない図形グループ』を検出する手段を考案し、PDL並列処理インタープリタに用いることにした。」という記載（本件特許公報の第14頁左欄第11〜21行）、及び、この記載以降（本件特許公報の第14頁左欄第22行〜17頁右欄第44行）の「グループ判別」の具体的な手法例の説明を根拠として、請求項１における「前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段」を、「前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段」に訂正するものであり、分割手段がそれぞれ独立してラスタライズ可能な複数の図形グループを検出するものであることを限定するものである。
　訂正事項ａはまた、特許査定時の明細書の「前記情報処理機器群中のいずれかの情報処理機器が、他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する」（請求項12の記載）を根拠として、請求項１に「前記情報処理機器群中のいずれかの情報処理機器が、他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する」という記載を加入するものであり、いずれかの情報処理機器が他の情報処理機器から集めた部分的な画素情報を組み合わせて全体的な画素情報を得ることを限定するものである。
　したがって、上記訂正事項ａは、特許請求の範囲の減縮を目的とする訂正に該当するものであって、新規事項の追加に該当しない。
（２）訂正事項ｂについて
  訂正事項ｂは、特許請求の範囲の請求項を削除し、これに伴い請求項の項番号を訂正するものであり、特許請求の範囲の減縮、明りょうでない記載の釈明を目的とする訂正に該当するものであって、新規事項の追加に該当しない。
（３）訂正事項ｃ〜ｅ、ｇについて
　訂正事項ｃ〜ｅ、ｇは、実質的に訂正事項ａと同趣旨の訂正であり、特許請求の範囲の減縮を目的とする訂正に該当するものであって、新規事項の追加に該当しない。
（４）訂正事項ｆについて
  訂正事項ｆは、誤記の訂正に該当するものであって、新規事項の追加に該当しない。
（５）訂正事項ｈについて
　訂正事項ｈは、発明の詳細な説明中の「発明の開示」部分の記載を請求項１の訂正に整合させて訂正したものであり、明りょうでない記載の釈明に該当するものであって、新規事項の追加に該当しない。
　
  そして、上記いずれの訂正も実質上特許請求の範囲を拡張し、又は変更するものでもない。
　
〔2-3〕独立特許要件
　訂正明細書の請求項３〜４、７、13〜15、19及び23（訂正前の請求項３〜４、７、18〜20、24及び33）は、特許異議の申立ての対象とされていない発明であり、訂正明細書の請求項３〜４、７、13〜15、19及び23において引用される請求項１、12及び22が後記３．において示すとおり、特許出願の際独立して特許を受けることができるものであることより、訂正明細書の請求項３〜４、７、13〜15、19及び23に係る各発明はいずれも特許出願の際独立して特許を受けることができるものである。
　
〔2-4〕むすび
  以上のとおりであるから、上記訂正は特許法等の一部を改正する法律（平成６年法律第116号）附則第１項の規定によりなお従前の例とされる、平成11年改正前の特許法第120条の４第３項において準用する平成６年法律第116号による改正前の特許法第126条第１項ただし書、第２項及び第３項の規定に適合するので、当該訂正を認める。
　
３．特許異議の申立てについて
　
〔3-1〕異議申立ての概要
　異議申立人相原光政は、証拠として甲第１号証（特開昭63-139751号公報）、甲第２号証（特開平2-93923号公報）、甲第３号証（特開昭63-194958号公報）、及び、甲第４号証（特開平3-188521号公報（平成３年８月16日公開：特願平1-327745号（平成１年12月18日出願）））を提出し、本件特許請求の範囲の請求項１〜２、５〜６、８〜17、21、23、25〜31、35〜39に係る発明は、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものであり、特許法第29条第２項の規定により特許を受けることができないものであるから、請求項１〜２、５〜６、８〜17、21、23、25〜31、35〜39に係る発明の特許は取り消されるべき旨、また、本件特許請求の範囲の請求項１〜２、５〜６、８〜17、21、23、25〜31、35〜39に係る発明は、甲第４号証に記載された発明と実質的に同一な発明であり、特許法第29条の２の規定により特許を受けることができないものであるから、請求項１〜２、５〜６、８〜17、21、23、25〜31、35〜39に係る発明の特許は取り消されるべき旨、さらに、本件特許請求の範囲の請求項１、12、17、27、32に係る発明は、特許を受けようとする発明の構成に欠くことができない事項のみを記載しておらず、特許法第36条第５項第２号に規定する要件を満たしていないから、請求項１、12、17、27、32に係る発明の特許は取り消されるべき旨、本件特許請求の範囲の請求項１、12、17、27、32、34、35、37に係る発明は、特許を受けようとする発明が発明の詳細な説明に記載されたものでなく、特許法第36条第５項第１号に規定する要件を満たしていないから、請求項１、12、17、27、32、34、35、37に係る発明の特許は取り消されるべき旨、を主張する。
　
〔3-2〕本件発明
　上記２．で示したように上記訂正が認められるから、本件の請求項１〜
29に係る発明は、上記訂正に係る訂正明細書の特許請求の範囲の請求項１〜29に記載された次のとおりのものである。
　
「【請求項１】　ソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
  前記情報処理機器群中のいずれかの情報処理機器が、
前記ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有し、
  前記情報処理機器群中のいずれかの情報処理機器が、
他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する
情報処理システム。
【請求項２】　前記分割手段と転送手段を有する情報処理機器が、前記ラスタライズ処理機能をも有し、前記複数の部分ファイルのうち前記他の情報処理機器に送った残りの部分ファイルをラスタライズ処理して画素情報を得る請求項１記載の情報処理システム。
【請求項３】  前記分割手段が、前記ソースファイルに含まれる図形要素の相互間の重なりを検出する手段と、前記検出された重なりを相互間に持つ図形要素が異なる前記部分ファイルに含まれないように分割を行う手段と、を有する請求項１または２記載の情報処理システム。
【請求項４】　前記転送手段が、前記複数の情報処理機器の負荷状態を予め調べてラスタライズ処理の分担が可能な情報処理機器を選択する選択手段を有し、前記選択された情報処理機器に前記部分ファイルを転送する請求項１〜３のいずれか一項に記載の情報処理システム。
【請求項５】　さらに、前記情報処理機器群中のいずれかの情報処理機器が、
前記他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する請求項１〜４のいずれか一項に記載の情報処理システム。
【請求項６】　前記合成手段を有する情報処理機器が、前記ラスタライズ処理機能をも有し、前記合成手段は前記他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記ネットワークを通じて集め、これらの集めた部分的な画素情報と、前記部分ファイルのうち少なくとも1つを自身でラスタライズ処理して得た画素情報とを組み合わせて全体的な画素情報を得る請求項５記載の情報処理システム。
【請求項７】　前記分割手段と転送手段を有する情報処理機器と、前記合成手段を有する情報処理機器とが、同一の機器である請求項５または６記載の情報処理システム。
【請求項８】  前記分割手段と転送手段を有する情報処理機器がコンピュータとして構成され、前記合成手段を有する情報処理機器が印刷装置として構成された請求項５または６記載の情報処理システム。
【請求項９】　前記情報処理機器群に印刷装置を含む請求項１〜７のいずれか一項に記載の情報処理システム。
【請求項10】　前記分割手段と前記転送手段が、前記分割手段と転送手段を有する情報処理機器のオペレーティングシステムの管理下で実行される１以上のプロセスとして実装される請求項１〜９のいずれか一項に記載の情報処理システム。
【請求項11】　前記ラスタライズ手段が、前記ラスタライズ手段を有する情報処理機器のオペレーティングシステムの管理下で実行される１以上のプロセスとして実装される請求項1〜10のいずれか一項に記載の情報処理システム。
【請求項12】　他の情報処理機器と粗結合され得る情報処理機器において、
  前記ソ一スファイルに含まれる２以上の図形要素から.前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
  前記複数の部分ファイルのうちの少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有する情報処理機器。
【請求項13】 前記分割手段が、前記ソースファイルに含まれる図形要素の相互間の重なりを検出する手段と、前記検出された重なりを相互間に持つ図形要素が異なる前記部分ファイルに含まれないように分割を行う手段と、を有する請求項12記載の情報処理機器。
【請求項14】 前記転送手段が、前記複数の情報処理機器の負荷状態を調べてラスタライズ処理の分担が可能な情報処理機器を選択する選択手段を有し、前記選択された情報処理機器に前記部分ファイルを転送する請求項12または13記載の情報処理機器。
【請求項15】 前記他の情報処理機器におけるラスタライズ処理により得られた部分的画素情報を前記他の情報処理機器から受け、これら部分の画素情報を組み合わせて全体的画素情報を得る合成手段を、さらに有する請求項12〜14のいずれか一項に記載の情報処理機器。
【請求項16】 ラスタライズ処理して画素情報を得るラスタライズ処理機能をさらに有し、前記複数の部分ファイルのうち、前記他の情報処理機器に送った残りの部分ファイルをラスタライズ処理して画素情報を得る請求項12〜14のいずれか一項に記載の情報処理機器。
【請求項17】 前記他の情報処理機器においてラスタライズ処理により得られた部分的画素情報を前記他の情報処理機器から受け、これら部分的画素情報と前記残りの部分の画素情報とを組み合わせて全体的画素情報を得る合成手段を、さらに有する請求項16記載の情報処理機器。
【請求項18】 コンピュータとして構成された請求項12〜17のいずれか一項に記載の情報処理機器。
【請求項19】 印刷装置として構成された請求項12〜17のいずれか一項に記載の情報処理機器。
【請求項20】 前記分割手段と前記転送手段が、オペレーティングシステムの管理下で実行される１以上のプロセスとして実装される請求項12〜19のいずれか一項に記載の情報処理機器。
【請求項21】 前記ラスタライズ手段が、オペレーティングシステムの管理下で実行される１以上のプロセスとして実装される請求項16または17記載の情報処理機器。
【請求項22】 他の情報処理機器と粗結合され得る情報処理機器において、
前記他の情報処理機器から送られる翻訳処理への参加を要求するメッセ一ジに応答して、負荷状態に応じて前記参加が可能か否かを判断し、判断結果を示す情報を前記他の情報処理機器へ返信する手段と、
前記参加が可能なとき、前記他の情報処理機器から送られるソースファイルの又はこのソ一スファイルから変換された中間コードファイルの部分ファイルを受けて、この部分ファイルをラスタライズ処理して部分的な画像情報を得る手段と、
を有する情報処理機器。
【請求頃23】 さらに、前記部分的な画素情報を前記他の情報処理機器へ送る手段を有する請求項22記載の情報処理機器。
【請求項24】 ソースファイル又はこのソースファイルから変換された中間コ一ドファイルを印刷のための画素情報に変換するラスタライズ処理機能を有し、他の情報処理機器と粗結合され得る情報処理機器であって、
　自機器で印刷要求の発生した第1のソースファイル又はこの第１のソースファイルから変換された第１の中間コードファイルのラスタライズ処理を部分的に前記他の機器に担当させるためのクライアント手段と、
　前記他の機器で印刷要求の発生した第２のソースファイル又はこの第２のソースファイルから変換された第２の中間コードファイルのラスタライズ処理を部分的に自機器で担当するためのサーバ手段と、
与えられたファイルについてのラスタライズ処理を実行するラスタライズ手段とを有し、
  前記クライアント手段は、
  前記第１のソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記第１のソースファイル又は前記第１の中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する手段と、
  前記複数の部分ファイルのラスタライズ処理を部分的に前記他の機器に担当させるために、前記複数の部分ファイルのうちの一部分を前記他の機器に送る手段と、
  前記複数の部分ファイルのうち前記他の機器に送った部分を除く残りの部分を前記ラスタライズ手段に送る手段と、
  前記他の機器でのラスタライズにより得られた部分的な画素情報を前記他の機器から受け、これと前記ラスタライズ手段から得られる前記残りの部分についての画素情報とを組み合わせて全体的な画像情報を得る手段と、
を有し、
　前記サーバ手段は、
　前記第２のソースファイルの又は前記第２の中間コードファイルの部分ファイルを、前記他の機器から受けて前記ラスタライズ手段に送る手段と、
　前記ラスタライズ手段により得られた前記部分ファイルについての画素情報を前記他の情報処理機器に送る手段と、
を有する情報処理機器。
【請求項25】 粗結合された複数台の情報処理機器を利用してソースファイルから印刷のための画素情報を得る情報処理方法において、
　前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理可能な複数の部分ファイルに分割する過程と、
　前記複数の部分ファイルを前記複数の情報処理機器で分散的にラスタライズして複数の部分的画素情報を得る過程と、
　前記複数の情報処理機器で得られた前記複数の部分的画素情報を集め、それら集めた部分的画素情報を組み合わせて全体的な画素情報を得る過程と、
を有する情報処理方法。
【請求項26】 前記複数の情報処理機器にコンピュータ及び印刷装置を含む請求項25記載の情報処理方法。
【請求項27】 他の情報処理機器と粗結合された情報処理機器において、ソースファイルから印刷のための画素情報を得る情報処理方法において、
　前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理可能な複数の部分ファイルに分割する第１の過程と、
　前記複数の部分ファイルのうちの少なくとも１つを、前記他の情報処理機器にラスタライズさせるために前記他の情報処理機器へ送る第２の過程と、
　前記複数の部分ファイルのうち前記他の情報処理機器へ送った残りの部分ファイルを、自身でラスタライズする第３の過程と、
　(1) 前記他の情報機器でのラスタライズで得た部分的な画素情報を前記他の情報処理機器から集め、それら集めた部分的な画素情報と、自身でラスタライズ処理して得た画素情報とを組み合わせて全体的な画素情報を得る、
　(2) 前記他の情報処理機器に前記全体的な画素情報を得させるために、自身でラスタライズ処理して得た画素情報を前記他の情報処理機器に送る、
の(1)又は(2)のいずれか一方を行う第４の過程と
を有する情報処理方法。
【請求項28】　前記他の情報処理機器がコンピュータ又は印刷装置である請求項27記載の情報処理方法。
【請求項29】　前記第１、第２、第３および第４の過程が、前記情報処理機器のオペレーティングシステムの管理下で実行される１以上のプロセスとして実装される請求項27または28記載の情報処理方法。」
　
〔3-3〕特許法第29条第２項違反について
（3-3-1）甲各号証に記載された発明
　異議申立人が提出した甲第１〜３号証には、次の事項が記載されている。
  甲第１号証は、ホスト装置から文字情報や画像情報に加えて、これら文字や画像の１頁内の配置、縦書き／横書き等の属性情報を含む印刷情報をプリンタ装置に送って印刷を行わしめる印刷システムに関するもので、図面と共に次の事項が記載されている。
　第１図は本発明にかかる印刷システムにおける印刷方法を具現したホスト装置とプリンタ装置を含むシステムのブロックである。
　ホスト装置１とプリンタ装置２はケーブル３で接続されている。ホスト１は、プリンタ２で印刷を行わせるための印刷情報を作成する機能を有しており、この印刷情報には実際に印刷される文字や画像自体の印刷データの他、１頁の中の文字や画像の配置、文字フォントの種類等の情報が含まれる。具体的には、
  (i)  頁のサイズ、左詰め、右詰め等の頁属性データと、
　(ii) 印刷する１頁を文字または画像が配置される１または複数のブロックに分け（第２図のブロックBL1〜BL4参照）、各ブロックに対するブロックサイズ、頁内の位置等のブロック属性データと、
　(iii)当該ブロックに割り付けられる印刷データの種類、文字フォントの種類、文字間隔、行間隔等印刷データの属性データと、
　(iv) 印刷データ自体とに分けた情報を印刷情報として出力するようになっている。」（第２頁左下欄第３行〜同頁右下欄第５行）
(2)「ホスト装置１はプリンタ装置２に第２図に示すごとき文字、画像ブロックBL1〜BL4を有する頁印刷を行わせようとする場合、まず、これから印刷する頁のサイズ、左詰め、右詰め等の頁属性データである頁記述情報を出力する。
　次に、第１ブロックBL1について、ブロックのサイズ、頁内の位置等のブロック属性データであるブロック記述情報を出力し、続いて第１ブロックBL1に割り当てた印刷データの種類（文字情報、イメージ情報、グラフィック情報）、文字フォントの種類、縦書き／横書きの区別、文字間隔、行間隔等の属性データである印刷データ記述情報を出力し、最後に印刷データ自体を出力する。
　以下、同様にして第２ブロックBL2〜第４ブロックBL4についても各記述情報やデータの出力を行う。」（第３頁左上欄第４〜19行）
(3)「印刷データが文字の場合はフォントの種類の選択等の文字処理と頁バッファエリアPGB上に特定されたブロック位置における文字位置設定を行う。そして、RAM21c中の頁バッファエリアの第１ブロックBL1に対応する範囲に第１の印刷データ記述情報格納エリアDMの先頭アドレスのポインタ＊dptrが示すアドレス以降の文字コードを変換して得た文字フォントを展開する（以上ステップ124〜130）。
　一方、印刷データがイメージデータの場合は、頁バッファエリアPGBの第１ブロックBL1に対応する範囲に当該イメージデータをそのまま展開し（ステップ132）、印刷データがグラフィックデータ（例えば直線の場合、直線記号と始点、終点座標）の場合は描画ビットデータに変換しながら展開する（ステップ134）。
　以下、同様にして第２〜第４ブロックBL2〜BL4についても、印刷データの展開を行う。
　・・・（中略）・・・
　尚、１頁内の各ブロックは重ね合わせが許されており、文字が割り当てられる第１ブロックBL1’とイメージが割り当てられる第２ブロックBL2’が完全に重なっている場合には、頁バッファエリアにフォントブロックの位置がオーバラップして設定され、文字フォントとイメージデータの展開もオーバラップしてなされる。」（第３頁右下欄第11行〜第４頁右上欄第４行）
　以上本発明によれば、印刷情報を実際に印刷される文字や画像の印刷データ自体と、その属性データを混合一体化することなくホスト装置から別々にプリンタ装置へ出力し、かつプリンタ装置のメモリに互いに関連付けながら分けて、かつ階層的に記憶させることができる。」（第４頁左下欄第１〜７行）
　
  甲第２号証は、ワークステーションなどの計算機システムに関し、特に、プリンタに図形データを転送する際の図形データの処理方法に関するもので、図面と共に次の事項が記載されている。
「次に、第３図に示す様な印字例を、上述した画像処理装置13によりプリンタ４に転送する場合について説明する。
　・・・（中略）・・・
　いま、このような印字データが主記憶装置12から、あるいはユーザー側から第１図の画像処理装置13に入力されると、印字データはデータ分類部21において文字データと図形データに振り分けられる。このうち文字データは文字印字処理部22へ送られ、文字データの出力位置の計算と、その出力位置の指定が行われた後、プリンタ４へ転送される。一方図形データは図形描画処理部23により主記憶装置12内のビットマップバッファに展開される。・・・そして、第４図に示すように１ページ分の図形データの処理が終了した時点で図形データはビットマップ印字処理部24に送られる。ビットマップ印字処理部24では、図形データの出力位置の計算と、その出力位置の指定が行われ、図形データはラスターデータとしてプリンタ４に転送される。」（第２頁左下欄第６行〜第３頁左上欄第８行）
　
  甲第３号証は、印刷装置、特にコードデータをドットイメージに描画する描画制御に関するもので、図面と共に次の事項が記載されている。
(1)「次に、本発明について図面を参照して説明する。
第１図は本発明の一実施例の概略ブロック図である。第２図は１ページのデータを３個の描画制御モジュール３に分割編集する際の概念図である。上位装置より送られる印刷データは制御部１により受け取られ、ページバッファ２に貯えられる。このとき制御部１上のデータ編集手段により１ページ内の改行情報により第２図の如く分割行の前後が数行分重なるようにｎ個に分割編集する。又この時、各描画モジュール３に対しては、与える印刷データの描画開始位置情報も制御部１が計算し与える。これらｎ個の印刷データに編集されると、制御部１は描画制御モジュール１の(i)、(ii)（実際は、丸数字の１、２と記載されている）・・・と順次起動をかけていく。起動をかけられた描画制御モジュール３はページバッファ２より自分用に編集し直された印刷データを取り込み、内部に持っている文字パターンメモリ3-2よりパターンを引き出しビットパターンマップメモリ3-3に描画して行く。全ての描画制御モジュール３で描画し終わるとデバイス制御部４が起動され各ビットマップメモリ3-3よりデータを読み出しORし印刷する。
　近年ICメモリ技術、ゲートアレイ、マイクロプロセッサ技術が進んでおり、上記描画制御モジュール３は１枚のカードに充分入ってしまう。従って、例えばこの描画制御モジュール３の描画性能が8PPM（ページ／分）であれば、16PPM用装置のコントローラでは２個の制御モジュール３を組込めば実現できる。」（第２頁左上欄第６行〜同頁右上欄第13行）
(2)「本発明は、コードデータをドットイメージに描画する描画制御部を複数個持てる構成とし、ホストより受取った１ページの印刷データをｎ個に分割編集しｎ個の描画制御部にそれぞれ描画させ、印刷させることにより、種々のプロセススピードの装置に合ったコストパホーマンスのよい印刷装置を提供できる効果がある。」（第２頁右上欄第15行〜同頁左下欄第１行）
　
(3-3-2) 本件発明と甲各号証に記載された発明との対比・判断
【請求項１に係る発明について】
  請求項１に係る発明と甲第１号証に記載されたものとを対比する。甲第１号証に記載されたものは、ホスト装置１とプリンタ装置２とからなるシステムであり、この「ホスト装置」はグラフィック（画像）情報を含む印刷データをプリンタ装置に送るものである点で請求項１に係る発明における「いずれかの情報処理機器」に対応するものであるとしても、単に、文字情報、イメージ情報、グラフィック（画像）情報をブロックごとに分けてプリンタ装置に送るものであって、請求項１に係る発明のように印刷データのラスタライズ処理を行うことは何ら示されていない。また、甲第１号証には、請求項１に係る発明の構成である、「情報処理機器」が「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段」を備えること、さらに、「他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段」を備えることについて何ら記載もしくは示唆されていない。
  甲第２号証に記載されたものは、印字データ（文字／図形データ）を図形データと文字データに振り分けて、全ての図形データのラスタライズを情報処理機器であるプロセッサ１が行うものであるが、文字と図形の分離の際、文字か図形かという図形要素の種類のみによってデータが分離されるものであって文字と図形との相互の位置関係は何ら考慮されておらず、ラスタライズ処理することが可能な複数の部分ファイルに分割することが示されているにとどまり、請求項１に係る発明における「情報処理機器」が「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段」を備えること、さらに、「他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段」を備えることについて何ら記載もしくは示唆されていない。
  甲第３号証に記載されたものは、一つの印刷装置に組み込まれた複数の描画モジュールがラスタライズを分担して行うというものであり、一つの機器の内部処理に関する技術を開示するに過ぎず、印刷データは文字のみから構成されるもので図形を含むことは示されていない。しかも、印刷データを分離する際、文字同士の相互の位置関係は何ら考慮されていない。したがって、甲第３号証には、請求項１に係る発明における「情報処理機器」が「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段」を備えること、さらに、「他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段」を備えることについて何ら記載もしくは示唆されていない。
  甲第１〜３号証を組み合わせても、請求項１に係る発明の構成である、「情報処理機器」が「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段」を備えること、及び、「他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段」を備えることは導出され得ない。また、上記の構成を当業者の技術常識もしくは周知事項であるとする根拠も見当たらない。
  したがって、請求項１に係る発明は、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
【請求項２〜11に係る発明について】
  請求項２〜11に係る発明は、いずれも少なくとも請求項１を引用するものであり、請求項１に係る発明が上記したように甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない以上、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
【請求項12に係る発明について】
  請求項12に係る発明と甲第１〜３号証に記載されたものとを対比すると、甲第１〜３号証に記載されたものは、請求項12に係る発明の構成である、「情報処理機器」が「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段」を備えることが示されていない。甲第１〜３号証に記載されたものを組み合わせても請求項12に係る発明の上記構成は導出され得ない。また、上記の構成を当業者の技術常識もしくは周知事項であるとする根拠も見当たらない。
  したがって、請求項12に係る発明は、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
【請求項13〜21に係る発明について】
  請求項13〜21に係る発明は、いずれも少なくとも請求項12を引用するものであり、請求項12に係る発明が上記したように甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない以上、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
【請求項22に係る発明について】
  請求項22に係る発明と甲第１〜３号証に記載されたものとを対比すると、甲第１〜３号証に記載されたものは、請求項22に係る発明の構成である、「情報処理機器」が「他の情報処理機器から送られる翻訳処理への参加を要求するメッセ一ジに応答して、負荷状態に応じて前記参加が可能か否かを判断し、判断結果を示す情報を前記他の情報処理機器へ返信する手段」、及び、「前記参加が可能なとき、前記他の情報処理機器から送られるソースファイルの又はこのソ一スファイルから変換された中間コードファイルの部分ファイルを受けて、この部分ファイルをラスタライズ処理して部分的な画像情報を得る手段」を備えることが示されていない。甲第１〜３号証に記載されたものを組み合わせても請求項22に係る発明の上記構成を導出することはできない。また、上記の構成を当業者の技術常識もしくは周知事項であるとする根拠も見当たらない。
  したがって、請求項22に係る発明は、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
【請求項23に係る発明について】
  請求項23に係る発明は、請求項22を引用するものであり、請求項22に係る発明が上記したように甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない以上、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
【請求項24に係る発明について】
  請求項24に係る発明と甲第１〜３号証に記載されたものとを対比すると、甲第１〜３号証に記載されたものには、請求項24に係る発明の構成である、クライアント手段が「第１のソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する手段」を備えること、及び、「他の機器でのラスタライズ処理により得られた部分的な画素情報を前記他の機器から受け、これと前記ラスタライズ手段から得られる前記残りの部分についての画素情報とを組み合わせて全体的な画素情報を得る手段」を備えることについて何ら記載もしくは示唆されていない。甲第１〜３号証に記載されたものを組み合わせても請求項24に係る発明の上記構成を導出することはできない。また、上記の構成を当業者の技術常識もしくは周知事項であるとする根拠も見当たらない。
  したがって、請求項24に係る発明は、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
【請求項25に係る発明について】
  請求項25に係る発明と甲第１〜３号証に記載されたものとを対比すると、甲第１〜３号証に記載されたものには、請求項25に係る発明の構成である、「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する過程」を備えることについて何ら記載もしくは示唆されていない。甲第１〜３号証に記載されたものを組み合わせても請求項25に係る発明の上記構成を導出することはできない。また、上記の構成を当業者の技術常識もしくは周知事項であるとする根拠も見当たらない。
  したがって、請求項25に係る発明は、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
【請求項26に係る発明について】
  請求項26に係る発明は、請求項25を引用するものであり、請求項25に係る発明が上記したように甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない以上、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
【請求項27に係る発明について】
  請求項27に係る発明と甲第１〜３号証に記載されたものとを対比すると、甲第１〜３号証には、請求項27に係る発明の構成である、「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する第１の過程」を備えること、及び、「（１）他の情報処理機器でのラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、それら集めた部分的な画素情報と、自身でラスタライズ処理して得た画素情報とを組み合わせて全体的な画素情報を得る第４の過程」を備えることについて何ら記載もしくは示唆されていない。甲第１〜３号証に記載されたものを組み合わせても請求項27に係る発明の上記構成を導出することはできない。また、上記の構成を当業者の技術常識もしくは周知事項であるとする根拠も見当たらない。
  したがって、請求項27に係る発明は、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
【請求項28〜29に係る発明について】
  請求項28〜29に係る発明は、いずれも少なくとも請求項27を引用するものであり、請求項27に係る発明が上記したように甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない以上、甲第１〜３号証に記載された発明に基づいて当業者が容易に発明をすることができたものとすることはできない。
　
〔3-4〕特許法第29条の２違反について
（3-4-1）先願明細書に記載された発明
  異議申立人の提出した、本願の出願日前の他の出願であって、その出願後に出願公開された特願平1-327745号の願書に最初に添付した明細書及び図面（以下、「先願明細書」という。）である甲第４号証（特開平3-188521号公報）は、イメージデータ出力装置の出力制御方式に関するもので、大きなサイズのイメージデータを小容量のメモリを用いて、高速で出力することを目的として、次の事項が記載されている。
(i)「以下、本発明の実施例を図面に基づいて説明する。
　・・・（中略）・・・
　第４図は上記実施例における出力制御の説明図であり、以下この図を用いて上記実施例の処理を説明する。
　ホスト１より、出力制御部11-1、11-2に対してイメージ展開処理が指示されると、それぞれ独立してイメージ展開メモリ13へのイメージデータの展開処理を行う。
　この時、ホスト１から、アドレス管理部14に対して、自系、他系の切り替えアドレス値がセットされる。
  例えば、自系である出力制御部11-2は、Ｙアドレスが00〜99で、他系である出力制御部11-1がＹアドレス100〜199としてセットする。
　出力制御部11-1、11-2では、それぞれ、イメージデータの展開を、イメージ展開メモリ13に行うが、このイメージ展開メモリ13のアドレスは、それぞれＸアドレスが00〜99で、Ｙアドレスが00〜99である。
　出力制御部11-2内のプリンタ制御部17は、自系、及び他系のイメージ展開メモリ13から順次データを読み出して大型プリンタ15Aへイメージデータを出力する。
　その際、アドレス管理部14でメモリアドレスにより判断し、自系のイメージ展開メモリ13から読み出すか、他系のイメージ展開メモリ13から読み出すかを指示する。」（第３頁左下欄第７行〜第４頁右上欄第３行）
(ii)「本発明によれば次のような効果がある。
(1) 各出力制御部に設けられたイメージ展開メモリは、小容量のメモリでよい。　・・・
(2) 大きいサイズのイメージデータは、複数の出力制御部で分担し、並列処理をするから、高速で出力できる。」（第４頁左下欄第７〜17行）
(iii)第１図にイメージ出力装置の出力制御方式の原理図、第２図に１実施例のブロック図、第３図に上記１実施例の詳細ブロック図、第４図に出力制御の説明が示されている。
　
（3-4-2）本件発明と先願明細書に記載された発明との対比・判断
【請求項１に係る発明について】
  請求項１に係る発明と先願明細書に記載されたものとを対比する。先願明細書に記載されたものにおける「ホスト10」は「情報処理機器」であり、１頁の出力画像を部分ファイル（第４図の例では、「あ」と「い」）に分割し、それぞれは出力制御部11-1と11-2とで独立にイメージ展開が可能なものであるから、複数の部分ファイルに分割するという限りで請求項１に係る発明における「分割手段」を有するものであり、また、上記「ホスト10」（情報処理機器）は、分割したファイルをラスタライズ処理が可能な出力制御部に転送するという限りで請求項１に係る発明における「転送手段」を有するといえるものの、先願明細書に記載されたものは、上記「分割手段」に関し、請求項１に係る発明における「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出」するものであること、上記「部分ファイル」に関し、「ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む」ものであることは何ら記載もしくは示唆されていない。また、請求項１に係る上記構成を課題解決のための具体化手段における微差（周知・慣用技術の付加等で新たな効果を奏するものではないもの）であるとする根拠も見当たらない。
  したがって、請求項１に係る発明は、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
【請求項２〜11に係る発明について】
  請求項２〜11に係る発明は、いずれも少なくとも請求項１を引用するものであり、請求項１に係る発明が上記したように先願明細書に記載された発明と実質的に同一であるとすることはできない以上、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
【請求項12に係る発明について】
  請求項12に係る発明と先願明細書に記載されたものとを対比すると、先願明細書には、請求項12に係る発明の構成である、「情報処理機器」が「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段」を備えることが示されていない。また、上記の構成を課題解決のための具体化手段における微差（周知・慣用技術の付加等で新たな効果を奏するものではないもの）であるとする根拠も見当たらない。
  したがって、請求項12に係る発明は、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
【請求項13〜21に係る発明について】
  請求項13〜21に係る発明は、いずれも少なくとも請求項12を引用するものであり、請求項12に係る発明が上記したように先願明細書に記載された発明と実質的に同一であるとすることはできない以上、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
【請求項22に係る発明について】
  請求項22に係る発明と先願明細書に記載されたものとを対比すると、先願明細書には、請求項22に係る発明の構成である、「情報処理機器」が「他の情報処理機器から送られる翻訳処理への参加を要求するメッセ一ジに応答して、負荷状態に応じて前記参加が可能か否かを判断し、判断結果を示す情報を前記他の情報処理機器へ返信する手段」、及び、「前記参加が可能なとき、前記他の情報処理機器から送られるソースファイルの又はこのソ一スファイルから変換された中間コードファイルの部分ファイルを受けて、この部分ファイルをラスタライズ処理して部分的な画像情報を得る手段」を備えることが示されていない。また、上記の構成を課題解決のための具体化手段における微差（周知・慣用技術の付加等で新たな効果を奏するものではないもの）であるとする根拠も見当たらない。
  したがって、請求項22に係る発明は、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
【請求項23に係る発明について】
  請求項23に係る発明は、請求項22を引用するものであり、請求項22に係る発明が上記したように先願明細書に記載された発明と実質的に同一であるとすることはできない以上、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
【請求項24に係る発明について】
  請求項24に係る発明と先願明細書に記載されたものとを対比すると、先願明細書には、請求項24に係る発明の構成である、クライアント手段が「第１のソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する手段」を備えることについて何ら記載もしくは示唆されていない。また、上記の構成を課題解決のための具体化手段における微差（周知・慣用技術の付加等で新たな効果を奏するものではないもの）であるとする根拠も見当たらない。
  したがって、請求項24に係る発明は、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
【請求項25に係る発明について】
  請求項25に係る発明と先願明細書に記載されたものとを対比すると、先願明細書には、請求項25に係る発明の構成である、「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する過程」を備えることについて何ら記載もしくは示唆されていない。また、上記の構成を課題解決のための具体化手段における微差（周知・慣用技術の付加等で新たな効果を奏するものではないもの）であるとする根拠も見当たらない。
  したがって、請求項25に係る発明は、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
【請求項26に係る発明について】
  請求項26に係る発明は、請求項25を引用するものであり、請求項25に係る発明が上記したように先願明細書に記載された発明と実質的に同一であるとすることはできない以上、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
【請求項27に係る発明について】
  請求項27に係る発明と先願明細書には記載されたものとを対比すると、先願明細書には、請求項27に係る発明の構成である、「ソ一スファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する第１の過程」を備えることについて何ら記載もしくは示唆されていない。また、上記の構成を課題解決のための具体化手段における微差（周知・慣用技術の付加等で新たな効果を奏するものではないもの）であるとする根拠も見当たらない。
  したがって、請求項27に係る発明は、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
【請求項28〜29に係る発明について】
  請求項28〜29に係る発明は、いずれも少なくとも請求項27を引用するものであり、請求項27に係る発明が上記したように先願明細書に記載された発明と実質的に同一であるとすることはできない以上、先願明細書に記載された発明と実質的に同一であるとすることはできない。
　
〔3-5〕特許法第36条第５項違反について
（3-5-1）第36条第５項第２号違反について
　この記載不備に関する具体的な理由は、特許査定時の請求項１（訂正明細書の請求項１に対応）、特許査定時の請求項12（訂正により削除）、特許査定時の請求項17（訂正明細書の請求項12に対応）、特許査定時の請求項27（訂正により削除）、及び、特許査定時の請求項32（訂正明細書の請求項22に対応）には、ラスタライズ処理された部分ファイルの部分的な画素情報から全体的な画素情報が組み合わせて生成されるものであることが記載されていないというものである。
　そこで、検討する。請求項１に関して、情報処理システムの中の「情報処理機器」が「他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する」ものと訂正されたことにより、請求項１が発明の構成に欠くことができない事項のみが記載されていないとすることはできない。また、請求項12及び22は、他の情報処理機器と粗結合され得る「情報処理機器」それ自体についての発明であるから、ラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を生成することが示されていないことをもって発明の構成に欠くことができない事項のみが記載されていないとまではいえない。
  したがって、訂正明細書の請求項１、12、及び22の記載は、特許法第36条第５項第２号に規定する要件を満たさないものであるとすることはできない。
　
（3-5-2）第36条第５項第１号違反について
  この記載不備に関する具体的な理由は、
(1) 特許査定時の請求項１（訂正明細書の請求項１に対応）、特許査定時の請求項12（訂正により削除）、特許査定時の請求項17（訂正明細書の請求項12に対応）、及び特許査定時の請求項27（訂正により削除）は、全体的な画素情報を生成する手段が「分割手段」と異なる情報処理機器にある構成をも含むものであり、明細書にはこのことが明りょうに記載されていない、
(2) 特許査定時の請求項１（訂正明細書の請求項１に対応）、特許査定時の請求項12（訂正により削除）、特許査定時の請求項17（訂正明細書の請求項12に対応）、特許査定時の請求項27（訂正により削除）、特許査定時の請求項32、34、35、及び37（訂正明細書の請求項22、24、25、及び27に対応）における、ソースファイルを複数の部分ファイルに分割する点は発明の詳細な説明に記載されたものではない、というものである。
  そこで、検討する。
　(1)について　
　訂正明細書の請求項１は、いずれかの情報処理機器が「分割手段」、「合成手段」を有することを特徴とするものであり、上記両手段をどの情報処理機器に備えるものとするかを規定するものではない。本件の特許査定時の明細書に、「以上の実施例によって示されるように、本発明はPDLにより記述されたファイルを分割し、複数の情報機器に分散し翻訳させるためのものであり、これを実現するソフトウェアの各部分が実際にいかなる情報処理機器のハードウェアの上で実行されるかは本発明において本質的ではない。何らかの双方向通信手段によって結合された複数の情報処理機器であるにせよ、本発明が実現できることは、既に述べた幾つかの実施例から理解されるであろう。また、本発明は既に述べた実施例のみに限定されるものではなく、他の種々の態様で実施し得ることも明らかである。」と記載されている（特許公報第23頁左上欄第４〜15行）ことより、上記「分割手段」、「合成手段」は複数の情報処理機器のいずれかに設ければよいことは明らかであり、請求項１はそのことを規定したものであって、発明の詳細な説明に記載されている。また、訂正明細書の請求項12は、情報処理機器における「分割手段」、「転送手段」を規定するもので、「合成手段」について何ら規定するものではない。少なくとも「分割手段」、「転送手段」を有する情報処理機器については発明の詳細な説明に記載されていることは明らかである。
  (2)について
  本件の特許査定時の明細書の「発明の詳細な説明」における発明の開示の欄（特許公報第４頁第８欄第47行〜第５頁第９欄第９行）には、「本発明はソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、前記情報処理機器群中のいずれかの情報処理機器が、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と・・・」と記載されており、請求項１、12、22、24、25、及び27におけるソースファイルを複数の部分ファイルに分割する点は発明の詳細な説明に記載されたものである。
  したがって、訂正明細書の請求項１、12、22、24、25及び27の記載は、特許法第36条第５項第１号に規定する要件を満たさないものであるとすることはできない。
　
〔3-6〕むすび
　以上のとおりであるから、特許異議申立ての理由及び証拠によっては、訂正明細書の請求項１〜２、５〜６、８〜11、12、16、18、20〜21、22、及び24〜29に係る発明についての特許を取り消すことはできない。
　また、他に、訂正明細書の請求項１〜２、５〜６、８〜11、12、16、18、20〜21、22、及び24〜29に係る発明についての特許を取り消すべき理由を発見しない。
　よって、結論のとおり決定する。
【異議決定日】
平成１４年９月１８日（２００２．９．１８）
【訂正の要旨】
訂正の要旨
　特許権者が求めている訂正の内容は次のとおりのものである。
（１）訂正事項ａ
　特許請求の範囲の請求項１の
「【請求項１】　ソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
　前記情報処理機器群中のいずれかの情報処理機器が、
前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有する情報処理システム。」
を
「【請求項１】　ソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
　前記情報処理機器群中のいずれかの情報処理機器が、
前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有し、
　前記情報処理機器群中のいずれかの情報処理機器が、
他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する
情報処理システム。」
に訂正する。
（２）訂正事項ｂ
　特許請求の範囲の請求項１２〜１６及び請求項２７〜３１を削除する。これに伴い、訂正前の請求項１７〜２６の項番号を５番繰り上げて請求項１２〜２１に訂正し、また、訂正前の請求項３２〜３９の項番号を１０番繰り上げて請求項２２〜２９に訂正する。これに伴い、訂正前の請求項１８〜２６、３３、３６、３８及び３９（訂正後の請求項１３〜２１、２３、２６、２８及び２９）中で引用されている請求項の項番「１７」、「１８」、「１９」、「２１」、「２２」、「２４」、「３２」、「３５」、「３７」及び「３８」を、それぞれ、項番「１２」、「１３」、「１４」、「１６」、「１７」、「１９」、「２２」、「２５」、「２７」及び「２８」に訂正する。
（３）訂正事項ｃ
　特許請求の範囲の項番訂正後の請求項１２（項番訂正前の請求項１７）の
「【請求項１７】　他の情報処理機器と粗結合され得る情報処理機器において、ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルのうちの少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有する情報処理機器。」
を
「【請求項１２】　他の情報処理機器と粗結合され得る情報処理機器において、前記ソースファイルに含まれる２以上の図形要素から．前記図形要素の相互間の位置関係に基づいて．それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルのうちの少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有する情報処理機器。」
に訂正する。
（４）訂正事項ｄ
　特許請求の範囲の項番訂正後の請求項２４（項番訂正前の請求項３４）の
「【請求項３４】　ソースファイル又はこのソースファイルから変換された中間コードファイルを印刷のための画素情報に変換するラスタライズ処理機能を有し、他の情報処理機器と粗結合され得る情報処理機器であって、
　自機器で印刷要求の発生した第１のソースファイル又はこの第１のソースファイルから変換された第１の中間コードファイルのラスタライズ処理を部分的に前記他の機器に担当させるためのクライアント手段と、
　前記他の機器で印刷要求の発生した第２のソースファイル又はこの第２のソースファイルから変換された第２の中間コードファイルのラスタライズ処理を部分的に自機器で担当するためのサーバ手段と、
　与えられたファイルについてのラスタライズ処理を実行するラスタライズ手段とを有し、
　前記クライアント手段は、
前記第１のソースファイル又は前記第１の中歓呼コードファイルを、独立してラスタライズ処理することが可能な複数の部分ファイルに分割する手段と、
前記複数の部分ファイルのラスタライズ処理を部分的に前記他の機器に担当させるために、前記複数の部分ファイルのうちの一部分を前記他の機器に送る手段と、
前記複数の部分ファイルのうち前記他の機器に送った部分を除く残りの部分を前記ラスタライズ手段に送る手段と、
前記他の機器でのラスタライズにより得られた部分的な画素情報を前記他の機器から受け、これと前記ラスタライズ手段から得られる前記残りの部分についての画素情報とを組み合わせて全体的な画像情報を得る手段と、
を有し、
　前記サーバ手段は、
前記第２のソースファイルの又は前記第２の中間コードファイルの部分ファイルを、前記他の機器から受けて前記ラスタライズ手段に送る手段と、
前記ラスタライズ手段により得られた前記部分ファイルについての画素情報を前記他の情報処理機器に送る手段と、
を有する情報処理機器。」
を
「【請求項２４】　ソースファイル又はこのソースファイルから変換された中間コードファイルを印刷のための画素情報に変換するラスタライズ処理機能を有し、他の情報処理機器と粗結合され得る情報処理機器であって、
　自機器で印刷要求の発生した第１のソースファイル又はこの第１のソースファイルから変換された第１の中間コードファイルのラスタライズ処理を部分的に前記他の機器に担当させるためのクライアント手段と、
　前記他の機器で印刷要求の発生した第２のソースファイル又はこの第２のソースファイルから変換された第２の中間コードファイルのラスタライズ処理を部分的に自機器で担当するためのサーバ手段と、
　与えられたファイルについてのラスタライズ処理を実行するラスタライズ手段とを有し、
　前記クライアント手段は、
前記第１のソースファイル迄含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記第１のソースファイル又は前記第１の中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する手段と、
前記複数の部分ファイルのラスタライズ処理を部分的に前記他の機器に担当させるさせるために、前記複数の部分ファイルのうちの一部分を前記他の機器に送る手段と、
前記複数の部分ファイルのうち前記他の機器に送った部分を除く残りの部分を前記ラスタライズ手段に送る手段と、
前記他の機器でのラスタライズにより得られた部分的な画素情報を前記他の機器から受け、これと前記ラスタライズ手段から得られる前記残りの部分についての画素情報とを組み合わせて全体的な画像情報を得る手段と、
を有し、
　前記サーバ手段は、
前記第２のソースファイルの又は前記第２の中間コードファイルの部分ファイルを、前記他の機器から受けて前記ラスタライズ手段に送る手段と、
前記ラスタライズ手段により得られた前記部分ファイルについての画素情報を前記他の情報処理機器に送る手段と、
を有する情報処理機器。」
に訂正する。
（５）訂正事項ｅ
　特許請求の範囲の項番訂正後の請求項２５（項番訂正前の請求項３５）の
「【請求項３５】　粗結合された複数台の情報処理機器を利用してソースファイルから印刷のための画素情報を得る情報処理方法において、
　前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理可能な複数の部分ファイルに分割する過程と、
前記複数の部分ファイルを前記複数の情報処理機器で分散的にラスタライズして複数の部分的画素情報を得る過程と、
前記複数の情報処理機器で得られた前記複数の部分的画素情報を集め、それら集めた部分的画素情報を組み合わせて全体的な画素情報を得る過程と、
を有する情報処理方法。」
を
「【請求項２５】　粗結合された複数台の情報処理機器を利用してソースファイルから印刷のための画素情報を得る情報処理方法において、
　前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理可能な複数の部分ファイルに分割する過程と、
　前記複数の部分ファイルを前記複数の情報処理機器で分散的にラスタライズして複数の部分的画素情報を得る過程と、
　前記複数の情報処理機器で得られた前記複数の部分的画素情報を集め、それら集めた部分的画素情報を組み合わせて全体的な画素情報を得る過程と、
を有する情報処理方法。」
に訂正する。
（６）訂正事項ｆ
　特許請求の範囲の項番訂正後の請求項２６（項番訂正前の請求項３６）の末尾の「機器。」を「方法。」に訂正する。
（７）訂正事項ｇ
　特許請求の範囲の項番訂正後の請求項２７（項番訂正前の請求項３７）の
「【請求項３７】　他の情報処理機器と粗結合された情報処理機器において、ソースファイルから印刷のための画素情報を得る情報処理方法において、
　前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理可能な複数の部分ファイルに分割する第１の通過と、
　前記複数の部分ファイルのうちの少なくとも１つを、前記他の情報処理機器にラスタライズさせるために前記他の情報処理機器へ送る第２の過程と、
　前記複数の部分ファイルのうち前記他の情報処理機器へ送った残りの部分ファイルを、自身でラスタライズする第３の過程と、
　（１）前記他の情報機器でのラスタライズで得た部分的な画素情報を前記他の情報処理機器から集め、それら集めた部分的な画素情報と、自身でラスタライズ処理して得た画素情報とを組み合わせて全体的な画素情報を得る、
　（２）前記他の情報処理機器に前記全体的な画素情報を得させるために、自身でラスタライズ処理して得た画素情報を前記他の情報処理機器に送る、
の（１）又は（２）のいずれか一方を行う第４の過程と
を有する情報処理方法。」
を
「【請求項２７】　他の情報処理機器と粗結合された情報処理機器において、ソースファイルから印刷のための画素情報を得る情報処理方法において、
　前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理可能な複数の部分ファイルに分割する第１の過程と、
　前記複数の部分ファイルのうちの少なくとも１つを、前記他の情報処理機器にラスタライズさせるために前記他の情報処理機器へ送る第２の過程と、
　前記複数の部分ファイルのうち前記他の情報処理機器へ送った残りの部分ファイルを、自身でラスタライズする第３の過程と、
　（１）前記他の情報機器でのラスタライズで得た部分的な画素情報を前記他の情報処理機器から集め、それら集めた部分的な画素情報と、自身でラスタライズ処理して得た画素情報とを組み合わせて全体的な画素情報を得る、
　（２）前記他の情報処理機器に前記全体的な画素情報を得させるために、自身でラスタライズ処理して得た画素情報を前記他の情報処理機器に送る、
の（１）又は（２）のいずれか一方を行う第４の過程と
を有する情報処理方法。」
に訂正する。
（８）訂正事項ｈ
　「発明の詳細な説明」中の「発明の開示」の次行から「図面の簡単な説明」の前行まで（本件特許公報第４頁右欄第４７行から第５頁左欄第９行まで）の
「本発明はソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
　前記情報処理機器群中のいずれかの情報処理機器が、
前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有する情報処理システムを提供する。」
を
「本発明はソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
　前記情報処理機器群中のいずれかの情報処理機器が、
前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し、前記ソースファイル又はこのソースファイルから変換された中間コードファイルを、前記検出された複数の図形グループをそれぞれ含む独立してラスタライズ処理することが可能な複数の部分ファイルに分割する分割手段と、
前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、を有し、
　前記情報処理機器群中のいずれかの情報処理機器が、
他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する情報処理システムを提供する。」
に訂正する。
（５４）【発明の名称】
ページ記述言語インタープリタ
（５７）【特許請求の範囲】
　【請求項１】ソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
前記情報処理機器群中のいずれかの情報処理機器が、
前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し
前記検出された複数の図形グループをそれぞれ含む
前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有
し、
前記情報処理機器群中のいずれかの情報処理機器が、
他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する
情報処理システム。
　【請求項２】前記分割手段と転送手段を有する情報処理機器が、前記ラスタライズ処理機能をも有し、前記複数の部分ファイルのうち前記他の情報処理機器に送った残りの部分ファイルをラスタライズ処理して画素情報を得る請求項１記載の情報処理システム。
　【請求項３】前記分割手段が、前記ソースファイルに含まれる図形要素の相互間の重なりを検出する手段と、前記検出された重なりを相互間に持つ図形要素が異なる前記部分ファイルに含まれないように分割を行う手段と、を有する請求項１または２記載の情報処理システム。
　【請求項４】前記転送手段が、前記複数の情報処理機器の負荷状態を予め調べてラスタライズ処理の分担が可能な情報処理機器を選択する選択手段を有し、前記選択された情報処理機器に前記部分ファイルを転送する請求項１〜３のいずれか一項に記載の情報処理システム。
　【請求項５】さらに、前記情報処理機器群中のいずれかの情報処理機器が、前記他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する請求項１〜４のいずれか一項に記載の情報処理システム。
　【請求項６】前記合成手段を有する情報処理機器が、前記ラスタライズ処理機能をも有し、前記合成手段は前記他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記ネットワークを通じて集め、これらの集めた部分的な画素情報と、前記部分ファイルのうち少なくとも１つを自身でラスタライズ処理して得た画素情報とを組み合わせて全体的な画素情報を得る請求項５記載の情報処理システム。
　【請求項７】前記分割手段と転送手段を有する情報処理機器と、前記合成手段を有する情報処理機器とが、同一の機器である請求項５または６記載の情報処理システム。
　【請求項８】前記分割手段と転送手段を有する情報処理機器がコンピュータとして構成され、前記合成手段を有する情報処理機器が印刷装置として構成された請求項５または６記載の情報処理システム。
　【請求項９】前記情報処理機器群に印刷装置を含む請求項１〜７のいずれか一項に記載の情報処理システム。
　【請求項１０】前記分割手段と前記転送手段が、前記分割手段と転送手段を有する情報処理機器のオペレーティングシステムの管理下で実行される１以上のプロセスとして実装される請求項１〜９のいずれか一項に記載の情報処理システム。
　【請求項１１】前記ラスタライズ手段が、前記ラスタライズ手段を有する情報処理機器のオペレーティングシステムの管理下で実行される１以上のプロセスとして実装される請求項１〜１０のいずれか一項に記載の情報処理システム。
　【請求項１２】他の情報処理機器と粗結合され得る情報処理機器において、
前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し
前記検出された複数の図形グループをそれぞれ含む
前記複数の部分ファイルのうちの少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、
を有する情報処理機器。
　【請求項１３】前記分割手段が、前記ソースファイルに含まれる図形要素の相互間の重なりを検出する手段と、前記検出された重なりを相互間に持つ図形要素が異なる前記部分ファイルに含まれないように分割を行う手段と、を有する請求項
１２
　【請求項１４】前記転送手段が、前記複数の情報処理機器の負荷状態を調べてラスタライズ処理の分担が可能な情報処理機器を選択する選択手段を有し、前記選択された情報処理機器に前記部分ファイルを転送する請求項
１２
１３
　【請求項１５】前記他の情報処理機器におけるラスタライズ処理により得られた部分的画素情報を前記他の情報処理機器から受け、これら部分の画素情報を組み合わせて全体的画素情報を得る合成手段を、さらに有する請求項
１２
１４
　【請求項１６】ラスタライズ処理して画素情報を得るラスタライズ処理機能をさらに有し、前記複数の部分ファイルのうち、前記他の情報処理機器に送った残りの部分ファイルをラスタライズ処理して画素情報を得る請求項
１２
１４
　【請求項１７】前記他の情報処理機器においてラスタライズ処理により得られた部分的画素情報を前記他の情報処理機器から受け、これら部分的画素情報と前記残りの部分の画素情報とを組み合わせて全体的画素情報を得る合成手段を、さらに有する請求項
１６
　【請求項１８】コンピュータとして構成された請求項
１２
１７
　【請求項１９】印刷装置として構成された請求項
１２
１７
　【請求項２０】前記分割手段と前記転送手段が、オペレーティングシステムの管理下で実行される１以上のプロセスとして実装される請求項
１２
１９
　【請求項２１】前記ラスタライズ手段が、オペレーティングシステムの管理下で実行される１以上のプロセスとして実装される請求項
１６
１７
　【請求項２２】他の情報処理機器と粗結合され得る情報処理機器において、前記他の情報処理機器から送られる翻訳処理への参加を要求するメッセージに応答して、負荷状態に応じて前記参加が可能か否かを判断し、判断結果を示す情報を前記他の情報処理機器へ返信する手段と、前記参加が可能なとき、前記他の情報処理機器から送られるソースファイルの又はこのソースファイルから変換された中間コードファイルの部分ファイルを受けて、この部分ファイルをラスタライズ処理して部分的な画像情報を得る手段と、を有する情報処理機器。
　【請求項２３】さらに、前記部分的な画素情報を前記他の情報処理機器へ送る手段を有する請求項
２２
　【請求項２４】ソースファイル又はこのソースファイルから変換された中間コードファイルを印刷のための画素情報に変換するラスタライズ処理機能を有し、他の情報処理機器と粗結合され得る情報処理機器であって、自機器で印刷要求の発生した第１のソースファイル又はこの第１のソースファイルから変換された第１の中間コードファイルのラスタライズ処理を部分的に前記他の機器に担当させるためのクライアント手段と、
前記他の機器で印刷要求の発生した第２のソースファイル又はこの第２のソースファイルから変換された第２の中間コードファイルのラスタライズ処理を部分的に自機器で担当するためのサーバ手段と、
与えられたファイルについてのラスタライズ処理を実行するラスタライズ手段とを有し、
前記クライアント手段は、
前記第１のソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し
中間
前記検出された複数の図形グループをそれぞれ含む
前記複数の部分ファイルのラスタライズ処理を部分的に前記他の機器に担当させるさせるために、前記複数の部分ファイルのうちの一部分を前記他の機器に送る手段と、
前記複数の部分ファイルのうち前記他の機器に送った部分を除く残りの部分を前記ラスタライズ手段に送る手段と、
前記他の機器でのラスタライズにより得られた部分的な画素情報を前記他の機器から受け、これと前記ラスタライズ手段から得られる前記残りの部分についての画素情報とを組み合わせて全体的な画像情報を得る手段と、
を有し、
前記サーバ手段は、
前記第２のソースファイルの又は前記第２の中間コードファイルの部分ファイルを、前記他の機器から受けて前記ラスタライズ手段に送る手段と、
前記ラスタライズ手段により得られた前記部分ファイルについての画素情報を前記他の情報処理機器に送る手段と、
を有する情報処理機器。
　【請求項２５】粗結合された複数台の情報処理機器を利用してソースファイルから印刷のための画素情報を得る情報処理方法において、
前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し
前記検出された複数の図形グループをそれぞれ含む
前記複数の部分ファイルを前記複数の情報処理機器で分散的にラスタライズして複数の部分的画素情報を得る過程と、
前記複数の情報処理機器で得られた前記複数の部分的画素情報を集め、それら集めた部分的画素情報を組み合わせて全体的な画素情報を得る過程と、
を有する情報処理方法。
　【請求項２６】前記複数の情報処理機器にコンピュータ及び印刷装置を含む請求項
２５
方法
　【請求項２７】他の情報処理機器と粗結合された情報処理機器において、ソースファイルから印刷のための画素情報を得る情報処理方法において、
前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し
前記検出された複数の図形グループをそれぞれ含む
過程
前記複数の部分ファイルのうちの少なくとも１つを、前記他の情報処理機器にラスタライズさせるために前記他の情報処理機器へ送る第２の過程と、
前記複数の部分ファイルのうち前記他の情報処理機器へ送った残りの部分ファイルを、自身でラスタライズする第３の過程と、
（１）前記他の情報機器でのラスタライズで得た部分的な画素情報を前記他の情報処理機器から集め、それら集めた部分的な画素情報と、自身でラスタライズ処理して得た画素情報とを組み合わせて全体的な画素情報を得る、
（２）前記他の情報処理機器に前記全体的な画素情報を得させるために、自身でラスタライズ処理して得た画素情報を前記他の情報処理機器に送る、
の（１）又は（２）のいずれか一方を行う第４の過程と
を有する情報処理方法。
　【請求項２８】前記他の情報処理機器がコンピュータ又は印刷装置である請求項
２７
　【請求項２９】前記第１、第２、第３および第４の過程が、前記情報処理機器のオペレーティングシステムの管理下で実行される１以上のプロセスとして実装される請求項
２７
２８
【発明の詳細な説明】
技術分野
　本発明は、コンピュータ周辺装置として用いられる印刷装置の、印刷制御を記述した記述言語プログラムの翻訳処理に関する。より詳しくは、本発明は、印刷制御手順、文字図形、画像情報などを記述し、それらの印刷画素への変換と印刷を一般化する目的で開発された記述言語（一般に「ページ記述言語」と呼ばれ、この明細書でも「ページ記述言語」と呼ぶ）の翻訳処理を行うインタプリタに関し、ネットワークによって複数の情報機器を接続したシステムに適用されるものである。
背景技術
　電子写真方式、インクジェット方式などの高速デジタル印刷に適した印刷装置の開発に伴い、従来の文字情報中心の印刷から脱却した、画像、図形、文字などを同様に取り扱い、文字図形の拡大、回転、変形などが自由に制御できる１ページ単位での印刷手順制御方式が一般に普及してきた。このような制御方式の実現においては、制御手順を記述するプログラム言語を開発し、印刷装置あるいはコンピュータにその言語の翻訳処理系（いわゆるインタープリタ）を搭載し、このインタプリタによりその言語から印刷画素への変換を行なうのが一般的である。
　１台のコンピュータにおいてアプリケーションプログラムが発生した印刷要求は、オペレーティングシステムの機能を呼び出して印刷装置に働きかけようとする。このとき印刷装置の解像度、印刷方式、印刷ヘッドのドット数などのハードウェアに依存せずに印刷手順を行なうために使用するのが「ページ記述言語」である。
　従来のシステムの一例を示す図１Ａ、１Ｂを参照して説明すれば、コンピュータ６ｄ内でアプリケーションプログラムが発生するページ記述言語のソースコード１９は、ページ記述言語インタープリタ８によって翻訳され実際の印刷に使用される画素に置き換えられる。このとき、ページ記述言語インタープリタ８が図２Ａのようにコンピュータ６ｅ内で実行されるか、或いは図２Ｂのように印刷装置２１内で実行されるかは、システムによって異なる。しかし、いずれにしても、単一のプロセッサによりページ記述言語インタープリタが実現されるのが従来のシステムである。
　また本発明に関連する従来例としてプリントサーバと呼ばれるシステムがある。このシステムは、例えば図１Ａにおいて、コンピュータ６ｄにさらに図示しない他のコンピュータとネットワークで接続されるているもので、プリント処理要求の発生したコンピュータ６ｄに代わり、他のコンピュータがページ記述言語のラスタライズを行なうものである。この場合にも、他のコンピュータのプロセッサが単独でインタプリタを実現している。
　インタプリタが行うページ記述言語から印刷画素への変換には、大容量のメモリが必要である。また、ソフトウェアのみでインタプリタを実現する場合、処理時間が長くかかることも重要な問題である。加えて、今後カラーページプリンタの普及が予想され、白黒印刷にあっても高密度な印刷への要求が高まることが明白である。これらはどちらもより大きな記憶空間を必要とする。さらに、カラー印刷においては印刷制御手順はより複雑になり、プログラムの翻訳処理系に要求される事項もその実行により長時間が必要な処理となるであろう。
　本発明はこれら問題点の解決を目指したものであり、インタプリタの各部分の実行を複数のプロセッサによって分散処理することでプロセッサ１個あたりの処理すべき内容を軽減すると共に、それら複数のプロセッサが各々担当するメモリ空間を利用することにより全体として大きなメモリ空間を確保するのに等しい効果をあげ、もって高速高密度処理を実現することを目的とする。
発明の開示
　本発明はソースファイルから印刷のための画素情報を得るラスタライズ処理機能を有する複数の情報処理機器を含む情報処理機器群を粗結合した情報処理システムであって、
　前記情報処理機器群中のいずれかの情報処理機器が、
　
前記ソースファイルに含まれる２以上の図形要素から、前記図形要素の相互間の位置関係に基づいて、それぞれ独立してラスタライズ可能な複数の図形グループを検出し
前記検出された複数の図形グループをそれぞれ含む
　前記複数の部分ファイルうち、少なくとも１つを、ラスタライズ処理が可能な他の情報処理機器に転送する転送手段と、を有
し、
　
前記情報処理機器群中のいずれかの情報処理機器が、
　
他の情報処理機器のラスタライズ処理で得た部分的な画素情報を前記他の情報処理機器から集め、これらの集めた部分的な画素情報を組み合わせて全体的な画素情報を得る合成手段を有する
図面の簡単な説明
　図１Ａ及び図１Ｂは従来のＰＤＬインタープリタの構成を示すブロック線図。
　図２は本発明のＰＤＬインタープリタの第１の実施例の構成を示すブロック線図。
　図３は図２の実施例におけるコンピュータの構成を示すブロック線図。
　図４は図３におけるクライアントプロセスの構成を示すブロック線図。
　図５は図３におけるサーバプロセスの構成を示すブロック線図。
　図６は図４のクライアントプロセスの動作を示す流れ図。
　図７は図３における常駐プログラムの動作を示す流れ図。
　図８は常駐プログラムの構成を示すブロック線図。
　図９は応答メッセージの仕様の説明図。
　図１０はプリンタ構造体を含む応答メッセージの仕様の説明図。
　図１１は多角形描画手順の説明図。
　図１２は多角形の塗りつぶし例の説明図。
　図１３は塗りつぶしアルゴリズムの流れ図。
　図１４及び図１５は塗りつぶしアルゴリズムの説明図。
　図１６は図形グループ判別の説明図。
　図１７及び図１８は塗りつぶし例の説明図。
　図１９及び図２０は図形グループ判別方法の第１の例の説明図。
　図２１は図１９及び図２０の例における図形要素の重なり検出手順の流れ図。
　図２２は図１９及び図２０の例における図形グループの判別／領域結合検出の流れ図。
　図２３及び図２４は図２２の図形グループ間の領域結合検出手順の説明図。
　図２５は図形グループ検出方法の第２の例の説明図。
　図２６は図２５の方法における検出された図形グループの説明図。
　図２７は図形グループ検出方法の第３の例の説明図。
　図２８は印刷手順の説明図。
　図２９は印刷手順の流れ図。
　図３０は翻訳処理手順の流れ図。
　図３１は本発明の第２の実施例の構成を示すブロック線図。
　図３２及び図３３は図３０の第２の実施例の動作を示す流れ図。
　図３４は本発明の第３の実施例の構成を示すブロック線図。
　図３５は本発明の第４の実施例の概略構成を示すブロック線図。
　図３６は本発明の第５の実施例の概略構成を示すブロック線図。
　図３７は本発明の第６の実施例の構成を示すブロック線図。
　図３８は図３７の第６の実施例におけるプリンタの構成を示すブロック線図。
発明を実施するための最良の形態
　最近のコンピュータシステムにおいては、ネットワークを用いて複数台のパーソナルコンピュータやエンジニアリングワースステーションなどを接続し使用するのが一般的に成りつつある。本発明は、このような環境においてネットワーク上のどれか１台のコンピュータで実行されているアプリケーションプログラムが印刷処理に関する要求をオペレーティングシステムに対して発生したとき実行されるものである。どれか１台のコンピュータにおいて発生した印刷要求は、オペレーティングシステムの機能を呼び出して印刷装置に働きかけようとするが、このとき印刷装置の解像度、印刷方式、印刷ヘッドのドット数などのハードウェアに依存せずに印刷手順を行なうために「ページ記述言語」を使用する。言い換えれば、アプリケーションプログラムは、ネットワークシステムで使用されている印刷装置のハードウェアの内容を知らないため、ページ記述言語によって書かれたソースファイルを翻訳プログラムに渡す。本発明においては、オペレーティングシステムの管理下で翻訳プログラムが前記ソースファイルを分解可能な小ファイルに分割し、各小ファイルの処理をネットワーク上で利用できる他のプロセッサに分担させて印刷画素への変換を行なわせる。
　以下に本発明の幾つかの好適な実施例を説明する。
　図２に本発明のページ記述言語並列処理インタープリタの第１の実施例の構成を示す。本実施例は、複数台のコンピュータ６ａ〜６ｃと、少なくとも１台のプリンタ２１により構成される。図３は、一つのコンピュータ６ａを取り上げて、それが持つ機能を図３に示す。他のコンピュータ６ｂ，６ｃも同様の機能を持つ。
　この実施例において、本発明のページ記述言語並列処理インタープリタを動作させるハードウェアの構成を一般的に述べれば以下の通りである。
　（ア）印字要求の生じるコンピュータ（以下「コンピュータＡ」という）とは別個に、少なくとも１台以上の情報処理機器（例えば他のコンピュータや印刷装置）がコンピュータＡとなんらかの通信手段によって接続されている。
　（イ）コンピュータＡおよびそれに接続される情報処理機器が本発明の分散処理ページ記述言語インタープリタを実行可能である。
　（ウ）コンピュータＡおよび情報処理機器が少なくとも２つ以上のプロセスを実行できる。
　ここでオペレーティングシステムの管理下において実行に必要なメモリ、プロセッサ資源を与えられ動作するプログラムの実行単位を「プロセス」と呼ぶ。プロセスは、メモリ割り当て及び、プロセスヘッドにより管理される。プロセスヘッダには、プロセスの識別子（プロセスＩＤ）現在のプログラムカウンタ、スタックポインタ、その他ＣＰＵレジスタの保存値及び、メモリ状態が記録される。実行順位の低いプロセスは、主記憶装置に置かれず補助記憶装置に退避されるが、これらの管理はオペレーティングシステムに依存する。また単一のプログラムが、複数個のプロセスから成立する構成も認められる。また以下の説明においては印字要求の発生するところのコンピュータＡと何らかの通信手段によって接続される他の情報機器との間の通信手段および該通信手段を実現するハードウェアを「ネットワーク」を呼称する。ネットワークは、ハードウェアに依存した物理的なアドレスと、上層のプログラムから参照される論理的なアドレス管理機構をもつ。これらアドレスは、ネットワーク上の特定のコンピュータへのパケット転送に用いられるが、多くのネットワークプロトコルにおいて、より抽象化の進んだ上層の処理手順を持っている。本発明の実施例においては、これら上層の処理ルーチン群が、オペレーティングシステムによって供給されているものとして、説明を行なう。この様な管理機構により、プログラムは、コンピュータを名前と論理アドレスにより検出可能であり、また通信相手のプロセスとは、通信ソケットもしくは類似の機構を用いたパケトの送信／受信が可能であるものとする。
　次に図３を参照して、この実施例におけるコンピュータ６ａの構成を説明する。他のコンピュータ６ｂ，６ｃの同様の構成である。
　このコンピュータ６ａは、ページ記述言語の翻訳処理系の一部を構成する。ここで言うところの「ページ記述言語」とは、ドットマトリクス方式、電子写真方式などによる印刷装置において、印字データの配置、形状、文字情報などの制御手順を記述するために使用される言語である。言語の文法は一般に各言語についてその独自の仕様があり、約束された取り決めに過ぎない。本発明は特定のページ記述言語により記述された書類を翻訳し実印刷データに置き換える処理方式についてなされたものであるから言語仕様については特に言及しない。以下「ページ記述言語」をＰＤＬと略す。
　本発明の翻訳処理系は図３にて参照番号１と２によって示される２つの部分を含む。１は小規模な常駐プログラムであり、２が印刷データ生成の処理を行なう部分、すなわちＰＤＬ並列処理インタープリタである。この実施例においては印刷装置２１（図２参照）は印刷に際し、画素の印刷可否のみをデータ列中の１ビットの０／１によって指定するいわゆるビットイメージ印刷のみを行なうものである。これに合わせて、ＰＤＬ並列処理インタープリタ２は、ページ記述言語のソースコードを入力とし、ビットイメージ印刷のためのデータ列およびプリンタ制御コードを出力する。
　本実施例のＰＤＬ並列処理インタープリタ２は、３つのプロセス２１０，２１１，２１２を含む。プロセス２１０は、ＰＤＬ翻訳のためのクライアントプロセスであり、ラスタライザロセス２１２を使用する。またプロセス２１１は、サーバプロセスであり、常駐処理プログラム１により生成される。プロセスの生成はオペレーティングシステム４のプロセス生成機構２０７で行なわれる。
　オペレーティングシステム４は、スケジューラ２０８により、複数のプロセスに対するＣＰＵ時間の割り当てを行なう。このため、コンピュータ６ａは、複数のプロセスを同時に実行可能であり、いわゆるマルチタスク処理を実現している。この様なスケジューラ２０８は、オペレーティングシステム４のカーネル２０６のプライオリティ管理、待ち行列管理処理により実現される。またオペレーティングシステム４では、ハードディスク装置ドライバ、クロックドライバ等のデバイスドライバ３が使用される。常駐プログラム１およびＰＤＬ並列処理インタープリタ２はネットワークデバイスドライバ２１３を使用し、このネットワークデバイスドライバ２１３は他のコンピュータ６ｂ，６ｃや印装置２１とデータ列の交信を行なう。印刷処理に使用される他の資源として、字体情報２０５がある。この字体情報２０５は、アウトラインフォントデータ又はビットマップフォントデータの形で、補助記憶装置２０４に記録されている。
　コンピュータ６ａにおいて、複数個のアプリケーションプログラム５、１８が同時に実行可能である。コンピュータ使用者は、マウス、キーボード等の入力装置２３を使用し、アプリケーションプログラム５、１８に対する操作を行なう。ユーザインターフェースプロセス２０１は、使用者の操作を検出し、ユーザイベント待ち行列２０２へ、ユーザ事象をエンキューする。一般にフォアグランドで実行されるアプリケーションは、イベント処理プロセス２０３から現在イベントを取得するプログラム（例えば、アプリケーションプログラム１８）である。使用者が、アプリケーションプログラム１８に対して行なう印刷処理要求は、イベント処理プロセス２０３、あるいはコマンドインタープリタ等により検出され、アプリケーションプログラム１８に伝達される。本実施例においては、この結果、アプリケーションプログラム１８が、ＰＤＬソースコードにより記述された出力１９を生成する。ＰＤＬ並列処理インタープリタ２は、この出力を受け取る。
　使用者が入力装置２３を用いて、アプリケーションプログラム１８に対し、印刷処理を要求すると、ＰＤＬにより記述されたファイル１９が出力される。ファイル１９は、コンピュータ６ａのファイルシステム管理下で、特定のディレクトリに置かれ、一定の時間間隔で、このディレクトリ内のファイルを検出する機構により取り出され、ＰＤＬ並列処理インタープリタ２のプロセス２１０に渡される。使用者の立場から見た印刷処理は、これにより完了である。プリンタ２１からの印刷出力１２を得ることで、使用者の印刷要求が実現される。この時、本実施例の構成においては、印刷要求が発生したコンピュータ６ａが、そのＰＤＬ翻訳処理をこのコンピュータ６ａと他のコンピュータ６ｂ、６ｃに分散し、画素生成をそれら複数台のコンピュータでの並列処理により行なう様に動作する。
　この動作を図３、図４及び図５により説明する。図４は、ＰＤＬ並列処理インタープリタ２の内部での、プロセス２１０および２１２の機能の説明図である。また図５は、ＰＤＬ並列処理インタープリタ２の内部での、プロセス２１１および２１２の機能の説明図である。
　図３において、３台のコンピュータ６ａ、６ｂ、６ｃがネットワーク７により結合されている。使用者による印刷要求操作はコンピュータ６ａを用いてなされたものとする。コンピュータ６ａの並列処理インタープリタ２の内部では、図４を参照して、まず一次翻訳処理２１５が、ＰＤＬで記述されたソースファイル１９からコンピュータの処理により適した中間コード形式のファイル１０を生成する。ＰＤＬの仕様の中には、実際のプリントエンジンの画素の解像度に依存しない記述を実現するため、図形記述の際にユーザ座標系と呼ばれる任意の座標系の指定を認めるものがある。一方、実際の印刷画素は、プリントエンジンの物理的な仕様に従った、デバイス座標系上の画素として扱われるため、これらの解像度の変換を行ない、実画素データの座標系に合わせた記述を得る必要がある。またＰＤＬの述語は、一般に文字列形式であるため、冗長度が高い。一次翻訳処理２１５は、座標系及び述語をより処理し易いデータ形式に変換する。
　生成された中間コード１０は、グループ検出処理２１６を経て複数の部分に分割され、各部分は互いに独立した中間コードであるかのように扱われる。後述する様に、この分割は、中間コード１０をできるかぎり多くの小部分に分割する方針で行われる。この分割は印字要求の発生したコンピュータ６ａで、クライアントプロセス２１０のグループ検出手段２１６により行なわれる。分割された中間コード列２３０の各部分は、グループ送信ソケット２２２を介し、ネットワーク７に出力され、他のコンピュータ６ｂ、６ｃの各々の分散処理インタープリタ２に転送される。実際にこれらデータ列を受け取るのは、図５にその構成を示したサーバプロセス２１１である。
　図５を参照して、他のコンピュータ６ｂ、６ｃの各サーバプロセス２１１は、グループ受信ソケット２２５を介し、前記中間コードデータ列を受信し、グループ受信処理２２７でデータ部分を抜き出し、ラスタライザ２１２に転送する。ラスタライザ２１２は実画素生成のプロセスで、曲線または直線の記述から、点列を発生し、実印刷データに相当するデータをメモリ上に発生する。このデータは、画素データ転送処理２２８で圧縮され、画素データ送信ソケット２２６から、ネットワーク７に出力される。
　再び図４を参照して、一方、コンピュータ６ａのクライアントプロセス２１０では、他のコンピュータ６ｂ、６ｃの各サーバプロセス２１１からの画素データを、画素データ受信ソケット２２３を用い受信し、イメージメモリ領域２２９に蓄積する。また前記分割された中間コード列２３０の一部分は、直接ラスタライザ２１２に転送し、画素データに変換する。これら画素データが、画素合成処理２２０により合成され、印刷処理データが完成する。
　上記一連の処理が完了した後、クライアントプロセス２１０は、画素データを、プリンタ２１の物理的仕様に合わせ、プリンタ制御コードの付加処理２２１を行ない、印刷データ信号ソケット２２４から、ネットワーク７を介しプリンタ２１へ送信する。
　図２を参照して、プリンタ２１のネットワークデバイスドライバ３０３は、ネットワーク７を通し受信したデータ列を、エンジンコントローラ３０２へ伝達する。エンジンコントローラ３０２は、画素データのビット配置などを、プリントエンジン３０１の物理的仕様に合うよう置き換え、印刷画素データをプリントエンジン３０１に出力する。この結果、印刷出力１２が得られことになる。
　以上のような処理手順を実現するために、本発明のＰＤＬ並列処理インタープリタは２つの特徴的な部分を備える。これを、図３と図６および図７の流れ図を参照して説明する。
アプリケーションプログラム１８の発した印刷要求がオペレーティングシステム４を通じて並列処理インタープリタ２に伝達されると、並列処理インタープリタ２はできるかぎり多くのプロセッサーを使用して印刷手順を行なおうとする。使用可能なプロセッサーは他のコンピュータ６ｂ、６ｃの内部にあるであろうし、さらに、印刷装置２１内のプロセッサも利用できるかもしれない。分散処理インタープリタ２にとって、それら他の情報処理機器内のプロセッサが利用できるか否かの区別は、それら他の情報処理機器に対して転送した特定のフォーマットのメッセージに対してそれら他の情報処理機器が応答するか否かで決められる。
　即ち、印刷要求の発生したコンピュータ６ａでは、並列処理インタープリタ２内のクライアントプロセス２１０が、ネットワーク上のコンピュータ６ｂ，６ｃのアドレスをアドレス管理テーブル２１４から取得し、分散処理に参加できるコンピュータを募る（ステップ１３〜１６）。この場合、クライアントプロセス２１０は、他のコンピュータ６ｂ，６ｃに対して、分散処理に参加することを要求するメッセージをネットワークを通じて送る。他のコンピュータ６ｂ，６ｃでは、ネットワーク７を通して分散処理に参加することを要求するメッセージが届いた場合、常駐プログラム１が動作してそのコンピュータ６ｂ，６ｃ中での現在のプロセッサーの負荷を判断し、そして、必要なだけのメモリ領域の確保とプロセスの生成に障害が無ければ、分散処理に参加可能である旨を返信する（ステップ２５〜２９）。
　この返信を受けて、印刷要求が生じたコンピュータ６ａはネットワーク上で分散処理に参加可能な情報処理機器（この実施例ではコンピュータだけであるが、他の実施例ではプリンタも利用できる場合がある）だけを利用しそれ以降の手順を進めるように動作する。ここで分散処理に利用可能であった情報処理機器のネットワーク上でのアドレスは、図４に示したサーバマシン管理表２１９に登録される。
　このようなネットワークを用いた処理においては、複数の情報処理機器から同時に印刷に関しての要求、あるいはその他の要求が発生するのは充分に考えられることである。この様な要求の競合状態においては、本発明の分散処理インタプリタを有する全ての情報処理機器が直ちに要求に応じられる訳ではない。図８は常駐処理プログラム１の構成図である。プロセッサの負荷は、オペレーティングシステム４のスケジューラ２０８に対する要求の待ち行列２０９の長さを検出することで判断できる。常駐プログラム１の負荷検出機構３２４は、プロセス間通信により、待ち行列２０９の長さを知ってプロセッサの負荷の程度を判断し、クライアントプロセス２１０からの要求に応答を返す動作をする。
　以下に、この動作を図６および７の流れ図と図８とを参照して説明する。
　前述のようにネットワークの上でどのような情報処理機器が結合されているかは、それぞれ情報機器についてネットワーク上で固有に与えられた機器ごとの名称によって区別可能であり、各コンピュータはネットワークプロトコルにおいて用意されるブロードキャスト機能などを使用して各機器の名称を知り、これを名前表ネットワーク管理テーブル２１４（図４参照）に格納しているものとする。そこで印刷要求の発生したコンピュータは、図６のステップ１３に示すように、ネットワーク上のどれか１つの情報処理機器に対し、サーバプロセス２１１を起動させることが可能か問い合わせるメッセージを送る。
　その情報処理機器内では、図８に示すように、ネットワークデバイスドライバ２１３を介して受け取られたメッセージは、デバイスドライバインターフェース３２１で取得され、要求メッセージ解析処理３２２に入る。このメッセージを受け取った情報常駐処理プログラム１は、図７の流れ図に示されるように動作する。すなわち、まずステップ２５で、メッセージの種類が状態の確認と返信を要求するものであるかどうか判断し、Ｙｅｓである場合はステップ２６にてプロセッサの使用頻度を調査し、その負荷が新たなプロセスを生成するのに問題ないかどうかステップ２７で判断する。これが問題ない場合は、続いてステップ２８でメモリの使用状況を調べ、新たなプロセスを作れるかどうかをステップ２９で確認する。全てに問題なければ正常な終了コードが返送され、ステップ２７またはステップ２９の判断において何らかの障害があればエラーコードが返送される。
　正常な終了コードが返されたときは、印刷要求の発生したコンピュータでは、受諾のメッセージを返信されたものと見なされる。また本発明の並列処理インタープリタが組み込まれていない情報処理機器からは受諾メッセージが戻って来ない。この判断は図６のステップ１４においてなされる。ここで受諾メッセージが返信された場合は、ステップ１５に示すように前記の応答をした情報処理機器に対し再びメッセージを送り、プロセスを起動し分散処理インタープリタを動作させるように促す。このメッセージを受け取った情報処理機器は、図７のステップ３０においてプロセス生成要求のメッセージかどうか判断し、Ｙｅｓの場合はステップ３１で新たなプロセス２１１を生成する。図８の構成では、起動処理３２３が実施され、オペレーティングシステム４のプロセス生成機構２０７により、サーバプロセス２１１が生成される。
　印刷要求の発生したコンピュータのクライアントプロセス２１０は、ステップ１６にてネットワーク上の全ての情報処理機器に対し問い合わせたかネットワーク管理テーブル２１４により判断し、未問い合わせの情報処理機器がに対しては、ステップ１３、１４及び１５の処理を繰り返す。全ての機器についての問い合わせが完了した場合には、自らが分担すべきＰＤＬの翻訳処理（ステップ１７）を開始する。この処理は前述の様に、クライアントプロセス２１０が、ラスタライザ２１２を使用し行なうものである。
　次に本実施例のＰＤＬの分散処理インタープリタを実行する際に要求されるソフトウェアの動作の詳細について記す。以下の説明は主として次の４点について行なわれる。
　（Ａ）印刷要求の発生したコンピュータがネットワーク上の翻訳分散処理を行なう各コンピュータの補助記憶装置にいかなる種類のフォントが記録されているかを知ること。
　（Ｂ）ネットワーク上において現在実行中の「印刷要求」が発生するＰＤＬソースファイルの翻訳分散処理を行なう全てのコンピュータに対して、印刷の実際の動作が行なわれる印刷装置の、解像度、用紙サイズなどの物理的条件を共通に知らせること。
　（Ｃ）ＰＤＬが発生したソースファイルを分割して分割した各部分を独立に画素へ翻訳し、それらを後の別手順において重ね合わせても、全部分を逐次画素に置き換えた４場合とまったく同じ印刷画像が得られよう、ソースファイルから図形グループを検出してグループ毎に分割を行なうこと。
　（Ｄ）ソースファイルの分割した各部分の翻訳処理を、ネットワーク上のどの情報処理機器に分担させたかを記録し、かつその実行状況を把握すること。
　図２を参照して、印刷要求の発生したコンピュータ６ａが、ネットワーク上の複数の他のコンピュータ６ｂ、６ｃに対して文字コードを転送し、そしてそれらのコンピュータ６ｂ、６ｃから翻訳処理により得られたビットマップを受け取る、というプロセスを実行するとき、転送される文字コードには、実際の文字列の他に文字種、大きさおよび文字飾りに関する情報が付加されている。例えば、「関東地方の天候は、」という文字列を印刷データに変換するためのに転送される情報は、｛文字種＝細明朝体｝＋｛ポイント数＝１２｝＋「関東地方の」＋｛文字種＝細明朝体｝＋｛ポイント数＝１２｝＋｛文字飾り＝斜体｝＋「天候は、」という形式をとることができる。このような形式の文字情報が今コンピュータ６ｃに転送されたとしても、コンピュータ６ｃに、細明朝体の印刷文字データを作り出すための字体データが存在しなければビットマップは生成できない。ここで言うところの「字体データ」とは、外形形状を規定し、外形を表す曲線形式を取り決めた元データから実際の印刷に使用する画素を生成するいわゆる「アウトラインフォント」であっても、或いは予め定まった大きさについて各文字を表すために与えられた画素の０／１データの集まりである「ビットマップフォント」であっても構わない。少なくともコンピュータ６ａはコンピュータ６ｃに｛文字種＝細明朝体｝、｛ポイント数＝１２｝であるような文字を処理する手段が存在することを知った上で、上記文字列の印刷データへの変換処理を６ｃに要求するものでなければならない。一つの書類には複数個の文字種が使用され、それら全ての文字種が全てのコンピュータで利用可能であるかどうかは印刷処理の直前まで不明である。なぜならコンピュータの使用者が自分で不要となった文字種のデータを廃棄することは、いつの時点でも可能な処理だからである。本実施例はかかる点で不都合が生じないようにメッセージの受渡しにより次のような処理を行なう。
　現在発生している印刷要求のための分散処理に応ずることのできるネットワーク上の情報処理機器は、図７の流れ図に示したステップ３１までの全処理を正常に実行したものである。これら機器のネットワークアドレスは、既に図４に示すサーバマシン管理表２１９に格納済みである。ここまでの図７の処理は、サーバ側の情報処理機器（例えばコンピュータ６ｃ）において、図３に示した常駐処理プログラム１によって行なわれる。この後、実際にネットワークから転送されてくるメッセージに従い、ＰＤＬ並列処理インタープリタ２のラスタライザプロセス２１２を制御して、印刷データの生成を実際に行なうのは、図７のステップ３１で作られたサーバプロセス２１１である。サーバプロセス２１１は性質上アプリケーションプログラムの１つの様に振る舞うことになる。すなわちオペレーティングシステムのシステムコールを利用し自分に必要なメモリ、入出力チャンネルなどを確保する。このサーバプロセス２１１は、ユーザインターフェースとのインタラクティブな動作を伴わないため、使用者の気づかないうちに開始され終了するという点が、多くの一般的なアプリケーションプログラムと異なる点である。
　図５に戻り説明を続けると、クライアント側コンピュータのクライアントプロセス２１０はサーバ側コンピュータのサーバプロセス２１１に対して以下の４種類のメッセージを発行し、これらメッセージがグループ受信ソケット２２５によりネットワークから受信される。サーバプロセス２１１は要求メッセージ解析処理２３１により、受信したパケットからメッセージを取り出し、それらに応答する。応答可能な上記４種類のメッセージを示す。
　字体要求
　処理要求
　状態要求
　取得要求
　これらメッセージにつき順次説明する。
（１）字体要求
　プロセス２１１は字体要求のメッセージを受け取ると字体要求処理２３２において、字体情報２０５にアクセスし、直ちに現在所持している全てのフォントの字体データファイルを「変更不可、廃棄不可」の状態にし、図９に示す仕様の応答メッセージを返送する。メッセージは次の４つの部分からなっている。まずヘッダがあり、これはプロセス２１０に対する応答であることを示し、続いて応答メッセージが含む構造体数、該構造体数によって示された個数だけの構造体、最後に終了符号、という構成である。ここで応答として返される構造体は、本実施例においては、表１に示した構造体メンバからなるデータ列である。
　【表１】
　表１中の変数型ｓｔｒｉｎｇは文字列を表し、変数型ｉｎｔｅｇｅｒは１６ビットの整数、ｗｏｒｄは１６ビットの符号なし整数、ｌｏｎｇｉｎｔは３２ビットの整数であり、構造体メンバＢＯｓｅｌｅｃｔｉｏｎは＝０の場合ビットマップフォントを使用することを示し、構造体メンバＳｉｚｅはビットマップフォントの場合はその大きさを示し、アウトラインフォントの場合はヒンティング処理を行なうべき上限の大きさを示している。
　以上の様な応答メッセージを受信したクライアントプロセス２１０は、ネットワーク上で分散処理に参加可能な情報処理機器群が、各々どのようなフォントを持っているか知ることが出来る。この結果、クライアントプロセス２１０では、フォント資源管理表２１８の更新が行なわれる。図４に示すように、プロセス２１０は、サーバマシン管理表２１９により、並列処理を行なうサーバコンピュータのネットワーク上のアドレス及び、通信ソケットの情報を管理する。上記の手順によりサーバコンピュータのアドレスに結び付けられたフォント資源の管理が行なわれるため、文字列処理要求をサーバプロセス２１１に送信する際には、該サープロセス２１１の動作するところの情報処理機器に存在するフォントセットについてのみ要求を発行するよう作用する。また一連の翻訳分散処理が完結した場合は、プロセス２１１にメッセージを送り、先にフォントデータに対し指定した「変更不可、廃棄不可」の属性を解除する様に働きかける。
（２）処理要求
　次にクライアントプロセス２１０は処理要求を各サーバプロセス２１１に発行する。プロセス２１１の処理要求に対する処理２３３は、グループ受信手段２２７に働きかけ、以下の処理を行なう。
　処理要求は、具体的なＰＤＬの個々の処理を要求するもので本実施例の場合、図１０の仕様でメッセージが送信される。まずクライアントプロセス２１０からのメッセージであることを示すヘッダがあり、続いて「プリンタ構造体」と称する部分が続く。プリンタ構造体の構造体メンバは表２に示すものである。
　【表２】
　すなわち長方形の印刷領域を印刷用紙上に設定し、該印刷領域の左上の座標と、右下の座標を４つの１６ビット整数によって指定するためのメンバ（ＣｌｉｐｐｉｎｇＬＴＨ、ＣｌｉｐｐｉｎｇＬＴＶ、ＣｌｉｐｐｉｎｇＲＢＨ、ＣｌｉｐｐｉｎｇＲＢＶ）と、水平垂直方向の印刷密度を与える２つの１６ビット整数（ＲｅｓｏｌｕｔｉｏｎＨ、ＲｅｓｏｌｕｔｉｏｎＶ）によって印刷装置の物理的仕様が伝達される。ここで印刷密度は、１インチあたりの画素数を表す値が用いられ、座標データは解像度に対する相対値である。例えば１インチあたり３００画素の解像度の印刷装置であり、横方向に８インチまで印刷可能な印刷装置については、ＣｌｉｐｐｉｎｇＬＴＨとＣｌｉｐｐｉｎｇＲＢＨの値の差は２４００である。プリンタ構造体の他のメンバの内、ＲＧＢは色処理のためのトラップワードとして使用される。ＰｒｏｃＰｔｒはプリンタ固有の処理を追加するために手続きが必要となった場合の関数へのポインタを格納する場合の予約領域である。ＲＧＢ及びＰｒｏｃＰｔｒの各値の代入は、サーバ側のプロセス２１１の処理に任される。以上のようなプリンタ構造体に続いて実際のＰＤＬのソースコードを処理した中間言語により構成された構造体が続き、終了符号が続く。なお上記説明中に使用した「トラップワード」とは、オペレーティングシステムの機能呼び出しに使用されるソフトウェア割り込み命令の命令語を意味する。但し本来プロセッサに用意された命令語によるソフトウェア割り込み以外にも、本実装命令、不正命令などが同様な目的に使用可能であることは周知の通りである。
（３）状態要求／取得要求
　クライアントプロセス２１０は以上のようにしてサーバプロセス２１１に対しＰＤＬにより記述されたドキュメントの一部分の翻訳処理依頼を発生する。この後、クライアントプロセス２１０も該ドキュメントの別の一部分の翻訳を分担し処理する。クライアントプロセス２１０はこの処理が終了すると直ちに状態要求のメッセージを各々のサーバプロセス２１１に送信する。各サーバプロセス２１１では、状態要求のメッシージが処理２３４を起動し、画素データを生成状況がモニタされる。クライアントプロセス２１０は、処理終了のメッセージを返送してきた情報処理機器に対して取得要求メッセージを発生する。それら情報処理機器のサーバプロセス２１１では、取得要求メッセージが処理２３５を起動し、処理２３５は、画素データ送信処理２２８を制御して翻訳処理により生成された印刷データの転送を行なわせる。クライアントプロセス２１０は、それら情報処理機器から印刷データのビットマップを受け取る。
　ネットワーク上をサーバプロセス２１１からクライアントプロセス２１０に転送される印刷データは、ヘッダと終了符号により囲まれたビットマップのデータ列であり、データ列のバイト数、圧縮方法の指定はヘッダに含まれる。全てのサーバプロセス２１１から取得要求に応じた印刷データの返送があったことを確認し、クライアントプロセス２１０は、磁気ディスク装置などの補助記憶装置を用い、取得した印刷データの重ね合わせを行ない、その結果を印刷装置に転送し印刷出力を行なう。これら処理状況の管理には、グループ管理表２１７が使用される。これについては後述する。
　次にＰＤＬにより記述されたソースファイルを適切に複数部分に分割する手段について説明する。ここでは説明を明瞭にするためＰＤＬの内の次の２つの「手続き」のみを使用した実施例を挙げて説明する。ここで「手続き」とはプログラミング言語の構文上の１つの実行単位であり、プログラミング言語Ｐａｓｃａｌ（ＡＮＳＩ／ＩＥＥＥ７７０Ｘ３．９７、ＩＳＯ７１８５、英ＢＳ６１９２）において、通常「ＰＲＯＣＥＤＵＲＥ」として扱われるものに同様である。他のプログラミング言語の類似の例としては、プログラミング言語Ｃの「戻り値の無い関数」、ＦＯＲＴＲＡＮの「サブルーチン呼び出し」などがこれに近いものである。
　手続き：ＦｉｌｌＰｏｌｙｇｏｎ（引数↑多角形）
　手続き：ＩｎｖｅｒｔＰｏｌｙｇｏｎ（引数↑多角形）
　上記手続きの使用に先だって、次のデータ型をあらかじめ定義する。
　１６ビットの整数Ｎ、Ｈ、Ｖデータ型　座標＝２要素からなる配列（Ｈ、Ｖ）
　構造体　多角形＝（多角形の角数Ｎ、Ｎ個の座標の集合）
　構造体′多角形′を指し示すポインタ＝↑多角形
　すなわち、Ｎ、Ｈ、Ｖは−３２７６８、３２７６７までの値をとる整数であり、１つの座標は水平方向の値Ｈ、垂直方向の値Ｖを要求する配列によって記述され、多角形とは整数Ｎで示されるＮ個の座標を持つ図形を記述するための構造体である。「多角形」は、前記のＮ個の座標を第１の座標から第Ｎの座標まで昇順に直線で結び、最後に再び、第Ｎの座標から第１の座標までを直線で結んで図形を閉じたものを言う。従ってＮ＝６であっても、いわゆる６角形とは限らない。また、前記多角形構造体が作りだす図形の内側を塗り潰す操作を行なった場合、第ｉ−１座標と第ｉ座標を直線で結ぶ操作を繰り返し行なって閉じた領域が生じたとしても、該閉領域が必ず塗りつぶされる部分とはならない。これは本実施例が用いた「塗りつぶしアルゴリズム」のためである。
　この例を図１１および図１２を用いて示す。図１１は、Ｎ＝６であるような多角形構造体から図形を書き表そうとした時の直線描画の手順を表した説明図である。多角形構造体には図１１の□の中に書き表した順番に従って座標が保持されているものとする。従って図中の矢印の順番で直接を引き作りだされる多角形は６角形とはならない。またこの構造体によって書き表された多角形を塗りつぶした図形は図１２で示される。黒色で表される領域が塗りつぶしの対象となった部分である。前述の様に直線で囲まれた閉じた領域であっても塗りつぶされていない部分が存在する。この理由を明らかにするため、本実施例において使用した「塗りつぶしアルゴリズム」について図１３、図１４、図１５を用いて説明する。以下の説明では紙面に対して図１２の矢印で示した方向を「水平」と見なすものとする。また簡単のため本実施例で行なう印刷処理は白黒二値画像のみとし、従って注目画素の印刷／非印刷の区別は１ビットの０／１の値で判断し、＝１である場合を印刷するものと定める。本発明で用いるＰＤＬについては、紙面に対し水平な方向に８ビットからなる処理単位を設定し、該単位を「１バイト」と呼称する。実際の処理は３２ビット（４バイト）を単位として行なう場合が多いが、図の説明では８ビット単位での扱いをする。
　本実施例で使用した「塗りつぶしアルゴリズム」の流れ図を図１３に示す。流れ図中で「水平座標の値がＨ、垂直座標の値がＶ」であるような位置に在る画素として扱われるべき１ビットの内容を（Ｈ、Ｖ）と書き表す。またＮ個の座標を順次数えるためにｉという変数を、水平軸上の位置を与えるためにｘ、垂直軸上の位置としてｙを、偶数奇数判定用にＰなる変数を一時的に使用する。まずｉ＝１とし（ステップ３３）、ｉ＝＜Ｎである限り処理を繰り返すことにする（ステップ３４）。次に第ｉの点から第ｉ＋１の点までを直線に結ぶ。これは第ｉの座標を（Ｘｉ、Ｙｉ）と書くことにしたとき、座標が（Ｘｉ、Ｙｉ）である点と（Ｘｉ＋１、Ｙｉ＋１）である点を、区間［Ｘｉ、Ｘｉ＋１］について線分の方程式
　　ｙ＝（Ｙｉ＋１−Ｙｉ）／（Ｘｉ＋１−Ｘｉ）＊ｘ＋Ｙｉ
で結ぶことに等しい（ステップ３５）。但しｉ＝Ｎの時はｉ＋１＝１と見なし処理する。これをｉを１ずつ増加させ繰り返す（ステップ３６）。ステップ３５は実際には
　　ｘ＝（ｙ−Ｙｉ）＊（Ｘｉ＋１−Ｘｉ）／（Ｙｉ＋１−Ｙｉ）
という式を用いてｙ＝Ｙｉからｙ＝Ｙｉ＋１までの区間で値を求め、水平方向の座標の位置が（ｘ÷８）の整数部分＋１で与えられる１バイト中の、（ｘ÷８）の余りの部分で示されるビットを１とする処理が行なわれる。垂直方向の変位はプリンタ構造体に示される解像度に従い決められた値を増分として与えられる。これを図１４の線分４９によって示す。但し図１４、図１５はいずれも閉じた図形の一部を示している。数学的な線分は太さを持たないが、５３を０ビット目とするメモリ上の１バイト５４を通過した部分にそれぞれ印刷すべきビット５５を生じる。同様にして線分５０、５１、５２が引かれた後ではメモリ上には、それら線分の通過した位置に印刷すべきビット５５（図１４の●）を生じる。
　再び図１３の流れ図に添って説明する。なおこれまでの処理によってＮ個の座標の中から、水平垂直方向の最大値、最小値が求められておりそれらを、ＨＭＡＸ（水平方向の最大座標値）、ＨＭＩＮ（水平方向の最小座標値）、ＶＭＡＸ（垂直方向の最大座標値）、ＶＭＩＮ（垂直方向の最小座標値）と書き表す。すでに画像用のメモリの上には線分の位置に印刷すべき画素が示されているから、後はこれら画素により囲まれた部分を検出し、それらビットを１とすればよい。そのためにまず、一時的な変数Ｐを０にする（ステップ３７）。次に垂直方向の変位を表す変数Ｖにその最大値ＶＭＡＸを代入する（ステップ３８）。それ以降の処理をＶ＞＝ＶＭＩＮであるかぎり繰り返す（ステップ３９）。すなわち、水平方向の変位を示す変数ＨにＨＭＩＮを代入し（ステップ４０）、座標（Ｈ、Ｖ）で与えられる位置のビットが０であるか調べる（ステップ４３）。ステップ４３でビット＝１だったとき（Ｎｏの場合）、変数Ｐに１を加える（ステップ４４）。変数Ｐの初期値が０であるから、図１４の線分４９で生じた印刷すべきビット（すなわち＝１であるビット）５５にさしかかった時、変数Ｐはいつも１である。ステップ４４を通った場合は、水平方向変位を１つ増し（ステップ４８）、ステップ４１で水平方向の最大値を超えていないか判断し、Ｈ＝＜ＨＭＡＸであるかぎり、さらにステップ４３以下の処理を繰り返す。もし水平方向の最大値を超えていたら、垂直方向の変位を１減じ（ステップ４２）、前述の判断（ステップ３９）に戻る。一方、再びステップ４３の判断を通過するとき、例えば図１３中の線分４９と５０の間の座標位置では（Ｈ、Ｖ）＝０であるからステップ４５でＰが奇数かどうか判定され、Ｐが奇数であるために（Ｈ、Ｖ）＝１となるようにビットセットされる（ステップ４７）。これを繰り返し、線分５０の位置に達すると、ステップ４３で（Ｈ、Ｖ）＝１であるからステップ４４によってＰ＝Ｐ＋１という処理がなされる。このため線分５０以降はＰが偶数であり、ステップ４６を通過するため、ビット＝１とされない。この状態は線分５１の位置で再度Ｐが奇数となるまで維持される。また線分５２を通過した後はＰが偶数となる。
　図１４は線分４９、５０、５１、５２によって変数Ｐの偶数／奇数が繰り返され、塗りつぶしが行なわれた経過を図１５のビット５５（●）によって示す。従ってかかるアルゴリズムを実行した場合は、図１１の多角形が塗りつぶされ、図１２の図形を得ることになる。
　以上の様な塗りつぶし手順を与えられた多角形に対して行なうのが「手続きＦｉｌｌＰｏｌｙｇｏｎ」である。また「手続きＩｎｖｅｒｔＰｏｌｙｇｏｎ」は「塗りつぶしアルゴリズム」と同様な手順によって「線分に囲まれた領域」を偶数／奇数規則で、ビットの反転を行なう手続きである。この２つの手続きだけを用いて、次のようなプログラムを実行する場合を考える。
　多角形Ａ
　　＝（６，
　　（０，８７），（２２，９３），（９２，５１），（９２，８２），（２０，２７），（０，３３））
　多角形Ｂ
　　＝（４，
　　（３４，５８），（５５，５８），（５５，３４），（３４，３４））
　多角形Ｃ
　　＝（４，
　　（１７，５１），（７８，５１），（７８，０），（１７，０））
　　ＦｉｌｌＰｏｌｙｇｏｎ（↑多角形Ａ）
　　ＦｉｌｌＰｏｌｙｇｏｎ（↑多角形Ｂ）
　　ＩｎｖｅｒｔＰｏｌｙｇｏｎ（↑多角形Ｃ）
　上記のプログラム（説明のため実行可能な形式とは異なる）の行わんとする操作を図１６を用いて説明する。上記プログラムはまず、６つの座標からなる多角形Ａ、４つの座標からなる多角形Ｂ、Ｃを定義する。これを図示すると多角形Ａは参照番号５６、多角形Ｂは参照番号５７、多角形Ｃは参照番号５８の様に示される。但し多角形の座標を定義するために代入を行なった段階では、図１６に示すごとに線分は現われない、図１６は上記多角形Ａ、Ｂ、Ｃの形状を説明するための図である。続いて上記プログラムの手続きを次々に実行すると、図１４の図形が得られる。すなわち、多角形５６の領域を塗りつぶし、次に多角形５７の領域を塗りつぶした後、多角形５８の領域をビット反転する。この結果白ぬきされた領域が生じる。
　ところで本発明を特徴付ける「分散処理」の考え方を誤って用いた場合、次のような事態が考えられる。図２の構成において、例えば、コンピュータ６ａの分散処理インタープリタ２によって
　多角形Ａ
　　＝（６，
　　（０，８７），（２２，９３），（９２，５１），（９２，８２），（２０，２７），（０，３３））
　多角形Ｂ
　　＝（４，
　　（３４，５８），（５５，５８），（５５，３４），（３４，３４））
　　ＦｉｌｌＰｏｌｙｇｏｎ（↑多角形Ａ）
　　ＦｉｌｌＰｏｌｙｇｏｎ（↑多角形Ｂ）
までの処理を行ない、同時にコンピュータ６ｂの分散処理インタープリタ２を用いて
　多角形Ｃ
　　＝（４，
　　（１７，５１），（７８，５１），（７８，０），（１７，０））
　　ＩｎｖｅｒｔＰｏｌｙｇｏｎ（↑多角形Ｃ）
という処理を行ったものとし、それら処理の結果をコンピュータ６ａの分散処理インタープリタ２で単純に重ね合わせたものとすれば、得られる結果は図１８のようなものにしかならない。上記のプログラムは後に続く手続きが、先に登場した手続きの結果を受けて処理するものであるから当然である。
　これはインタープリタを分散処理しようとした時、常に発生する問題である。一つの解決方法は、ＰＤＬの文法に強い制約を受け、先の手続きの結果を参照しない言語仕様とすることであるが、この方法はアプリケーションソフトのコーディングにおいて負担を増すため、本実施例では採用しない。本実施例は別の手段によってこの点に解決を与えた。すなわち、プログラム言語ＢＡＳＩＣなどに用いられる、計算／汎用プログラムを対象としたインタープリタと異なり、ＰＤＬのインタープリタは文字、図形を画素に変換する操作が対象となる、このことは複数個の文字／図形が重なり合って形成する１つの図形群（グループ）が、１ページの印刷用紙に相当する空間に複数個ある場合、個々の「図形グループ」が空間上で離れて存在すれば、それらを「切り離されて存在する一つ一つのグループ」ごとに画素に置き換えることは可能であることを示している。そこで本発明は「切り離しても他の図形に影響を及ぼさない図形グループ」を検出する手段を考案し、ＰＤＬ並列処理インタープリタに用いることにした。以下にその例を示し、説明する。
　以下に説明する幾つかの例に共通して言えることは、図形どうしの重なり合いを、実際に画素に変換する以前の状態でいかに早く検出するかという点である。画素への置き換えを分散処理することが目的であるから、実際に画素が生成された後に、重なり合いが検出されるのでは意味がないためである。以下の例では多角形、楕円などを用いて説明を行なうが、先に示したＰＤＬの仕様あるいは、類似の仕様であらかじめ記述されたコードが存在し、従って多角形の座標についてはその値が本実施例の処理以前に既知となっている、（すなわち、その値を取り出して参照することが可能である。）ものとする。
（１）グループ判別の例１
　図１９、２０及び２１を参照して説明する。ここで、ＰＤＬによって書かれたソースコードの意図するところが、例えば
　手順１：長方形の領域に操作を加える。
　手順２：三角形の領域に操作を加える。
　手順３：楕円の領域に操作を加える。
というものであると仮定する。ここで言うところの「操作」とは「塗りつぶし、ビット反転、ビット和」などの何らかの操作であるとする。
　まず長方形６１の領域に操作を加え、次に三角形６２の領域に操作を加え、最後に楕円６５の領域に操作を行ないたいものとして、それらの位置関係は図２０の通りである。人間の視覚では、明らかに長方形６１と三角形６２が重なっている。それを検出する方法が本例である。
　すでに説明したように、本発明の分散処理インタープリタはＰＤＬによって記述された、文書／図形記述のためのソースコードを翻訳する過程で、一度中間コード形式のファイル１０を作り、主記憶、あるいは補助記憶に記録し、実際の分散処理、画素への変換はこの中間コード形式のファイルを参照しつつ行なう。かかる中間コードの解析によって、長方形６１の座標が明かとなると、その「左上端の点」の座標の水平、垂直位置の値をそれぞれ、変数のペア（ＧＬＴＨ［１］、ＧＬＴＶ［１］）に代入する。また「右下端の点」の座標の水平、垂直位置の値をそれぞれ、変数のペア（ＧＲＢＨ［１］、ＧＲＢＶ［１］）に代入する。但し、ここで水平、垂直とは図１９を正面視した状態での方向を差すものとし、その正負は、図１９の矢印によって示すものとする。また１ページの文書中には、複数の図形グループが存在するため、変数、ＧＬＴＨ、ＧＬＴＶ、ＧＲＢＨ、ＧＲＢＶはいずれも配列変数であり、例えば、ＧＬＴＨ［１］は変数ＧＬＴＨの配列の第１要素であることを示す。次に三角形６２の３つの座標が明かとなるため、それら座標の値より、水平方向の最大値Ｈｍａｘ、最小値Ｈｍｉｎ及び、垂直方向の最大値Ｖｍａｘ、最小値Ｖｍｉｎを検出する。これは、左上端の座標が（Ｈｍｉｎ、Ｖｍａｘ）であり、右下端の座標が（Ｈｍａｘ、Ｖｍｉｎ）であるような長方形領域６３を見つけることに等しい。これを図２１にステップ６７として示す。
　次に長方形６１と６３の重なりを検出する。まずＶｍａｘ≧ＧＲＢＶであるかどうか調べる（ステップ６８）。もし長方形６３の上端の垂直位置（Ｖｍａｘ）が長方形６１の下端の垂直位置（ＧＲＢＶ）未満であれば、長方形６３は長方形６１の下方に位置し、重なりは生じない（ステップ７５）。そうでない場合、Ｖｍａｘ≦ＧＬＴＶであるかどうか調べ（ステップ６９）、これが不成立かつ、Ｖｍｉｎ≦ＧＬＴＶの条件（ステップ７０）も不成立であれば、長方形６３は長方形６１の上方に位置し、重なりは生じない（ステップ７５）。それ以外の場合は、水平方向の位置関係を調査する。すなわち、Ｈｍｉｎ≦ＧＲＢＨであるか調べ（ステップ７１）、不成立であれば、長方形６３は長方形６１の右に位置し、重なりを生じない（ステップ７５）。ステップ７１の条件が成立しても、Ｈｍｉｎ≧ＧＬＴＨの条件（ステップ７２）が不成立で、Ｈｍａｘ≧ＧＬＴＨの条件（ステップ７３）も不成立であれば、長方形６３は長方形６１の左に位置して、重なりは生じない（ステップ７５）。
　以上の場合以外の場合、重なりが検出される（ステップ７４）。図１９の例では、長方形６１と６３の重なり合いが検出される。この結果長方形６１と三角形６２は「１つの図形グループ」に属していると判断する。
　また、これにより従来長方形６１が属していた「図形グループ１」に三角形６２も加わったわけであるから、「図形グループ１」の領域も更新しなければならない。すなわち
　手順１：変数ＧＬＴＨ［１］にＧＬＴＨ［１］またはＨｍｉｎの内、どちらかより小さい方を代入する。
　手順２：変数ＧＬＴＶ［１］にＧＬＴＶ［１］またはＶｍａｘの内、どちらかより大さい方を代入する。
　手順３：変数ＧＲＢＨ［１］にＧＲＢＨ［１］またはＨｍａｘの内、どちらかより大さい方を代入する。
　手順４：変数ＧＲＢＨ［１］にＧＲＢＨ［１］またはＶｍｉｎの内、どちらかより小さい方を代入する。
という手順を行なう。これにより、「図形グループ１」の新しい領域は、図２０の長方形６４のようになる。ここにさらに楕円６５に対しての操作が加わるが、これは楕円の方程式から楕円６５が内接する長方形６６の各座標が求められるため、新たな（Ｈｍｉｎ、Ｖｍａｘ）、（Ｈｍａｘ、Ｖｍｉｎ）の値を代入し、再び図２１の流れ図にしたがって、判断を行なう。その結果、領域６６は領域６４と重なり合いを持たないことが知れるため、領域６６は楕円６５が含まれる「新たな図形グループ」の境界を示す領域であることがわかる。これを「図形グループ２」として
　　ＧＬＴＨ［２］＝Ｈｍｉｎ
　　ＧＬＴＶ［２］＝Ｖｍａｘ
　　ＧＲＢＨ［２］＝Ｈｍａｘ
　　ＧＲＢＶ［２］＝Ｖｍｉｎ
という４つの代入が行なわれる。
　一般の文書はより複雑であるが、手順は全く等しい。
　以上の様な処理を開始する以前に、文書を記述したソースファイルは閉じており、（すなわちページ開始からページ終了までの記述が完結していて、これ以上追加の書き加えが無い状態になっている。）さらに中間コードへの変換も終了しているため、図形要素／文字は有限個であると言う保証がある。いますでにＮ個まで図形グループが検出されたものとして、その次に現われた図形要素の扱いを決める手順の流れ図を図２２に示す。図２２中で変数ｉは図形グループを数えるための整数、変数ｊは注目している図形要素が含まれる図形グループの数を示す整数、配列変数Ｇｒｏｕｐｓ［ｊ］は注目している図形要素が含まれる図形グループ（複数であることが考えられる。）が第何グループであるか記録するための整数配列である。
　まずｉ、ｊを初期化し（ステップ７６）、図２１の流れ図に示した処理をサブルーチンとして呼び出して重なりを検出する（ステップ７７）。ステップ７８で重なりが無しである場合は、ｉを１だけ増し（ステップ８６）、全ての図形グループについて終了していない場合は（ステップ８１）、次のグループについて重なり検出（ステップ７７）を繰り返す。一方、ステップ７８で重なり有りの場合は、以下の手順
　手順１：変数ＧＬＴＨ［ｉ］にＧＬＴＨ［ｉ］またはＨｍｉｎの内、どちらかより小さい方を代入する。
　手順２：変数ＧＬＴＶ［ｉ］にＧＬＴＶ［ｉ］またはＶｍａｘの内、どちらかより大さい方を代入する。
　手順３：変数ＧＲＢＨ［ｉ］にＧＲＢＨ［ｉ］またはＨｍａｘの内、どちらかより大さい方を代入する。
　手順４：変数ＧＲＢＨ［ｉ］にＧＲＢＨ［ｉ］またはＶｍｉｎの内、どちらかより小さい方を代入する。
で図形グループｉの領域を更新し（ステップ７９）、重なりが検出された回数を示す変数ｊに１を加え、重なりが検出された図形グループの番号（ここではｉ）を図形グループの配列Ｇｒｏｕｐｓ［ｊ］に代入し、ｉについても１を加える（ステップ８０）。
　従って、例えば、注目の図形が３つの図形グループと重なり合いを持ち、それら図形グループが、１４番目、１７番目、２２番目であるとすれば、
　　Ｇｒｏｕｐｓ［１］＝１４
　　Ｇｒｏｕｐｓ［２］＝１７
　　Ｇｒｏｕｐｓ［３］＝２２
という配列が得られ、この時ｊ＝３となっている。
　ステップ８１でＮ個の図形グループ全てについて検査が終わったと判断されると、ｊ＝０であるか検査される（ステップ８２）。ｊ＝０であれば重なりは存在しなかったことになるから、注目していた図形要素は、新しい図形グループを作ることになる。従って新しい図形グループの生成（ステップ８３）が行なわれる。すなわち、
　　Ｎ＝Ｎ＋１
　　ＧＬＴＨ［Ｎ］＝Ｈｍｉｎ
　　ＧＬＴＶ［Ｎ］＝Ｖｍａｘ
　　ＧＲＢＨ［Ｎ］＝Ｈｍａｘ
　　ＧＲＢＶ［Ｎ］＝Ｖｍｉｎ
という５つの代入がなされる。ｊ＝０でない場合は、ｊ＝１であるか判断し（ステップ８４）、これが真であれば、グループの更新は既にステップ７９で終了しているので、何も行なわない。
　それ以外の場合は、ｊは２以上の整数である。つまり２つ以上の図形グループと重なり合いを持っている。この場合は、図形グループ間の結合と新しい領域の設定（ステップ８５）が必要である。これを図２３および２４を参照して説明する。図２３は図形６１、６２からなる図形グループと、図形６５からなる図形グループが既に検出されているものとして、現在注目している多角形８７が前記２グループのどちらにも重なり合いをもっている場合を示す図である。従って図２２の流れ図で言い表せば、ステップ８５の前段階で、ｊ＝２、Ｇｒｏｕｐｓ［１］＝１、Ｇｒｏｕｐｓ［２］＝２である。ステップ８５は新たに、図形６１、６２、６５、８７からなる図形グループを作り、その領域を破線で囲んだ長方形領域８８のように設定する。
　より一般的には、「図形グループｐ」と「図形グループｑ」に現在処理中の図形要素が重なりを持っている場合、ステップ８５では以下の手順を行なう。但しｐ＜ｑとする。
　手順１：変数ＧＬＴＨ［ｐ］にＧＬＴＨ［ｐ］、ＧＬＴＨ［ｑ］またはＨｍｉｎの内、どちらかより小さい方を代入する。
　手順２：変数ＧＬＴＶ［ｐ］にＧＬＴＶ［ｐ］、ＧＬＴＶ［ｑ］またはＶｍａｘの内、どちらかより大さい方を代入する。
　手順３：変数ＧＲＢＨ［ｐ］にＧＲＢＨ［ｐ］、ＧＲＢＨ［ｑ］またはＨｍａｘの内、どちらかより大さい方を代入する。
　手順４：変数ＧＲＢＶ［ｐ］にＧＲＢＶ［ｐ］、ＧＲＢＶ［ｑ］またはＶｍｉｎの内、どちらかより小さい方を代入する。
　手順５：ＧＬＴＨ［ｑ］＝−３２７６８
　　　　　ＧＬＴＶ［ｑ］＝−３２７６８
　　　　　ＧＲＢＨ［ｑ］＝−３２７６８
　　　　　ＧＲＢＶ［ｑ］＝−３２７６８
という代入を行なう。
　当然、３つ以上の図形グループを結合する場合も手順は同様である。また従来図形グループｑが使用していた配列要素に−３２７６８を代入するのは、次回以降の処理において、いかなる図形とも重なり合いを生じさせないためであり、また新たな図形要素が発生した場合は、配列要素の値が−３２７６８であるような配列は未使用であるとものと検出し該配列への代入を認めるためである。なおこの場合図形グループの総数を示す整数Ｎは更新を必要としないのは言うまでもない。
　以上のようにして全ての図形要素についてグループ分けが完了する。文字についても扱いは全く同じであり、その形状、ポイント数によって図形として占める大きさも事前に知れるため、それらを取り囲む長方形領域を設定し、他の図形要素と同じく取り扱う。
　本例のグループ判別では、図２４の図形グループ領域８８のごとく、これに含まれる図形要素に比較し、図形グループ領域８８が大きすぎる様に見える。しかし実際には検出された個々の図形グループは、それぞれ別個のプロセスで動作中の分散処理インタープリタの塗りつぶしアルゴリズムによって処理され、それら塗りつぶし手段は前述の様に水平方向を走査方向としたものであるから、処理が特に遅延することはない。もちろん行なわれる操作が塗りつぶしではなく、ビット反転などのビット操作であっても同様である。
（２）グループ判別の例２
　次にグループ判別の別の例について説明する。図２５、図２６に本例の説明図を示す。図中、参照番号８９は印刷用紙を想定した領域を示し、破線９０は印刷可能領域を縦１１分割、横８分割した小領域を示している。これら個々の分割された小領域は次のように定義される値ｒにより一意に指定される。すなわちｉ列ｊ行目の領域であればこれをＲ（ｉ、ｊ）と書き表し、連続した値
　　ｒ＝（ｊ−１）×８＋ｉ
　は領域Ｒ（ｉ、ｊ）を指し示すために用いる。
　図２５では、図形要素９１、９２、９３、９４が印字領域上に存在し、この内、長方形９１と三角形９２が重なりを持っている。従って図形要素９１、９２は同一の図形グループに属しているものと判断しなければならない。本例では、注目している図形要素についてまずその図形要素の境界を指定する座標が、破線９０によって分割された領域群の内どこに含まれるかを検出する。印刷可能領域の左下の角の点を原点とし、水平方向については右を＋方向、垂直方向については上を＋方向とすれば、領域Ｒ（ｉ、ｊ）の左上端の座標はＧＬＴＨ［ｒ］＝（ｉ−１）・ｈＧＬＴＶ［ｒ］＝ｊ・ｖと書き表され、右下端の座標はＧＲＢＨ［ｒ］＝ｉ・ｈＧＲＢＶ［ｒ］＝（ｊ−１）・ｖとなる。ここでｈ、ｖはそれぞれ水平、垂直方向の解像度から決まる定数であり、例えば、横方向の印刷可能領域を８インチ、縦方向の印刷可能領域を１１インチとしてどちらも印刷画素の解像度を３００画素／インチとすれば、ｈ＝３００×８インチ÷８区分＝３００ｖ＝３００×１１インチ÷１１区分＝３００である。またｒは前述の指標である。これを用いて現在注目している図形要素の境界のうち一つの角の点の座標を（ｘ、ｙ）とすれば、ＧＬＴＨ［ｒ］≦ｘ≦ＧＲＢＨ［ｒ］かつＧＲＢＶ［ｒ］≦ｙ≦ＧＬＴＶ［ｒ］であるかどうかをｒ＝１からｒ＝８８まで順次調べるだけで良い。
　このような検出を行えば、領域９１の４つの座標は斜線で示される領域９５にそれぞれ含まれ、また領域９２を定める３つの座標はそれぞれ横線で示される領域９６に含まれることが検出される。例えばここでは領域９６はＲ（７、６）、Ｒ（４、７）、Ｒ（６、９）の３つである。
　次にこれら領域の指標のうち水平方向での最小値、最大値、垂直方向での最小値、最大値を求める。領域９６の場合これらはそれぞれ、４、７、６、９となる。そしてこの範囲に指標が含まれる様な領域を全て取り出す。それれはＲ（４、６）、Ｒ（５、６）、Ｒ（６、６）、Ｒ（７、６）、Ｒ（４、７）、Ｒ（５、７）、Ｒ（６、７）、Ｒ（７、７）、Ｒ（４、８）、Ｒ（５、８）、Ｒ（６、８）、Ｒ（７、８）、Ｒ（４、９）、Ｒ（５、９）、Ｒ（６、９）、Ｒ（７、９）である。指標ｒを使って言えば、集合｛ｒ｜４４、４５、４６、４７、５２、５３、５４、５５、６０、６１、６２、６３、６８、６９、７０、７１｝であるような領域である。これらを全ての図形要素について求め、図形要素ごとに配列として記録しておく。但し文字については１文字を１図形要素とするのではなく、複数の文字列からなる区分を作り、それを１図形要素と考える。
　この結果、図形要素９１と９２についてみると指標ｒの値が、ｒ＝６０、ｒ＝６１、ｒ＝６８、ｒ＝６９の部分で共通であることが判明する。その結果図形要素９１、９２には重なり合った部分があるものと判断し、先に記録した配列を参照して全領域の和集合を作ると、図２６の斜線部９７の領域群を取り出すことが出来る。すなわち斜線部９７が、９１、９２の両図形要素を含む図形グループである。同様にして領域群９８、９９などの図形グループが検出される。
　整理してより一般的に手順を書くと、手順１：図形要素ｉについて、その境界を指定する多角形の１つ１つの座標につき、その座標が含まれる領域を求める。これをＲ（Ｈ１、Ｖ１）、Ｒ（Ｈ２、Ｖ２）、…Ｒ（Ｈｎ、Ｖｎ）とする。
　手順２：上記Ｈ１からＨｎまでの内から最小値Ｈｍｉｎ、最大値Ｈｍａｘを求める。同じくＶ１からＶｎまでの内の最小値Ｖｍｉｎ、最大値Ｖｍａｘを求める。
　手順３：領域Ｒ（Ｈｍｉｎ、Ｖｍｉｎ）を左下角、領域Ｒ（Ｈｍａｘ、Ｖｍａｘ）を右上角とする矩形領域に含まれる全ての領域Ｒ（ｉ、ｊ）の指標ｒを求め図形要素ｉについての配列Ｕｎｉｔ［ｉ、ｒ］に書き込む。（配列の要素は１／０とすれば、Ｕｎｉｔ［ｉ、６１］＝１、Ｕｎｉｔ［ｉ、６２］＝０などの代入を行なう。）
　手順４：全ての図形要素について手順１から３を繰り返す。
　手順５：手順３で作られた全ての配列の重なりを検出し、重なりが１つ以上検出された配列は論理和をとる。
　手順６：手順５によって重複した配列は削除し、残った配列を図形要素からなる図形グループの領域を与える領域Ｒ（ｉ、ｊ）の集合として、採用する。
　以上の様な手順でグループ判別が行なわれる。この方法では図２６の領域群９７、９８のように前述の第１の実施例では同一図形グループとして判断されてしまう様な図形も別グループとして判別出来るため、より分散処理に適している。
（３）グループ判別の例３
　図形グループ判別の第３の例を図２７を用いて説明する。一般に多くの文書は、横方向に一連の文字／図形などのつながりを持つ場合が多い。従って、前例のような縦横両方向の領域分割ではなく、より単純な横長の矩形のみへの分割を採用しても充分実用的なグループ分割が可能であり、実行速度の点ではむしろ有利であるとも言える。本例はこの点に注目したものである。
　図２７において、直線８９で囲まれた領域は印刷用紙の範囲を示し、破線１００は印刷可能領域を縦方向に１１分割した場合の境界を示し、参照番号１０６は分割された個々の領域を示す。印刷可能領域の左下の角の点を座標原点として、水平には右方向を＋、垂直には上方を＋とする様な、座標系を設定する。１つの領域をＲ（ｉ）と書き表せば、領域Ｒ（ｉ）の左上端の座標は（０、ｉ・ｖ）であり、右下端の座標は（Ｗ・ｈ、（ｉ−１）・ｖ）である。但しＷは印刷領域の幅であり、ｈ、ｖはそれぞれ、
　　ｈ＝印刷密度（単位画素／インチ）
　　ｖ＝印刷密度×印刷領域の高さ÷分割数
である。
　グループ判別の手順は
　手順１：注目している図形要素について、その図形要素の境界を与える座標が含まれる領域Ｒ（ｉ）を見つける。その指標ｉを図形要素ごとに与えられた配列Ｕｎｉｔ［ｊ、ｉ］に書き込む。１≦ｉ≦１１であるから、図形要素の総数を３２７６７個以下などとすれば２次元配列Ｕｎｉｔは特に大きな配列とはならない。
　手順２：全ての図形要素についてその領域を定める全ての座標を対象として、手順１を繰り返す。
　手順３：手順２まででで作られた全ての配列の重なりを検出し、重なりが１つ以上検出された配列は論理和をとる。
　手順４：手順３によって重複した配列は削除し、残った配列を図形要素からなる図形グループの領域を与える領域Ｒ（ｉ）の集合として、採用する。
　これを図２７の図形要素１０１、１０２、１０３、１０４、１０５を例にとり説明する。前記１０１から１０５までの図形要素をそれぞれ図形要素指標で１から５とすれば、
　　Ｕｎｉｔ［１，９］＝１，Ｕｎｉｔ［１，１０］＝１，Ｕｎｉｔ［１，１１］＝１，Ｕｎｉｔ［１，１］＝０，Ｕｎｉｔ［１，２］＝０，，，Ｕｎｉｔ［１，８］＝０Ｕｎｉｔ［２，８］＝１，Ｕｎｉｔ［２，９］＝１，Ｕｎｉｔ［２，１］＝０，，Ｕｎｉｔ［２，１０］＝０，Ｕｎｉｔ［２，１１］＝０
などの結果が得られる。手順３によって図形要素１０１と１０２には重なりが検出されるため、それらは同一の図形グループと判断され、従って領域Ｒ（１１）、Ｒ（１０）、Ｒ（９）、Ｒ（８）は１つの図形グループの領域と判断される。同様にして図形要素１０３、１０４、１０５も同一の図形グループを構成するものと検出される。
　このグループ検出では、図形要素１０１、１０２の様に実際には重なりを生じていない図形要素（従って分散処理可能である）であっても、同一の図形グループであるかの様に認識するため、若干冗長ではあるが、簡単に実行できる方法である。
　以上の３つの例の示したごとく相互に重なり合いを生じていない図形群を捜しだし、図形グループとして区別することが可能である。実際に様々なアプリケーションソフトウェアが作りだすドキュメント（文字／図形を含む文書）について図形グループを検出してみると数個から数１００グループが検出され、１０００を超えることは稀である（但し文字については、１行の中で同一字体であるかぎり、できるだけ文字列としてグループ化するものとして扱った）。実際には分散処理に使用できるコンピュータが３台、図形グループの数が４００個、などという場合が多いものと考えられる。また１台のコンピュータに関しても特に処理能力に余裕があれば、本発明の分散処理のために生成するプロセスを１つに制限する必要も特にない。いずれにしても検出した図形グループの数と生成される本実施例の用いるプロセス数は一致しない。また分散処理の一部を分担するコンピュータにとっては、大きな負荷のかかる処理に長時間参照するのは好ましくないのは明らかである。なぜなら要求の発生した時点で偶然プロセッサの負荷が小さかったとしても、次の瞬間には大きな負荷を伴う処理要求が発生するのは充分考えられることだからである。これを回避する良い方法の１つは出来るだけ小さい部分を処理させ、処理の終了ごとにプロセッサの負荷を調べ直すことである。本発明のＰＤＬ並列処理インタープリタではこれを実施するために以下に示す表管理を採用する。
　本発明のＰＤＬ並列処理インタープリタではクライアントプロセスの管理する記憶領域上に表３に示すような、「図形グループ管理表」を作り１ページの全ての印刷が終了するまで管理する。図４を参照して既に説明した様に、グループ管理表２１７は、クライアントプロセス２１０の実行時に、グループ検出処理２１６及び画像合成処理２２０により参照される。
　【表３】
　この図形グループ管理表は
（１）図形グループへの指標：整数１から５１２まで
（２）図形グループの印刷用紙上に占める領域：４つの整数の組　領域は全て矩形に取り、該図形グループの左上端の水平座標（ＧＬＴＨ［ｉ］）、左上端の垂直座標（ＧＬＴＶ［ｉ］）、右下端の水平座標（ＧＲＢＨ［ｉ］）、右下端の垂直座標（ＧＲＢＶ［ｉ］）の順に１６ビット長で指定する。
（３）処理状況：２つの整数の組−１、−１の場合未処理、０、０の場合処理済みかつクライアントプロセスへ転送済み、正の整数の組の場合、必ず“第１の数＜第２の数”であり、垂直座標が「第１の数の位置」から「第２の数の位置」まで画素に変換済みを意味する。
（４）転送先のコンピュータのネットワークでの名称：オペレーティングシステムの認める長さの文字列。
という４つのメンバーからなる表である。前述のグループ判別の第２例によると図形グループの領域は矩形とはならないが、表管理の上では最大最小となる水平／垂直位置を用いて矩形領域として管理する。
　以下図２８を参照して、図形グループ管理表を用いた管理を具体的に説明する。
　印刷用紙の領域を１３８に示し、その中に斜線部１４１、１４２、１４４などで示される図形グループの領域があるものとする。印刷装置は紙の排出方向に対し直交する方向の帯状の矩形をとり印刷するのが好都合である場合が多い。図２８では、例えば直線１３９、１４０に挾まれた領域の様な部分ごとに印刷する好都合である。これは印刷装置の方式に依存するがいずれにしても、印刷用紙全体に必要な全ての画素を１度に展開して保持するだけの記憶領域を印刷装置が持てば、操作は最も単純である。しかし印刷装置のコスト等の制約から必要なメモリの一部しか実装できない場合は、区分区分ごとに印刷することになる。このためクライアントプロセスには、印刷装置が現在印刷しようとしている部分についての画素を帯状に並べて印刷装置に転送することが要求される。いま直線１３９から１４０までの領域を印刷しようとする場合、クライアントプロセスは表３の仕様に従いメモリ上に作った表から図形グループ１４１、１４２、１４３のそれぞれの画素への変換状況を調べる。直線１３９の垂直座標を１２００、直線１４００の垂直座標を１５００とすれば、図形グループ１４３の画素への変換が少なくとも垂直座標で１５００まで終了していなくてはならない。これは表中の第３の要素から知ることが出来る。クライアントプロセスは印刷の実行にあたり「印刷装置への画素の転送」と「表の更新」という少なくとも２つのプロセスを同時に実行（並列処理）しなければならない。前者の図２９の流れ図に、後者を図３０の流れ図に示す。
　以下この２つのプロセスを説明する。まず印刷すべき帯状の領域が設定される（ステップ１４５）。これは図２８では例えば垂直１３９、１４０に挟まれた領域である。次に上記印刷領域に含まれる図形グループの検出がグループ管理表の第２要素に基づき検出される（ステップ１４６）。印刷すべき領域について全ての図形グループが展開済みであるか調べる。グループ管理表の第３要素が負数または０でなければ展開が進行していることを意味し、この第３要素により印刷すべき領域より先まで展開が進んでいるかを調べる。図２８の例で示せば、図形グループ１４１、１４２の展開が完全に終了していることと、図形グループ１４３の処理が垂直方向に１５００まで進んでいることが必要である。印刷すべき領域について全図形グループが展開済みであれば（ステップ１４２）、印刷領域の転送要求をサーバプロセスに対し行なう（ステップ１４８）。この場合、図形グループの全領域ではなく、印刷に必要な領域のみについて画素を転送するようにサーバプロセスに要求し、おして転送された画素を受信する（ステップ１４９）。受信した画素は印刷装置に転送し、図形グループの全ての領域について印刷が終了したものに関してはグループ管理表の第３要素を０とする（ステップ１５０）。以降はページ終了まで印刷領域を更新しつつ繰り返し処理する（ステップ１５１）。
　これと並行して、クライアントプロセスの管理下で、グループ管理表の更新が行なわれている（図３０）。これは次のような処理である。まず初期化のため全図形グループの処理状況を−１とし（ステップ１５２）、図形グループを示す指標ｉも初期化する（ステップ１５３）。以下図形グループｉの展開を担当するコンピュータのネットワーク上での位置をグループ管理表の第４要素から求め、状態要求のメッセージを送り、図形グループｉ画素への変換の状況を知る（ステップ１５６）。これに基づき表を更新し（ステップ１５７）、次の図形グループへ移る（ステップ１５８）。ステップ１５４で一連の全図形グループについて同様の調査を行ない、全グループ終了したら、処理を一旦終了する。単位時間経過後には再びステップ１５３から開始する。この間の時間経過で既に印刷された図形グループに関しては、第３要素＝０、０であることから検出できるため（ステック１５５）、メッセージの授受はせず、その他の図形グループについて上記手順と同様に印刷画素への展開状況を調べ（ステップ１５６）、表を更新する（ステップ１５７）。
　以上の様なグループ管理表の操作により本発明では分散処理の進行状況を管理する。
　次に本発明のＰＤＬ並列処理インタープリタの第２の実施例について述べる。
　既に第１の実施例において示したように、本発明の分散処理インタープリタの実行時における役割は、大きく分けて２つである。それは
（Ａ）ＰＤＬソースファイルを分割し分散処理を行なっても、これを単一の翻訳系で処理した結果と異なること無きように、分割可能な図形グループを検出し、他の情報機器に分割したコードを送り付ける、
（Ｂ）実際にＰＤＬソースファイルを翻訳し、印刷可能な画素に置き換えること、
である。
　前記第１の実施例は、１つの処理系が上記（Ａ）、（Ｂ）いずれの手段も実行可能であり、その時にサーバとなるかクライアントとなるかだけが役割を区別するものであった。こちろん役割を常に固定した複数個のプログラムからなる分散処理系を構成することも可能であり、本実施例はそれを行なったものである。以下、図３１を参照して説明する。
　本実施例では、印刷装置１０８に上記（Ａ）の処理を実行するプログラム１０７が常駐しており、ネットワーク７によって接続されたコンピュータ６ａ、６ｂ、６ｃには上記処理（Ｂ）を実行するプログラム１０６が存在する。コンピュータ６ａ、６ｂ、６ｃのいずれかで実行中のアプリケーションソフトウェアにおいて、印刷要求が発生した場合を考える。ここでは説明のためコンピュータ６ａで実行されていたアプリケーションソフトウェア（例えばワードプロセッサ等）を使用していたユーザが、印刷処理を要求したとする。
　以下、図３２の流れ図に従って説明する。印刷処理を行なおうとするアプリケーションソフトウェアはまず、印刷処理の対象となる複数ページ（もちろん１ページでも良い。）の中から、現在処理の対象としているページを印刷するために、そのページを開く（ステップ１０９）。言い換えると印刷処理に必要なだけの記憶領域を主記憶装置又は補助記憶装置のいずれかに確保し、フォント情報など必要なデータを準備する。そして実際に文字や図形等の図形要素をＰＤＬの仕様に従い記述する（ステップ１１０）。処理するページに対する全ての書き込みが終了したら、ページを閉じる（ステップ１１１）。これはページ終了記号を書き込んだ後、ステップ１０９が確保したメモリ領域を書き込み禁止とする処理である。ここでステップ１１０の書き込み処理が主記憶装置で行なわれた場合は、それら書き込み内容をファイルに書き直し、また補助記憶装置で前記書き込み処理が行なわれた場合はファイル先頭に適当な識別子を付加することで印刷ファイルを生成する（ステップ１１２）。そして該ファイルを印刷装置１０８に転送（ステップ１１３）すれば、１ページあたりの印刷処理は終了する。この後アプリケーションソフトウェアは次ページの印刷処理あるいは、その他の処理に移る。
　以下の処理は印刷装置１０８上のプログラム１０７が行なう。印刷装置１０８がＰＤＬのソースファイルを受信する場合と印刷すべき画素のデータを受信する信号とがあるが、ここで述べるのは前者の場合である。まずステップ１１４で識別コードを受信し、それを判別する。次にＰＤＬで記述されたソースファイルを受信し（ステップ１１５）、処理に適した中間コード形式に翻訳する（ステップ１１６）。具体的には手続きＦｉｌｌＰｏｌｙｇｏｎ（＾ＰｏｌｙｇｏｎＡ）等のように文字コードの列で記述されたソースコードから、１６ビット長の作用素（オペレータ）と３２ビット長の作用子（オペランド）の並びに置き換える。例えば、１６進数でＦｉｌｌＰｏｌｙｇｏｎ＝＄Ｃ０４４，ＩｎｖｅｒｔＰｏｌｙｇｏｎ＝＄Ｃ０８４などと置き換える。もちろんこの様な中間コードにどの様なビット長のどの様なコードを使用するかは処理系の任意である。
　次に既に述べたいくつかの方法、または類似の方法によって分散処理を行なうことの出来ない（分割不可である）図形グループを検出し（ステップ１１７）、中間コードファイルを各図形グループに分割する（ステップ１１８）。この段階で分割された各図形グループは、それそれ完全に独立した別個の処理として行ない、後に任意の順番で重ね合わせを行なっても、正しい印刷結果が得られるという保証が得られている。次いで、ネットワーク上に存在する他の情報処理機器（主としてコンピュータ）に対しプロセスの生成を要求し（ステップ１１９）、応答の有った機器に対しては、中間コード化された前記図形グループを転送する（ステップ１２０）。この転送は前述のスケジューリングの手順に従って行う。この後、印刷装置１０８上のプログラム１０７は印刷データ受信待ちに入る。
　一方、ステップ１１９のプロセス生成要求を受けて動作するのはコンピュータ６ａ，６ｂ，６ｃ内の各プログラム１０６である。プログラム１０６には常駐部分と非常駐部分が存在し、常駐部分は常にネットワーク上で発生する要求を検出しており、非常駐部分は必要な場合のみメモリが確保され呼び出されて実行されるプログラム単位（プロセス）として管理される。
　プログラム１０６、１０７の流れ図を図３３に示す。プロセス生成要求を受信したプログラム１０６の常駐部分はまずメモリを確保する（ステップ１２１）。これが可能であれば非常駐部分を該メモリ領域の一部に読み込み、プロセス生成を行なう（ステップ１２２）。次に印刷装置１０８のプログラム１０６から送信された中間コードを受信し（ステップ１２３）、これを翻訳し実際の印刷画素に置き換える（ステップ１２４）。この印刷画素生成の手順は第１の実施例で説明したとおりであり、翻訳は１ページ中の記述の内の何分の一の分量に過ぎないため、展開に使用するメモリ、実行時間共に軽減される。作りだされた画素は再び印刷装置１０８のプログラム１０７へ転送される（ステップ１２５）。
　プログラム１０７はこの画素データを受信すると識別コードによって、画素データ列であることを認識し（ステップ１２６）、画素データを受信し印刷用のバッファー領域にて整列させる（ステップ１２７）。該バッファーが充足した場合、印刷（ステップ１２９）を行なう。もし１回のバッファーの充填で１ページ全部のデータに満たない場合は、１ページのデータ全ての印刷が終了するまで処理を繰り返す（ステップ１３０）。１ページの処理が終了した場合は紙を排出し（ステップ１３１）、１ページあたりの印刷処理を終了する。
　印刷装置の印刷方式によっては、上記手順は異なる場合がある。周知のごとく電子写真方式の印刷装置は一連の印刷プロセスが開始されてから終了するまで、プロセスの中断が出来ない場合が多い。このプロセスの進行に合わせてネットワークからデータを転送し続けるのは、現在の技術では困難である。この場合はステップ１２７、１２８で１ページのデータに必要なだけのメモリを確保する必要がある。しかしいわゆるシリアルプリンタを上記手順に用いた場合には、印刷途中で中断することはいかなる時点でも可能であり、バッファー領域は１ページ分必要ではない。こうした制約は主に印刷装置の物理的な制限によるもので、バッファー領域としてどの程度の大きさのメモリを実装できるかというハードウェアの制約は、分散処理を行なうことには制限を加えるものではない。本発明は上記のどちらの場合にも対応できる。
　次に本発明の第３の実施例を説明する。
　印刷時のバッファーとして用いるメモリ領域、文字印刷に使用する書体のデータ等は、ネットワーク上に分散して置かれても良いが、１つの情報機器に集約することも当然可能である。言い換えると、
（１）ＰＤＬのソースコードを翻訳する処理は分散する、
（２）印刷用バッファー領域、フォントデータ、カラー印刷時の色変換テーブル等、ソフトウェアに必要な資源はネットワーク上の１箇所に保持する、
という形態の分散処理系も可能である。図３４にこの様な系を実現する１つの実施例の構成図を示す。ネットワーク７によってコンピュータ６ａ、６ｂ、６ｃが接続されているほか、装置１３３も接続されている。装置１３３は表示用のＣＲＴなどディスプレイに類する装置を付属していない点を除いて、内部のハードウェアの構成はコンピュータ６ａ、６ｂ、６ｃと全く等しい。装置１３３はインターフェース１３７により補助記憶装置（ハードディスク等）１３４に接続されているほか、別のインターフェース１３６によって、印刷装置１３５に接続されている。ここでは印刷装置１３５で使用する印刷方式として電子写真方式を用いるものとし、装置１３３には１ページの印刷に必要な印刷画素を全て記録するに充分な容量のメモリが実装されており、インターフェース１３６は一連の電子写真印刷プロセスの１ページの印刷時間内に必要なデータを全て転送できる構成である（現状の技術でＳＣＳＩインターフェース等の高速パラレルインターフェースが４メガバイト／秒程度の転送速度を有し、この構成で使用可能であり、高速ビデオインターフェースも同様に使用可能である）。また、補助記憶装置１３４には各種字体の外形形状を記述したフォントデータが記録されており、装置１３３を介してネットワーク上の他の情報機器から該データを読みだし可能である。
　以上の構成においてコンピュータ６ａ、６ｂ、６ｃにはＰＤＬソースファイルを翻訳して印刷可能な画素に置き換える処理を実行するソフトウェア１０６が組み込まれており、ソフトウェア１０６はその常駐部が常に動作をしており、ネットワークからのメッセージに応じて非常駐部を呼び出し実行する構成である。一方装置１３３にはソフトウェア１３２が組み込まれており、該ソフトウェアはネットワーク上の他の情報機器から見た時、仮想された印刷装置のごとく振る舞うものである。今コンピュータ６ａの上で動作している何らかのアプリケーションソフトウェアから印刷要求が発生したものとして、本実施例の動作を説明する。
　手順１：発生した印刷要求はネットワーク７を介してソフトウェア１３２により受信される。
　手順２：ソフトウェア１３２はページ開始からページ終了までの全てのページ記述のコードを受信する。従って、他の情報機器は装置１３３が印刷装置であるかのように錯覚するわけである。
　手順３：ソフトウェア１３２は手順２で受け取ったソースコードから中間コードを生成する。該中間コードから分割可能な図形グループを検出し、グループごと識別子を付加し表に記録する。
　手順４：１３２はネットワーク７を介し分散処理に応じられる情報機器を捜すためのメッセージを送信する。すなわち、プロセス生成要求を行なう。
　手順５：ソフトウェア１０６の常駐部のうちこれに応じられるものは、メモリを確保し、非常駐部を呼び出しプロセスを生成し、応答をソフトウェア１３２に返す。
　手順６：ソフトウェア１３２は応答の有った機器に対し手順３で作った表に従い、あらかじめ分割しておいた図形グループの記述を行なった中間コードを、手順５によって作りだされたタスクに送信する。
　手順７：前記プロセスによって翻訳された印刷画素は、ソフトウェア１３２の要求に応じて装置１３３に転送され、装置１３３の印刷用バッファー領域に展開される。
　手順８：上記バッファーに１ページに必要な全ての印刷画素が整列したら、これをインターフェース１３６によって印刷装置１３５に転送し、実際の印刷を行なう。以上の手順によって本発明のＰＤＬの分散処理による翻訳が実施される。
　次に、図３５を参照して第４の実施例を説明する。
　本実施例においてはネットワーク７には複数台のコンピュータ６ａ、６ｂ、６ｃの他、複数台の印刷装置１５９ａ、１５９ｂ、１５９ｃが接続されている。この環境において本発明のＰＤＬ並列処理インタープリタは印刷装置１５９ａ、１５９ｂ、１５９ｃ上にソフトウェア１６０としてのみ組み込まれている。ソフトウェア１６０はこれまでの実施例と同様に、「常駐部分」、「非常駐部分」から構成されている。常駐部分の行なう処理は、ネットワーク上に発生する様々な要求のメッセージを受信し、自己に対する印刷要求であれば、非常駐部分の内の「クラインアントプロセス」となる部分を呼び出し実行し、他の分散処理インタープリタからのプロセス生成要求であれば、非常駐部分の内の「サーバプロセス」となる部分を呼び出す、という２項目だけである。ここで言うクライアントプロセス、サーバプロセスの役割も第１の実施例の述べたところに等しい。すなわちクライアントプロセスは、
（１）ＰＤＬソースコードによって書かれた文書の記述を中間コードの段階まで翻訳し、
（２）分割可能な図形グループを検出し、
（３）図形グループ管理表を作り、
（４）サーバプロセスを起動し、
（５）先に示した図形グループ管理表に従い、サーバプロセスに翻訳処理を分け与え、
（６）サーバプロセスが生成した画素を受信し、印刷を実施する、
　これに対しサーバプロセスは
（１）中間コードの段階まで翻訳された図形グループを受信し、
（２）画素に翻訳し、クライアントプロセスに返送する、
という処理を行なう。
　コンピュータ６ａ、６ｂ、６ｃのいずれかにおいてアプリケーションソフトウェアが発生した印刷要求が、印刷装置１５９ｃを対象として行なわれたとすると、印刷装置１５９ｃは分散処理によって印刷を行なうために、ＰＤＬの翻訳を分担し実行するためのサーバプロセスを必要とする。このために、
　手順１：印刷装置１５９ａに搭載された翻訳ソフトウェア１６０が、この印刷装置１５９ａのメモリ及びプロセッサ資源を使用してクライアントプロセスを作る。
　手順２：手順１で作られたクライアントプロセスは、ページ記述言語ソースコードから印刷画素を生成する処理を分散処理するためのタスク生成が可能か問い合わせるメッセージをネットワーク上の他の情報機器に転送する。
　手順３：手順２のメッセージに応答する可能性のあるのは、図３５の構成ではソフトウェア１６０が実装されている印刷装置１５９ａ、１５９ｂだけであるから、その一方又は両方でサーバプロセスが作られる。
　手順４：手順３で生成したサーバプロセスを用いて分散処理を行なう。
　具体的な上記の個々の手順は実施例１から３までに等しい。
　次に、第５の実施例の図３６を参照して説明する。
　本実施例は第４の実施例を変形したものである。図３６において、印刷装置１６１ａ，１６１ｂ，１６１ｃだけが専用のネットワーク１６２で相互接続されている。各印刷装置１６１ａ，１６１ｂ，１６１ｃと各コンピュータ１６３ａ，１６３ｂ，１６ｃは、それぞじれインターフェース１６４ａ，１６４ｂ，１６４ｃにより１対１で接続されている。インターフェース１６４ａ，１６４ｂ，１６４ｃは、この場合、単方向にのみデータ転送が行なわれ得るような例えばセントロニクス準拠等の仕様のもので良い。動作については図３５の構成のそれと同様であるが、図３６では印刷装置とコンピュータの接続が従来の構成と変わらない等の点で利点がある。
　次に第６の実施例を説明する。
　ＰＤＬを用いた印刷処理の普及に伴い、ＰＤＬも複数の仕様に基づき、幾つかの種類を持つに至っている。このため、多くのアプリケーションを使用する場合、複数種類のＰＤＬを印刷処理する必要性が生じる。そこで、既に何回か述べたラスタライザを、より一般化して使用することが考えられる。
　図３７は、本発明の第６の実施例の構成図である。ここでは、３台のコンピュータ６ａ、６ｂ、６ｃがネットワーク７に接続され使用されている。またプリントコンフィグレーションサーバ４０１が、ネットワーク７に接続されている。さらに、プリントコンフィグレーションサーバ４０１と、印刷装置２１ａ、２１ｂ、２１ｃとが、ネットワーク４０３により相互接続されている。ここで、ネットワーク４０３および７は、それぞれ独立したネットワークである。
　本実施例の処理の概要は次の通りである。
　まず使用者が、印刷要求を、マウス操作等により行なうと、イベント処理プロセス２０３により要求が受け取られ、現在使用中のアプリケーション１８の印刷処理ルーチンにより、ＰＤＬソースコードにより記述された出力ファイル１９が生成される。プリントプロセス４０２は、これをファイルシステムにより読み込み、プリントコンフィグレーションサーバ４０１に転送する。コンピュータ６ａの処理は、この段階で完了である。他の実施例と異なり、コンピュータ６ｂ、６ｃ等も分散処理を行なうことはない。本実施例においては、プリントコンフィグレーションサーバ４０１上のプロセス４０６が、これ以降の処理の分散と、並列実行等の同期を管理する。
　以下、翻訳印刷処理について、その処理の流れを説明する。
　プロセス４０２によりネットワーク７に出力された印刷データは、ＰＤＬのソースコードにより記述されたソースファイル１９を、プリントコンフィグレーションサーバ４０１との接続に必要な形式に翻訳したものである。このフォーマットには、印刷出力をしたいプリンタの識別子、用紙設定、印刷処理を行なったユーザのユーザＩＤがヘッダとして付加される。ネットワーク４０３には、複数台のプリンタが接続されているため、印刷処理要求の有ったコンピュータ６ａの使用者は、最も近い場所にある印刷装置を指定したい等の要求を持つはずである。このため、使用者からは、印刷装置のどれかを特定できる必要があり、プロセス４０２は、これを指定する。上記ヘッダに続いて、使用するＰＤＬのタイプ指定および実際のＰＤＬソースコード列が続く。プリントコンフィグレーションサーバ４０１は、ネットワークデバイスドライバ２１３から、上記データ列を受け取り、一次翻訳処理を行なう。ここでまずＰＤＬソースコードから、デバイス座標系に写像された（すなわち印刷装置の解像度に依存した形式の）記述による中間コードが得られる。続いてこれら中間コードは、既に幾つかの実施例で述べたように、並列実行可能な小部分に分割され、ネットワーク４０３を通じて印刷装置２１ａ、２１ｂ、２１ｃに転送される。これら中間コードを受け取った印刷装置２１ａ、２１ｂ、２１ｃでは、インターフェースドライバ３０３が、パケットを取り出し、データ列を解析処理プロセス４０５に渡す。
　各印刷装置２１ａ、２１ｂ、２１ｃでの、処理プロセス群の構成を図３８に示す。
　各印刷装置２１ａ、２１ｂ、２１ｃでは、ラスタライザ４０４が画素発生を行なうが、他の実施例で示したラスタライザ２１２が特定のページ記述言語を前提とした構成であったのに比較し、この実施例のラスタライザ４０４は、グラフィクスプリミティブインターフェース４０７を持つ点が異なっている。
　印刷装置では、画素はイメージメモリ上でも、実画素としても点列に量子化されている。このため、曲線データは、実際は微小な線分からなる折れ線の連続である。ラスタライザ４０４の処理の主たる部分は、直線発生処理４０８及び点列発生処理４０９によって占められる。
　各印刷装置２１ａ、２１ｂ、２１ｃにおいて、受け取られた中間コードは、解析処理プロセス４０５により、ページ記述言語仕様に依存しない、直線曲線の集合に変換される。これら変換結果を受け取ったグラフィクスプリミティブインターフェース４０７は、それぞれの曲線に合わせ、折れ線近似を行ない、直線発生処理４０８に渡す。これらデータは、点列発生処理４０９が行なわれ、記述上閉じた領域に対する塗りつぶしが要求された場合は、さらに塗りつぶし処理４１０が行なわれる。以上の４処理により、ラスタライザ４０４から取り出されるデータは、画素データに変換済みである。
　再び図３７を参照して、プリントコンフィグレーションサーバ４０１のプロセス４０６では、各印刷装置２１ａ、２１ｂ、２１ｃのラスタライザ４０４からのデータを受信し、イメージメモリ上で合成し、印刷処理を行なう印刷装置、例えば、２１ａに転送する。前述のように、プロセス４０２がサーバ４０１に対し転送したデータ列には、印刷処理を行ないたい印刷装置の識別子が記述されている。従って、ここで印刷出力を行なうのは、識別子の指定する印刷装置２１ａである。このため、印刷装置２１ａ、２１ｂ、２１ｃはサーバ４０１から見たとき、個々に識別可能なネットワークアドレス機構を持つ必要がある。本実施例のネットワーク４０３は、物理的なアドレス情報を持つ印刷装置プリンタ２１ａ、２１ｂ、２１ｃに対し、ネットワークアドレスと、プリンタの固有名称を結び付けたアドレス管理を行なう。前述の実施営と同様に、これはアドレス管理表により、サーバ４０１上のプログラムにより管理される。
　以上の様に、プリントコンフィグレーションサーバ４０１を導入し、プリンタ側においてラスタライズのみを並列処理する構成が実現できる。この構成を用いた場合、ページ記述言語ソースコードから、グラフィクスプリミティブへの翻訳をサーバ４０１上のプロセス４０６が行なうことにより、印刷装置２１ａ、２１ｂ、２１ｃのラスタライザ４０４は、ページ記述言語の仕様とは独立して設計可能である。また、サーバ上のプロセス４０６の翻訳により、複数の仕様のページ記述言語を扱うことが可能となる。
　前述した第３の実施例は、明らかに第２の実施例の中で印刷装置１０８が果たす役割の一部を装置１３３に行なわせるものである。また第２の実施例は第１の実施例の内、翻訳系の一部の機能を印刷装置側に移植したものである。
　以上の実施例によって示されるように、本発明はＰＤＬにより記述されたファイルを分割し、複数の情報機器に分散し翻訳させるためのものであり、これを実現するソフトウェアの各部分が実際にいかなる情報処理機器のハードウェアの上で実行されるかは本発明において本質的ではない。何らかの双方向通信手段によって結合された複数の情報処理機器において、それがどの様な情報処理機器であるにせよ、本発明が実現できることは、既に述べた幾つかの実施例から理解されるであろう。また、本発明は既に述べた実施例のみに限定されるものではなく、他の種々の態様で実施し得ることも明らかである。
　現在一般的なオフィス環境にあっては、５から２０台程度のパーソナルコンピュータに対し、その半数以上の台数のプリンタが設置されている。このような環境で、ある時間にプリンタの稼働状況を見てみると、全てのプリンタが動作中であるということは極めてまれであり、実際印刷処理を行なっているのは数台に過ぎないのが通常である。しかしながらプリンタにはプロセッサもメモリも搭載されており、しかも年々高速大容量に成りつつある。本発明の分散処理インタープリタをこのようなプリンタに搭載し、それらをネットワークによって結び使用すれば、個々のプリンタのパフォーマンスを大幅に上げることが可能となるばかりか、個々のプリンタの性能はある程度低くても構わないため、１台あたりのコストを押さえた製品を使用することも可能になる。これはＣＰＵ資源、メモリ資源の利用という点でも効率的である。もちろんコンピュータ上にあって本発明の分散処理インタープリタを使用することも同じ意味で効果がある。
　使い将来普及が予想されるカラープリンタを用いたデスクトップパブリッシングにおいては、カラー画像の処理のために必要となるメモリが白黒画像のそれに比較しいかに大きいかを考えると、本発明の有利さは明らかである。