JPH0789152A - プリンタ装置 - Google Patents

プリンタ装置

Info

Publication number
JPH0789152A
JPH0789152A JP5259059A JP25905993A JPH0789152A JP H0789152 A JPH0789152 A JP H0789152A JP 5259059 A JP5259059 A JP 5259059A JP 25905993 A JP25905993 A JP 25905993A JP H0789152 A JPH0789152 A JP H0789152A
Authority
JP
Japan
Prior art keywords
operator
unit
execution
dictionary
interpreter
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.)
Granted
Application number
JP5259059A
Other languages
English (en)
Other versions
JP2536430B2 (ja
Inventor
Yoko Takahashi
陽子 高橋
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP5259059A priority Critical patent/JP2536430B2/ja
Publication of JPH0789152A publication Critical patent/JPH0789152A/ja
Application granted granted Critical
Publication of JP2536430B2 publication Critical patent/JP2536430B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 印刷データのデバック作業を効率化するこ
と。 【構成】 展開部10が、オペレータの実行手順に基づ
いてオペレータを実行するインタプリタ11と、各オペ
レータの実行手順13aが格納されたオペレータ辞書1
3及びデバック用実行手順14aが格納されたデバッグ
用オペレータ辞書14を備えた辞書部12とを具備する
と共に、操作パネルから3の設定によって各オペレータ
の実行手順の供給元をデバック用オペレータ辞書14に
設定する辞書選択手段を有し、インタプリタ11が、受
信した印刷データの各オペレータの実行後に当該オペレ
ータの名称及び当該オペレータが消費したデータからな
る実行工程情報6aをリスト記憶部6に格納し、展開部
10が、リスト記憶部6に格納された実行工程情報6a
を外部出力すること。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プリンタ装置に係わ
り、特に、上位装置から送られた印刷データを逐次実行
して印刷を行うプリンタ装置に関する。
【0002】
【従来の技術】従来のプリンタ装置は、通常の印刷機能
の他に、ユーザが印刷データのデバッグを行うことを助
けるために、上位から受信した印刷データを実行せずに
そのまま16進数字で印字する、という機能を有してい
た。また、特開昭63−019275号公報では、これ
を一歩進めて、上位から受信したプログラムを、16進
数字だけではなく印刷装置の命令形式に変換して印字を
行う機能を備えることにより、ユーザが印字されたプロ
グラムを一見して理解できるようにする、という機能を
有していた。
【0003】
【発明が解決しようとする課題】しかし、上述した従来
のプリンタ装置では、受信したプログラムを印字する際
にはそのまますべて印字してしまうため、プリンタの内
部状態を参照しての条件判断などで実行されない箇所が
存在する場合は、ユーザが印字されたプログラムリスト
を解析してそれを判断しなければならず、デバッグ作業
を効率化することができないという不都合があった。
【0004】
【発明の目的】本発明は、係る従来例の有する不都合を
改善し、特に、印刷データのデバック作業を効率化する
ことのできるプリンタ装置を提供することを、その目的
とする。
【0005】
【課題を解決するための手段】本発明は、上位装置から
の印刷データを受信するインタフェース部と、このイン
タフェース部から当該印刷データを読み出すと共に別に
与えられた設定情報に基づいて当該印刷データをビット
マップデータに展開したうえページバッファに描画する
展開部と、ページバッファに格納されたビットマップデ
ータを印刷出力する印刷部と、印刷出力に係わる設定情
報を受け付けると共に当該設定情報を展開部へ出力する
操作パネルとを備えたプリンタ装置である。本発明はこ
のプリンタ装置において、展開部が、印刷データに記載
されたオペレータ(コマンド)に遭遇したときに当該オ
ペレータの実行手順に基づいてオペレータを実行するイ
ンタプリタと、各オペレータの実行手順がファイルとし
て格納されたオペレータ辞書及びデバック用実行手順が
ファイルとして格納されたデバッグ用オペレータ辞書を
備え当該実行手順をインタプリタに供給する辞書部とを
具備すると共に、展開部が、操作パネルからの設定情報
によって各オペレータの実行手順の供給元をデバック用
オペレータ辞書に設定する辞書選択手段を有している。
さらに、デバック用実行手順に基づいたインタプリタ
が、受信した印刷データの各オペレータの実行毎に当該
オペレータの名称及び当該オペレータが消費したデータ
からなる実行工程情報を展開部に併設されたリスト記憶
部に格納する実行工程情報生成手段を備え、展開部が、
インタプリタの実行工程情報生成手段によってリスト記
憶部に格納された実行工程情報を外部出力するデバック
機能を有する、等の構成を採っている。これによって前
述した目的を達成しようとするものである。
【0006】
【作用】まず、本発明のプリンタ装置が通常の印刷を行
う場合の作用を説明する。デバック実行スイッチ3Aが
OFFになっているとき、展開部10はこのデバック実
行スイッチ3Aの状態を参照して、オペレータの実行手
順の供給元をオペレータ辞書13に設定する。
【0007】上位装置1から印刷データが送信される
と、まずインターフェース部2が受信して入力バッファ
2Aに格納する。オペレータ辞書13に格納された実行
手順13aに基づいたインタプリタ11が、入力バッフ
ァ2A内の印刷データ中のオペレータを逐次解釈・実行
することで、展開部10はページバッファ4に1ページ
分描画する。ページバッファ4に蓄積されたデータは印
刷部5によって印刷出力される。
【0008】次に、本発明のプリンタが上位装置から送
られてきた印刷データを解釈・実行して印刷を行うと同
時に、印刷データに記載されたオペレータのうち実際に
実行された部分のみを抜き出して実行工程情報6aとし
てリスト記憶部6に格納した後当該実行工程情報6aを
外部出力する場合の作用を説明する。デバック実行スイ
ッチ3AがONになっているとき、展開部10はこのデ
バック実行スイッチ3Aの状態を参照して、インタプリ
タを動作させるオペレータの実行手順の参照先をデバッ
ク用オペレータ辞書14に設定する。
【0009】上位装置1から送信された印刷データはイ
ンターフェース部2によって受信され、入力バッファ2
Aに保存される。インタプリタ11がデバック用オペレ
ータ辞書14に格納されたのデバック用実行手順14a
に従って動作することにより、このプリンタ装置20の
インタプリタ11が入力バッファ2A内の印刷データを
解釈・実行する。
【0010】このデバック用実行手順に基づく展開処理
では、ページバッファ4に1ページ分描画を行う通常の
展開処理と同時に、実行されたオペレータの名称と当該
オペレータが消費したデータ部分とを複製してリスト記
憶部6に書き込む。この書込みはオペレータの実行毎に
逐次行われる。そのため、印刷データ中の記載順序に関
わらず実際にインタプリタ11が実行した順序でオペレ
ータ名及びこのオペレータが消費したデータが実行工程
情報6aとしてリスト記憶部6に格納される。つまり、
印刷データ中でループが組まれ数回実行されたオペレー
タはその実行毎にリスト記憶部6に実行工程情報6aが
格納されるが、印刷データ中の条件分岐により実行され
なかったオペレータはリスト記憶部6には格納されな
い。
【0011】ページバッファ4に描画されたデータは印
刷部5によって印刷される。上位装置1から送信された
印刷データをすべて実行し終わると、続いてリスト記憶
部6に格納された実行工程情報6aの外部出力を行う。
この外部出力は、例えば、印刷部5によるプリンタ装置
20の印刷媒体への印字であり、また、インタフェース
部2を介した上位装置1に併設されたCRTなどの表示
手段への外部出力である。
【0012】印刷部による印刷出力の場合の作用を説明
する。印刷データの展開処理が終了すると、インタプリ
タ11は、オペレータの実行手順の供給元をデバック用
オペレータ辞書14からオペレータ辞書13に切り換え
る。展開部10は、リスト記憶部6に格納された実行工
程情報6aをデータ処理して印刷データと同様の規格に
基づいたデータに変更する。展開部10は、さらに、こ
の実行工程情報6aをインタプリタ11に出力し、イン
タプリタ11はオペレータ辞書13内の実行手順13a
に従って解釈・実行し、ページバッファ4にページ描画
を行う。ページバッファ4に描画されたビットマップデ
ータは印刷部5によって印刷される。このように、上位
装置1から送信されたプログラムのうち、実行された部
分のみが外部出力される。リスト記憶部6内のデータが
すべて正常に印刷されると、リスト記憶部6はクリアさ
れ、オペレータの実行手順の供給元はデバック用オペレ
ータ辞書に戻る。
【0013】
【実施例】次に、本発明の実施例ついて図面を参照して
説明する。
【0014】図1は本発明の第一実施例の構成を示す機
能ブロック図である。プリンタ装置20は、上位装置1
からの印刷データを受信するインタフェース部2と、こ
のインタフェース部2から当該印刷データを読み出すと
共に別に与えられた設定情報に基づいて当該印刷データ
をビットマップデータに展開したうえページバッファ4
に描画する展開部10と、ページバッファ4に格納され
たビットマップデータを印刷出力する印刷部5と、印刷
出力に係わる設定情報を受け付けると共に当該設定情報
を展開部10へ出力する操作パネル3とを備えている。
【0015】本実施例において展開部10は、印刷デー
タに記載されるオペレータ(コマンド)に遭遇したとき
に当該オペレータの実行手順に基づいてオペレータを実
行するインタプリタ11と、各オペレータの実行手順1
3aがファイルとして格納されたオペレータ辞書13及
びデバック用実行手順14aがファイルとして格納され
たデバッグ用オペレータ辞書14を備え当該実行手順1
3a,14aをインタプリタに供給する辞書部12とを
具備すると共に、展開部10が、操作パネルからの設定
によって各オペレータの実行手順の供給元をデバック用
オペレータ辞書14に設定する辞書選択手段を有してい
る。
【0016】さらに、インタプリタ11が、受信した印
刷データの各オペレータの実行後に当該オペレータの名
称及び当該オペレータが消費したデータからなる実行工
程情報6aを展開部10に併設されたリスト記憶部6に
格納する実行工程情報生成手段を備え、展開部10が、
インタプリタ11の実行工程情報生成手段によってリス
ト記憶部6に格納された実行工程情報6aを外部出力す
るデバック機能を有している。
【0017】これを詳細に説明する、上位装置1は文章
や図形を作成しまた編集する装置であり、所定のアプリ
ケーションソフトが駆動するワークステーションやパー
ソナルコンピュータである。アプリケーションソフトを
用いて作成し編集した文章や図形は上位装置1で動作す
るプリンタドライバによってプリンタ装置20の展開部
10が解析可能な印刷データに変更され、ケーブル等を
介してプリンタ装置20に出力される。
【0018】インタフェース部2には入力バッファ2A
が併設され、上位装置1からの印刷データはまずこの入
力バッファに格納される。入力バッファは上位装置1と
プリンタ装置20との間のデータ転送処理の速度向上及
び上位装置1の早期開放の目的で設けられている。
【0019】操作パネル3は、プリンタ装置20の動作
に係わる設定情報を入力する入力部と、プリンタ装置2
0の状態等の情報を表示する表示部と、入力された情報
を展開部10等に出力するインタフェース部と、操作パ
ネル3の各部を制御する操作パネル制御部とから構成さ
れている。入力部は複数のキーを有し、表示部は液晶表
示盤等を備えている。本実施例において操作パネル3
は、デバック実行スイッチ3Aを具備している。このデ
バック実行スイッチ3Aの操作によってインタプリタ1
1へのオペレータの実行手順の供給元が選択され、展開
部10はデバック機能を実行する。
【0020】ページバッファ4は、展開部10によって
ラスタ展開されたビットマップデータを1ページ分保存
し、当該ビットマップデータを印刷部5に出力する。こ
こでは、プリンタ装置20がページプリンタである場合
を説明するため、ページバッファ4は1ページ分のビッ
トマップデータを保存するが、ラインプリンタの場合は
1ページ分のメモリを要しない。
【0021】ここで印刷部5は、光導電体面にレーザビ
ームで露光して静電的な像を作り、この像にトナーを付
着させて現像したのち、熱や圧力で溶解することで用紙
に定着させるレーザープリンタ方式を採用しているが、
本発明は印刷部5の具体例によっては限定されない。
【0022】リスト記憶部6は、展開部10がデバック
用オペレータ辞書13をオペレータの実行手順の供給元
としたときの、インタプリタ11によって発生する実行
工程情報6aを格納するメモリである。インタプリタ
11によってリスト記憶部6に書込まれた実行工程情報
6aは、展開部10によって呼び出され外部出力され
る。
【0023】展開部10は、印刷データを逐次解析して
印刷データに記載されるオペレータの実行手順に基づい
て展開処理を実行するインタプリタ11と、複数の辞書
ファイルを格納しうる所定の記憶容量を有する辞書部1
2を具備している。また、展開部10は、操作パネル3
からの設定によって、各オペレータの供給元にデバック
用オペレータ辞書13を選択する辞書選択手段を有する
と共に、インタプリタ11の展開処理によって生じたリ
スト記憶部6に格納された実行工程情報6aを外部出力
するデバック機能を有している。
【0024】インタプリタ11は、印刷データ中のオペ
レータ(コマンド)を解析してラスタ展開処理を実行す
る。当該オペレータの実行手順13aはオペレータ辞書
13から供給される。印刷データは、オペレータとこの
オペレータによって消費されるデータとから構成され、
例えば、座標等を表すデータとこの座標を用いて円を描
くオペレータとから構成される。インタプリタ11がこ
のオペレータに遭遇すると、オペレータ辞書13から当
該オペレータの実行手順13aを呼び出し、この実行手
順13aに基づいてオペレータに付記されるデータを実
行する。このように、座標や大きさを示すデータはこの
円を描くオペレータに消費され、ページバッファ4に円
を示すビットマップデータが格納される。
【0025】辞書部12は、複数の辞書を格納する記憶
領域であり、辞書は、プリンタ装置20の製造時に格納
される部分と、ユーザーが利用するための部分とによっ
て構成される。この辞書部12にはインタプリタ11へ
実行手順を供給するための複数の辞書ファイルが格納さ
れている。ここでは、辞書部12に、各オペレータの実
行手順13a,実行手順13b,実行手順13c,…
が格納されたオペレータ辞書13と、デバック用実行手
順14a,実行手順14b,実行手順14c,… が格
納されたデバック用オペレータ辞書14とが保存されて
いる。
【0026】オペレータ辞書13には、ある実行手順に
名前が付けられて保存されている。例えば、円を描く実
行手順にはClという名前が付けられていて、印刷データ
に「Cl」と記載されインタプリタ11から「Cl」の実行
手順の供給の要請があるとき、当該円を描く実行手順を
供給する。
【0027】名前の付けられた実行手順をオペレータ又
はコマンド若しくは制御コードと呼んでいる。ここで
は、オペレータの実行手順とは、そのオペレータの名称
によって呼び出される辞書部12に格納された具体的な
実行手順をいう。この実行手順に基づいてインタプリタ
11はオペレータを実行し、印刷データの展開処理を行
う。これらの、多数のオペレータ等が体系化され、オペ
レータを記載する文法も確立した印刷データ記載上の規
格は、ページ記述言語(又はプリンタ記述言語)と言わ
れる。オペレータ辞書13には特定のページ記述言語の
オペレータ等の各実行手順が格納されている。
【0028】ページ記述言語によって、特定のプリンタ
装置などのデバイスに依存しないページの記述(印刷デ
ータの作成)が可能となる。例えば、解像度が300
[dpi(1インチ当たりのドット数)]から600
[dpi]程度のレーザ走査技術を用いるレーザプリン
タと、1200[dpi]以上の写真技術を用いるイメ
ージセッタとで同一の印刷データを用いて出力すること
ができる。印刷データは、ページ記述言語のオペレータ
の組み合せにより高度に抽象化された状態でページ記述
され、出力装置が有するインタプリタにがこのオペレー
タを解析・実行してラスタ展開する。このインタプリタ
によるレンダリングが行われるまで印刷データであるペ
ージ記述は解像度及び線数などから独立しており、その
ため、デバイスに依存しないページ記述としての印刷デ
ータを作成することが可能となる。
【0029】このページ記述言語がレーザー走査技術及
び写真製版技術と有機的に結合したことによって、コン
ピュータによる出版に用いる版下の制作が可能となり、
また、特に、1ページに複数のタイプフェイスを複数の
文字サイズでかつグラフィックと混在させた状態での印
刷出力が容易となった。レーザープリンタを主要な対象
とするプリンタ記述言語にはNDPL(NEC Printer Descr
iption Language) などがあり、レーザープリンタから
イメージセッタまでをカバーするページ記述言語にはPo
stScript(米国Adobe Systems社の登録商標)がある。
【0030】これらのページ記述言語は、プログラム言
語と同様の記述ができるため、特定の展開処理を定義し
ておき、印刷データ中で必要なときに呼び出すと言った
処理や、条件付実行及び繰返し処理の記述が可能でり、
印刷データのデータ量圧縮及び印刷処理速度向上の点か
らページ記述は高度に抽象化される。つまり、最終的に
印刷部5が求めるビットマップデータによるページ記述
と比較するとページ記述言語による印刷データの作成は
抽象化されている。
【0031】ページ記述である印刷データは、通常、上
位装置1で動作するアプリケーションソフト及びプリン
タドライバによって自動的に生成され、印刷装置20の
インタプリタ11でピクセルの配列であるビットマップ
データに展開される。この印刷データをビットマップデ
ータへ展開する(レンダリングする)過程で、インタプ
リタ11が意図していた通りの動作を行わなず、意図し
ていた印刷出力が得られない場合があり、こういった事
態に際しては、通常のプログラミング言語と同様印刷デ
ータのデバックが必要となる。しかし、このデバック
は、プリンタ装置20内のインタプリタ11によって実
行される点と、印刷データが自動生成される点で困難で
ある。
【0032】そのため、本実施例においてデバック用オ
ペレータ辞書14は、通常の実行と共にその実行の結果
生じたインタプリタ11の実行工程情報6aをリスト記
憶部6に格納する実行手順が付記された複数のデバック
用実行手順14aをファイルとして格納している。展開
部10の辞書選択手段によってデバック用オペレータ辞
書14が設定されているインタプリタ11は、このデバ
ック用実行手順14aに基づいてオペレータを実行する
ことで実行工程情報生成手段を機能させる。
【0033】実行工程情報6aをリスト記憶部6に格納
するデバック用実行手順14aには、各オペレータ中i
fなどの印刷データ自身を制御するオペレータを除いた
オペレータについては、その実行手順13aに加えて当
該実行手順13aの実行が正常に終了する毎にそのオペ
レータが使用したデータとオペレータの名前とを文字表
現にしてリスト記憶部6に格納する実行手順が記載され
ている。
【0034】リスト記憶部6に格納された実行工程情報
6aは、展開部10によって外部出力される。この外部
出力は、大きく、媒体に印刷出力する場合と、上位装置
に併設されたディスプレイなどの表示手段への出力であ
る場合とがある。
【0035】まず、印刷部を用いた媒体への印刷出力で
ある場合の作用を説明する。
【0036】印刷データの展開処理が終了すると、イン
タプリタ11は、オペレータの実行手順の供給元をデバ
ック用オペレータ辞書14からオペレータ辞書13に切
り換える。展開部10は、リスト記憶部6に格納された
実行工程情報6aをデータ処理して印刷データと同様の
規格に基づいたデータに変更する。展開部10は、さら
に、この実行工程情報6aをインタプリタ11に出力
し、インタプリタ11はオペレータ辞書13内の実行手
順13aに従って解釈・実行し、ページバッファ4にペ
ージ描画を行う。ページバッファ4に描画されたビット
マップデータは印刷部5によって印刷される。
【0037】次に、外部出力がインタフェース部2を介
した上位装置への出力である場合を説明する。
【0038】印刷データの展開処理が終了すると、展開
部10はリスト記憶部6に格納された実行工程情報6a
をインターフェス部2に併設された入力バッファ2Aに
出力する。インタフェース部2は要求のあった上位装置
との回線を接続して当該実行工程情報6aを上位装置に
出力する。上位装置ではこれをテキストファイルとして
受信するが、上位装置のプリンタドライバまたはプリン
タ装置20に格納されたフォントを上位装置1において
操作するフォントユーティリティなどのアプリケーショ
ンソフトで受信するようにしてもよい。
【0039】第一実施例におけるハードウエア資源につ
いて図2を参照して説明する。
【0040】プリンタ装置20は、実際には、CPU7
と、ROM8と、RAM9とを備えている。プリンタ装
置20に電源が投入されると、CPU7はまず主制御手
段7Aを読み込み、RAM9の記憶領域の割当や印刷部
5の動作チェックなどを行う。次にCPU7は展開手段
10Aやインタプリタ手段11Aを読み込みそれぞれ展
開手段10及びインタプリタ11としての機能を開始す
る。
【0041】主制御手段7Aに基づくCPU7は、イン
タフェース部2及び印刷部5の動作制御を行い、また、
展開部10を中心として各部の動作タイミング制御を行
う。さらに、RAM9の領域確保を行い、インタフェー
ス部2に入力バッファ2Aを、展開部10Aにページバ
ッファ4を割り当てると共に、リスト記憶部6の領域を
確保する。
【0042】また、ROM8には、オペレータ辞書13
とデバック用オペレータ辞書14とに記憶領域が割り当
てられ、このプリンタ装置20の製造時に実行手順13
a及びデバック用実行手順14aが格納されている。さ
らに、主制御手段に基づくCPU7によって、RAM9
には辞書部12のワーク領域12Aが割り当てられ、こ
のワーク領域12Aと、オペレータ辞書13と、デバッ
ク用オペレータ辞書14とによって辞書部12が形成さ
れる。印刷データに含まれる定義などは辞書部のワーク
領域12Aに格納される。そのため、オペレータに遭遇
したインタプリタ11はまずこのワーク領域12Aを検
索し、その後にROM8を検索するようになっている。
【0043】さらに、プリンタ装置20が複数のタイプ
フェイスのアウトラインフォントデータなどを有する場
合、展開部10には図示しないハードディスクや光磁気
ディスクなどの記憶手段が併設されている。この記憶手
段に当該アウトラインフォントデータが格納されて、フ
ォント辞書部として機能する。この場合、ハードディス
クなどの記憶手段はフォントキャッシュ領域としてなど
辞書部12のワーク領域としても活用される。
【0044】図3を参照しながら第一実施例の作用を説
明する。
【0045】図3は展開部10を中心とするフローチャ
ートである。ユーザはプリンタ装置20のデバック機能
を利用しないときは、デバック実行スイッチ3AをOF
Fにしておき、利用するときはデバック実行スイッチ3
AをONにしておく。
【0046】上位装置1から印刷データの送信が開始さ
れると(処理ステップS1)、インターフェース部2が
受信して、入力バッファ2Aに保存する。
【0047】展開部10はデバック実行スイッチ3Aの
状態を参照して、OFFであればインタプリタ11を動
作させるための実行手順の供給元をオペレータ辞書13
とする。逆にONであればインタプリタを動作させるた
めのデータを参照する先をデバック用オペレータ辞書1
4とする。(判断ステップS2)
【0048】デバック実行スイッチ3AがOFFのと
き、インタプリタ11はオペレータ辞書13内の実行手
順13Aに従って入力バッファ2A内の印刷データを解
釈・実行し、ページバッファ4に描画する。インタプリ
タ11が改ページに関わるオペレータを解釈したとき、
主制御手段7Aに基づくCPU7は印刷部5を起動し、
ページバッファ4に描画されたビットマップデータを印
刷出力する。(以上処理ステップS3)この処理ステッ
プS3は、受信した印刷データの実行が全て終了するま
で繰り返される。(判断ステップS4)。
【0049】また、デバック実行スイッチ3AがONな
らば(判断ステップS2)、インタプリタ11はデバッ
ク用オペレータ辞書14内のデバック用実行手順14A
に従って入力バッファ2A内の印刷データを解釈・実行
し、ページバッファ4に描画する。このとき、インタプ
リタ11は、各オペレータの実行毎に当該実行したオペ
レータの名称とこのオペレータが消費したデータをリス
ト記憶部6に書き込む。インタプリタ11が改ページに
関わるオペレータを解釈したとき、主制御手段7Aに基
づくCPU7は印刷部5を起動し、ページバッファ4に
描画されたビットマップデータを印刷出力する。(以上
処理ステップS5)。
【0050】受信した印刷データの全ての実行が終了し
たら(判断ステップS6)、続いてリスト記憶部6内の
実行工程情報6aの外部出力を行う。外部出力が印刷出
力の場合、インタプリタ11は、オペレータの実行手順
の供給元をデバック用オペレータ辞書14からオペレー
タ辞書13に切り換える。展開部10は、リスト記憶部
6に格納された実行工程情報6aをデータ処理して印刷
データと同様の規格に基づいたデータに変更する。展開
部10は、更に、この実行工程情報6aをインタプリタ
11に出力し、インタプリタ11はオペレータ辞書13
内の実行手順13aに従って解釈・実行し、ページバッ
ファ4にページ描画を行う。展開部10のデータ処理に
よって適切に付加された改ページを行うオペレータをイ
ンタプリタ11が読みだしたとき、CPU7は印刷部5
起動してページバッファ4に描画されたビットマップデ
ータを印刷出力せしめる。(以上処理ステップS7)。
【0051】リスト記憶部6内の実行工程情報6aがす
べて印刷されると、リスト記憶部6はクリアされる(処
理ステップS8)。
【0052】上述したように第一の実施例によると、デ
バック用実行手順14aの供給を受けたインタプリタ1
1は、印刷データの展開処理の基本となるオペレータの
実行について、実行したオペレータの名称と当該オペレ
ータが消費したデータとを文字表現として逐次リスト記
憶部6に格納し、展開部10はこのリスト記憶部6に格
納されたインタプリタ11の実行工程情報6aを外部出
力する。この実行工程情報6aは、実際のインタプリタ
11の処理順序に対応しているため、プリンタ装置20
の内部状態を利用するような印刷データや条件分岐が含
まれた高度に抽象化された印刷データのデバックに関し
て、そのデバック作業を最大限に効率化することができ
る。
【0053】つまり、インタプリタの実行工程が、リス
ト記憶部に逐次実行工程情報として格納され、展開部が
この実行工程情報を外部出力する、これによって、印刷
データのデバック作業に関する大変に有用な資料を出力
することができるため、このデバック作業の効率を大幅
に向上することのできる従来にないプリンタ装置を提供
することができる。
【0054】次に、第二実施例を図面を参照して説明す
る。
【0055】第二実施例では、ページ記述言語(印刷デ
ータ)にPostScriptを採用した例を説明する。その他の
構成は第一の実施例と同様である。
【0056】PostScriptによる印刷データ1Aでは、各
オペレータによって消費されるデータはオペランドと呼
ばれ、オペランドはそのオペレータの前に記載される。
インタプリタ11はプログラムを解釈・実行しているう
ちに、オペランドに遭遇すると、それをオペランドスタ
ックという辞書部12のワーク領域に積み上げて格納し
ていく。そして、インタプリタ11がオペレータに遭遇
してそれを実行する段になると、オペランドスタックか
ら必要な個数のオペランドが上から順に取り出されて消
費され、当該オペレータが実行されてページバッファに
描画される。
【0057】図4は本発明のプリンタに送られた印刷デ
ータ1Aと、本発明のプリンタにより印字された実行工
程情報6aの対照図である。印刷データ1AはPostScri
pt言語でページ記述されている。 PostScript言語の詳
細は、"PostScript Language Reference Manual ", Ado
be Systems Incorporated著Addison-Wesley Publishing
Company, Inc.刊(邦訳「PostScript リファレンス・
マニュアル, アスキー出版局刊)を参照されたい。
【0058】この印刷データ1Aには、findfon
t,ne,neg,def,ge,gt,concat
matrix,makefont,setfont,i
f,ifelse,[,]の13個のオペレータが含ま
れている。
【0059】デバック実行スイッチ3AがOFFでイン
タプリタ11がオペレータ辞書13内のデータに従って
動作する場合、これらのオペレータの機能は次のとおり
である。
【0060】findfont…一つのオペランドを消
費し、そのオペランドが表すフォントの辞書をオペラン
ドスタック(以下、スタックと略す)上に返す。
【0061】ne…二つのオペランドを消費し、それら
の値を比較して等しければ論理値false(偽)を、
また等しくなければ論理値true(真)をそれぞれス
タック上に返す。
【0062】neg…一つのオペランドを消費し、その
値の±符号を反転させてスタック上に返す。
【0063】def…二つのオペランドを消費し、第1
オペランドを変数名、第2オペランドを変数値として対
応づける。スタック上には何も返さない。
【0064】ge…二つのオペランドを消費し、それら
の値を比較して第1オペランドが第2オペランドより大
きいか、もしくはそれらが等しければ論理値true
を、そうでなければ論理値falseをスタック上に返
す。
【0065】gt…二つのオペランドを消費し、それら
の値を比較して第1オペランドが第2オペランドより大
きければ論理値trueを、そうでなければ論理値fa
lseをスタック上に返す。
【0066】concatmatrix…三つのオペラ
ンド(すべて配列)を消費し、第3オペランドの値を第
1オペランドと第2オペランドの積で置換し、その配列
をスタック上に返す。
【0067】makefont…二つのオペランドを消
費し、第1オペランドのフォント辞書中の当該フォント
の文字サイズを表す配列と、第2オペランドの配列を乗
算することにより、文字サイズのみ変更されたフォント
辞書をスタック上に返す。
【0068】setfont…一つのオペランド(フォ
ント辞書)を消費し、それを印字に使用されるフォント
として設定する。スタック上には何も返さない。
【0069】if…二つのオペランドを消費し、第1オ
ペランドが論理値trueならば第2オペランドの{}
で囲まれた部分を実行する。第1オペランドが論理値f
alseならば何もしない。
【0070】ifelse…三つのオペランドを消費
し、第1オペランドが論理値trueならば第2オペラ
ンドの{}で囲まれた部分を実行し、第1オペランドが
論理値falseならば第3オペランドの{}で囲まれ
た部分を実行する。
【0071】[…オペランドは消費せず、スタック上に
マーク・オブジェクトを積む。
【0072】]…スタック上で一番上にあるマーク・オ
ブジェクトと、それよりも上に積まれているすべてのオ
ペランドを消費して、マーク・オブジェクトを除くすべ
てのオペランドを要素として含んでいる新しい一つの配
列を作成してスタック上に返す。
【0073】これらは、本実施例において、デバック実
行スイッチ3AがONでインタプリタ11がデバック用
オペレータ辞書14内のデバック用実行手順14aに従
って動作する場合は、次のような機能となる。
【0074】findfont,ne,def,ge,
gt,concatmatrix…上記の機能に加え
て、使用したオペランドとそのオペレータの名前を文字
表現にしてリスト記憶部6に書き込む。
【0075】makefont,setfont…上記
の機能に加えて、そのオペレータの名前を文字表現にし
てリスト記憶部6に書き込む。neg,if,ifel
se,[,]…上記の機能と同じ。
【0076】デバック実行スイッチ3AがONの場合、
図4(A)の印刷データ1Aの展開処理が開始すると、
次のようにしてリスト記憶部6に実行工程情報6aが書
き込まれる。ここで、印刷データ1A中の中の変数は、
Italic=1,alpha=90,Itangle
=15であるとする。
【0077】/Time−Roman findfon
t→findfont実行により、オペランド/Tim
e−Romanとオペレータ名findfontからな
る実行工程情報6aがリスト記憶部6に書き込まれる。
【0078】[100100]→[,]実行により、配
列がスタックに積まれるが、リスト記憶部6には出力さ
れない。
【0079】Italic 0 ne→変数Itali
cはスタックに積まれた段階で1に置き換えられている
ので、ne実行によりオペランド1,0とオペレータ名
neからなる実行工程情報6aリスト記憶部6に書き込
まれる。
【0080】ここで、neにより論理値trueがスタ
ック上に返されるので、ifによりの{}で囲まれた
部分が実行される。
【0081】/ngIta Itangle neg
def→変数Itangleはスタックに積まれた段階
で15に置き換えられ、さらにnegにより−15とな
る。そしてdef実行によりオペランド/ngIta,
−15とオペレータ名defからなる実行工程情報6a
がリスト記憶部6に書き込まれる。
【0082】alpha 360 ge→変数alph
aはスタックに積まれた段階で90に置き換えられてい
るので、ge実行によりオペランド90,360とオペ
レータ名geからなる実行工程情報6aがリスト記憶部
6に書き込まれる。
【0083】ここで、geにより論理値falseがス
タック上に返されるので、ifelseによりの{}
で囲まれた部分が実行される。
【0084】alpha 270 gt→変数alph
aはスタックに積まれた段階で90に置き換えられてい
るので、gt実行によりオペランド90,270とオペ
レータ名gtからなる実行工程情報6aがリスト記憶部
6に書き込まれる。
【0085】ここで、gtにより論理値falseがス
タック上に返されるので、ifelseによりの{}
で囲まれた部分が実行する。
【0086】alpha 180 gt→変数alph
aはスタックに積まれた段階で90に置き換えられてい
るので、gt実行によりオペランド90,180とオペ
レータ名gtからなる実行工程情報6aがリスト記憶部
6に書き込まれる。
【0087】ここで、gtにより論理値falseがス
タック上に返されるので、ifelseによりの{}
で囲まれた部分が実行する。
【0088】alpha 90 gt→変数alpha
はスタックに積まれた段階で90に置き換えられている
ので、gt実行によりオペランド90,90とオペレー
タ名gtからなる実行工程情報6aがリスト記憶部6に
書き込まれる。
【0089】ここで、gtにより論理値falseがス
タック上に返されるので、ifelseにより第2オペ
ランドの{}で囲まれた部分が実行される。
【0090】[1 neIta 0100]→変数ne
Itaはスタックに積まれた段階で−15に置き換えら
れているので、[,]実行により配列[1 −15 0
100]がスタックに積まれるがリスト記憶部6には出
力されない。
【0091】[100100]→[,]実行により、配
列がスタックに積まれるが、リスト記憶部6には出力さ
れない。
【0092】concatmatrix→concat
matrix実行により、オペランド[10010
0],[1 −15 0100],[100100]と
オペレータ名concatmatrixからなる実行工
程情報6aがリスト記憶部6に書き込まれる。
【0093】makefont→makefont実行
により、オペレータ名makefontからなる実行工
程情報6aがリスト記憶部6に書き込まれる。
【0094】setfont→setfont実行によ
り、オペレータ名setfontの文字表現がリスト記
憶部6に書き込まれる。
【0095】これによって、図4(B)に示す様に実行
工程情報6aとしてリスト記憶部6内に保存され、展開
部10によって外部出力される。
【0096】上述したように第二実施例では、ハイエン
ドDTPユーザにとって事実上の標準であるPostScript
言語による印刷データ1Aのデバック作業が容易にな
り、高度に抽象化されたページ記述であっても、インタ
プリタ11の動作の時系列の実行工程が明確に出力され
るため、デバック作業が最大限効率化される。
【0097】第三実施例を図面を参照して説明する。
【0098】第三実施例において辞書部12は、インタ
プリタ11の実行時に生じたエラーに応じてエラー用実
行手順15aを展開部10に供給するエラー辞書15を
有している。
【0099】また、インタプリタ11が、エラーの発生
時にリスト記憶部6に当該エラー情報を格納するエラー
情報保存機能を有している。
【0100】他の構成は第一実施例若しくは第二実施例
と同様である。ここでは、第二実施例に上述の構成を付
加したプリンタ装置20を例に採って説明する。
【0101】PostScript言語はエラーの発生を統一的な
方法で扱っている。PostScript言語におけるエラーは、
インタプリタ11の展開処理実行時に発生するエラーが
典型的であり、インタプリタ11は、エラーが発生する
と、まずエラー発生前の状態までオペランドスタックを
回復し、次にエラーとなったオブジェクトをオペランド
スタックにプッシュする。さらに辞書部12のエラー辞
書を起動してエラー名を調べ、対応する実行手順に基づ
いてエラー処理を行う。
【0102】辞書部12に格納されたエラー辞書15に
は、エラー発生の種類に応じたインタプリタ11のエラ
ー用実行手順15aが格納されている。インタプリタ1
1がエラーの発生を認識したときに呼び出されるこれら
のエラー用実行手順15aは、原則的に、エラー発生時
のオペレータの名称と、エラーの名称とを外部表示する
ために一時的に辞書部12のワーク領域12Aに格納さ
れたのち、当該エラー発生時のオペレータが含まれてい
た印刷データの展開処理を中止するようになっていた。
さらに一時的に格納されていたオペレータの名称とエラ
ーの名称は媒体又は上位装置に外部出力されていた。
【0103】第三実施例におけるエラー用実行手順15
aに基づいたインタプリタ11は、デバック用実行手順
に従って動作しているときは、従来の通常のエラー処理
と共に、発生したエラー名及びエラーとなったオペレー
タなどのオブジェクトとをリスト記憶部6に格納する。
このときに、オペランドスタックにプッシュされていた
オペランドを同時にリスト記憶部6に格納するようにし
てもよい。
【0104】上述したように第三実施例によると、イン
タプリタ11がエラーに遭遇したとしても、エラー発生
までのインタプリタ11の実行工程情報6aがリスト記
憶部6に格納されているため、このインタプリタ11の
動作を参照しながらエラーの原因を探査することがで
き、これによって、印刷データのデバック作業を効率化
することができる。
【0105】
【発明の効果】以上説明したように本発明によると、上
位から送られた印刷データの展開処理を実行して印刷を
行うと同時に、オペレータの実行された部分のみを記憶
してそれを実行工程情報として外部出力する、このた
め、印刷データのデバッグ作業を効率化することがで
き、ひいてはユーザが意図していた通りの印刷出力を得
ることのできる従来にない優れたプリンタ装置を提供す
ることができる。
【図面の簡単な説明】
【図1】本発明の一実施例の機能ブロック図である。
【図2】本発明の一実施例のハードウエア資源の構成を
示すブロック図である。
【図3】本発明の一実施例の展開部を中心とする動作の
流れ図である。
【図4】上位装置より送信された印刷データと、デバッ
ク用実行手順に基づいたインタプリタの展開処理によっ
て生じた実行工程情報との対照図であり、図4(A)は
受信した印刷データを示す説明図で、図4(B)は実行
工程情報を示す説明図である。
【符号の説明】
1 上位装置 2 インターフェース部 2A 入力バッファ 3 操作パネル 3A デバック実行スイッチ 4 ページバッファ 5 印刷部 6 リスト記憶部 6a 実行工程情報 7 CPU 8 ROM 9 RAM 10 展開部 11 インタプリタ 12 辞書部 13 オペレータ辞書 13a 各オペレータの各実行手順 14 デバッグ用オペレータ辞書 14a デバック用実行手順 15 エラー辞書 15a エラー用実行手順

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 上位装置からの印刷データを受信するイ
    ンタフェース部と、このインタフェース部から当該印刷
    データを読み出すと共に別に与えられた設定情報に基づ
    いて当該印刷データをビットマップデータに展開したう
    えページバッファに描画する展開部と、前記ページバッ
    ファに格納されたビットマップデータを印刷出力する印
    刷部と、印刷出力に係わる設定情報を受け付けると共に
    当該設定情報を前記展開部へ出力する操作パネルとを備
    えたプリンタ装置において、 前記展開部が、印刷データに記載されたオペレータ(コ
    マンド)に遭遇したときに当該オペレータの実行手順に
    基づいて前記オペレータを実行するインタプリタと、各
    オペレータの実行手順がファイルとして格納されたオペ
    レータ辞書及びデバック用実行手順がファイルとして格
    納されたデバッグ用オペレータ辞書を備え当該実行手順
    をインタプリタに供給する辞書部とを具備すると共に、
    前記展開部が、操作パネルからの設定情報によって各オ
    ペレータの実行手順の供給元を前記デバック用オペレー
    タ辞書に設定する辞書選択手段を有し、 前記デバック用実行手順に基づいた前記インタプリタ
    が、受信した印刷データの各オペレータの実行毎に当該
    オペレータの名称及び当該オペレータが消費したデータ
    からなる実行工程情報を前記展開部に併設されたリスト
    記憶部に格納する実行工程情報生成手段を備え、 前記展開部が、前記インタプリタの前記実行工程情報生
    成手段によって前記リスト記憶部に格納された前記実行
    工程情報を外部出力するデバック機能を有することを特
    徴とするプリンタ装置。
  2. 【請求項2】 前記展開部のデバック機能によるリスト
    記憶部に格納された実行工程情報の外部出力が、印刷部
    による印刷出力であることを特徴とする請求項1記載の
    プリンタ装置。
  3. 【請求項3】 前記展開部のデバック機能によるリスト
    記憶部に格納された実行工程情報の外部出力が、前記イ
    ンターフェースを介した前記上位装置への外部出力であ
    ることを特徴とする請求項1又は2項記載のプリンタ装
    置。
  4. 【請求項4】 前記辞書部が、インタプリタの実行時に
    生じたエラーに応じてエラー用実行手順を前記展開部に
    供給するエラー辞書を有し、前記インタプリタが、エラ
    ーの発生時にはエラー用実行手順に基づき前記リスト記
    憶部にエラー情報を格納するエラー情報保存機能を有す
    ることを特徴とする請求項1,2又は3項記載のプリン
    タ装置。
JP5259059A 1993-09-22 1993-09-22 プリンタ装置 Expired - Lifetime JP2536430B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5259059A JP2536430B2 (ja) 1993-09-22 1993-09-22 プリンタ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5259059A JP2536430B2 (ja) 1993-09-22 1993-09-22 プリンタ装置

Publications (2)

Publication Number Publication Date
JPH0789152A true JPH0789152A (ja) 1995-04-04
JP2536430B2 JP2536430B2 (ja) 1996-09-18

Family

ID=17328758

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5259059A Expired - Lifetime JP2536430B2 (ja) 1993-09-22 1993-09-22 プリンタ装置

Country Status (1)

Country Link
JP (1) JP2536430B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6319275A (ja) * 1986-07-11 1988-01-27 Nec Corp 印刷装置
JPS63131229A (ja) * 1986-11-20 1988-06-03 Pfu Ltd 処理手続作成処理方式
JPH04179572A (ja) * 1990-11-14 1992-06-26 Nec Niigata Ltd プリンタ

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6319275A (ja) * 1986-07-11 1988-01-27 Nec Corp 印刷装置
JPS63131229A (ja) * 1986-11-20 1988-06-03 Pfu Ltd 処理手続作成処理方式
JPH04179572A (ja) * 1990-11-14 1992-06-26 Nec Niigata Ltd プリンタ

Also Published As

Publication number Publication date
JP2536430B2 (ja) 1996-09-18

Similar Documents

Publication Publication Date Title
JP3634447B2 (ja) 画像処理装置及び方法
JPH08286860A (ja) 出力制御方法及びその装置とそのコンピュータプログラム製品
JP2536430B2 (ja) プリンタ装置
JP2004192390A (ja) データ処理装置
JPH08160934A (ja) 文字情報処理装置
JP3548396B2 (ja) 描画処理装置、描画処理方法、及び記憶媒体
JP2001260498A (ja) 印刷装置及びその制御方法
JP2778532B2 (ja) プリンタ装置および文書作成装置
JP3094712B2 (ja) ページ記述言語処理装置
JP3406706B2 (ja) 状態変数管理方法
US6014149A (en) Character pattern generator
JP2006178622A (ja) 文書変換方法、文書変換装置、及びプログラム
JP3098679B2 (ja) 印刷装置及び印刷システムおよび印刷制御方法
JP2906779B2 (ja) ページ記述言語変換装置
JP3347520B2 (ja) 情報処理装置およびプリンタシステムおよびプリントジョブ処理方法
JPH03112668A (ja) 印刷装置
JPH05143250A (ja) 印刷装置
JP3406705B2 (ja) 辞書操作方法
JPH10254661A (ja) 文書処理方法及び装置
JPH0640089A (ja) プリンタ装置
JPH10202960A (ja) 印刷装置
JP2967861B2 (ja) 出力装置
JPH08282024A (ja) 印刷装置
JP2000168150A (ja) イメージデータ形成装置
JPH086542A (ja) 文字フォント及び該文字フォントのパターン展開方法及び装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19960514