JP2007122621A - Information processor, information processing method - Google Patents

Information processor, information processing method Download PDF

Info

Publication number
JP2007122621A
JP2007122621A JP2005317112A JP2005317112A JP2007122621A JP 2007122621 A JP2007122621 A JP 2007122621A JP 2005317112 A JP2005317112 A JP 2005317112A JP 2005317112 A JP2005317112 A JP 2005317112A JP 2007122621 A JP2007122621 A JP 2007122621A
Authority
JP
Japan
Prior art keywords
processing
intermediate data
alpha
alpha blend
image forming
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.)
Withdrawn
Application number
JP2005317112A
Other languages
Japanese (ja)
Inventor
Shuji Ozawa
修司 小澤
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2005317112A priority Critical patent/JP2007122621A/en
Publication of JP2007122621A publication Critical patent/JP2007122621A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Record Information Processing For Printing (AREA)
  • Image Processing (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide technology for performing proper print processing according to print setting when the print processing based on intermediate data which needs alpha blend processing is performed. <P>SOLUTION: Electronic data, and print setting information comprised of an object group including one or more objects including an object part for the alpha blend processing are acquired. The intermediate data of the electronic data is created by a format based on the print setting information (S707, S710). The print setting information is referred to and when preferential high speed printing is set, pseudo alpha blend processing is performed to the objects (S710). On the other hand, when quality of a print result is preferred, the alpha blend processing is performed to the objects (S709). The print processing is performed based on the intermediate data after the processing. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、アルファブレンド処理を必要とする中間データを取り扱う印刷技術に関するものである。     The present invention relates to a printing technique that handles intermediate data that requires alpha blend processing.

複数の画像オブジェクト(例えば文字やイメージやグラフィック)で構成されている電子ドキュメント、及びPDLデータ等の画像形成を省メモリで行う場合の技術として、フレームメモリへの画像形成をハーフトーン状態で行うのが一般的である。例えばRGBそれぞれが8ビット階調のピクセルにくらべて、CMYKそれぞれが2ビット階調のものでは、フレームメモリ容量に4倍の差が出る。   As a technique for forming an image of an electronic document composed of a plurality of image objects (for example, characters, images, and graphics) and PDL data in a memory-saving manner, the image formation to the frame memory is performed in a halftone state. Is common. For example, when each of R, G, and B has a 2-bit gradation compared to an 8-bit gradation pixel, there is a four-fold difference in frame memory capacity.

しかしながら、このような画像形成をハーフトーン状態で行う場合、アルファブレンド処理を行うことができない。この問題を解決するために、入力された描画コマンドをビットマップイメージに描画する描画手段と、描画コマンドとして入力オブジェクトをビットマップに描画する際のアルファブレンド指定(透明度指定)を行う描画方法指定手段とを有する印刷制御装置および画像制御装置のデータ処理方法において、アルファブレンド指定をアルファ値に応じた面積情報に置換するアルファ値置換手段と、描画コマンドを面積情報に応じた処理を行うための描画コマンドに変換する描画コマンド変換するものがあった(特許文献1を参照)。   However, when such image formation is performed in a halftone state, alpha blend processing cannot be performed. In order to solve this problem, a drawing means for drawing an input drawing command on a bitmap image and a drawing method specifying means for specifying an alpha blend (transparency specification) when drawing an input object on a bitmap as a drawing command. In the data processing method of the print control apparatus and the image control apparatus, the alpha value replacement means for replacing the alpha blend designation with the area information corresponding to the alpha value, and the drawing command for performing processing according to the area information There is one that converts a drawing command into a command (see Patent Document 1).

しかしながら、上記従来技術は擬似アルファブレンド処理であり、入力データの内容によっては本来のアルファブレンド処理による描画結果とは異なってしまう。上記問題を解決するためには以下の方法が考案されている。   However, the above prior art is a pseudo-alpha blend process, and depending on the contents of the input data, the rendering result by the original alpha blend process may be different. In order to solve the above problems, the following methods have been devised.

即ち、フレームメモリの容量を十分用意し、コントーンで画像形成を行うか、中間データを生成する。その生成時あるいは生成後に中間データを検索し、アルファブレンドが必要なオブジェクトに関してはアルファブレンド処理を行ってしまい、アルファブレンド処理が無い中間データ(フレームメモリの描画処理においてアルファブレンド処理が必要ない)にする。そして、フレームメモリに描画する。   That is, a sufficient capacity of the frame memory is prepared, and image formation is performed with contone or intermediate data is generated. Intermediate data is searched at the time of generation or after generation, and alpha blending processing is performed for objects that require alpha blending, and there is no alpha blending processing (no alpha blending processing is required in the frame memory rendering process). To do. Then, drawing is performed in the frame memory.

図1は、一般的なアルファブレンド処理を含む電子ドキュメントの作成の様子を示す図である。ユーザは、ホストコンピュータ上のアプリケーションを用いて101に示す如く図形の一部を選択するか、102に示す如く図形の全体を選択する。ユーザが用いるのは大抵の場合、上書き(図形が重なった場合、上の図形のみが見える)で作成するのを要望しているため、アプリケーションで単純に図形の作成操作をした場合、101,102で示す図形には上書きのアルファブレンド値が設定される。たとえば図形が赤い四角形であった場合、RGBA=(255,0,0,255)となる(RGBAのAはアルファブレンド値)。ここで、上書きの場合のアルファブレンド値が255となるのはアルファブレンド処理が以下の式に基づいて行われるためである。   FIG. 1 is a diagram illustrating how an electronic document including a general alpha blend process is created. The user uses the application on the host computer to select a part of the graphic as shown at 101 or the entire graphic as shown at 102. In most cases, the user wants to create by overwriting (when the figure overlaps, only the above figure can be seen), so if the application simply creates a figure, 101, 102 An overwritten alpha blend value is set for the figure indicated by. For example, when the figure is a red square, RGBA = (255, 0, 0, 255) (A in RGBA is an alpha blend value). Here, the alpha blend value in the case of overwriting is 255 because the alpha blend process is performed based on the following equation.

R=(α/255)×SrcR+(1−(α/255))×DestR
G=(α/255)×SrcG+(1−(α/255))×DestG
B=(α/255)×SrcB+(1−(α/255))×DestB
Srcは描画しようとしている図形で、Destが下地となる。
R = (α / 255) × SrcR + (1− (α / 255)) × DestR
G = (α / 255) × SrcG + (1− (α / 255)) × DestG
B = (α / 255) × SrcB + (1− (α / 255)) × DestB
Src is a figure to be drawn, and Dest is the background.

図形をSrcとすると、αの部分に255を代入し計算すればよい。255を代入すると、Srcに掛ける(α/255)は1となり、Destに掛ける(1−(α/255))は0となるので、Srcの値が計算結果となる。すなわち上書き処理である。逆にアルファブレンド値として0を指定すれば。Destの値が計算結果となる。すなわち完全な透過である。   If the figure is Src, 255 may be substituted for α and calculated. When 255 is substituted, Src multiplied by (α / 255) becomes 1, and Dest multiplied by (1- (α / 255)) becomes 0, so the value of Src becomes the calculation result. That is, it is an overwrite process. Conversely, if you specify 0 as the alpha blend value. The value of Dest is the calculation result. That is, complete transmission.

上述したようにユーザが使うのは大抵が上書きであるので、アルファブレンド値=255が最も多く用いられる。   As described above, since the user uses mostly overwrite, alpha blend value = 255 is most frequently used.

なお、図形の選択を行うと、105に示す透過設定メニューを開くことにより、透過に係る設定を行うことができる。透過設定のメニューを開く方法についてはアプリケーションごとに異なるが、アプリケーションの画面上のボタンや、キーボード、マウスの操作によって開くことが出来るのが一般的である。   When a graphic is selected, a setting relating to transparency can be made by opening a transparency setting menu shown at 105. Although the method for opening the transparent setting menu differs depending on the application, it can be opened by operating a button on the application screen, a keyboard, or a mouse.

最初に透過設定メニュー105を開いた場合には、透過する/しないの選択を行うためのチェックボタン106のみが表示される。それは下地が透過して見えるということが重要であり、どの位透過しているかという点については考慮しないユーザが多いためである。この場合の透過率は50%の透過(アルファブレンド値=128)にするのが普通である。透過として50%というのは、ユーザとして理解しやすいのと、画像形成装置の能力によっては微妙な透過率が表現できないものもあり、50%にしておくことにより安定的に透過効果を得られるといった点が理由である。チェックボタン106を有効にすると、103に示す如く、下地が透過して見えるようになる。103では、RGBA=(255,0,0,128)となる。   When the transparency setting menu 105 is first opened, only the check button 106 for selecting whether to transmit or not is displayed. This is because it is important that the background appears to be transparent, and there are many users who do not consider how much the base is transparent. In this case, the transmittance is normally 50% (alpha blend value = 128). The transmission of 50% is easy for the user to understand, and there are some that cannot express a subtle transmittance depending on the ability of the image forming apparatus. By setting the transmission to 50%, a stable transmission effect can be obtained. The point is the reason. When the check button 106 is validated, as shown at 103, the background appears to be transparent. In 103, RGBA = (255, 0, 0, 128).

50%の透過率によって表示された結果に満足できないユーザは、透過設定メニュー105上の透過詳細設定のチェックボタン108を有効にすることにより、透過率を自由に設定できるメニューバー110を表示させ、設定することが出来る。メニューバー110によって75%に設定されていれば、104に示す如く(255,0,0,192)となる。だたしアプリケーションによってはチェックボタン108,110のような詳細設定を持っておらず、チェックボタン106のみであることも多い。   A user who is not satisfied with the result displayed by the transmittance of 50% displays the menu bar 110 that allows the user to freely set the transmittance by enabling the check button 108 of the transparent detail setting on the transparency setting menu 105. It can be set. If it is set to 75% by the menu bar 110, it becomes (255, 0, 0, 192) as shown at 104. However, some applications do not have detailed settings such as the check buttons 108 and 110, and only the check button 106 is often provided.

以上のことによりアルファブレンドが含まれる電子ドキュメントの特徴として、ほとんどのアルファブレンド値が上書きを意味する255で上げられる。次に透過を意図した場合でも固定アルファブレンド値が(殆どが128)が使われることが多い。それ以外の詳細なアルファブレンド値が指定されることは少なく、アプリケーションによっては不可能である場合も多い。
特開2002−7102号公報
As described above, as a feature of an electronic document including an alpha blend, most of the alpha blend values are increased to 255, which means overwriting. Next, even when transmission is intended, a fixed alpha blend value (mostly 128) is often used. Other detailed alpha blend values are rarely specified and may not be possible depending on the application.
Japanese Patent Laid-Open No. 2002-7102

上述した擬似アルファブレンド処理する技術では、省メモリで高速に処理できる。しかし、入力データの内容によっては描画不正を生じてしまう。フレームメモリにコントーンで描画する技術については、メモリ容量が大量に必要になる。中間データでのアルファブレンド処理する技術は、ある程度省メモリで正常な描画結果を得ることが出来る。しかし、アルファブレンドが指定されたオブジェクトと、ページ内に存在する全てのオブジェクトとの重なりを判定する必要があるため処理に時間が掛かってしまう。   With the above-described pseudo-alpha blend processing technology, processing can be performed at high speed with less memory. However, depending on the content of the input data, drawing fraud may occur. A large amount of memory capacity is required for a technique for drawing a frame memory in a contone. The technique of performing the alpha blend process with the intermediate data can obtain a normal drawing result with a certain amount of memory saving. However, since it is necessary to determine the overlap between an object for which alpha blending is specified and all objects existing in the page, the processing takes time.

また、モノクロ印刷、試し印刷(ドラフト印刷)、省トナー印刷、といった印刷設定がなされた場合、ユーザは画質よりも印刷速度を重視し、カラー印刷、高画質印刷といった印刷設定がなされた場合にはユーザは印刷速度より画質を重視している。   Also, when print settings such as monochrome printing, trial printing (draft printing), and toner-saving printing are made, the user places more importance on printing speed than image quality, and when print settings such as color printing and high-quality printing are made. Users place more importance on image quality than printing speed.

本発明は以上の問題に鑑みてなされたものであり、アルファブレンド処理が必要な中間データに基づく印刷処理を行う場合に、印刷設定に応じた適切な印刷処理を行うための技術を提供することを目的とする。   The present invention has been made in view of the above problems, and provides a technique for performing appropriate print processing according to print settings when performing print processing based on intermediate data that requires alpha blending processing. With the goal.

本発明の目的を達成するために、例えば本発明の画像形成装置は以下の構成を備える。   In order to achieve the object of the present invention, for example, an image forming apparatus of the present invention comprises the following arrangement.

即ち、アルファブレンド処理の対象部分を含むオブジェクトを1以上含むオブジェクト群で構成されている電子データを取得する第1の取得手段と、
前記電子データを印刷する際の設定を示す印刷設定情報を取得する第2の取得手段と、
前記印刷設定情報に基づくフォーマットでもって、前記電子データの中間データを作成する作成手段と、
前記印刷設定情報を参照し、高速印刷を重視する旨の設定が成されている場合には、前記オブジェクトに対して擬似アルファブレンド処理を行う第1の処理手段と、
前記印刷設定情報を参照し、印刷結果の品質を重視する旨の設定が成されている場合には、前記オブジェクトに対してアルファブレンド処理を行う第2の処理手段と、
前記第1の処理手段、若しくは前記第2の処理手段による処理後の中間データに基づいて印刷処理を行う印刷手段と
を備えることを特徴とする。
That is, a first acquisition unit that acquires electronic data composed of an object group including one or more objects including a target portion of alpha blend processing;
Second acquisition means for acquiring print setting information indicating settings for printing the electronic data;
Creating means for creating intermediate data of the electronic data in a format based on the print setting information;
A first processing means for performing a pseudo-alpha blending process on the object when the print setting information is referred to and a setting for emphasizing high-speed printing is made;
A second processing means for performing alpha blending processing on the object when the print setting information is referred to and setting of emphasizing the quality of the print result is made;
And a printing unit that performs a printing process based on the intermediate data that has been processed by the first processing unit or the second processing unit.

本発明の目的を達成するために、例えば本発明の画像形成方法は以下の構成を備える。   In order to achieve the object of the present invention, for example, an image forming method of the present invention comprises the following arrangement.

即ち、アルファブレンド処理の対象部分を含むオブジェクトを1以上含むオブジェクト群で構成されている電子データを取得する第1の取得工程と、
前記電子データを印刷する際の設定を示す印刷設定情報を取得する第2の取得工程と、
前記印刷設定情報に基づくフォーマットでもって、前記電子データの中間データを作成する作成工程と、
前記印刷設定情報を参照し、高速印刷を重視する旨の設定が成されている場合には、前記オブジェクトに対して擬似アルファブレンド処理を行う第1の処理工程と、
前記印刷設定情報を参照し、印刷結果の品質を重視する旨の設定が成されている場合には、前記オブジェクトに対してアルファブレンド処理を行う第2の処理工程と、
前記第1の処理工程、若しくは前記第2の処理工程による処理後の中間データに基づいて印刷処理を行う印刷工程と
を備えることを特徴とする。
That is, a first acquisition step of acquiring electronic data composed of an object group including one or more objects including a target portion of alpha blend processing;
A second acquisition step of acquiring print setting information indicating a setting when printing the electronic data;
A creation step of creating intermediate data of the electronic data in a format based on the print setting information;
A first processing step of performing a pseudo-alpha blending process on the object when a setting for emphasizing high-speed printing is made with reference to the print setting information;
A second processing step of performing an alpha blending process on the object when the print setting information is referred to and the setting of emphasizing the quality of the print result is made;
And a printing step of performing a printing process based on the intermediate data after the processing by the first processing step or the second processing step.

本発明の目的を達成するために、例えば本発明の画像形成装置は以下の構成を備える。   In order to achieve the object of the present invention, for example, an image forming apparatus of the present invention comprises the following arrangement.

即ち、設定されているアルファブレンド値が所定値であるか否かを判別する判別手段と、
前記判別手段によりアルファブレンド値が所定値であると判別された場合、簡易フォーマットの中間データを生成し、前記判別手段によりアルファブレンド値が所定値でないと判別された場合、詳細フォーマットの中間データを生成する生成手段と、
前記生成手段により生成された中間データに基づき印刷を行う印刷手段とを有することを特徴とする。
That is, determination means for determining whether the set alpha blend value is a predetermined value,
When the determining unit determines that the alpha blend value is a predetermined value, it generates intermediate data in a simple format. When the determining unit determines that the alpha blend value is not a predetermined value, the intermediate data in the detailed format is generated. Generating means for generating;
Printing means for performing printing based on the intermediate data generated by the generating means.

本発明の目的を達成するために、例えば本発明の画像形成方法は以下の構成を備える。   In order to achieve the object of the present invention, for example, an image forming method of the present invention comprises the following arrangement.

即ち、設定されているアルファブレンド値が所定値であるか否かを判別する判別ステップと、
前記判別ステップによりアルファブレンド値が所定値であると判別された場合、簡易フォーマットの中間データを生成し、前記判別ステップによりアルファブレンド値が所定値でないと判別された場合、詳細フォーマットの中間データを生成する生成ステップと、
前記生成ステップにより生成された中間データに基づき画像を形成する形成ステップとを有することを特徴とする。
That is, a determination step of determining whether or not the set alpha blend value is a predetermined value;
If it is determined that the alpha blend value is a predetermined value in the determination step, intermediate data in a simple format is generated. If the alpha blend value is determined not to be a predetermined value in the determination step, intermediate data in a detailed format is generated. A generation step to generate;
A forming step of forming an image based on the intermediate data generated by the generating step.

本発明の構成により、アルファブレンド処理が必要な中間データに基づく印刷処理を行う場合に、印刷設定に応じた適切な印刷処理を行うことができる。   With the configuration of the present invention, when performing a printing process based on intermediate data that requires an alpha blending process, an appropriate printing process according to the print setting can be performed.

以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。   Hereinafter, the present invention will be described in detail according to preferred embodiments with reference to the accompanying drawings.

[第1の実施形態]
本実施形態では、アルファブレンド処理が必要なオブジェクトの中間データを取得し、この中間データに基づく印刷処理を行う場合について説明する。
[First Embodiment]
In the present embodiment, a case will be described in which intermediate data of an object that requires alpha blending processing is acquired, and printing processing based on this intermediate data is performed.

先ず、図2を用いて、アルファブレンド処理が必要な中間データにおいて、アルファブレンド処理が必要な部分について以下説明する処理を行い、アルファブレンド処理を必要としない中間データを作成する為の処理について説明する。   First, with reference to FIG. 2, in the intermediate data that requires alpha blending processing, processing that will be described below is performed for a portion that requires alpha blending processing, and processing for creating intermediate data that does not require alpha blending processing is described. To do.

図2は、アルファブレンド処理が必要な中間データから、アルファブレンド処理を必要としない中間データを作成する処理を説明する図である。   FIG. 2 is a diagram illustrating processing for creating intermediate data that does not require alpha blending processing from intermediate data that requires alpha blending processing.

また、同図を用いた説明では、前提として、フレームメモリの下地は白(R=G=B=255)であるとする。同図において200は、211から213に示す各オブジェクト(の中間データ)を順次描画することで得られる描画結果を示す。   Further, in the description using the same figure, it is assumed that the background of the frame memory is white (R = G = B = 255) as a premise. In the figure, reference numeral 200 denotes a drawing result obtained by sequentially drawing each object (intermediate data) indicated by 211 to 213.

オブジェクト211は、同図に示す如く、左上隅の座標が座標(1,1)で、縦、横のサイズが5である矩形であり、且つこの矩形のR、G、B値はそれぞれ0である。ここで、オブジェクト211についてはアルファブレンド処理が指定されていない(α値が指定されていない)。そこで、このオブジェクト211を描画すると、座標(1,1)、座標(6,6)の2点を対角とする矩形領域内はR=G=B=0となる。   As shown in the figure, the object 211 is a rectangle whose upper left corner has coordinates (1, 1) and whose vertical and horizontal sizes are 5, and the R, G, and B values of this rectangle are 0. is there. Here, alpha blending processing is not specified for the object 211 (α value is not specified). Therefore, when this object 211 is drawn, R = G = B = 0 in the rectangular area having the coordinates (1, 1) and the coordinates (6, 6) as diagonal points.

次にオブジェクト212は、同図に示す如く、左上隅の座標が座標(2,2)で、縦、横のサイズが5である矩形であり、且つこの矩形のR、G、B値はそれぞれ128である。ここで、オブジェクト211についてはアルファブレンド処理が指定されている(α値=128と指定されている)。そこで、このオブジェクト212を同図240に示す計算式に従って描画するので、座標(2,2)と座標(6,6)の2点を対角とする矩形領域内のR、G、B値はそれぞれ、
R=(128/255)×128+(1−(128/255))×0=64
G=(128/255)×128+(1−(128/255))×0=64
B=(128/255)×128+(1−(128/255))×0=64
となる。この矩形領域は即ち、オブジェクト211とオブジェクト212とが互いに重なる領域である。
Next, as shown in the figure, the object 212 is a rectangle whose upper left corner has coordinates (2, 2) and whose vertical and horizontal sizes are 5, and the R, G, and B values of this rectangle are respectively 128. Here, alpha blending processing is specified for the object 211 (α value = 128 is specified). Therefore, since the object 212 is drawn according to the calculation formula shown in FIG. 240, the R, G, and B values in the rectangular area whose diagonals are the coordinates (2, 2) and the coordinates (6, 6) are Respectively,
R = (128/255) × 128 + (1− (128/255)) × 0 = 64
G = (128/255) × 128 + (1− (128/255)) × 0 = 64
B = (128/255) × 128 + (1− (128/255)) × 0 = 64
It becomes. That is, this rectangular area is an area where the object 211 and the object 212 overlap each other.

また、座標(2,2)と座標(7,7)を対角とする矩形領域(オブジェクト212)から座標(2,2)と座標(6,6)とを対角とする矩形領域を除いた部分202のR、G、B値はそれぞれ、
R=(128/255)×128+(1−(128/255))×255=192
G=(128/255)×128+(1−(128/255))×255=192
B=(128/255)×128+(1−(128/255))×255=192
となる。
Further, a rectangular area having the coordinates (2, 2) and the coordinates (6, 6) as diagonal lines is excluded from the rectangular area (object 212) having the coordinates (2, 2) and coordinates (7, 7) as diagonal lines. The R, G, and B values of the portion 202 are
R = (128/255) × 128 + (1− (128/255)) × 255 = 192
G = (128/255) × 128 + (1− (128/255)) × 255 = 192
B = (128/255) × 128 + (1− (128/255)) × 255 = 192
It becomes.

次にオブジェクト213は、同図に示す如く、左上隅の座標が座標(3,3)で、縦、横のサイズが2である矩形であり、且つこの矩形のR、G、B値はそれぞれ255である。ここで、オブジェクト213についてはアルファブレンド処理が指定されている(α値=128と指定されている)。そこで、このオブジェクト213を同図240に示す計算式に従って描画するので、座標(3,3)と座標(5,5)の2点を対角とする矩形領域内のR、G、B値はそれぞれ、
R=(128/255)×255+(1−(128/255))×64=160
G=(128/255)×255+(1−(128/255))×64=160
B=(128/255)×255+(1−(128/255))×64=160
となる。この矩形領域は即ち、オブジェクト211〜213が互いに重なる領域である。以上の処理から、同図201で示す部分のR、G、B値は0,202で示す部分のR、G、B値は192、203で示す部分のR、G、B値は64、204で示す部分のR、G、B値160となる。
Next, as shown in the figure, the object 213 is a rectangle whose upper left corner has coordinates (3, 3) and whose vertical and horizontal sizes are 2, and the R, G, and B values of this rectangle are respectively 255. Here, alpha blending processing is specified for the object 213 (α value = 128 is specified). Therefore, since the object 213 is drawn according to the calculation formula shown in FIG. 240, the R, G, and B values in the rectangular area whose diagonals are the coordinates (3, 3) and the coordinates (5, 5) are Respectively,
R = (128/255) × 255 + (1− (128/255)) × 64 = 160
G = (128/255) × 255 + (1− (128/255)) × 64 = 160
B = (128/255) × 255 + (1− (128/255)) × 64 = 160
It becomes. This rectangular area is an area where the objects 211 to 213 overlap each other. From the above processing, the R, G, and B values in the portion shown in FIG. 201 are the R, G, and B values in the portion indicated by 0, 202 and the R, G, and B values in the portion indicated by 192 and 203 are 64, 204. The R, G, and B values 160 of the portion indicated by

以上の原理を用いて、アルファブレンド処理が必要な中間データから、アルファブレンド処理を必要としない中間データを作成する処理について説明する。オブジェクト211〜213をこの順に描画する場合に、先ず、最初にアルファブレンド処理を行って描画処理を行うオブジェクト212に着目する。   A process for creating intermediate data that does not require alpha blending processing from intermediate data that requires alpha blending processing will be described using the above principle. When drawing the objects 211 to 213 in this order, attention is first paid to the object 212 that performs the alpha blending process and performs the drawing process.

オブジェクト212よりも先に描画するオブジェクトはアルファブレンド処理を用いないオブジェクトであり、ここではオブジェクト211である。そこで、オブジェクト212とオブジェクト211とで重なる部分を検索する。これはそれぞれの矩形のサイズを参照し、縦方向、横方法で互いに重なる部分を検索することにより成される。ここでは左上隅の座標を(2,2)、縦横のサイズを4とする矩形領域が、オブジェクト211とオブジェクト212とが互いに重なる領域となる。この重なる領域は同図222に示すものとなる。なお、この矩形領域222のR、G、B値は上述の説明により、オブジェクト211とオブジェクト212とでアルファブレンド処理を行うことで得られ、その結果、64となる。   An object that is drawn before the object 212 is an object that does not use alpha blending processing, and is an object 211 in this example. Therefore, a portion where the object 212 and the object 211 overlap is searched. This is done by referring to the size of each rectangle and searching for overlapping parts in the vertical and horizontal methods. Here, a rectangular area in which the coordinates of the upper left corner are (2, 2) and the vertical and horizontal sizes are 4 is an area where the object 211 and the object 212 overlap each other. This overlapping area is as shown in FIG. Note that the R, G, and B values of the rectangular area 222 are obtained by performing the alpha blend process on the object 211 and the object 212 according to the above description, and as a result, become 64.

次に、オブジェクト211から、この重なる矩形領域222を取り除いた領域221を生成し、更に、オブジェクト212から、この重なる矩形領域222を取り除いた領域223を生成する。また、矩形領域223のR、G、B値は上述の説明により、フレームメモリの下地とアルファブレンド処理を行うことで得られ、その結果、192となる。   Next, an area 221 in which the overlapping rectangular area 222 is removed from the object 211 is generated, and an area 223 in which the overlapping rectangular area 222 is removed from the object 212 is generated. The R, G, and B values of the rectangular area 223 are obtained by performing the alpha blend process with the background of the frame memory as described above, and as a result, become 192.

以上の処理でもって、オブジェクト211、212のそれぞれにおいて、互いに重なる部分と重ならない部分とに分割し、互いに重なる部分についてはアルファブレンド処理を施している。その結果が221から223となる。また、この時点でオブジェクト213については何も行っておらず、オブジェクト224として示している。   With the above processing, each of the objects 211 and 212 is divided into portions that overlap each other and portions that do not overlap each other, and alpha blending processing is performed on the portions that overlap each other. The result is 221 to 223. At this time, nothing is performed on the object 213, which is shown as an object 224.

次に、オブジェクト224に着目する。先ず、先に生成したオブジェクト221〜223のうち、オブジェクト224と重なる部分を検索する。ここではオブジェクト222がオブジェクト224と重なるオブジェクトとして検索される。   Next, focus on the object 224. First, of the previously generated objects 221 to 223, a portion overlapping with the object 224 is searched. Here, the object 222 is searched as an object overlapping the object 224.

よって、次に、オブジェクト222から、この重なる矩形領域224を取り除いた領域232を生成する。また、矩形領域224のR、G、B値は上述の説明により、オブジェクト222とオブジェクト224とでアルファブレンド処理を行うことで得られ、その結果、160となり、領域234となる。また、オブジェクト221、223については、オブジェクト224とは重なっていないので、そのままオブジェクト231、233となる。   Therefore, next, an area 232 is generated by removing the overlapping rectangular area 224 from the object 222. Further, the R, G, and B values of the rectangular area 224 are obtained by performing the alpha blend process on the object 222 and the object 224 according to the above description. As a result, the value becomes 160 and the area 234. Also, the objects 221 and 223 do not overlap with the object 224, and thus become the objects 231 and 233 as they are.

以上の処理により、元々のオブジェクト211〜213を、互いに重なる部分と重ならない部分とに分割し、且つ重なる部分についてアルファブレンド処理を行うと指定されている場合には、アルファブレンド処理を行う。これにより、231〜234に示す如く、アルファ値の指定のないオブジェクト中間データが得られる。即ち、それぞれのオブジェクト231〜234の描画にはアルファブレンド処理は必要ない。   With the above processing, when the original objects 211 to 213 are divided into overlapping portions and non-overlapping portions, and alpha blending processing is designated for the overlapping portions, the alpha blending processing is performed. Thereby, as shown in 231 to 234, object intermediate data without designation of an alpha value is obtained. In other words, alpha blending processing is not necessary for rendering the objects 231 to 234.

因みに、オブジェクト231〜234を描画すると、200に示すものとなる。以上の処理を行えば、フレームメモリに描画を行う際にアルファブレンド処理を行う能力のない装置であっても正常な描画が得られる。このように、中間データの段階でアルファブレンド処理を除去する処理はオブジェクトを1つ1つ検索し、分割処理などを施す必要があり処理に時間が掛かる。逆に擬似アルファブレンド処理では、アルファブレンド値に相当するパターンを生成する処理だけで高速に処理することが可能になる。   Incidentally, when the objects 231 to 234 are drawn, the result becomes 200. By performing the above processing, normal drawing can be obtained even if the device does not have the ability to perform alpha blending processing when drawing in the frame memory. As described above, the process of removing the alpha blend process at the intermediate data stage requires searching for each object one by one and performing a division process, which takes time. Conversely, in the pseudo-alpha blend process, it is possible to perform high-speed processing only by generating a pattern corresponding to the alpha blend value.

次に、図3を用いて、擬似アルファブレンド処理を行う場合と、中間データの段階でアルファブレンド除去処理を行う場合とで、メモリに保持しておく中間データの量が異なる点について説明する。   Next, the difference in the amount of intermediate data stored in the memory between the case where the pseudo-alpha blend process is performed and the case where the alpha blend removal process is performed at the intermediate data stage will be described with reference to FIG.

図3(a)は、重なり部分を有している2つのオブジェクトを描画した場合の例を示す図である。中間データの段階でアルファブレンド除去処理を行う場合、2つのオブジェクト301,302同士の重なりを比較しなければならない。   FIG. 3A is a diagram illustrating an example in which two objects having overlapping portions are drawn. When the alpha blend removal process is performed at the intermediate data stage, the overlap between the two objects 301 and 302 must be compared.

図3(b)は、重なり部分の検索処理のフローチャートである。なお、オブジェクト301,302は、オブジェクトの左右エッジのx座標位置をy座標方向の高さ分保持することにより表現され、さらにデータ量を小さくするために圧縮コードで記載されているものとする。   FIG. 3B is a flowchart of the overlapping portion search process. The objects 301 and 302 are expressed by holding the x-coordinate positions of the left and right edges of the object by the height in the y-coordinate direction, and are described in a compressed code to further reduce the data amount.

先ず、ステップS303では、オブジェクト301,302の重なっている部分のy座標の開始点と終了点を取得する。次に、ステップS304において、上記y座標の開始点から終了点まで全てのyについて、重なり判断処理を行ったか否かを判断する。全て行った場合には本処理を終了するのであるが、全て行っていない場合には処理をステップS305に進める。   First, in step S303, the start point and end point of the y coordinate of the overlapping portion of the objects 301 and 302 are acquired. Next, in step S304, it is determined whether or not overlap determination processing has been performed for all y from the start point to the end point of the y coordinate. If all the processes have been performed, the present process is terminated. If all processes have not been performed, the process proceeds to step S305.

ステップS305では、オブジェクト301のエッジ情報を伸張し、注目y座標における左右のエッジのx座標値を取得する。同様に、ステップS306では、オブジェクト302のエッジ情報を伸張し、注目y座標における左右のエッジのx座標値を取得する。   In step S305, the edge information of the object 301 is expanded, and the x coordinate values of the left and right edges in the target y coordinate are acquired. Similarly, in step S306, the edge information of the object 302 is expanded, and the x coordinate values of the left and right edges in the target y coordinate are acquired.

そしてステップS307では、ステップS305,S306のそれぞれで取得したx座標値を用いて、x方向におけるそれぞれのオブジェクト301,302の重なりがあるか否かを判断する。   In step S307, the x-coordinate values acquired in steps S305 and S306 are used to determine whether or not there is an overlap between the objects 301 and 302 in the x direction.

電子ドキュメント、及びPDLデータには1万個以上のオブジェクトが存在することも普通であるから、ステップS305,S306における伸張処理をその都度行っていたのでは非常に時間が掛かってしまう。そのため、中間データによるアルファブレンド除去処理を行う場合はエッジ情報は非圧縮で持つようにする必要がある。そのため、メモリ容量が増加する。   Since it is normal that there are 10,000 or more objects in the electronic document and PDL data, if the decompression process in steps S305 and S306 is performed each time, it takes a very long time. Therefore, when performing alpha blend removal processing using intermediate data, it is necessary to have the edge information uncompressed. Therefore, the memory capacity increases.

図3(c)は、複数のオブジェクトを含む画像の一例を示す図である。同図に示すような画像310を中間データに変換する場合、図3(d)に示すような、画像310中の各文字や絵等のオブジェクトを管理するためのディスプレイリスト312を作成する必要がある。更には、313a〜313dに示すような、オブジェクト毎、若しくはオブジェクト群(グループ)毎に、画像310上における存在領域を示す情報(グループ範囲情報)も作成する必要がある。例えば、図3(c)に示す文字群311の存在領域(点線で囲まれた領域)を示す情報をグループ範囲情報313aとして作成する。また、アルファブレンド処理を行うと指定されたオブジェクトの中間データにおける位置情報314も作成しておく。   FIG. 3C is a diagram illustrating an example of an image including a plurality of objects. When converting the image 310 as shown in the figure to intermediate data, it is necessary to create a display list 312 for managing objects such as characters and pictures in the image 310 as shown in FIG. is there. Further, it is necessary to create information (group range information) indicating an existing area on the image 310 for each object or each object group (group) as shown in 313a to 313d. For example, information indicating the existence area (area surrounded by a dotted line) of the character group 311 shown in FIG. 3C is created as the group range information 313a. Further, position information 314 in the intermediate data of the specified object is also created when the alpha blend process is performed.

このように、各情報を作成しておくことで、アルファブレンド処理が指定されたオブジェクトを探す処理時間が要らなくなる。また、オブジェクト同士の重なり部分の検索処理を行う前に、情報313を参照して、グループ同士で重なり部分を有しているものを特定する。そして、重なり部分を有するグループに含まれているオブジェクト同士で重なり部分を検索する。これにより、重なり部分を検索する処理時間を大幅に短縮することができる。   Thus, by creating each piece of information, processing time for searching for an object for which alpha blending processing is specified is not required. Also, before performing the process of searching for overlapping portions between objects, the information 313 is referenced to identify those having overlapping portions between groups. Then, the overlapping portion is searched for among the objects included in the group having the overlapping portion. Thereby, the processing time for searching for the overlapping portion can be greatly shortened.

なお、アルファブレンド処理を除去する処理を行わないのであれば、ディスプレイリスト312、及びエッジ情報等を(中間データに対する)付加情報として作成し、保持すればよい。なお、この付加情報は圧縮する。このような中間データが「簡易フォーマットの中間データ」である。簡易フォーマットの中間データの作成は高速に行うことができると共に、作成した中間データを保持するメモリの量を軽減させることができる。   If the process for removing the alpha blend process is not performed, the display list 312 and edge information and the like may be created and held as additional information (for intermediate data). This additional information is compressed. Such intermediate data is “intermediate data in a simple format”. The intermediate data in the simple format can be created at high speed, and the amount of memory for holding the created intermediate data can be reduced.

一方、アルファブレンド処理を除去する処理を行うのであれば、更に、グループ範囲情報313や情報314を上記付加情報に含めればよい。この場合、エッジ情報は不圧縮データとする。このような中間データが「詳細フォーマットの中間データ」である。しかし、この場合、作成した中間データを保持するメモリの量が大きくなり、且つこの付加情報の作成時間も長くなる。   On the other hand, if the process for removing the alpha blend process is performed, the group range information 313 and the information 314 may be further included in the additional information. In this case, the edge information is uncompressed data. Such intermediate data is “intermediate data in a detailed format”. However, in this case, the amount of memory for holding the created intermediate data increases, and the time for creating this additional information also increases.

次に図4を用いて、コントーンで描画する処理、擬似アルファブレンド処理を介して描画する処理、中間データにおいてアルファブレンド処理を除去した後に描画する処理の3つについて説明する。更には、中間データを生成する処理に比べて、コントーンでフレームメモリに直接描画する処理の方がメモリを多く必要とする理由について説明する。   Next, with reference to FIG. 4, three processes will be described: a process of drawing with a contone, a process of drawing through a pseudo alpha blend process, and a process of drawing after removing the alpha blend process in intermediate data. Furthermore, the reason why the process of directly drawing in the frame memory with a contone requires more memory than the process of generating intermediate data will be described.

図4(a)は、この3つの処理を行う画像形成装置の機能構成を示すブロック図である。400は電子ドキュメントデータである。以下の説明では特に断らない限りは、「電子ドキュメント」が差す対象に、PDLデータも含まれているものとする。電子ドキュメント400のデータは電子ドキュメント解釈部401によってその内容が解釈される。解釈結果は後段の描画処理部406、中間データ生成処理&バンド分割部402に送出される。   FIG. 4A is a block diagram illustrating a functional configuration of an image forming apparatus that performs these three processes. Reference numeral 400 denotes electronic document data. In the following description, unless otherwise specified, it is assumed that PDL data is also included in the object to which the “electronic document” refers. The data of the electronic document 400 is interpreted by the electronic document interpretation unit 401. The interpretation result is sent to the subsequent drawing processing unit 406 and intermediate data generation processing & band dividing unit 402.

描画処理部406は、電子ドキュメント解釈部401から受けた解釈内容に基づき、コントーンでフレームメモリに直接画像を描画する処理を行う。フレームメモリは、1ページ分の画像を保持するためのメモリであり、フレームメモリページ407内に設けられている。電子ドキュメント400は一般的にはy座標方向にソートされていないため、1ページ分のメモリが必要となる。   The drawing processing unit 406 performs processing for drawing an image directly on the frame memory in a contone based on the interpretation content received from the electronic document interpretation unit 401. The frame memory is a memory for holding an image for one page, and is provided in the frame memory page 407. Since the electronic document 400 is generally not sorted in the y-coordinate direction, one page of memory is required.

一方、中間データ生成処理&バンド分割部402は、電子ドキュメント解釈部401から受けた解釈内容に基づき、オブジェクトのy座標に対するソート処理を行い、オブジェクトをバンドごとの中間データとして生成する処理を行う。この中間データは、簡易フォーマットの中間データ、詳細フォーマットの中間データの何れかである。   On the other hand, the intermediate data generation process & band division unit 402 performs a sort process on the y-coordinate of the object based on the interpretation content received from the electronic document interpretation unit 401, and performs a process of generating the object as intermediate data for each band. This intermediate data is either intermediate data in a simple format or intermediate data in a detailed format.

403は、中間データ生成処理&バンド分割部402により生成されたバンド毎のオブジェクトの中間データである。描画処理部404は、中間データ403に基づいて描画処理を行う。描画結果はフレームメモリバンド405に書き込まれる。ここで、中間データ403は上述の通りバンド毎のものであるので、描画処理部404は、バンド毎の描画処理を行う。従って、フレームメモリバンド405には最低1バンド分の画像を保持するためのエリアがあれば良いことになる。   Reference numeral 403 denotes intermediate data of the object for each band generated by the intermediate data generation processing & band dividing unit 402. The drawing processing unit 404 performs drawing processing based on the intermediate data 403. The drawing result is written in the frame memory band 405. Here, since the intermediate data 403 is for each band as described above, the drawing processing unit 404 performs drawing processing for each band. Accordingly, the frame memory band 405 only needs to have an area for holding an image for at least one band.

ここで、上述の通り、フレームメモリページ407が1ページ分のエリアが必要なのに対して、フレームメモリバンド405には1バンド分のエリアがあればよい。即ち、電子ドキュメント400をコントーンで直接描画する方がメモリ使用量は大きなものとなる。しかし、電子ドキュメント400がバンドソートされている場合には、フレームメモリページ407には1バンド分のエリアがあればよい。この場合、バンドソートされている電子ドキュメント400に関してはバンドソート情報を付加し、バンドソートされているものに関してはコントーンでフレームメモリに直接描画する方法を選択することも考えてよい。   Here, as described above, the frame memory page 407 needs an area for one page, whereas the frame memory band 405 only needs an area for one band. That is, the memory usage is larger when the electronic document 400 is directly drawn in the contone. However, when the electronic document 400 is band-sorted, the frame memory page 407 may have an area for one band. In this case, band sorting information may be added to the electronic document 400 that has been band-sorted, and a method of directly drawing in the frame memory in a contone manner may be selected for those that have been band-sorted.

フレームメモリページ407、若しくはフレームメモリバンド405に描画された画像は圧縮処理部408によって圧縮される。この圧縮のアルゴリズムについては特に限定するものではないが、例えば、JPEG圧縮などがある。圧縮することで得られるデータ(圧縮データ)は後段のスプール409に送出され、そこに保持される。   An image drawn on the frame memory page 407 or the frame memory band 405 is compressed by the compression processing unit 408. The compression algorithm is not particularly limited, and examples include JPEG compression. Data obtained by the compression (compressed data) is sent to the spool 409 at the subsequent stage and held there.

スプール409は、電子ドキュメント解釈部401に電子ドキュメント400が入力されてから圧縮処理部408で圧縮処理を行うまでの処理と、伸張処理部410以降の処理との間に非同期を作りだすことを目的とするものである。即ち、伸張処理部410、ビデオ出力部411、間引き回路412、プリンタ部413によるプリント処理を休みなく動作させるためには、スプール409には現在プリント中のページの次のページが既に保持されていなくてはいけない。従って、スプール409に画像を送出するまでの画像形成処理は、伸張処理部410以降によるプリント処理とは非同期に動作し、かつプリント処理よりも高速に出来るように構成する。   The purpose of the spool 409 is to create asynchronism between the processing from when the electronic document 400 is input to the electronic document interpretation unit 401 until the compression processing unit 408 performs compression processing and the processing after the decompression processing unit 410. To do. That is, in order to operate the expansion processing unit 410, the video output unit 411, the thinning circuit 412, and the printer unit 413 without interruption, the spool 409 does not already hold the next page being printed. must not. Accordingly, the image forming process until the image is sent to the spool 409 is configured to operate asynchronously with the printing process performed by the expansion processing unit 410 and the subsequent processing and can be performed at a higher speed than the printing process.

更に、スプール409に現在プリント中のページの次以降の複数ページを保持させる為には、保持させるページ数に応じた大きな容量が必要となる。そこで、スプール409が保持するデータは圧縮することが好ましい。   Furthermore, in order for the spool 409 to hold a plurality of pages following the page currently being printed, a large capacity is required according to the number of pages to be held. Therefore, it is preferable to compress the data held by the spool 409.

次に、伸張処理部410は、スプール409に保持されている画像を順次読み出して伸張し、ビデオ出力部411に送出する。ビデオ出力部411は、受けた画像に基づく画像信号をプリンタ部413に出力する。プリンタ部413は受けた画像信号に基づいて、紙などの記録媒体上に画像の形成(プリント)を行う。   Next, the decompression processing unit 410 sequentially reads and decompresses the images held in the spool 409 and sends them to the video output unit 411. The video output unit 411 outputs an image signal based on the received image to the printer unit 413. Based on the received image signal, the printer unit 413 forms (prints) an image on a recording medium such as paper.

なお、本実施形態では、プリントの形式については特に限定するものではなく、インクジェット方式、レーザービーム方式等、の何れを用いても良い。なお、ここで、プリントの設定において、省トナー印刷が指定されていた場合には、ビデオ出力部411による画像信号は間引き回路412に出力される。間引き回路412は、ビデオ信号に対して間引き処理を行い、間引き処理後の画像信号をプリンタ部413に送出する。   In the present embodiment, the print format is not particularly limited, and any of an ink jet method, a laser beam method, and the like may be used. Here, when toner-saving printing is designated in the print settings, the image signal from the video output unit 411 is output to the thinning circuit 412. The thinning circuit 412 performs a thinning process on the video signal and sends the image signal after the thinning process to the printer unit 413.

図4(b)は、電子ドキュメント400に対して上記3つの処理の何れを介して処理を行うのか決定するための条件の一例を示す図である。同図に示す如く、電子ドキュメント400に対する付加情報に記述されているアルファブレンド情報、電子ドキュメント400に記載されている印刷設定情報、画像形成装置内のメモリ容量に基づいて、電子ドキュメント400に基づく画像形成処理を行う。   FIG. 4B is a diagram illustrating an example of a condition for determining which of the three processes is performed on the electronic document 400. As shown in the figure, the image based on the electronic document 400 is based on the alpha blend information described in the additional information for the electronic document 400, the print setting information described in the electronic document 400, and the memory capacity in the image forming apparatus. A forming process is performed.

例えば、アルファブレンド処理が指定されておらず、且つオブジェクトがカラーである場合には、簡易フォーマットの中間データを作成するし、モノクロであれば、コントーンで直接描画する。   For example, if alpha blend processing is not specified and the object is color, intermediate data in a simple format is created, and if it is monochrome, it is drawn directly in contone.

図5は、本実施形態で用いる電子ドキュメントの構成例を示す図である。500は電子ドキュメントの全体を示す。電子ドキュメント500は、ドキュメント全体に対して有効な印刷設定情報501と、各ページの情報504とで構成されている。各ページの情報504には、印刷ヒント情報502が含まれており、更に、「<アルファブレンド>〜</アルファブレンド>」で囲まれた部分(アルファブレンドのヒント情報)がこの印刷ヒント情報502内に記述されている。この印刷ヒント情報502には、各ページに共通する情報もあれば、ドキュメント全体に対して有効な情報もある。   FIG. 5 is a diagram illustrating a configuration example of an electronic document used in the present embodiment. Reference numeral 500 denotes the entire electronic document. The electronic document 500 includes print setting information 501 valid for the entire document and information 504 for each page. The information 504 for each page includes print hint information 502, and a portion surrounded by “<alpha blend> to </ alpha blend>” (alpha blend hint information) is the print hint information 502. It is described in. The print hint information 502 includes information that is common to each page and information that is valid for the entire document.

アルファブレンドのヒント情報は同図に示す如く、アルファブレンドの有無、アルファブレンドの内容、アルファブレンドの座標位置等を示すものである。本実施形態の特徴の1つは、この印刷設定情報501、印刷ヒント情報502に基づいて、印刷に係る処理を切り替える点にある。   As shown in the figure, the alpha blend hint information indicates the presence / absence of alpha blend, the content of alpha blend, the coordinate position of alpha blend, and the like. One of the features of this embodiment is that the processing related to printing is switched based on the print setting information 501 and the print hint information 502.

503は、実際に紙などの記録媒体上に記録される画像に係るデータ(各ページの印字情報)である。   Reference numeral 503 denotes data (print information of each page) related to an image that is actually recorded on a recording medium such as paper.

図12は、本実施形態に係る画像形成装置のハードウェア構成図である。なお、同図に示す構成は一例であり、その構成は適宜変形例が考えられる。   FIG. 12 is a hardware configuration diagram of the image forming apparatus according to the present embodiment. Note that the configuration shown in the figure is an example, and the configuration can be modified as appropriate.

1201はCPUで、RAM1202やROM1203に格納されているプログラムやデータを用いて画像形成装置全体の制御を行うと共に、プリント処理に係る全体を制御する。   A CPU 1201 controls the entire image forming apparatus using programs and data stored in the RAM 1202 and the ROM 1203 and also controls the entire print processing.

1202はRAMで、ハードディスク1204からロードしたプログラムやデータ、I/F1206を介して外部のコンピュータから受信した電子ドキュメントのデータを一時的に記憶するためのエリアを適宜提供することができる。更に、CPU1201が、各種の処理を実行する際に用いるワークエリアも適宜提供することができる。   A RAM 1202 can appropriately provide an area for temporarily storing programs and data loaded from the hard disk 1204 and data of electronic documents received from an external computer via the I / F 1206. Furthermore, a work area used when the CPU 1201 executes various processes can be provided as appropriate.

1203はROMで、プリント処理に係る全体の制御処理をCPU1201に実行させるためのプログラムやデータ、画像形成装置の設定データなどを格納する。   A ROM 1203 stores programs and data for causing the CPU 1201 to perform overall control processing relating to print processing, setting data of the image forming apparatus, and the like.

1204はハードディスクで、I/F1206を介して外部のコンピュータから受信した電子ドキュメントや、これに基づいて作成する中間データ等を一時的に記憶するためのエリアを有する。即ち、図4(a)に示した構成において、メモリ部分に相当する。なお、本実施形態において、各種のデータを一時的に記憶する為に用いるメモリとしては、RAM1202、ハードディスク1204の何れを用いても良いし、適宜それぞれを用いるようにしても良い。   A hard disk 1204 has an area for temporarily storing an electronic document received from an external computer via the I / F 1206, intermediate data created based on the electronic document, and the like. That is, it corresponds to the memory portion in the configuration shown in FIG. In the present embodiment, as a memory used for temporarily storing various data, either the RAM 1202 or the hard disk 1204 may be used, or each may be used as appropriate.

1205はプリント部で、中間データに基づいて描画された画像を紙などの記録媒体上にプリントする為の機構を有している。例えば、図4(a)の構成に示したビデオ出力部411、間引き回路412、プリンタ部413により構成されている。   A printing unit 1205 has a mechanism for printing an image drawn based on the intermediate data on a recording medium such as paper. For example, the video output unit 411, the thinning circuit 412, and the printer unit 413 shown in the configuration of FIG.

1206はI/Fで、外部のコンピュータから送信された電子ドキュメントのデータ(例えば図5に示した構成を有するデータ)は、このI/F1206を介してRAM1202、若しくはハードディスク1204に入力され、そこで一時的に格納される。   Reference numeral 1206 denotes an I / F. Electronic document data (for example, data having the configuration shown in FIG. 5) transmitted from an external computer is input to the RAM 1202 or the hard disk 1204 via the I / F 1206 and temporarily stored therein. Stored.

1207は上述の各部を繋ぐバスである。   Reference numeral 1207 denotes a bus connecting the above-described units.

次に、この様な構成を有する画像形成装置により行うプリント処理全体の流れについて説明する。図6(a)は、プリント対象のページの中間データを、RAM1202、若しくはハードディスク1204内に設けられたスプール内に蓄積する為の処理のフローチャートである。なお、同図のフローチャートに従った処理をCPU1201に実行させるためのプログラムやデータはROM1203に格納されている。そして、このプログラムやデータはCPU1201による制御に従って適宜RAM1202にロードされ、CPU1201による処理対象となる。   Next, the overall flow of print processing performed by the image forming apparatus having such a configuration will be described. FIG. 6A is a flowchart of a process for storing intermediate data of a page to be printed in the RAM 1202 or a spool provided in the hard disk 1204. Note that programs and data for causing the CPU 1201 to execute processing according to the flowchart of FIG. Then, the program and data are appropriately loaded into the RAM 1202 under the control of the CPU 1201 and are processed by the CPU 1201.

先ず、電子ドキュメントのデータをI/F1206を介してRAM1202、若しくはハードディスク1204に取得すると、CPU1201はこの電子ドキュメント中に印刷設定情報が含まれているのかチェックする(ステップS601)。含まれていない場合には処理をステップS605に進める。一方、含まれている場合には処理をステップS602に進め、印刷設定情報をRAM1202、若しくはハードディスク1204に取得する(ステップS602)。   First, when data of an electronic document is acquired in the RAM 1202 or the hard disk 1204 via the I / F 1206, the CPU 1201 checks whether print setting information is included in the electronic document (step S601). If not included, the process proceeds to step S605. On the other hand, if it is included, the process proceeds to step S602, and print setting information is acquired in the RAM 1202 or the hard disk 1204 (step S602).

次に、CPU1201はこの取得した印刷設定情報を参照し、ドラフト印刷や省トナー印刷等、高画質よりも高速性を重視した印刷設定が成されている場合には、処理をステップS603を介してステップS604に進める。そして、より高速に中間データを生成すべく、簡易フォーマットの中間データを生成するよう設定すると共に、アルファブレンド処理として、擬似アルファブレンド処理を行うよう、設定する(ステップS604)。   Next, the CPU 1201 refers to the acquired print setting information, and when print settings that emphasize high speed rather than high image quality, such as draft printing and toner-saving printing, are performed, the processing is performed via step S603. The process proceeds to step S604. Then, in order to generate intermediate data at a higher speed, settings are made to generate intermediate data in a simple format, and pseudo alpha blend processing is set as alpha blend processing (step S604).

一方、CPU1201が印刷設定情報を参照した結果、高速性を重視した印刷設定が成されていない場合には処理をステップS603を介してステップS613に進める。そして印刷結果の品質を重視した設定(高階調、高解像度などの高画質を重視した設定)が成されていない場合には処理をステップS613を介してステップS605に進める。   On the other hand, as a result of the CPU 1201 referring to the print setting information, if the print setting that emphasizes high speed has not been made, the process proceeds to step S613 via step S603. If the setting that emphasizes the quality of the print result (setting that emphasizes high image quality such as high gradation and high resolution) is not made, the process advances to step S605 via step S613.

一方、印刷結果の品質を重視した設定が成されている場合には、処理をステップS613を介してステップS614に進める。そして、詳細フォーマットの中間データを生成するよう設定すると共に、アルファブレンド処理として、アルファブレンド除去処理を行うよう、設定する(ステップS614)。   On the other hand, if the setting is made with emphasis on the quality of the print result, the process proceeds to step S614 via step S613. Then, it is set to generate intermediate data in a detailed format, and is set to perform alpha blend removal processing as alpha blend processing (step S614).

以上の処理によって、印刷設定に応じた中間データのフォーマット、及びアルファブレンド処理の種類を切り替えることができる。   Through the above processing, the format of the intermediate data and the type of alpha blending processing according to the print settings can be switched.

そして次に、ステップS605〜S612の処理を、印刷対象ページ毎に行う。   Next, the processes in steps S605 to S612 are performed for each page to be printed.

先ず、全ての印刷対象ページについて中間データをスプール内に蓄積したか否かをチェックし、蓄積した場合には本処理を終了する。一方、蓄積していない場合には処理をステップS605を介してステップS606に進める。そして、RAM1202、若しくはハードディスク1204内のメモリ容量が所定量以上である、若しくは電子ドキュメントがバンドソートされている場合には処理をステップS606を介してステップS608に進める。なお、電子ドキュメントがバンドソートされているか否かは、電子ドキュメントデータ中の「バンドソート」項目を参照することでチェックすることができ、この項目の設定が「済」である場合には、バンドソートされているものと判断する。   First, it is checked whether or not intermediate data has been accumulated in the spool for all pages to be printed. If accumulated, this processing is terminated. On the other hand, if not, the process proceeds to step S606 via step S605. If the memory capacity in the RAM 1202 or the hard disk 1204 is a predetermined amount or more, or the electronic document is band-sorted, the process proceeds to step S608 via step S606. Whether or not the electronic document is band-sorted can be checked by referring to the “band sorting” item in the electronic document data. If this item is set to “completed”, the band is sorted. Judge that it is sorted.

そして、RAM1202、若しくはハードディスク1204内に設けられたページフレームメモリ内に、電子ドキュメントのデータに基づく画像をコントーンでフレームメモリに直接描画する(ステップS608)。そして描画した画像を圧縮し、スプール内に格納する(ステップS609)。   Then, an image based on the data of the electronic document is directly drawn on the frame memory in a contone manner in the page frame memory provided in the RAM 1202 or the hard disk 1204 (step S608). Then, the drawn image is compressed and stored in the spool (step S609).

一方、RAM1202、若しくはハードディスク1204内のメモリ容量が所定量以上ではなく、且つ電子ドキュメントがバンドソートされていない場合には処理をステップS606を介してステップS607に進める。そして、ステップS604,若しくはステップS614で設定された内容に従って、電子ドキュメントを中間データに変換する(ステップS607)。ステップS607における処理の詳細については後述する。   On the other hand, if the memory capacity in the RAM 1202 or the hard disk 1204 is not equal to or larger than the predetermined amount and the electronic document is not band-sorted, the process proceeds to step S607 via step S606. Then, the electronic document is converted into intermediate data in accordance with the contents set in step S604 or step S614 (step S607). Details of the processing in step S607 will be described later.

次に、全てのバンドについて後述する描画処理、圧縮処理を行ったかを判断し、行っている場合には処理をステップS610を介してステップS605に戻し、次のページについて以降の処理を行う。一方、全てのバンドについて後述する描画処理、圧縮処理を行っていない場合には処理をステップS610を介してステップS611に進める。そして、ステップS607で作成した中間データに基づいて、バンド毎に、RAM1202、若しくはハードディスク1204内に設けられたバンドフレームメモリに描画する処理を行う(ステップS611)。そして、描画した画像を圧縮し、スプール内に格納する処理を行う(ステップS612)。   Next, it is determined whether drawing processing and compression processing to be described later have been performed for all the bands. If so, the processing returns to step S605 via step S610, and the subsequent processing is performed for the next page. On the other hand, if drawing processing and compression processing to be described later are not performed for all bands, the processing proceeds to step S611 via step S610. Then, based on the intermediate data created in step S607, a drawing process is performed for each band in the RAM 1202 or a band frame memory provided in the hard disk 1204 (step S611). Then, the drawn image is compressed and stored in the spool (step S612).

以上の処理によって、メモリ容量に応じて、省メモリを重視したアルファブレンド処理を行うことができると共に、メモリ容量があればアルファブレンドを確実に処理することができる。   With the above processing, it is possible to perform alpha blending processing with an emphasis on memory saving according to the memory capacity, and it is possible to reliably process alpha blending if there is a memory capacity.

次に、スプール内に格納した圧縮画像データを伸張してプリントする一連の処理について、同処理のフローチャートを示す図6(b)を用いて説明する。先ず、スプール内に圧縮画像データが存在するかをチェックし、存在する場合には処理をステップS621を介してステップS622に進め、これを伸張する(ステップS622)。次に、上記ステップS603における処理で印刷設定情報を参照した結果、ドラフト印刷や省トナー印刷等、高画質よりも高速性を重視した印刷設定が成されている場合には、処理をステップS623を介してステップS625に進める。   Next, a series of processes for decompressing and printing the compressed image data stored in the spool will be described with reference to FIG. 6B showing a flowchart of the process. First, it is checked whether or not there is compressed image data in the spool. If it exists, the process proceeds to step S622 via step S621, and this is expanded (step S622). Next, as a result of referring to the print setting information in the processing in step S603, if print settings that emphasize high speed rather than high image quality, such as draft printing and toner-saving printing, have been made, the process proceeds to step S623. Then, the process proceeds to step S625.

そして、間引き回路412によって、伸張画像に基づく画像信号を間引き、間引き済みの画像信号をプリント部1205に送出する(ステップS625)。一方、このような設定が成されていない場合には処理をステップS623を介してステップS624に進め、伸張画像に基づく画像信号をそのままプリント部1205に送出する(ステップS624)。   Then, the thinning circuit 412 thins out the image signal based on the expanded image, and sends the thinned image signal to the printing unit 1205 (step S625). On the other hand, if such a setting has not been made, the process proceeds to step S624 via step S623, and an image signal based on the expanded image is sent to the printing unit 1205 as it is (step S624).

これにより、プリント部1205は送出された画像信号に基づいた画像を紙などの記録媒体上に形成することができる。   Accordingly, the print unit 1205 can form an image based on the sent image signal on a recording medium such as paper.

次に、上記ステップS607における処理の詳細について、図7を用いて説明する。図7は、ステップS607における処理の詳細を示すフローチャートである。   Next, details of the processing in step S607 will be described with reference to FIG. FIG. 7 is a flowchart showing details of the processing in step S607.

先ず、作成する中間データのフォーマットの設定が、簡易フォーマットであるのかをチェックする(ステップS700)。これは、ステップS604,S614の何れの処理を行ったのかをチェックすることに等価である。チェックの結果、簡易フォーマットで中間データを作成すると設定されている場合には、処理をステップS710に進め、簡易フォーマットの中間データを作成すると共に、中間データの生成時には擬似アルファブレンド処理を行う(ステップS710)。   First, it is checked whether the format setting of the intermediate data to be created is a simple format (step S700). This is equivalent to checking which process in steps S604 and S614 has been performed. If it is determined that the intermediate data is to be created in the simple format as a result of the check, the process proceeds to step S710 to create the intermediate data in the simple format and perform the pseudo alpha blending process when generating the intermediate data (step S710). S710).

一方、簡易なフォーマットで中間データを作成すると設定されていない場合には、処理をステップS701に進め、作成する中間データのフォーマットの設定が、詳細フォーマットであるのかをチェックする(ステップS701)。チェックの結果、詳細フォーマットで中間データを作成すると設定されていない場合には、処理をステップS707に進める。一方、設定されている場合には処理をステップS702に進め、電子ドキュメントを参照し、アルファブレンドのヒント情報が含まれているか否かをチェックする(ステップS702)。含まれていない場合には処理をステップS707に進める。   On the other hand, if it is not set to create intermediate data in a simple format, the process advances to step S701 to check whether the format setting of the intermediate data to be created is a detailed format (step S701). As a result of the check, if it is not set to create intermediate data in the detailed format, the process proceeds to step S707. On the other hand, if it is set, the process proceeds to step S702, where the electronic document is referenced to check whether alpha blend hint information is included (step S702). If not included, the process proceeds to step S707.

一方、含まれている場合には、処理をステップS703に進め、ヒント情報を取得する(ステップS703)。そして、取り込んだヒント情報中の「アルファブレンド」の項目を参照し、「あり」であるか「なし」であるかをチェックする(ステップS704)。チェックの結果、「なし」の場合には処理をステップS710に進める。一方、「あり」である場合には処理をステップS705に進める。   On the other hand, if it is included, the process proceeds to step S703 to obtain hint information (step S703). Then, with reference to the item “alpha blend” in the fetched hint information, it is checked whether it is “present” or “none” (step S704). If the result of the check is “none”, the process proceeds to step S710. On the other hand, if “Yes”, the process proceeds to step S705.

そして、次に、ヒント情報中の「アルファブレンド値」の項目を参照し、「0%」と「100%」のみが設定されているのか否かをチェックする(ステップS705)。チェックの結果、「0%」と「100%」のみが設定されている場合には処理をステップS710に進める。一方、「0%」と「100%」のみが設定されているわけではない場合には処理をステップS706に進める。   Next, with reference to the item “alpha blend value” in the hint information, it is checked whether only “0%” and “100%” are set (step S705). If only “0%” and “100%” are set as a result of the check, the process proceeds to step S710. On the other hand, if only “0%” and “100%” are not set, the process proceeds to step S706.

そして、次に、ヒント情報中の「アルファブレンド値」の項目を参照する(ステップS706)。その結果、「0%」、「100%」以外の数値であって、且つ同じ値(多くの場合50%)であり、更に、印刷設定情報中の印刷モードが「モノクロ固定」である場合には、処理をステップS710に進める。一方、この条件を満たしていない場合には処理をステップS707に進め、詳細フォーマットの中間データを作成する(ステップS707)。   Next, the “alpha blend value” item in the hint information is referenced (step S706). As a result, when the values are values other than “0%” and “100%” and the same value (in many cases, 50%), and the print mode in the print setting information is “monochrome fixed”. Advances the process to step S710. On the other hand, if this condition is not satisfied, the process proceeds to step S707 to create intermediate data in the detailed format (step S707).

次に、上記ステップS702において、ヒント情報中の「アルファブレンド」の項目が「あり」であると判断した場合には処理をステップS708を介してステップS709に進める。そして、ステップS707で作成した中間データに対してアルファブレンド処理を除去する上記処理を行う(ステップS709)。   Next, when it is determined in step S702 that the “alpha blend” item in the hint information is “present”, the process proceeds to step S709 via step S708. Then, the above process for removing the alpha blend process is performed on the intermediate data created in step S707 (step S709).

以上の処理でもって、アルファブレンドのヒント情報に応じて、アルファブレンド処理の種類を切り替えることができる。   With the above processing, the type of alpha blending process can be switched according to the hint information of alpha blending.

ここで、上記ステップS706では、ヒント情報を参照し、『「0%」、「100%」以外の数値であって、且つ同じ値(多くの場合50%)であり、更に、印刷設定情報中の印刷モードが「モノクロ固定」である』か否かをチェックした。ここでこの条件に「モノクロ固定である」という条件を含めた点について図8を用いて説明する。   Here, in the above step S706, the hint information is referred to, “a numerical value other than“ 0% ”and“ 100% ”and the same value (in many cases, 50%). Whether the print mode is “monochrome fixed” or not. Here, the point that the condition “monochrome fixed” is included in this condition will be described with reference to FIG.

擬似アルファブレンド処理では、ハーフトーンで表現された色を、アルファブレンド値に基づいて生成された面積パターンで合成することになる。同図において800はハーフトーンで表現された色が占める画像上の領域を示す。この領域800は、ディザマトリックスを使用したハーフトーン処理において、一般的にディザ線801の数やディザ角度802といった要素によって特徴付けられる。例えば、50%の透過だからといって、単純な市松模様のパターンでは透過を正常に表現できず、ある程度ディザマトリックスの特徴に応じたパターンを生成することになる。   In the pseudo-alpha blend process, the color expressed in halftone is synthesized with the area pattern generated based on the alpha blend value. In the figure, reference numeral 800 denotes an area on the image occupied by a color expressed in halftone. This region 800 is generally characterized by factors such as the number of dither lines 801 and the dither angle 802 in halftoning using a dither matrix. For example, even if the transmission is 50%, a simple checkerboard pattern cannot express transmission normally, and a pattern corresponding to the characteristics of the dither matrix is generated to some extent.

モノクロの場合、ディザマトリックスは1つなので、例えば50%のパターンを作り出すことも比較的容易ではある。しかし、カラーではKYMCそれぞれの色において異なったディザマトリックスが使用されることが多く、KYMCに共通の50%のパターンを作ることは困難である。また、KYMCそれぞれに対して50%パターンを作成することは比較的簡単ではあるが、KYMCそれぞれのパターンで擬似アルファブレンド処理された後のKYMC合成結果は、元のKYMCの50%とは色味等が大きく異なってしまう問題が発生する。810〜813に上述した状況を示す。つまり擬似アルファブレンド処理はモノクロには適用しやすいがカラーには適応し難い。   In the case of monochrome, since there is one dither matrix, it is relatively easy to create, for example, a 50% pattern. However, different dither matrices are often used for each color of KYMC, and it is difficult to create a 50% pattern common to KYMC. In addition, it is relatively easy to create a 50% pattern for each KYMC, but the KYMC synthesis result after the pseudo alpha blending process with each KYMC pattern is different from 50% of the original KYMC. The problem that etc. differ greatly occurs. The situation described above is shown at 810-813. In other words, the pseudo alpha blending process is easy to apply to monochrome but difficult to apply to color.

次に、電子ドキュメントに対して、アルファブレンド情報(ヒント情報)を付加する処理について、図9,10を用いて説明する。   Next, processing for adding alpha blend information (hint information) to an electronic document will be described with reference to FIGS.

図9は、コンピュータ900と、画像形成装置911との機能構成を示すブロック図である。   FIG. 9 is a block diagram illustrating functional configurations of the computer 900 and the image forming apparatus 911.

コンピュータ900上ではアプリケーション901が動作しており、このアプリケーション901により電子ドキュメント903を作成することができる。作成した電子ドキュメント903はデータベース登録部904を動作させることによりデータベース906内に登録することもできるし、送信部ユーティリティー908を動作させ、送信部907により画像形成装置911に送信することもできる。なお、送信部907は、電子ドキュメント903がPDLデータではない場合には、PDLデータに変換するようにしても良い。   An application 901 is operating on the computer 900, and an electronic document 903 can be created by the application 901. The created electronic document 903 can be registered in the database 906 by operating the database registration unit 904, or can be transmitted to the image forming apparatus 911 by the transmission unit 907 by operating the transmission unit utility 908. If the electronic document 903 is not PDL data, the transmission unit 907 may convert the electronic document 903 into PDL data.

ここで、電子ドキュメント903にはアルファブレンド情報を付加することができるのであるが、その付加のタイミングは902,905,909,910に示す如く、様々なタイミングで付加することができる。即ち、902で示す如く、アプリケーション901を動作させ、電子ドキュメント903を作成する際に付加したり、905で示す如く、データベース登録部904により電子ドキュメント903をデータベース906に登録する際に付加したりすることができる。更には、909で示す如く、送信部ユーティリティー908により送信部907に電子ドキュメント903を渡す際に付加してもよいし、送信部907によって電子ドキュメント903を画像形成装置911に送信する際に付加するようにしてもよい。   Here, alpha blend information can be added to the electronic document 903, but the addition timing can be added at various timings as shown in 902, 905, 909, and 910. That is, it is added when the application 901 is operated to create the electronic document 903 as indicated by 902, or is added when the electronic document 903 is registered in the database 906 by the database registration unit 904 as indicated by 905. be able to. Furthermore, as indicated by reference numeral 909, it may be added when the electronic document 903 is delivered to the transmission unit 907 by the transmission unit utility 908, or added when the electronic document 903 is transmitted to the image forming apparatus 911 by the transmission unit 907. You may do it.

一方、画像形成装置911には、受信部912、画像形成処理部951、プリンタ部952が備わっている。受信部912は、送信部907から送出された電子ドキュメント903を受信し、後段の画像形成処理部951に渡す。画像形成処理部951は、この電子ドキュメント903に基づいて上述の中間データ生成処理、描画処理を行い、描画結果を画像信号としてプリンタ部952に渡す。プリンタ部952は、この画像信号に従って、電子ドキュメント903の画像を紙などの記録媒体上に記録する処理を行う。   On the other hand, the image forming apparatus 911 includes a receiving unit 912, an image forming processing unit 951, and a printer unit 952. The reception unit 912 receives the electronic document 903 sent from the transmission unit 907 and passes it to the subsequent image formation processing unit 951. The image formation processing unit 951 performs the above-described intermediate data generation processing and drawing processing based on the electronic document 903, and passes the drawing result to the printer unit 952 as an image signal. The printer unit 952 performs processing for recording an image of the electronic document 903 on a recording medium such as paper in accordance with the image signal.

ここで、上記アルファブレンド情報を電子ドキュメント903に付加する処理は、画像形成装置911側で行うようにしても良い。即ち、913で示す如く、受信部912で電子ドキュメント903を受信した際に付加するようにしてもよい。画像形成装置911側でアルファブレンド情報を付加するようにすれば、例えば、処理能力の低い装置(PDAや携帯電話等)から電子ドキュメント903が送信された場合に有効である。   Here, the process of adding the alpha blend information to the electronic document 903 may be performed on the image forming apparatus 911 side. That is, as indicated by 913, it may be added when the receiving unit 912 receives the electronic document 903. If alpha blend information is added on the image forming apparatus 911 side, for example, it is effective when an electronic document 903 is transmitted from an apparatus (such as a PDA or a mobile phone) with low processing capability.

図10は、電子ドキュメントにアルファブレンド情報を付加する処理のフローチャートである。   FIG. 10 is a flowchart of processing for adding alpha blend information to an electronic document.

先ず、全ての電子ドキュメントについてアルファブレンド情報の付加処理を行ったかをチェックし(ステップS1001)、行ったのであれば本処理を終了する。一方、全ての電子ドキュメントについてアルファブレンド情報の付加処理を行っていないのであれば、処理をステップS1002に進め、現在のページに対する「アルファブレンド」成る項目に「なし」を設定する(ステップS1002)。   First, it is checked whether alpha blend information addition processing has been performed for all electronic documents (step S1001). If so, this processing ends. On the other hand, if alpha blend information addition processing has not been performed for all electronic documents, the process proceeds to step S1002, and “None” is set in the item “alpha blend” for the current page (step S1002).

次に、全てのページについて処理を行ったか否かをチェックし(ステップS1003)、行っているのであれば、処理をステップS1010に進める。ステップS1010以降の処理については後述する。一方、全てのページについて処理を行っていないのであれば、処理をステップS1004に進め、現在のページ内における全てのオブジェクトについて処理を行ったのかをチェックする(ステップS1004)。このチェックの結果、全てのオブジェクトについて処理を行ったのであれば、処理をステップS1003に戻し、次のページについて以降の処理を行う。   Next, it is checked whether or not processing has been performed for all pages (step S1003). If so, the process proceeds to step S1010. The processing after step S1010 will be described later. On the other hand, if processing has not been performed for all pages, the process proceeds to step S1004 to check whether processing has been performed for all objects in the current page (step S1004). If all the objects have been processed as a result of this check, the process returns to step S1003 to perform the subsequent processes for the next page.

一方、現在のページ内における全てのオブジェクトについて処理を行っていないのであれば、処理をステップS1005に進め、現在のオブジェクトを構成している全ての画素について処理を行ったかをチェックする(ステップS1005)。このチェックの結果、現在のオブジェクトを構成している全ての画素について処理を行ったのであれば、処理をステップS1004に戻し、次のオブジェクトについて以降の処理を行う。   On the other hand, if all the objects in the current page have not been processed, the process proceeds to step S1005, and it is checked whether all the pixels constituting the current object have been processed (step S1005). . As a result of this check, if processing has been performed for all the pixels constituting the current object, the processing returns to step S1004, and the subsequent processing is performed for the next object.

一方、現在のオブジェクトを構成している全ての画素について処理を行っていないのであれば、処理をステップS1006に進め、現在の画素についてアルファブレンド処理を行う旨の指定がなされているか否かをチェックする(ステップS1006)。これは、アルファ成分が含まれている画素値を有する画素については、アルファブレンド処理を行う旨の指定が成されていると判断する。   On the other hand, if the processing has not been performed for all the pixels constituting the current object, the process proceeds to step S1006, and it is checked whether the alpha blending processing has been specified for the current pixel. (Step S1006). This determines that the designation of performing the alpha blending process is made for the pixel having the pixel value including the alpha component.

そして、指定が成されていない場合には処理をステップS1005に戻し、次の画素について以降の処理を行う。一方、指定が成されている場合には処理をステップS1007に進め、現在のページに対する「アルファブレンド」成る項目に「あり」を設定する(ステップS1007)。   If no designation is made, the process returns to step S1005 to perform the subsequent processes for the next pixel. On the other hand, if the designation is made, the process advances to step S1007 to set “present” in the item “alpha blend” for the current page (step S1007).

次に、現在のページに対する「アルファブレンド値」成る項目に、現在の画素のアルファ値を設定する(ステップS1008)。そして、このアルファ値が0,255以外である場合には、この画素の位置を一時的にメモリに保存する(ステップS1009)。そしてステップS1005に処理を戻し、次の画素について以降の処理を行う。   Next, the alpha value of the current pixel is set in the item “alpha blend value” for the current page (step S1008). If the alpha value is other than 0, 255, the pixel position is temporarily stored in the memory (step S1009). Then, the process returns to step S1005 to perform the subsequent processes for the next pixel.

一方、ステップS1003において、全てのページについて処理を行ったのであれば、処理をステップS1010に進める。そして、各ページについて設定した「アルファブレンド」の項目を、各ページのヒント情報における「アルファブレンド」成る項目に設定する(ステップS1010)。   On the other hand, if all pages have been processed in step S1003, the process proceeds to step S1010. Then, the item “alpha blend” set for each page is set to the item “alpha blend” in the hint information of each page (step S1010).

次に、ステップS1008で設定した各アルファブレンド値を、ヒント情報に記録する処理を行う(ステップS1011)。そして最後に、ステップS1009においてメモリに記録した画素位置をヒント情報に記録する処理を行う(ステップS1012)。   Next, a process for recording each alpha blend value set in step S1008 in the hint information is performed (step S1011). Finally, a process of recording the pixel position recorded in the memory in step S1009 in the hint information is performed (step S1012).

なお、ステップS1011,S1012では、ステップS1009においてメモリに記録したページ内における画素位置、及びステップS1008で設定したアルファブレンド値を参照し、同じアルファ値を設定された位置範囲をヒント情報に記録する。   In steps S1011 and S1012, the pixel position in the page recorded in the memory in step S1009 and the alpha blend value set in step S1008 are referenced, and the position range where the same alpha value is set is recorded in the hint information.

次に、このアルファブレンドの描画位置(範囲)の使用方法について、図11を用いて簡単に説明する。図11は、1つのページ内における範囲毎のアルファブレンド処理について説明する図である。   Next, a method of using this alpha blend drawing position (range) will be briefly described with reference to FIG. FIG. 11 is a diagram illustrating alpha blend processing for each range in one page.

描画位置(範囲)の情報があれば、ページ内でも処理の切り替えを行うことが出来る。例えば、同図において1101,1103に示す範囲については簡易フォーマットで中間データを作成し、高速に画像形成を行う。また、1102で示す範囲については詳細フォーマットで中間データを作成し、アルファブレンドを正常に描画する。   If there is information on the drawing position (range), processing can be switched even within the page. For example, intermediate data is created in a simple format for the ranges indicated by 1101 and 1103 in FIG. For the range indicated by 1102, intermediate data is created in a detailed format, and alpha blending is normally rendered.

以上の説明により、本実施形態によれば、中間データからのアルファブレンド除去処理が高速にかつ省メモリが実現できる。これにより、ユーザがアルファブレンド処理を含むドキュメントあるはPDLデータを表示あるいは印刷する場合に高速にかつ省メモリでかつ描画不正ない表示あるいは印字結果を得ることが出来る。   As described above, according to the present embodiment, alpha blend removal processing from intermediate data can be performed at high speed and memory saving can be realized. As a result, when the user displays or prints a document including alpha blend processing or PDL data, it is possible to obtain a display or print result with high speed, memory saving, and non-rendering.

なお、上記画像形成装置に適用可能な装置としては、一般に、画像を紙などの記録媒体上に記録する機能を有するものであれば良く、例えば、プリンタや複写機、複合機などである。更に、電子ドキュメントの供給形態としては、コンピュータから供給されること以外にも、例えば、画像形成装置を複合機でもって構成する場合、スキャナでもって画像を取り込み、これを、画像形成部に供給するようにしても良い。この場合、上記説明における一連の処理はこの画像形成部が行うことになる。   An apparatus applicable to the above-described image forming apparatus generally only needs to have a function of recording an image on a recording medium such as paper, and is, for example, a printer, a copier, or a multifunction machine. Further, as an electronic document supply form, in addition to being supplied from a computer, for example, when the image forming apparatus is configured as a multifunction peripheral, an image is captured by a scanner and supplied to the image forming unit. You may do it. In this case, a series of processing in the above description is performed by the image forming unit.

また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。   Needless to say, the object of the present invention can be achieved as follows. That is, a recording medium (or storage medium) that records a program code of software that implements the functions of the above-described embodiments is supplied to a system or apparatus. Then, the computer (or CPU or MPU) of the system or apparatus reads and executes the program code stored in the recording medium. In this case, the program code itself read from the recording medium realizes the functions of the above-described embodiment, and the recording medium on which the program code is recorded constitutes the present invention.

また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, by executing the program code read by the computer, an operating system (OS) or the like running on the computer performs part or all of the actual processing based on the instruction of the program code. Needless to say, the process includes the case where the functions of the above-described embodiments are realized.

さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Furthermore, it is assumed that the program code read from the recording medium is written in a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer. After that, based on the instruction of the program code, the CPU included in the function expansion card or function expansion unit performs part or all of the actual processing, and the function of the above-described embodiment is realized by the processing. Needless to say.

本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。   When the present invention is applied to the recording medium, program code corresponding to the flowchart described above is stored in the recording medium.

一般的なアルファブレンド処理を含む電子ドキュメントの作成の様子を示す図である。It is a figure which shows the mode of creation of the electronic document containing a general alpha blend process. アルファブレンド処理が必要な中間データから、アルファブレンド処理を必要としない中間データを作成する処理を説明する図である。It is a figure explaining the process which creates the intermediate data which does not require an alpha blend process from the intermediate data which requires an alpha blend process. (a)は、重なり部分を有している2つのオブジェクトを描画した場合の例を示す図、(b)は、重なり部分の検索処理のフローチャート、(c)は、複数のオブジェクトを含む画像の一例を示す図、(d)は、電子ドキュメントに係る情報を説明する図である。(A) is a figure which shows the example at the time of drawing two objects which have an overlap part, (b) is a flowchart of the search process of an overlap part, (c) is the image of the image containing several objects FIG. 4D is a diagram illustrating an example of information related to an electronic document. (a)は、この3つの処理を行う画像形成装置の機能構成を示すブロック図、(b)は、電子ドキュメント400に対して上記3つの処理の何れを介して処理を行うのか決定するための条件の一例を示す図である。(A) is a block diagram showing a functional configuration of an image forming apparatus that performs these three processes, and (b) is for determining which of the three processes is performed on the electronic document 400. It is a figure which shows an example of conditions. 本発明の実施形態で用いる電子ドキュメントの構成例を示す図である。It is a figure which shows the structural example of the electronic document used by embodiment of this invention. (a)は、プリント対象のページの中間データをRAM1202若しくはハードディスク1204内のスプール内に蓄積する処理のフローチャート、(b)は、スプール内に格納した圧縮画像データを伸張してプリントする一連の処理のフローチャートである。(A) is a flowchart of a process for accumulating intermediate data of a page to be printed in a spool in the RAM 1202 or the hard disk 1204, and (b) is a series of processes for decompressing and printing the compressed image data stored in the spool. It is a flowchart of. ステップS607における処理の詳細を示すフローチャートである。It is a flowchart which shows the detail of the process in step S607. ステップS706で用いる条件について説明する図である。It is a figure explaining the conditions used at Step S706. コンピュータ900と、画像形成装置911との機能構成を示すブロック図である。FIG. 3 is a block diagram illustrating functional configurations of a computer 900 and an image forming apparatus 911. 電子ドキュメントにアルファブレンド情報を付加する処理のフローチャートである。It is a flowchart of the process which adds alpha blend information to an electronic document. 1つのページ内における範囲毎のアルファブレンド処理について説明する図である。It is a figure explaining the alpha blend process for every range in one page. 本発明の実施形態に係る画像形成装置のハードウェア構成図である。1 is a hardware configuration diagram of an image forming apparatus according to an embodiment of the present invention.

Claims (13)

アルファブレンド処理の対象部分を含むオブジェクトを1以上含むオブジェクト群で構成されている電子データを取得する第1の取得手段と、
前記電子データを印刷する際の設定を示す印刷設定情報を取得する第2の取得手段と、
前記印刷設定情報に基づくフォーマットでもって、前記電子データの中間データを作成する作成手段と、
前記印刷設定情報を参照し、高速印刷を重視する旨の設定が成されている場合には、前記オブジェクトに対して擬似アルファブレンド処理を行う第1の処理手段と、
前記印刷設定情報を参照し、印刷結果の品質を重視する旨の設定が成されている場合には、前記オブジェクトに対してアルファブレンド処理を行う第2の処理手段と、
前記第1の処理手段、若しくは前記第2の処理手段による処理後の中間データに基づいて印刷処理を行う印刷手段と
を備えることを特徴とする画像形成装置。
First acquisition means for acquiring electronic data composed of an object group including one or more objects including a target portion of alpha blend processing;
Second acquisition means for acquiring print setting information indicating settings for printing the electronic data;
Creating means for creating intermediate data of the electronic data in a format based on the print setting information;
A first processing means for performing a pseudo-alpha blending process on the object when the print setting information is referred to and a setting for emphasizing high-speed printing is made;
A second processing means for performing alpha blending processing on the object when the print setting information is referred to and setting of emphasizing the quality of the print result is made;
An image forming apparatus comprising: a printing unit that performs a printing process based on intermediate data that has been processed by the first processing unit or the second processing unit.
前記1以上のオブジェクトは、互いに重なる部分を有するオブジェクトであって、当該部分が前記アルファブレンド処理の対象部分であることを特徴とする請求項1に記載の画像形成装置。   The image forming apparatus according to claim 1, wherein the one or more objects are objects having overlapping portions, and the portions are target portions of the alpha blending process. 前記第2の処理手段は、前記印刷設定情報を参照し、印刷結果の品質を重視する旨の設定が成されている場合には、前記1以上のオブジェクトを、重なり部分と非重なり部分とに分割し、当該重なり部分についてアルファブレンド処理を行うことを特徴とする請求項1に記載の画像形成装置。   The second processing means refers to the print setting information, and when the setting is made to place importance on the quality of the print result, the one or more objects are set as overlapping portions and non-overlapping portions. The image forming apparatus according to claim 1, wherein the image forming apparatus divides the image and performs alpha blend processing on the overlapped portion. 前記作成手段は前記印刷設定情報を参照し、高速印刷を重視する旨の設定が成されている場合には、印刷結果の品質を重視する旨の設定が成されている場合よりも簡易なフォーマットの中間データを作成することを特徴とする請求項1に記載の画像形成装置。   The creation means refers to the print setting information, and when the setting for emphasizing high-speed printing is made, the format is simpler than when the setting for emphasizing the quality of the printing result is made The image forming apparatus according to claim 1, wherein intermediate data is generated. アルファブレンド処理の対象部分を含むオブジェクトを1以上含むオブジェクト群で構成されている電子データを取得する第1の取得工程と、
前記電子データを印刷する際の設定を示す印刷設定情報を取得する第2の取得工程と、
前記印刷設定情報に基づくフォーマットでもって、前記電子データの中間データを作成する作成工程と、
前記印刷設定情報を参照し、高速印刷を重視する旨の設定が成されている場合には、前記オブジェクトに対して擬似アルファブレンド処理を行う第1の処理工程と、
前記印刷設定情報を参照し、印刷結果の品質を重視する旨の設定が成されている場合には、前記オブジェクトに対してアルファブレンド処理を行う第2の処理工程と、
前記第1の処理工程、若しくは前記第2の処理工程による処理後の中間データに基づいて印刷処理を行う印刷工程と
を備えることを特徴とする画像形成方法。
A first acquisition step of acquiring electronic data composed of an object group including one or more objects including a target portion of alpha blend processing;
A second acquisition step of acquiring print setting information indicating a setting when printing the electronic data;
A creation step of creating intermediate data of the electronic data in a format based on the print setting information;
A first processing step of performing a pseudo-alpha blending process on the object when a setting for emphasizing high-speed printing is made with reference to the print setting information;
A second processing step of performing an alpha blending process on the object when the print setting information is referred to and the setting of emphasizing the quality of the print result is made;
An image forming method comprising: a printing step of performing a printing process based on intermediate data after the processing by the first processing step or the second processing step.
設定されているアルファブレンド値が所定値であるか否かを判別する判別手段と、
前記判別手段によりアルファブレンド値が所定値であると判別された場合、簡易フォーマットの中間データを生成し、前記判別手段によりアルファブレンド値が所定値でないと判別された場合、詳細フォーマットの中間データを生成する生成手段と、
前記生成手段により生成された中間データに基づき印刷を行う印刷手段とを有することを特徴とする画像形成装置。
A discriminating means for discriminating whether or not the set alpha blend value is a predetermined value;
When the determining unit determines that the alpha blend value is a predetermined value, it generates intermediate data in a simple format. When the determining unit determines that the alpha blend value is not a predetermined value, the intermediate data in the detailed format is generated. Generating means for generating;
An image forming apparatus comprising: a printing unit that performs printing based on the intermediate data generated by the generation unit.
前記所定値は、0パーセントと100パーセントであることを特徴とする請求項6記載の画像形成装置。   The image forming apparatus according to claim 6, wherein the predetermined values are 0 percent and 100 percent. 前記アルファブレンド値は、ホストコンピュータで付加されたヒント情報に含まれることを特徴とする請求項6記載の画像形成装置。   The image forming apparatus according to claim 6, wherein the alpha blend value is included in hint information added by a host computer. 設定されているアルファブレンド値が所定値であるか否かを判別する判別ステップと、
前記判別ステップによりアルファブレンド値が所定値であると判別された場合、簡易フォーマットの中間データを生成し、前記判別ステップによりアルファブレンド値が所定値でないと判別された場合、詳細フォーマットの中間データを生成する生成ステップと、
前記生成ステップにより生成された中間データに基づき画像を形成する形成ステップとを有することを特徴とする画像形成方法。
A determination step of determining whether or not the set alpha blend value is a predetermined value;
If it is determined that the alpha blend value is a predetermined value in the determination step, intermediate data in a simple format is generated. If the alpha blend value is determined not to be a predetermined value in the determination step, intermediate data in a detailed format is generated. A generation step to generate;
And a forming step of forming an image based on the intermediate data generated by the generating step.
前記所定値は、0パーセントと100パーセントであることを特徴とする請求項9記載の画像形成方法。   The image forming method according to claim 9, wherein the predetermined values are 0 percent and 100 percent. 前記アルファブレンド値は、ホストコンピュータで付加されたヒント情報に含まれることを特徴とする請求項9記載の画像形成方法。   The image forming method according to claim 9, wherein the alpha blend value is included in hint information added by a host computer. コンピュータに請求項5、9乃至11の何れかに記載の画像形成方法を実行させるためのプログラム。   A program for causing a computer to execute the image forming method according to any one of claims 5 and 9 to 11. 請求項12に記載のプログラムを格納したことを特徴とする、コンピュータ読み取り可能な記憶媒体。   A computer-readable storage medium storing the program according to claim 12.
JP2005317112A 2005-10-31 2005-10-31 Information processor, information processing method Withdrawn JP2007122621A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005317112A JP2007122621A (en) 2005-10-31 2005-10-31 Information processor, information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005317112A JP2007122621A (en) 2005-10-31 2005-10-31 Information processor, information processing method

Publications (1)

Publication Number Publication Date
JP2007122621A true JP2007122621A (en) 2007-05-17

Family

ID=38146363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005317112A Withdrawn JP2007122621A (en) 2005-10-31 2005-10-31 Information processor, information processing method

Country Status (1)

Country Link
JP (1) JP2007122621A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009154365A (en) * 2007-12-26 2009-07-16 Ricoh Co Ltd Image processing apparatus, image processing method, image processing program and recording medium
US8289560B2 (en) 2006-06-26 2012-10-16 Brother Kogyo Kabushiki Kaisha Transparency and overlay processing for print data

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8289560B2 (en) 2006-06-26 2012-10-16 Brother Kogyo Kabushiki Kaisha Transparency and overlay processing for print data
JP2009154365A (en) * 2007-12-26 2009-07-16 Ricoh Co Ltd Image processing apparatus, image processing method, image processing program and recording medium

Similar Documents

Publication Publication Date Title
JP4995057B2 (en) Drawing apparatus, printing apparatus, drawing method, and program
US5315693A (en) Method and system for integrating in a single image, character and graphical information by employing data of different pixel resolution
US6252677B1 (en) Method and apparatus for rendering object oriented image data using multiple rendering states selected based on imaging operator type
US20060075362A1 (en) Image processing apparatus, method, and recording medium on which program is recorded for displaying thumbnail/preview image
US6247028B1 (en) Controlling attributes of pre-registered form data to match those of data to be printed with the form data
JP6018398B2 (en) Image processing apparatus and processing method thereof
JP2000224414A (en) Information processing system, control method therefor, information processing device, control method therefor and computer readable memory
JP2004214991A (en) Document image data management system, its program, its apparatus, and its method
JP2008042345A (en) Image processing method and image processor
JP2007122621A (en) Information processor, information processing method
JPH041862A (en) Graphic selecting method
JP2001169120A (en) Method, device, and system for image processing
JP2019111677A (en) Image processing device, image processing device control method, image forming device and program
JP2010092141A (en) Image processing system, image reader, image processor, and image processing program
JPH0581397A (en) Page scroll method and image processor
JP5800217B2 (en) Rendering method
JP2000324331A (en) Image processor and method therefor
JP2001127975A (en) Image processing, control method therefor and storage medium
JP2007081886A (en) Drawing processing apparatus
JP4006124B2 (en) Information processing system, information processing apparatus, control method therefor, and recording medium
JP4006123B2 (en) Information processing system, information processing apparatus, control method therefor, and recording medium
JP2001078036A (en) Device and method for processing image
JPH0713541A (en) Method for processing image and its device
JPH106553A (en) Printer and its control method
JPH0696183A (en) Method and device for image processor

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20090106