JP2000118056A - Printing system - Google Patents

Printing system

Info

Publication number
JP2000118056A
JP2000118056A JP10291742A JP29174298A JP2000118056A JP 2000118056 A JP2000118056 A JP 2000118056A JP 10291742 A JP10291742 A JP 10291742A JP 29174298 A JP29174298 A JP 29174298A JP 2000118056 A JP2000118056 A JP 2000118056A
Authority
JP
Japan
Prior art keywords
data
cache
edge
printing
bitmap
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP10291742A
Other languages
Japanese (ja)
Inventor
Osamu Sagata
修 佐潟
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Data 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 Oki Data Corp filed Critical Oki Data Corp
Priority to JP10291742A priority Critical patent/JP2000118056A/en
Publication of JP2000118056A publication Critical patent/JP2000118056A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

PROBLEM TO BE SOLVED: To compress a quantity of transfer data without increasing a process load and achieve high-speed printing by transferring from a host apparatus to a printing apparatus intermediate data generated in a process of developing print data to bit map data, obtaining and printing the bit map data from the intermediate data. SOLUTION: Print data are processed to be developed by a printer driver 2 and transferred to a printing apparatus through a spooler 3 and a transmitting receiving part 4. In this case, character data among the print data is selected and input to a font-generating part 7 of the printer driver 2. Whether or not the character data is cached to the printing apparatus is judged by a judging part 11. When the judgment is NO and the character data is an outline, the character data is developed to edge data. If the edge data is larger than a bit map, the edge data is developed to the bit map by an edge data-developing part 14. If the edge data is smaller than the bit map, the edge data as intermediate data is output to the spooler 3.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、パーソナルコンピ
ュータ等の上位装置で作成された印刷データを上位装置
に接続された印刷装置により印刷する印刷システムに関
する。
[0001] 1. Field of the Invention [0002] The present invention relates to a printing system for printing print data generated by a host device such as a personal computer by a printing device connected to the host device.

【0002】[0002]

【従来の技術】パーソナルコンピュータやワードプロセ
ッサで作成された文書、その他の印刷データは、外部に
接続された印刷装置に転送され印刷される。この種の印
刷装置として広く採用されているページプリンタは、近
年、多機能化と多様化が著しい。また、低価格化を要求
されるページプリンタは、文字コードをビットマップデ
ータに変換するための内蔵フォントを持たないものが登
場している。こうしたページプリンタでは、ホストであ
る上位装置側でフォントデータを用意する。印刷開始と
同時に、このフォントデータを印刷装置側にダウンロー
ドし、印刷装置内で使用する。また、印刷データにアウ
トラインフォントが含まれる場合には、上位装置側でラ
スタライズされ、ビットマップデータに展開されてから
印刷装置に転送される。
2. Description of the Related Art Documents and other print data created by a personal computer or a word processor are transferred and printed by an externally connected printing device. In recent years, page printers widely used as this type of printing apparatus have been significantly multifunctional and diversified. In addition, some page printers that require lower prices do not have a built-in font for converting character codes into bitmap data. In such a page printer, font data is prepared on the host device side as a host. Simultaneously with the start of printing, the font data is downloaded to the printing device and used in the printing device. If the print data includes an outline font, the print data is rasterized by the host device, developed into bitmap data, and then transferred to the printing device.

【0003】しかしながら、こうした方法を用いると、
上位装置から印刷装置に転送されるデータ量が多量にな
る。この場合、データ転送時間が増大し、トータル的な
印刷速度が遅くなるという問題がある。こうした問題を
解決するために、例えば特開平7−146691号公報
には、キャッシュメモリを利用する技術が紹介されてい
る。
However, using such a method,
The amount of data transferred from the host device to the printing device becomes large. In this case, there is a problem that the data transfer time increases and the total printing speed decreases. In order to solve such a problem, for example, Japanese Patent Application Laid-Open No. Hei 7-146691 introduces a technique using a cache memory.

【0004】即ち、プリンタ側のキャッシュメモリに、
頻繁に使用される文字コードに対応するビットマップデ
ータを格納しておく。上位装置からは文字コードが転送
され、印刷装置側でキャッシュメモリを参照してビット
マップデータに変換する。この方法によれば、同一の文
字を複数回使用する印刷データでは、上位装置から印刷
装置に1回だけ該当するビットマップデータを転送し、
2回目以降は文字コードのみの転送でよい。従って、転
送データ量を大幅に節約できる。
That is, in the cache memory on the printer side,
Bitmap data corresponding to frequently used character codes is stored. The character code is transferred from the host device, and converted into bitmap data by referring to the cache memory on the printing device side. According to this method, for print data using the same character a plurality of times, the corresponding bitmap data is transferred from the host device to the printing device only once,
From the second time onward, only the character code may be transferred. Therefore, the amount of transfer data can be greatly reduced.

【0005】[0005]

【発明が解決しようとする課題】ところで、上記のよう
な従来の技術には次のような解決すべき課題があった。
キャッシュメモリを使用する場合には、印刷データの内
容によって、その効果が大きく異なる。例えば、日本語
文書は英語文書に比べてキャッシュメモリを使用した場
合の効果がかなり低下する。同一の文字コードを使用す
る頻度が低いからである。また、キャッシュメモリを使
用した効果を十分高めるためには、キャッシュメモリの
記憶容量を大きくしなければならない。しかしながら、
これでは本来の目的である印刷装置の低価格化が図れな
い。
However, the above-mentioned prior art has the following problems to be solved.
When a cache memory is used, the effect greatly depends on the contents of the print data. For example, the effect of using a cache memory in a Japanese document is considerably lower than that in an English document. This is because the frequency of using the same character code is low. Further, in order to sufficiently increase the effect of using the cache memory, the storage capacity of the cache memory must be increased. However,
This cannot reduce the price of the printing apparatus, which is the original purpose.

【0006】[0006]

【課題を解決するための手段】本発明は以上の点を解決
するため次の構成を採用する。 〈構成1〉上位装置と、印刷装置とから成り、上記上位
装置は、印刷データをビットマップデータに展開する過
程で生成される中間データを上記印刷装置に転送し、上
記印刷装置は、上記中間データから上記ビットマップデ
ータを得て印刷を実行することを特徴とする印刷システ
ム。
The present invention employs the following structure to solve the above problems. <Structure 1> Consisting of a host device and a printing device, the host device transfers intermediate data generated in the process of expanding print data into bitmap data to the printing device, and the printing device A printing system, wherein the printing is performed by obtaining the bitmap data from data.

【0007】〈構成2〉構成1に記載の印刷システムに
おいて、上記上位装置は、上記ビットマップデータと上
記中間データとを比較して、データサイズの小さいほう
を印刷装置に転送することを特徴とする印刷システム。
<Structure 2> In the printing system according to Structure 1, the upper device compares the bitmap data with the intermediate data, and transfers the smaller data size to the printer. Printing system.

【0008】〈構成3〉構成1に記載の印刷システムに
おいて、印刷装置は、上記ビットマップデータと上記中
間データとを比較して、データサイズの小さいほうをキ
ャッシュメモリに格納することを特徴とする印刷システ
ム。
<Structure 3> In the printing system according to Structure 1, the printing apparatus compares the bitmap data with the intermediate data and stores the smaller data size in the cache memory. Printing system.

【0009】〈構成4〉構成3に記載の印刷システムに
おいて、上位装置は、印刷装置に転送する1単位のビッ
トマップデータと1単位の中間データとを区別するコマ
ンドを、ビットマップデータもしくは中間データととも
に印刷装置に転送し、キャッシュヒットするときは、キ
ャッシュヒットコマンドを印刷装置に転送することを特
徴とする印刷システム。
<Structure 4> In the printing system described in Structure 3, the host device sends a command for distinguishing between one unit of bitmap data and one unit of intermediate data to be transferred to the printing device, by using bitmap data or intermediate data. And a cache hit command is transferred to the printing apparatus when a cache hit occurs.

【0010】〈構成5〉構成1から4のうちのいずれか
1項に記載の印刷システムにおいて、中間データは、ア
ウトラインフォントから得られるビットマップデータの
変化点を抽出した、エッジデータから成ることを特徴と
する印刷システム。
<Structure 5> In the printing system according to any one of Structures 1 to 4, the intermediate data may include edge data obtained by extracting a change point of bitmap data obtained from an outline font. Characteristic printing system.

【0011】[0011]

【発明の実施の形態】以下、本発明の実施の形態を具体
例を用いて説明する。 〈具体例〉図1は、本発明の印刷システムの上位装置部
分のブロック図である。本発明では、この上位装置で、
まず印刷データからビットマップデータを展開する過程
で生成される中間データを得る。この中間データは、具
体的には後で説明するエッジデータ等である。そして、
例えば1文字分のエッジデータが1文字分のビットマッ
プデータよりもデータサイズが小さい場合、エッジデー
タを印刷装置に転送する。逆の場合はビットマップデー
タを印刷装置に転送する。エッジデータを受けた印刷装
置は、これをビットマップデータに展開し、印刷を行
う。このようにして、上位装置から印刷装置へのデータ
転送量を圧縮している。以下、印刷システムの構成を図
を参照しながら順に説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the present invention will be described below using specific examples. <Specific Example> FIG. 1 is a block diagram of a host device of a printing system according to the present invention. In the present invention, with this higher-level device,
First, intermediate data generated in the process of developing bitmap data from print data is obtained. The intermediate data is, for example, edge data described later. And
For example, if the edge data for one character has a smaller data size than the bitmap data for one character, the edge data is transferred to the printing apparatus. In the opposite case, the bitmap data is transferred to the printing device. The printing device that has received the edge data develops the data into bitmap data and performs printing. In this way, the amount of data transferred from the host device to the printing device is compressed. Hereinafter, the configuration of the printing system will be sequentially described with reference to the drawings.

【0012】図1は、パーソナルコンピュータ等の上位
装置の主要部分のブロック図である。印刷データは、ア
プリケーションプログラム1によって生成される。これ
がプリンタドライバ2によって展開処理され、スプーラ
3と送受信部4を通じて、図示しない印刷装置に転送さ
れる構成となっている。プリンタドライバ2は、印刷デ
ータ選択部5、イメージ/グラフィックデータ処理部
6、フォント発生部7、フォント記憶部8及びキャッシ
ュ登録情報記憶部9から構成される。
FIG. 1 is a block diagram of a main part of a host device such as a personal computer. The print data is generated by the application program 1. This is developed by the printer driver 2 and transferred to a printing device (not shown) through the spooler 3 and the transmission / reception unit 4. The printer driver 2 includes a print data selection unit 5, an image / graphic data processing unit 6, a font generation unit 7, a font storage unit 8, and a cache registration information storage unit 9.

【0013】フォント発生部7には、キャッシュ判定部
11、アウトライン判定部12、フォントサイズ判定部
13、エッジデータ展開部14及びエッジデータ発生部
15が設けられている。印刷データ選択部5は、アプリ
ケーションプログラム1から渡された印刷データの内容
を解析して、その内容に応じた処理をするように選択し
て、後続回路へ振り分ける部分である。印刷データに
は、文字データ、イメージデータ、グラフィックデータ
が含まれる。
The font generating section 7 includes a cache determining section 11, an outline determining section 12, a font size determining section 13, an edge data expanding section 14, and an edge data generating section 15. The print data selection unit 5 is a part that analyzes the contents of the print data passed from the application program 1, selects processing to be performed in accordance with the contents, and distributes the processed data to a subsequent circuit. The print data includes character data, image data, and graphic data.

【0014】この発明は、特に文字データのフォントを
扱う場合に有効な発明である。従って、印刷データ選択
部5は、文字データをフォント発生部7に向けて選択出
力し、イメージデータやグラフィックデータは、イメー
ジ/グラフィックデータ処理部6を通じてスプーラ3に
送るように機能する。文字データは、フォント情報や文
字コード情報あるいはその文字の印刷位置情報等を含む
データである。フォント情報というのは、文字の種類や
大きさや修飾を示す情報である。
The present invention is particularly effective when handling fonts of character data. Accordingly, the print data selection unit 5 functions to selectively output character data to the font generation unit 7 and to send image data and graphic data to the spooler 3 through the image / graphic data processing unit 6. The character data is data including font information, character code information, print position information of the character, and the like. Font information is information indicating the type, size, and modification of characters.

【0015】イメージ/グラフィックデータ処理部6
は、イメージデータやグラフィックデータを受け入れ
て、これをスプーラ3に転送する機能を持つ部分であ
る。スプーラ3は、印刷装置に転送するためのデータを
格納するファイルにより構成される。一般には、スプー
ラ3は、上位装置であるコンピュータのハードディスク
中にあるテンポラリファイルとして生成される。送受信
部4は、上位装置と印刷装置とを結ぶインタフェース
で、セントロニクスケーブル等により構成される。
Image / graphic data processing unit 6
Is a part having a function of receiving image data and graphic data and transferring the data to the spooler 3. The spooler 3 is composed of a file for storing data to be transferred to the printing device. Generally, the spooler 3 is generated as a temporary file in a hard disk of a computer as a host device. The transmission / reception unit 4 is an interface connecting the host device and the printing device, and is configured by a Centronics cable or the like.

【0016】フォント記憶部8は、文字コードに対応す
るフォントデータを記憶したメモリである。なお、フォ
ントデータはビットマップデータの一種であるため、以
下、フォントデータのこともビットマップデータと呼ん
で説明を進める。
The font storage unit 8 is a memory that stores font data corresponding to character codes. Since font data is a type of bitmap data, the font data will be referred to as bitmap data and will be described below.

【0017】キャッシュ登録情報記憶部9は、印刷前あ
るいは印刷中に印刷装置のキャッシュメモリに登録され
た文字データを示す情報を登録し記憶しておく部分であ
る。キャッシュ判定部11は、このキャッシュ登録情報
記憶部9を参照して、印刷データ選択部5から入力した
文字データが印刷装置にキャッシュ登録されているかど
うかを判定する部分である。キャッシュ登録されている
と判定すると、その文字データにキャッシュ登録されて
いる旨のコマンドを付加して、スプーラ3に出力する。
The cache registration information storage section 9 is a section for registering and storing information indicating character data registered in a cache memory of the printing apparatus before or during printing. The cache determination unit 11 refers to the cache registration information storage unit 9 and determines whether the character data input from the print data selection unit 5 is registered in the printing apparatus as a cache. If it is determined that the character data is registered in the cache, the command is added to the character data indicating that the character is registered in the cache, and the character data is output to the spooler 3.

【0018】一方、キャッシュ登録されていない場合に
は、文字データをビットマップデータに展開するため
に、アウトライン判定部12に向け出力する。アウトラ
イン判定部12は、受け入れた文字データの中から文字
コード情報を抽出し、フォント記憶部8を参照して、対
応するビットマップデータを取り出し、スプーラ3に転
送する部分である。この処理は、入力された文字データ
がビットマップフォントの場合に行う。
On the other hand, when the character data is not registered in the cache, the character data is output to the outline determination unit 12 in order to develop the character data into bitmap data. The outline determination unit 12 is a unit that extracts character code information from the received character data, refers to the font storage unit 8, extracts corresponding bitmap data, and transfers the extracted bitmap data to the spooler 3. This process is performed when the input character data is a bitmap font.

【0019】一方、入力された文字データがアウトライ
ンフォントの場合には、そのデータをエッジデータ発生
部15に出力する。この具体例では、特にアウトライン
フォントのビットマップデータ転送の際におけるデータ
量縮小を図ることを特徴にしている。
On the other hand, if the input character data is an outline font, the data is output to the edge data generator 15. This specific example is characterized in that the data amount is reduced particularly when the outline font bitmap data is transferred.

【0020】エッジデータ発生部15は、後で説明する
要領でフォント記憶部8からアウトライン情報を取り出
し、エッジデータを生成する。即ち、文字データをビッ
トマップデータに展開するための処理中に、一旦エッジ
データをその中間データとして生成する。このエッジデ
ータは、大部分、最終的に得られるビットマップデータ
よりもデータサイズが小さいという特徴を持つ。
The edge data generation section 15 extracts outline information from the font storage section 8 and generates edge data in a manner described later. That is, edge data is once generated as intermediate data during processing for expanding character data into bitmap data. Most of the edge data has a feature that the data size is smaller than the bitmap data finally obtained.

【0021】そこで、この発明では、このエッジデータ
を印刷装置に転送し、印刷装置側でビットマップデータ
に展開するといった制御を行うようにしている。なお、
必ずしもエッジデータ全てが対応するビットマップデー
タよりデータサイズが小さいわけではない。そこで、フ
ォントサイズ判定部13が設けられている。フォントサ
イズ判定部13は、フォントが所定サイズより小さいか
どうかを判定し、一定の処理をする部分である。
Therefore, in the present invention, the edge data is transferred to the printing apparatus, and the printing apparatus performs control such that the edge data is developed into bitmap data. In addition,
The data size of all edge data is not necessarily smaller than the corresponding bitmap data. Therefore, a font size determination unit 13 is provided. The font size determination unit 13 is a unit that determines whether a font is smaller than a predetermined size and performs a certain process.

【0022】一般に、フォントが所定サイズより小さい
場合には、エッジデータよりビットマップデータの方が
データ量が小さい。そこで、エッジデータの方が小さい
場合には、そのエッジデータをスプーラ3に転送して、
そのまま印刷装置に送る。一方、ビットマップデータの
方がサイズが小さい場合は、エッジデータ展開部14に
そのエッジデータを転送し、ビットマップデータへの展
開を要求する。エッジデータ展開部14は、入力したエ
ッジデータを展開してビットマップデータを生成する部
分である。生成されたビットマップデータはスプーラ3
に格納される。
Generally, when the font is smaller than a predetermined size, the data amount of the bitmap data is smaller than that of the edge data. Therefore, when the edge data is smaller, the edge data is transferred to the spooler 3 and
Send it to the printing device as it is. On the other hand, when the size of the bitmap data is smaller, the edge data is transferred to the edge data developing unit 14 and a request for developing the bitmap data is made. The edge data developing unit 14 is a part that expands the input edge data to generate bitmap data. The generated bitmap data is stored in spooler 3
Is stored in

【0023】図2に、印刷装置のブロック図を示す。こ
の印刷装置は、送受信部21と、印刷データ選択部2
2、イメージ/グラフィックデータ処理部23、キャッ
シュ登録情報記憶部24、キャッシュデータ記憶部2
5、キャッシュ判定部26、キャッシュデータ読み取り
部27、キャッシュデータ書き込み部28、キャッシュ
データ保持部29、ビットマップエッジデータ判定部3
0、エッジデータ展開部31、イメージメモリ32、プ
リンタエンジン33を備えている。
FIG. 2 shows a block diagram of the printing apparatus. The printing apparatus includes a transmission / reception unit 21 and a print data selection unit 2
2. Image / graphic data processing unit 23, cache registration information storage unit 24, cache data storage unit 2.
5, cache determining unit 26, cache data reading unit 27, cache data writing unit 28, cache data holding unit 29, bitmap edge data determining unit 3.
0, an edge data developing unit 31, an image memory 32, and a printer engine 33.

【0024】送受信部21は、図1に示した上位装置と
接続されて印刷データを送受信するインタフェースであ
る。印刷データ選択部22は、送受信部21において受
信された印刷データの処理の種類を判断して、選択して
後続回路に送る機能を持つ。即ち、イメージデータとグ
ラフィックデータは、イメージ/グラフィックデータ処
理部23に転送し、印刷データはキャッシュ判定部26
に転送する。イメージ/グラフィックデータ処理部23
は、入力したデータをイメージメモリ32に格納する処
理を行う部分である。
The transmission / reception unit 21 is an interface connected to the host device shown in FIG. 1 for transmitting and receiving print data. The print data selection unit 22 has a function of determining the type of processing of the print data received by the transmission / reception unit 21, selecting the type of processing, and sending the selected data to a subsequent circuit. That is, the image data and the graphic data are transferred to the image / graphic data processing unit 23, and the print data is transferred to the cache determination unit 26.
Transfer to Image / graphic data processing unit 23
Is a part for performing processing for storing input data in the image memory 32.

【0025】キャッシュ判定部26は、入力した文字デ
ータが印刷装置内部にキャッシュ登録されているかどう
かを判定する部分である。キャッシュ登録情報記憶部2
4は、キャッシュ登録されている文字データを示す情報
を記憶した部分である。キャッシュデータ記憶部25
は、キャッシュ登録される文字データを記憶する部分で
ある。
The cache determining unit 26 determines whether the input character data is registered in the cache in the printing apparatus. Cache registration information storage unit 2
Reference numeral 4 denotes a portion storing information indicating character data registered in the cache. Cache data storage unit 25
Is a part for storing character data to be registered in the cache.

【0026】キャッシュ判定部26は、キャッシュ登録
情報記憶部24を参照して、文字データが印刷装置内部
にキャッシュ登録されていると判断すると、キャッシュ
データ読み取り部27にその文字データを転送する。ま
た、キャッシュ登録されていないと判断すると、文字デ
ータをキャッシュデータ保持部29に格納し、エッジデ
ータあるいはビットマップデータをキャッシュデータ書
き込み部28に出力する。
When the cache determining unit 26 determines that the character data is registered in the cache in the printing apparatus with reference to the cache registration information storage unit 24, the cache determining unit 26 transfers the character data to the cache data reading unit 27. If it is determined that the data is not registered in the cache, the character data is stored in the cache data holding unit 29, and the edge data or the bitmap data is output to the cache data writing unit 28.

【0027】キャッシュデータ書き込み部28は、キャ
ッシュデータ記憶部25にそのキャッシュ登録すべきエ
ッジデータあるいはビットマップデータを格納する。即
ち、キャッシュデータ記憶部25は、キャッシュ登録さ
れた文字データのビットマップデータ全てを記憶してお
くわけではなく、エッジデータの方がデータサイズが小
さい場合には、そのエッジデータを格納しておく機能を
持つ。少しでも大量のキャッシュ登録を可能にするため
である。
The cache data writing unit 28 stores the edge data or bitmap data to be registered in the cache in the cache data storage unit 25. That is, the cache data storage unit 25 does not necessarily store all the bitmap data of the character data registered in the cache. If the edge data has a smaller data size, the edge data is stored. Has functions. This is to enable registration of a large amount of cache even if a little.

【0028】キャッシュデータ読み取り部27は、キャ
ッシュデータ記憶部25から読み出したビットマップデ
ータあるいはエッジデータをキャッシュデータ保持部2
9に転送する機能を持つ。キャッシュ判定部26は、キ
ャッシュデータ保持部29に印刷データ選択部22を経
由して受信したビットマップデータあるいはエッジデー
タを転送する機能を持つ。ビットマップエッジデータ判
定部30は、キャッシュデータ保持部29から入力する
データがビットマップデータかエッジデータかを判定す
る部分である。
The cache data reading unit 27 stores the bitmap data or edge data read from the cache data storage unit 25 in the cache data holding unit 2.
9 is provided. The cache determination unit 26 has a function of transferring bitmap data or edge data received via the print data selection unit 22 to the cache data holding unit 29. The bitmap edge data determination unit 30 is a unit that determines whether data input from the cache data holding unit 29 is bitmap data or edge data.

【0029】ビットマップデータと判定すると、イメー
ジメモリ32にそのデータを転送する。また、エッジデ
ータと判定すると、エッジデータ展開部31にそのデー
タを転送する。エッジデータ展開部31は、エッジデー
タをビットマップデータに展開してイメージメモリ32
に格納する機能を持つ。これで、キャッシュデータ記憶
部25に記憶されていたエッジデータを、ビットマップ
データに展開して印刷に使用する。イメージメモリ32
は、1ページ分の印刷用イメージデータを格納するメモ
リである。プリンタエンジン33は、このイメージメモ
リ32に格納されたデータに基づいて印刷を行う。この
プリンタエンジンの機構及び機能は、従来装置と変わる
ところはない。
If it is determined that the data is bitmap data, the data is transferred to the image memory 32. If it is determined that the data is edge data, the data is transferred to the edge data developing unit 31. The edge data developing unit 31 develops the edge data into bitmap data and
It has a function to store in. Thus, the edge data stored in the cache data storage unit 25 is developed into bitmap data and used for printing. Image memory 32
Is a memory for storing one page of print image data. The printer engine 33 performs printing based on the data stored in the image memory 32. The mechanism and function of this printer engine are not different from those of the conventional apparatus.

【0030】次に、エッジデータの具体的な内容を説明
する。図3には、エッジデータの説明図を示す。この図
の細線は各画素を区切る格子を示し、太線はアウトライ
ンを示している。なお、アウトラインデータは既に、座
標値をスケーリングするためのパスが構築され、品質確
保のためのヒント処理により補正を施し、曲線部分を十
分細かい直線で近似する曲線平滑化が終了しているもの
とする。
Next, the specific contents of the edge data will be described. FIG. 3 is an explanatory diagram of the edge data. In this figure, thin lines indicate grids that separate the pixels, and thick lines indicate outlines. In the outline data, it is assumed that a path for scaling the coordinate values has already been constructed, correction has been performed by hint processing for quality assurance, and curve smoothing for approximating the curve portion with a sufficiently fine straight line has been completed. I do.

【0031】例えば、この図の(a)に示すようなアウ
トライン35を塗り潰すには、スキャンコンバージョン
と呼ばれる方法が用いられる。スキャンコンバージョン
では、予め各格子の中心を通る線分を設定する。この線
分を図3(b)の中に水平方向の破線で示した。この破
線による線分とアウトライン35との交点を求める。こ
の交点をエッジ36とする。次に、このエッジ36を整
数化する。即ち、エッジ36が格子上にない場合には、
最も近い格子上に移す(図3(c))。
For example, a method called scan conversion is used to fill the outline 35 as shown in FIG. In scan conversion, a line segment passing through the center of each grid is set in advance. This line segment is shown by a horizontal broken line in FIG. The intersection between the line segment formed by the broken line and the outline 35 is obtained. This intersection is referred to as an edge 36. Next, the edge 36 is converted into an integer. That is, when the edge 36 is not on the grid,
Transfer to the nearest grid (FIG. 3 (c)).

【0032】その後、図の(b)に示した破線のスキャ
ンラインに沿って、左から順にエッジ36の数をカウン
トする。そして、奇数番目のエッジ36と偶数番目のエ
ッジ36の間を塗り潰す。これによって、図3(d)に
示すように、文字の部分の塗り潰し37が終了する。こ
こで、図3(c)に示すエッジ36に着目する。上記破
線に示すスキャンライン毎に、奇数番目のエッジの位置
と、奇数番目のエッジと偶数番目のエッジの間において
塗り潰された画素の長さとを組み合わせると、エッジデ
ータを生成することができる。
Thereafter, the number of edges 36 is counted in order from the left along the dashed scan line shown in FIG. Then, the space between the odd-numbered edge 36 and the even-numbered edge 36 is filled. Thus, as shown in FIG. 3D, the filling 37 of the character portion is completed. Here, attention is paid to the edge 36 shown in FIG. Edge data can be generated by combining the position of the odd-numbered edge with the length of the pixel filled between the odd-numbered edge and the even-numbered edge for each scan line indicated by the broken line.

【0033】図4に、エッジデータの説明図を示す。図
4(a)は、ビットマップデータの例を示し、“0”と
書き込まれた部分は白ドット、“1”と書き込まれた部
分は黒ドットである。このビットマップデータは、例え
ば図2(d)に示した塗り潰し後のビットマップデータ
の一番上のラインとする。ここで、図4(b)に示すよ
うに、エッジデータを生成する。
FIG. 4 is an explanatory diagram of edge data. FIG. 4A shows an example of bitmap data, in which a portion written as “0” is a white dot and a portion written as “1” is a black dot. This bitmap data is, for example, the top line of the bitmap data after filling shown in FIG. Here, as shown in FIG. 4B, edge data is generated.

【0034】即ち、図4(a)に示すビットマップデー
タの奇数番目のエッジは、左から数えて7番目(0番目
から計数を開始)にある。また、そのエッジを開始点と
して塗り潰される画素の数は、“3”である。更に、塗
り潰し後の画素はオール“0”である。この場合には、
エッジデータを“7,3,CR”というように表すこと
ができる。
That is, the odd-numbered edge of the bitmap data shown in FIG. 4A is the seventh edge from the left (counting starts from the zeroth). In addition, the number of pixels to be painted starting from the edge is “3”. Further, the pixels after the filling are all “0”. In this case,
The edge data can be represented as “7, 3, CR”.

【0035】このエッジデータは、画像圧縮等で広く用
いられているランレングス方式に類似した形式になって
いる。従って、この例では、(a)に示すビットマップ
データよりも(b)に示すエッジデータの方がデータサ
イズが圧縮される。
The edge data has a format similar to the run length method widely used in image compression and the like. Therefore, in this example, the data size of the edge data shown in (b) is more compressed than the bitmap data shown in (a).

【0036】図5には、こうしたビットマップデータと
エッジデータとのデータサイズ比較説明図を示す。図の
縦軸はデータサイズをバイトで表したもので、横軸は文
字サイズをドットで表したものである。グラフの実線は
ビットマップデータのデータ量、破線はエッジデータの
データ量を示す。
FIG. 5 is an explanatory diagram showing a data size comparison between such bitmap data and edge data. The vertical axis of the figure represents the data size in bytes, and the horizontal axis represents the character size in dots. The solid line in the graph indicates the amount of bitmap data, and the broken line indicates the amount of edge data.

【0037】この図に示すように、文字サイズが約60
ドット以上であれば、ビットマップデータよりもエッジ
データの方がデータサイズが小さくなる。60ドットと
いうのはプリンタの解像度が600dpi(ドット/イ
ンチ)の場合、7.2ポイントの文字の大きさに該当す
る。即ち、フォントサイズが7.2ポイント以下ならば
ビットマップデータを印刷装置に転送した方がデータサ
イズが少ないからこれを採用する。
As shown in FIG.
If the size is equal to or larger than the dot, the data size of the edge data is smaller than that of the bitmap data. 60 dots corresponds to a character size of 7.2 points when the resolution of the printer is 600 dpi (dots / inch). That is, if the font size is 7.2 points or less, the data size is smaller when the bitmap data is transferred to the printing apparatus, so this is adopted.

【0038】逆に、フォントサイズが7.2ポイントを
超えた場合には、エッジデータを印刷データに転送す
る。この場合に、エッジデータを転送したか、ビットマ
ップデータを転送したかを区別するために、1文字分の
エッジデータを転送するたびに、その文字にエッジデー
タであることを示すコマンドを付加する。また、1文字
分のビットマップデータを転送するたびに、そのビット
マップデータにビットマップデータである旨のコマンド
を付加する。
Conversely, if the font size exceeds 7.2 points, the edge data is transferred to the print data. In this case, in order to distinguish whether edge data or bitmap data has been transferred, each time edge data for one character is transferred, a command indicating that the character is edge data is added to the character. . Each time bitmap data for one character is transferred, a command indicating that the data is bitmap data is added to the bitmap data.

【0039】更に、後で説明するように、印刷装置側で
キャッシュ登録されているデータであれば、その旨のコ
マンドと文字データとを印刷データに転送する。印刷装
置側でキャッシュによりビットマップデータへの展開処
理をさせるためである。図1に示すフォント発生部7
は、こうした処理を実行する。
Further, as will be described later, if the data is cache-registered on the printing apparatus side, a command to that effect and character data are transferred to the print data. This is for causing the printing apparatus to develop the data into bitmap data using a cache. Font generator 7 shown in FIG.
Performs such processing.

【0040】以下、図1、図2に示した装置の具体的な
動作をフローチャートを用いて説明する。図6は、上位
装置の動作フローチャートである。これは、主として図
1におけるフォント発生部7の動作を示す。フォント発
生部7には、アプリケーションプログラム1が印刷を要
求した印刷データのうち、文字データが選択されて入力
する。キャッシュ判定部11は、入力した文字データが
印刷装置にキャッシュされているかどうかを判定する
(ステップS1)。キャッシュされていればキャッシュ
ヒットコマンドを生成し、その文字データに付加してス
プーラ3に書き込む(ステップS10)。そして、ステ
ップS9にジャンプする。
Hereinafter, a specific operation of the apparatus shown in FIGS. 1 and 2 will be described with reference to flowcharts. FIG. 6 is an operation flowchart of the host device. This mainly shows the operation of the font generator 7 in FIG. Character data is selected and input from the print data requested by the application program 1 to be printed to the font generator 7. The cache determination unit 11 determines whether the input character data is cached in the printing device (Step S1). If cached, a cache hit command is generated, added to the character data, and written to the spooler 3 (step S10). Then, the process jumps to step S9.

【0041】一方、キャッシュされていない場合にはス
テップS2に進み、アウトライン判定部12において、
文字データがアウトラインかどうかを判定する。アウト
ラインであればステップS3に進み、エッジデータ発生
部15によってエッジデータまで展開する。そして、ス
テップS4において、フォントサイズ判定部13におい
て、エッジデータがビットマップより大きいかどうかを
判断し、ビットマップよりも大きければステップS5に
進み、エッジデータ展開部14において、ビットマップ
まで展開する。
On the other hand, if it is not cached, the process proceeds to step S2, where the outline determination unit 12
Determine whether the character data is an outline. If it is an outline, the process proceeds to step S3, where the edge data generation unit 15 expands the data to edge data. Then, in step S4, the font size determination unit 13 determines whether or not the edge data is larger than the bitmap. If the edge data is larger than the bitmap, the process proceeds to step S5, and the edge data development unit 14 expands to the bitmap.

【0042】一方、ビットマップよりもエッジデータの
方が小さいと判断されると、中間データであるエッジデ
ータをスプーラ3に出力する。なお、ステップS2で、
指定されたフォントがアウトラインでなければ、ステッ
プS2からステップS6にジャンプする。ステップS6
では、文字データで指定された文字がキャッシュ候補か
どうかを判断する。なお、こうしたキャッシュ登録の有
無を示す情報等は、印刷装置と送受信部4を通じて双方
向通信により情報交換されている。
On the other hand, if it is determined that the edge data is smaller than the bitmap, the edge data as intermediate data is output to the spooler 3. In step S2,
If the specified font is not an outline, the process jumps from step S2 to step S6. Step S6
Then, it is determined whether or not the character specified by the character data is a cache candidate. Information indicating the presence or absence of such cache registration is exchanged with the printing apparatus via the transmission / reception unit 4 through bidirectional communication.

【0043】キャッシュ登録情報記憶部9には、過去の
印刷頻度やユーザの指定に応じて作成されたキャッシュ
登録すべき文字についての情報が記憶されている。これ
を参照して、キャッシュ候補の場合にはステップS7に
進み、出力データにキャッシュ情報を付加する。これに
よって、印刷装置のキャッシュメモリに、この文字デー
タがキャッシュ登録される。ステップS8では、キャッ
シュ登録情報記憶部9の内部のキャッシュ登録情報を更
新する。そして、ステップS9で、スプーラ3から送受
信部4を通じてデータが出力される。
The cache registration information storage unit 9 stores information on characters to be registered in the cache created according to past printing frequencies and user designations. With reference to this, in the case of a cache candidate, the process proceeds to step S7, where the cache information is added to the output data. As a result, the character data is cache-registered in the cache memory of the printing apparatus. In step S8, the cache registration information inside the cache registration information storage unit 9 is updated. Then, in step S9, data is output from the spooler 3 through the transmission / reception unit 4.

【0044】図7は、印刷装置の動作フローチャートで
ある。図2に示す印刷装置はこの図のように動作する。
まず、ステップS1において、送受信部21が印刷デー
タを受信し、印刷データ選択部22は印刷データの選択
をして、コマンドを解析する。この例では、特にアウト
ラインフォントについては、コマンドとビットマップデ
ータ、あるいはコマンドとエッジデータ、あるいはキャ
ッシュ登録情報を含むコマンドといった文字データが入
力する。これを解析して文字描画コマンドであれば、ス
テップS2に進む。
FIG. 7 is a flowchart showing the operation of the printing apparatus. The printing apparatus shown in FIG. 2 operates as shown in FIG.
First, in step S1, the transmission / reception unit 21 receives print data, the print data selection unit 22 selects print data, and analyzes a command. In this example, especially for an outline font, character data such as a command and bitmap data, a command and edge data, or a command including cache registration information is input. This is analyzed and if it is a character drawing command, the process proceeds to step S2.

【0045】その他のコマンドであればステップS9に
進んで、各コマンドの処理が行われる。また、データ終
了コマンドであればステップS10に進み、印刷エンジ
ンを起動し、イメージメモリ32からそのイメージデー
タを転送し、印刷を実行する。
If it is any other command, the flow advances to step S9 to process each command. If the command is a data end command, the flow advances to step S10 to start the print engine, transfer the image data from the image memory 32, and execute printing.

【0046】ステップS2では、まず、キャッシュ判定
部26がキャッシュされている文字かどうかの判定を行
う。キャッシュされている文字であればステップS3に
進み、キャッシュデータ読み取り部27にその文字デー
タを転送し、キャッシュメモリであるキャッシュデータ
記憶部25にアクセスする。
In step S2, first, the cache determination unit 26 determines whether the character is a cached character. If it is a cached character, the flow advances to step S3 to transfer the character data to the cache data reading unit 27, and access the cache data storage unit 25, which is a cache memory.

【0047】ステップS4で、その文字がビットマップ
かどうかの判断を行う。これは、付加されたコマンドを
識別して行う。ビットマップでなければステップS5に
進み、そのエッジデータをビットマップデータに展開す
る。ビットマップデータであればステップS4からステ
ップS6に進み、これをイメージメモリ32に記憶す
る。
In step S4, it is determined whether the character is a bitmap. This is performed by identifying the added command. If it is not a bitmap, the process proceeds to step S5, and the edge data is developed into bitmap data. If it is bitmap data, the process proceeds from step S4 to step S6, and this is stored in the image memory 32.

【0048】更に、ステップS7において、上位装置か
ら転送されたコマンドの内容によってキャッシュ候補か
どうかの判断をする。キャッシュ候補であればステップ
S8に進み、キャッシュデータ書き込み部28を駆動し
て、キャッシュ登録を実行する。即ち、上位装置からイ
メージデータやグラフィックデータが転送されてくる
と、イメージメモリ32に直接これを記憶し、小サイズ
の文字についてビットマップデータが転送されてくる
と、これをそのままイメージメモリ32に記憶する。ア
ウトラインフォントでないビットマップフォントの場合
も、同様の手順を踏む。
Further, in step S7, it is determined whether or not the command is a cache candidate based on the contents of the command transferred from the higher-level device. If it is a cache candidate, the process proceeds to step S8, in which the cache data writing unit 28 is driven to execute cache registration. That is, when image data or graphic data is transferred from a higher-level device, the image data or graphic data is directly stored in the image memory 32. When bitmap data is transferred for small-size characters, this is stored in the image memory 32 as it is. I do. The same procedure is performed for a bitmap font that is not an outline font.

【0049】一方、アウトラインフォントであって、大
サイズの文字の場合には、エッジデータが転送されてく
る。これは、エッジデータ展開部31で展開されてイメ
ージメモリ32に格納される。更に、アウトラインフォ
ントの場合、ビットマップデータあるいはエッジデータ
がキャッシュ候補であれば、キャッシュデータ記憶部2
5に登録して利用する。即ち、データサイズの小さいエ
ッジデータを上位装置から印刷装置に転送すれば、文字
毎に印刷速度が向上する。
On the other hand, in the case of outline fonts and large-size characters, edge data is transferred. This is developed by the edge data developing unit 31 and stored in the image memory 32. Further, in the case of the outline font, if the bitmap data or the edge data is a cache candidate, the cache data storage unit 2
5 to use. That is, if edge data having a small data size is transferred from the host device to the printing device, the printing speed is improved for each character.

【0050】また、従来は、キャッシュデータ記憶部2
5にビットマップデータを登録していたが、この発明で
は、ビットマップデータあるいはエッジデータのうちの
サイズの小さい方を記憶して登録するので、キャッシュ
データ記憶部25を有効に利用し、より多くのキャッシ
ュデータが格納できる。
Conventionally, the cache data storage unit 2
5, bitmap data or edge data having the smaller size is stored and registered in the present invention, so that the cache data storage unit 25 is effectively used and more data is stored. Cache data can be stored.

【0051】本発明は以上の実施例に限定されない。上
記の例では、アウトラインフォントをビットマップデー
タに展開する際に中間的に生成されるエッジデータを、
転送用のデータとしたが、これは従来の処理をほとんど
変えることなく、従来の装置の持つ機能をそのまま利用
してデータ転送の高速化を図るためである。
The present invention is not limited to the above embodiment. In the above example, the edge data generated intermediately when the outline font is expanded into bitmap data is
The transfer data is used in order to speed up data transfer by using the functions of the conventional apparatus without changing the conventional processing.

【0052】従って、例えば印刷データをビットマップ
データに展開する際に生成される別の中間データであっ
て、ビットマップデータに比べてデータサイズを小さく
することが可能なデータであれば、これを転送用のデー
タとして採用することができる。また、これをキャッシ
ュデータとして利用することができる。
Therefore, if the intermediate data is another intermediate data generated when the print data is developed into bitmap data and the data size can be reduced as compared with the bitmap data, this is used. It can be adopted as transfer data. This can be used as cache data.

【0053】[0053]

【発明の効果】以上説明した本発明の印刷システムで
は、印刷データをビットマップデータに展開する際に生
成される中間データを上位装置から印刷装置に転送し
て、転送データ量を圧縮し、転送速度を速めることが可
能になる。しかも、エッジデータのように、ビットマッ
プデータ展開の際に、その中間的な工程で生成されるデ
ータを用いれば、処理負荷が増大することなく、転送デ
ータ量を圧縮し、負荷を軽減することができる。このた
め、全体として高速印刷が可能になる。
According to the printing system of the present invention described above, intermediate data generated when the print data is expanded into bitmap data is transferred from the host device to the printing device, and the transfer data amount is compressed and transferred. Speed can be increased. In addition, if data generated in an intermediate step is used at the time of bitmap data expansion, such as edge data, the amount of transfer data can be compressed and the load reduced without increasing the processing load. Can be. For this reason, high-speed printing becomes possible as a whole.

【0054】また、こうしたエッジデータとビットマッ
プデータとを比較し、よりデータサイズの小さい方をデ
ータ転送やキャッシュに使用するので、キャッシュの使
用効率を向上することも可能になる。また、必ずしもキ
ャッシュを搭載することができないような印刷装置で
も、本発明により有効な印刷速度向上を図ることができ
る。
Further, since such edge data and bitmap data are compared and the smaller data size is used for data transfer and cache, it is possible to improve the use efficiency of the cache. Further, even in a printing apparatus in which a cache cannot always be mounted, an effective printing speed can be improved by the present invention.

【図面の簡単な説明】[Brief description of the drawings]

【図1】上位装置のブロック図である。FIG. 1 is a block diagram of a host device.

【図2】印刷装置のブロック図である。FIG. 2 is a block diagram of a printing apparatus.

【図3】エッジデータの説明図(その1)である。FIG. 3 is an explanatory diagram (part 1) of edge data.

【図4】エッジデータの説明図(その2)である。FIG. 4 is an explanatory diagram (part 2) of edge data.

【図5】データサイズ比較説明図である。FIG. 5 is an explanatory diagram of data size comparison.

【図6】上位装置の動作フローチャートである。FIG. 6 is an operation flowchart of a host device.

【図7】印刷装置の動作フローチャートである。FIG. 7 is an operation flowchart of the printing apparatus.

【符号の説明】[Explanation of symbols]

1 アプリケーションプログラム 2 プリンタドライバ 3 スプーラ 4 送受信部 5 印刷データ選択部 6 イメージ/グラフィックデータ処理部 7 フォント発生部 8 フォント記憶部 9 キャッシュ登録情報記憶部 DESCRIPTION OF SYMBOLS 1 Application program 2 Printer driver 3 Spooler 4 Transmission / reception part 5 Print data selection part 6 Image / graphic data processing part 7 Font generation part 8 Font storage part 9 Cache registration information storage part

Claims (5)

【特許請求の範囲】[Claims] 【請求項1】 上位装置と、印刷装置とから成り、 前記上位装置は、印刷データをビットマップデータに展
開する過程で生成される中間データを前記印刷装置に転
送し、 前記印刷装置は、前記中間データから前記ビットマップ
データを得て印刷を実行することを特徴とする印刷シス
テム。
An upper device and a printing device, wherein the upper device transfers intermediate data generated in a process of expanding print data into bitmap data to the printing device; A printing system wherein the bitmap data is obtained from intermediate data and printing is performed.
【請求項2】 請求項1に記載の印刷システムにおい
て、 前記上位装置は、前記ビットマップデータと前記中間デ
ータとを比較して、データサイズの小さいほうを印刷装
置に転送することを特徴とする印刷システム。
2. The printing system according to claim 1, wherein the higher-level device compares the bitmap data with the intermediate data, and transfers a smaller data size to a printer. Printing system.
【請求項3】 請求項1に記載の印刷システムにおい
て、 印刷装置は、前記ビットマップデータと前記中間データ
とを比較して、データサイズの小さいほうをキャッシュ
メモリに格納することを特徴とする印刷システム。
3. The printing system according to claim 1, wherein the printing device compares the bitmap data with the intermediate data, and stores a smaller data size in a cache memory. system.
【請求項4】 請求項3に記載の印刷システムにおい
て、 上位装置は、印刷装置に転送する1単位のビットマップ
データと1単位の中間データとを区別するコマンドを、
ビットマップデータもしくは中間データとともに印刷装
置に転送し、キャッシュヒットするときは、キャッシュ
ヒットコマンドを印刷装置に転送することを特徴とする
印刷システム。
4. The printing system according to claim 3, wherein the host device transmits a command for distinguishing one unit of bitmap data and one unit of intermediate data to be transferred to the printing device.
A printing system which transfers a cache hit command to a printing apparatus when the cache hit occurs together with the bitmap data or the intermediate data and the cache hit.
【請求項5】 請求項1から4のうちのいずれか1項に
記載の印刷システムにおいて、 中間データは、アウトラインフォントから得られるビッ
トマップデータの変化点を抽出した、エッジデータから
成ることを特徴とする印刷システム。
5. The printing system according to claim 1, wherein the intermediate data comprises edge data obtained by extracting a change point of bitmap data obtained from an outline font. And printing system.
JP10291742A 1998-10-14 1998-10-14 Printing system Pending JP2000118056A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10291742A JP2000118056A (en) 1998-10-14 1998-10-14 Printing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10291742A JP2000118056A (en) 1998-10-14 1998-10-14 Printing system

Publications (1)

Publication Number Publication Date
JP2000118056A true JP2000118056A (en) 2000-04-25

Family

ID=17772826

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10291742A Pending JP2000118056A (en) 1998-10-14 1998-10-14 Printing system

Country Status (1)

Country Link
JP (1) JP2000118056A (en)

Similar Documents

Publication Publication Date Title
US6611347B1 (en) Print control apparatus, print control method, storage medium, and computer readable program performing a form overlay process
US6351317B1 (en) Printing system using communication network
US6665081B1 (en) Print system printer driver and printer
US5737501A (en) Printer control unit and method
JPH11170655A (en) Method and apparatus for outputting image
US7103833B1 (en) Image processing apparatus, output apparatus, image processing system and image processing method
US6247028B1 (en) Controlling attributes of pre-registered form data to match those of data to be printed with the form data
US20030103227A1 (en) Printing system, print preview method, and preview method using a printer driver
US20040095589A1 (en) Image processing method
EP0820004B1 (en) Print system, print method, printer driver and printer
US6016155A (en) Character processing apparatus, character processing method, and memory
US6310693B1 (en) Printing control apparatus and method, and printing system for reducing processing overhead
JPH09261457A (en) Print controller, data processing method for it and storage medium storing program readable by computer
EP0752641B1 (en) Printing resolution and/or gradation control
JP4461361B2 (en) Drawing processing method and program, drawing command output device and image forming apparatus
JP2000118056A (en) Printing system
JP3308663B2 (en) Image forming device
JP2000207147A (en) Print data transfer system
JP4325339B2 (en) Printing system, host computer and printer driver
JPH10105348A (en) Printer controller, printer control method and storage medium storing program readable by computer
JP3576622B2 (en) Image output apparatus and method and printing system
JPH09277616A (en) Printer and control method therefor
JP2002059596A (en) Data processing device, data processing system, data processing method, printing device, printing system, printing method and medium providing processing program
JP2737880B2 (en) Character processing apparatus and method
JP2000033730A (en) Printer, control thereof and printing system