Information recording apparatus and image recording method

Abstract: Binary data (VDO) developed to a dot pattern are sequentially stored in line memories (1 - 9). A processing circuit (43) is constituted by a logic calculation circuit, and determines an edge portion of an image or a halftone image on the basis of 11 x 9 pixel data in shift registers (34 - 43). When the edge portion of an image is determined, data of a pixel of interest is converted to data that can print a smooth edge portion. Changed data (VDOM) is converted again according to the type of toner. The converted signal is supplied to a laser driver of a printer, and a printing operation is performed by scanning a laser. A resolution setting unit (1700) receives a resolution setting command from an external apparatus (1300), and sets a designated resolution in a printer (1200) according to the resolution setting command. The resolution setting unit (1700) divides one pixel into an optimal number of pixel sections on the basis of the designated resolution, and sets a logic circuit for performing optimal smoothing processing for divided data in a smoothing unit (1018). Bit map development based on code data supplied from the external apparatus (1300), and smoothing processing according to a smoothing logic are performed.

Description: BACKGROUND OF THE INVENTION [Field of the Invention] The present invention relates to an information recording apparatus, which can switch the image dot density, for example, to an information recording apparatus such as a laser beam printer and, more particularly, to an information recording apparatus and an image recording method, in which bit map data representing a character or a figure is printed after smoothing processing, so that the edge of the printed character or figure can be smoothed to improve printing quality. [Description of the Prior Art] In recent years, laser beam printers are widely used as output apparatuses of computers. In particular, compact printers having a resolution of about 300 dpi (dots/inch) have become increasingly popular since they are compact and inexpensive. As shown in Fig. 1 a laser beam printer comprises a printer engine 1801 for actually forming a printing image on a photosensitive drum on the basis of dot data, and transferring the formed image onto an output sheet, and a printer controller 1802, connected to the printer engine 1801, for receiving code data supplied from an external host computer 1803, generating page information consisting of dot data (bit map data) on the basis of the code data, and sequentially transmitting the dot data to the printer engine 1801. The host computer 1803 loads a program from a floppy disk 1804 having an application software program, starts the application software program, and serves as, e.g., a wordprocessor. The printing operation process in the printer controller 1802 will be described below with reference to Fig. 2. In Fig. 2, reference numeral 1114 denotes an image memory for storing bit map data (image data) for one page; 1115, an address generator for generating an address for the image memory 1114; 1116, an output buffer register for converting image data read out from the image memory 1114 into an image signal VIDEO; 1117, a sync clock generator for generating an image clock signal VCLK synchronized with a known beam detect signal (BD signal) as a horizontal sync signal; 1118, a CPU for controlling the overall controller; 1119, a printer I/F as a signal I/O unit with a printer engine 1201; and 1120, a host I/F as a signal I/O unit with an external host apparatus such as a personal computer. In the above arrangement, an operation when the image signal VIDEO is supplied to the printer engine will be described below. When image data for one page are prepared in the image memory 1114, a printer controller 1802 (1202) sends a print request signal PRINT to the printer engine 1801 (1201). Upon reception of the signal PRINT, the printer engine 1801 starts the printing operation. When the printer engine is ready to receive a vertical sync signal VSYNC, it sends a signal VSREQ to the printer controller 1802. Upon reception of the signal VSREQ, the printer controller 1802 sends the vertical sync signal VSYNC to the printer engine 1801, and counts a predetermined period of time from the signal VSYNC, so that the printing operation can be performed from a predetermined position in the subscanning direction. Upon completion of the count operation of the predetermined period of time, the address generator 1115 sequentially generates addresses from the start address of image data stored in the image memory 1114, thereby reading out the image data. The readout image data are input to the output buffer register 1116 for each main scanning line. The output buffer register 1116 counts the image clock signal VCLK after the BD signal is input, so that the printing operation is started from the predetermined position in the main scanning direction. Thereafter, the register 1116 supplies data for the corresponding printing line to the printer engine 1801 as the image signal VIDEO synchronized with the signal VCLK. The printer engine 1801 performs the above-mentioned image forming operation. The operations described above are performed in units of printing pages, so that the printing operation can be always performed at the same position on paper sheets. However, in recent years, demand has arisen for an increase in resolution of a printing output, not excepting the laser beam printer. Thus, an increase in resolution of the laser beam printer may be proposed. For example, assume that the resolution is increased to 600 dpi twice 300 dpi. In this case, if the increase in resolution is realized by simply increasing the capacity of an image memory necessary for the printer controller, a capacity four times that required for 300 dpi is required, resulting in an expensive printer. In addition, when the same printing speed as that for 300 dpi is to be obtained, the output frequency of image data must be four times that for 300 dpi, and the printer controller must be operated at a speed four times that for 300 dpi. Thus, a method of converting printing data of a recording pixel into printing data, in which the dot density is higher than the recording dot density only in the main scanning direction, may be proposed. In this method, recording data of a recording pixel and its surrounding pixels are referred to, and smoothing processing is normally performed. In the smoothing processing, when the resolution of the printer is switched from, e.g., 300 dpi to 600 dpi, proper smoothing processing cannot be performed. A laser beam printer using the electrophotography technique is also used in an output apparatus of a computer, an output unit of a facsimile apparatus, a so-called digital copying machine for printing image data read by an image scanner, or the like. The laser beam printer used in these apparatuses performs a printing operation at a resolution of, e.g., 300 dpi. In this case, as shown in Fig. 3, a character or a figure is drawn and printed by black dots ( marks) and white dots (○ marks), which are printed at positions on a 300-dpi matrix. Fig. 3 shows a dot pattern of English letter "a". At the resolution of 300 dpi, the interval between adjacent dots is about 85 µ. It is generally known that a person can perceive up to about 20 µ. As compared to this, the edge portion of a character or figure formed by dots looks nonsmooth at the above resolution (about 85 µ), and high printing quality cannot be warranted. In order to solve this problem, the following approaches can be made. As the first approach, a method of simply increasing the resolution (e.g., 1,200 dpi) may be adopted. However, in this case, a bit map memory having a capacity 16 times (= 4 x 4) that at 300 dpi is required to express the identical area, resulting in a very expensive apparatus. As the second approach, the following method is known. That is, a buffer memory having a small capacity is added without increasing the capacity of the bit map memory, and printing data of a pixel of interest is modulated by referring to dot data around the pixel of interest to be printed, thereby equivalently increasing the resolution in one or both of the main scanning and subscanning directions. The techniques described in U.S.P. Nos. 4,437,122 and 4,700,201 are methods of referring to only a pixel of interest and eight pixels around the pixel of interest, thereby correcting the pixel of interest to be printed. In a method of this type, since a reference region of the surrounding pixels is narrow, it can be recognized that the pixel of interest is a portion of a curve, but the curvature of a curve, to a portion of which the pixel of interest belongs, cannot be recognized. In particular, an almost horizontal or vertical edge portion cannot be detected. Therefore, since optimal correction cannot be performed according to the curvature, it is difficult to optimize the smoothing effect. The technique described in U.S.P. No. 4,847,641 refers to a wider region than the above-mentioned two techniques, and can recognize the curvature of a curve, to a portion of which a pixel of interest belongs. In this technique, however, although the reference region is wide, each of matching patterns to be matched refers to only a portion of the reference region. Therefore, this technique suffers from the following drawbacks. As the first drawback, it cannot be identified whether or not a pixel of interest is a portion of a binary halftone image such as a dither image or an image formed by an error diffusion method. For this reason, although the smoothing effect can be provided to a character image, some dots constituting a dither image or halftone pixels formed by the error diffusion method may often be erroneously smoothed. For example, Fig.4-a partially shows a 4 x 4 dither image. In Fig. 4-a if a limited region around a pixel of interest 5f is referred to, it is erroneously recognized that the pixel of interest is a portion of a character or figure. For this reason, the pixel of interest 5f is undesirably converted from a "white pixel" into a pixel having a density. Therefore, a halftone image suffers from a local change in image density. As a result, possibility of image deterioration (e.g., formation of a pseudo edge) is high. As the second drawback, it cannot be identified whether or not a pixel of interest belongs to a portion of an image in which pixels are crowded (concentrated). For example, Fig. 4-b shows an image constituted by a group of crowded dot lines. In this case, pixels for which the density of dots must be changed to smooth lines are those indicated by " marks" or "x marks" in Fig. 4-c. As can be seen from Fig. 4-c, a pixel to be changed is adjacent to or in the vicinity of pixels which are changed for a pixel adjacent to the pixel to be changed. As a result, the resolution of an image is decreased. Pixels are complicatedly crowded not only in crowded line images, but also in a small character or a kanji . In this case, a pixel of interest, which is changed in the smoothing processing, is adjacent to pixels to be changed for an adjacent image. For this reason, a corresponding pixel (a corresponding line or a side of a corresponding character) cannot be clearly identified from adjacent pixels. As a result, the resolution of an image in the corresponding portion is excessively decreased. As a result, a blurred image is formed, or "moiré" noise is generated in an image, resulting in deterioration of image quality. Furthermore, when a pixel is expressed as a halftone pixel within one pixel for the purpose of smoothing in an image crowded portion, density reproduction becomes unstable due to an interaction with adjacent pixels, and is easily influenced by a variation in environment (temperature and humidity). As a result, the smoothing effect varies depending on an environment. For this reason, every time a given character is printed, it may look like another font having a different character pattern. Of course, the reference region of each matching pattern may be sufficiently widened so as to be able to identify whether or not a pixel of interest belongs to a dither image or an image crowded portion. However, the effect of "simplification of a processing circuit" as the object of this technique cannot then be obtained. As described above, there have been proposed many methods of checking and detecting the kind of feature of a boundary portion, to which a pixel of interest belongs, of an image such as a figure or character. In contrast to this, as the prior technique about how to change a pixel of interest according to the detected feature of a boundary portion to which the pixel of interest belongs, the following patents are proposed in addition to the above-mentioned prior arts. That is, U.S.P. No. 4,933,689, and Japanese Patent Laid-Open Nos. 61-214661 and 61-214666 are known. However, with the above-mentioned technique, the following problems are posed. The first problem is associated with to what extent the modulation pixel unit size used when a pixel of interest is changed by a smoothing processing circuit is to be segmented. The modulation pixel size will be described below with reference to Fig. 5-a to d. Fig. 5-a shows an original pixel before smoothing. Fig. 5-b shows a case wherein the modulation pixel size for modulation in smoothing processing is set to be 1/4 the original pixel. Fig. 5-c shows a case wherein the modulation pixel size for modulation in smoothing processing is set to be 1/8 the original pixel. Fig. 5-d shows a case wherein the modulation pixel size for modulation in smoothing processing is set to be 1/16 the original pixel. As the modulation pixel unit size is smaller, finer smoothing processing can be performed. However, the driving frequency of a smoothing processing circuit is increased accordingly. Thus, the smoothing processing circuit must be designed using a Bi-CMOS logic or ECL logic, resulting in an expensive circuit. When the modulation pixel unit size is large, an image is printed while pixels of modulation pixel units are sufficiently resolved, and a portion subjected to the smoothing processing looks like not a desired "blurred" portion but a "whisker"-like portion. Thus, a desired smoothing effect is not satisfactory. The modulation pixel unit size, which can satisfy both the above-mentioned contradictory conditions, considerably varies depending on the toner particle size. Commercially available laser beam printers normally employ a toner having a toner particle size of 10 to 12 µ (to be referred to as a normal particle size toner hereinafter). In recent years, in order to increase the resolution, printers, which employ a toner having a toner particle size of 5 to 6 µ (to be referred to as a small particle size toner hereinafter), have been developed or are commercially available. The optimal modulation pixel unit size also varies depending on the laser light-emission response characteristics due to a difference in laser driving circuits, electrophotography process conditions, and the like. In general, a smoothing processing circuit is often designed as an integrated circuit such as a gate array, such as a CMOS keyboard including 3,000 to 10,000 gates. It is undesirable to develop another gate array depending on the difference in toner. When some processing functions corresponding to different toners are built in a single gate array, not only the number of gate keyboards is increased, but also a logic, with which an integrated circuit can respond to a high frequency, e.g., a Bi-CMOS logic or ECL logic is required, resulting in an increase in cost. Even if the same toner is used, the modulation pixel size changes according to a change in laser light-emission rise characteristics or electrophotography process. For this reason, it is not practical to prepare different smoothing processing functions corresponding to many conditions in advance. The second problem is posed when the above-mentioned smoothing processing circuit is applied to a printer engine, which can switch the printing dot density. For example, when the printing dot density is switched between 240 dpi and 300 dpi or between 300 dpi and 600 dpi in response to a command, it is difficult to optimize smoothing effects for both the printing dot densities. More specifically, even when an algorithm, which can improve a smoothing effect for one printing dot density, is used, a smoothing effect for the other printing dot density cannot always be optimized. The third problem is associated with optimisation of smoothing processing for a printer engine, which has a function of changing the density of an image to be printed between light and dark levels by, e.g., a method of changing a high voltage to be applied to a developing unit. When the printing dot density is changed, the effect on a portion subjected to smoothing processing is also changed, and as a result, image quality is undesirably deteriorated. The fourth problem is associated with the influence of use environmental conditions (e.g. temperature, humidity, and the like) of a printer engine on the smoothing effect. When environmental conditions (e.g. temperature, humidity, and the like) are changed, the printing dot density of a printed image is changed, and the effect on a portion subjected to smoothing processing is also changed. As a result, image quality is undesirably deteriorated. US-A-4437122 discloses an image enhancement apparatus which enhances the resolution and quality of a system receiving information initially in the form of video display pixels and providing hard copy output. Resolution enhancement is accomplished by storing three successive lines of video data in successive parallel shift registers, applying the output of the shift registers to a decoder, and generating driving signals for the printer head. The decoder compares the pixels on the same line as well as preceding and succeeding lines surrounding each specific input pixel to generate the printer head driving signals according to whether straight or curved line segments are to be formed. The printer signal effects printing of a pixel which divides the original video pixel into another number of smaller elements. Thus the printer effectively increases the density of the information elements and enable character edges to be rounded off and diagonals to be smoothed (see preamble of claims 1 and 12). EP-A-0356224 discloses a data processing apparatus including an image data generation system for generating image data and an interpolation image data forming section for forming an outputting interpolation image data based on the image data generated by the image generating section. In the apparatus the interpolation image data forming section includes a memory for storing the image data generated by the image data generating section. The interpolation of data enables images to be printed at a higher resolution and character edges to be smoothed. Reference is also made to EP-A-0506381 which is a copending European patent application. In accordance with one aspect of the present invention there is provided an image recording apparatus in accordance with claim 1. In accordance with a further aspect of the present invention there is provided a method for recording an image in accordance with claim 12. Other features and advantages of the present invention will be apparent from the following description taken in conjunction with the accompanying drawings, in which like reference characters designate the same or similar parts throughout the figures thereof. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a block diagram showing the arrangement of a conventional laser beam printer; Fig. 2 is a diagram showing a printing operation process of the conventional laser beam printer; Fig. 3 is a view showing a pattern expressed by dot data; Fig. 4 is a view for explaining the drawbacks of the prior art; Fig. 5 is a view for explaining modulation of pixel size; Fig. 6 is a schematic view showing an engine portion of a laser beam printer; Fig. 7 is a view for partially explaining in detail the engine portion shown in Fig. 6; Fig. 8 is a diagram showing interface signals between a printer engine and a controller; Fig. 9 is a block diagram showing functional blocks of the printer engine; Fig. 10 is a view showing a matrix memory; Fig. 11 is a view showing a state wherein image data is stored from the dot pattern shown in fig. 3 in the matrix memory; Fig. 12 is a view showing a state wherein image data is stored from the dot pattern shown in Fig. 3 in the matrix memory; Fig. 13 is a view showing sections to be changed of a pixel of interest; Figs. 14 & 15 are views for explaining a feature extraction algorithm; Figs. 16 & 17 are diagrams showing circuits of feature extraction units; Fig. 18 is a diagram showing the flow of a printing operation in a controller; Fig. 19 is a block diagram showing in detail a laser beam printer; Figs. 20-34 are views for explaining a feature extraction algorithm; Fig. 35 is a diagram showing the circuit of the feature extraction unit; Fig. 36 is a diagram partially showing in detail the circuit shown in Fig. 35; Figs. 37 & 38 are views for explaining a smoothing effect for a longitudinal line inclined at 45° or less; Fig. 39 is a view showing a conventional smoothing algorithm for a lateral line whose boundary portion is almost horizontal; Fig. 40 is a view showing smoothing processing for two different one-dot lines; Fig. 41 is a view showing a smoothing algorithm of Fig. 43; Fig. 42 is a view showing modification patterns of Fig. 41-a; Fig. 43 is a view showing a smoothing effect for an almost horizontal lateral line; Fig. 44 is a view showing a conventional smoothing algorithm for a longitudinal line whose boundary portion is almost vertical; Fig. 45 is a view showing conventional smoothing processing; Fig. 46 is a view showing a smoothing algorithm of Fig. 47; Fig. 47 is a view showing a smoothing effect for an almost vertical longitudinal line according to this embodiment; Fig. 48 is a block diagram showing in detail the laser beam printer of an embodiment of the present invention; Fig. 49 is a diagram showing in detail a pulse change circuit 207 in Fig. 48; Fig. 50 is a diagram showing in detail a data converter 207 in Fig. 49; Figs. 51-55 are views showing pulse change patterns of this embodiment; Fig. 56 is a table showing an operation logic for executing the pattern conversion shown in Fig. 55; Fig. 57 is a table showing an operation logic for executing pattern conversion shown in Fig. 58; Figs. 58-60 are conversion patterns according to this embodiment; and Fig. 61 is a view showing pattern conversion for a printing dot density according to this embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An example of a laser beam printer to which the present invention can be applied will be described below with reference to the accompanying drawings. Figs. 6 and 7 show an engine portion of a laser beam printer according to which the present invention may be applied. In Figs. 6 and 7, reference numeral 1 denotes paper sheets as recording media; and 2, a paper cassette for holding the paper sheets 1. Reference numeral 3 denotes a paper feed cam for separating only the uppermost one of the paper sheets 1 stacked on the paper cassette 2, and conveying the leading end portion of the separated paper sheet to the position of paper feed rollers 4 and 4' by a driving means (not shown). The paper feed cam 3 is intermittently rotated in each paper feed operation, and feeds one paper sheet in correspondence with one revolution. Reference numeral 18 denotes a reflection type photosensor for detecting light reflected by the paper sheet 1 through a hole 19 formed in the bottom portion of the paper cassette 2 so as to detect the presence/absence of paper sheets. When a paper sheet is conveyed to the paper feed rollers 4 and 4' by the paper feed cam 3, the paper feed rollers 4 and 4' are rotated while gently pressing the paper sheet 1, thereby conveying the paper sheet 1. When the paper sheet 1 is conveyed, and its leading end portion reaches the position of a registration shutter 5, the convey operation of the paper sheet 1 is stopped by the registration shutter, and the paper feed rollers 4 and 4' are kept rotated while slipping on the paper sheet 1, and generating a convey torque. In this case, when a registration solenoid 6 is driven to release the registration shutter 5 upward, the paper sheet 1 is fed to convey rollers 7 and 7'. The driving operation of the registration shutter 5 is synchronized with an output timing of an image formed by focusing a laser beam 20 on a photosensitive drum 11. Note that reference numeral 21 denotes a photosensor for detecting whether or not the paper sheet 1 is present at the position of the registration shutter 5. Reference numeral 52 denotes a rotary polygonal mirror, which is driven by a motor 53. A laser driver 50 drives a semiconductor laser 51 in correspondence with dot data sent from a character generator (not shown) for generating bit data. The character generator (not shown) may generate katakana , hiragana , and kanji bit data as Japanese characters in addition to English letters shown in, e.g., Fig. 3. The laser beam 20 from the semiconductor laser 51 driven by the laser driver 50 is scanned in the main scanning direction by the polygonal mirror 52. The laser beam 20 scanned in the main scanning direction by the polygonal mirror 52 is radiated on a reflection mirror 54 through an f- lens 56 arranged between the polygonal mirror 52 and the reflection mirror 54. The laser beam is reflected by the reflection mirror 54, and is guided onto the photosensitive drum 11. The laser beam is focused on the photosensitive drum 11 while being scanned in the main scanning direction, and forms a latent image on a main scanning line 57. In this case, when a laser beam printer has a printing dot density of 300 dpi and a printing speed of 8 sheets/min (A4 or letter size), the laser ON time necessary for recording one dot is about 540 nsec (when one pixel is divided into three small pixels, the ON time for one small pixel is 180 nsec). When the laser beam printer has a printing dot density of 300 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one dot is about 270 nsec (when one pixel is divided into three small pixels, the ON time for one small pixel is 90 nsec). When the laser beam printer has a printing dot density of 300 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one dot is about 1,080 nsec (when one pixel is divided into three small pixels, the ON time for one small pixel is 360 nsec). When the laser beam printer has a printing dot density of 600 dpi and a printing speed of 8 sheets/min, the laser ON time necessary for recording one dot is about 135 nsec (when one pixel is divided into three small pixels, the ON time for one small pixel is 45 nsec). When the laser beam printer has a printing dot density of 600 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one dot is about 68 nsec (when one pixel is divided into three small pixels, the ON time for one small pixel is 23 nsec). When the laser beam printer has a printing dot density of 600 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one dot is about 270 nsec (when one pixel is divided into three small pixels, the ON time for one small pixel is 90 nsec). Furthermore, when the laser beam printer has a printing dot density of 240 dpi and a printing speed of 8 sheets/min, the laser ON time necessary for recording one dot is about 844 nsec (when one pixel is divided into three small pixels, the ON time for one small pixel is 280 nsec). When the laser beam printer has a printing dot density of 240 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one dot is about 422 nsec (when one pixel is divided into three small pixels, the ON time for one small pixel is 140 nsec). When the laser beam printer has a printing dot density of 240 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one dot is about 1,688 nsec (when one pixel is divided into three small pixels, the ON time for one small pixel is 560 nsec). The laser ON times corresponding to the modulation pixel unit sizes shown in Fig. 5 is as follow b to d. <Laser ON time when the modulation pixel unit size is set to be 1/4 the original pixel, as shown in Fig. 5-b> When the printer has a printing dot density of 300 dpi and a printing speed of 8 sheets/min (A4 or letter size), the laser ON time necessary for recording one modulation pixel size is about 135 nsec. When the printer has a printing dot density of 300 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 67.5 nsec. When the printer has a printing dot density of 300 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 270 nsec. When the printer has a printing dot density of 600 dpi and a printing speed of 8 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 33.8 nsec. When the printer has a printing dot density of 600 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 17.1 nsec. When the printer has a printing dot density of 600 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 68 nsec. When the printer has a printing dot density of 240 dpi and a printing speed of 8 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 211 nsec. When the printer has a printing dot density of 240 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 105 nsec. When the printer has a printing dot density of 240 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 422 nsec. <Laser ON time when the modulation pixel unit size is set to be 1/8 the original pixel, as shown in Fig. 5-c> When the printer has a printing dot density of 300 dpi and a printing speed of 8 sheets/min (A4 or letter size), the laser ON time necessary for recording one modulation pixel size is about 67.5 nsec. When the printer has a printing dot density of 300 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 33.8 nsec. When the printer has a printing dot density of 300 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 135 nsec. When the printer has a printing dot density of 600 dpi and a printing speed of 8 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 16.9 nsec. When the printer has a printing dot density of 600 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 8.5 nsec. When the printer has a printing dot density of 600 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 33.8 nsec When the printer has a printing dot density of 240 dpi and a printing speed of 8 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 105 nsec. When the printer has a printing dot density of 240 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 52.8 nsec. When the printer has a printing dot density of 240 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 211 nsec. <Laser ON time when the modulation pixel unit size is set to be 1/16 the original pixel, as shown in Fig. 5-d> When the printer has a printing dot density of 300 dpi and a printing speed of 8 sheets/min (A4 or letter size), the laser ON time necessary for recording one modulation pixel size is about 33.8 nsec. When the printer has a printing dot density of 300 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 16.9 nsec. When the printer has a printing dot density of 300 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 67.6 nsec. When the printer has a printing dot density of 600 dpi and a printing speed of 8 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 8.5 nsec. When the printer has a printing dot density of 600 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 4.3 nsec. When the printer has a printing dot density of 600 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 17 nsec. When the printer has a printing dot density of 240 dpi and a printing speed of 8 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 52.8 nsec. When the printer has a printing dot density of 240 dpi and a printing speed of 16 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 26.4 nsec. When the printer has a printing dot density of 240 dpi and a printing speed of 4 sheets/min, the laser ON time necessary for recording one modulation pixel size is about 105 nsec. According to the current techniques, the driving performance of the laser driver 50 used in a laser beam printer of this type is limited to the shortest pulse ON time of about 4 nsec (turn-on rise time = about 1 nsec, turn-off fall time = about 1 nsec). Therefore, even if it is attempted to turn on the laser for a time shorter than this shortest time, it cannot be turned on, or the ON time and the ON light amount are unstable if the laser is turned on. Therefore, the ON pulse width of a laser modulated for smoothing processing has the shortest ON time of about 4 nsec or longer. A beam detector 55 arranged at the scanning start position of the laser beam 20 detects the laser beam 20 to detect a BD signal as a sync signal for determining an image write timing in the main scanning direction. Thereafter, the paper sheet 1 obtains a convey torque by the convey rollers 7 and 7' in place of the paper feed rollers 4 and 4', and is fed to the photosensitive drum 11. The surface of the photosensitive drum 11, charged by a charger 13, is exposed by the laser beam 20, thus forming a latent image thereon. The latent image corresponding to a portion exposed by the laser beam is visualized as a toner image by a developing unit 14, and thereafter, the toner image is transferred onto the surface of the paper sheet 1 by a transfer charger 15. Reference numeral 12 denotes a cleaner for cleaning the drum surface after the toner image is transferred onto the paper sheet 1. The toner image transferred onto the paper sheet 1 is fixed by fixing rollers 8 and 8'. Thereafter, the paper sheet 1 is exhausted onto an exhaust tray 10 by exhaust rollers 9 and 9'. Reference numeral 16 denotes a paper feed table, which allows a manual feed operation of paper sheets one by one therefrom in addition to the paper feed operation from the paper cassette 2. A paper sheet manually fed to a manual feed roller 17 on the paper feed table 16 is gently pressed by the manual feed roller 17, and is conveyed until its leading end reaches the registration shutter 5 in the same manner as the paper feed rollers 4 and 4'. When the paper sheet reaches the registration shutter 5, the manual feed roller 17 is pivoted while being in slip contact with the paper sheet. The following convey sequence is the same as that in a case wherein a paper sheet is fed from the cassette. Note that the fixing roller 8 incorporates a fixing heater 24. The surface temperature of the fixing roller 8 is controlled at a predetermined temperature on the basis of a temperature detected by a thermistor 23, which is in slip contact with the surface of the fixing roller 8, thereby fixing the toner image on the paper sheet 1. Reference numeral 22 denotes a photosensor for detecting whether or not a paper sheet is present at the position of the fixing rollers 8 and 8'. The printer described above is connected to a controller through an interface means, and performs a print sequence upon reception of a print command and an image signal from the controller. Signals exchanged through the interface means will be briefly described below. Fig. 8 is a diagram showing interface signals between the printer engine and a controller for generating image data. The interface signals shown in Fig. 8 will be described below. A PPRDY signal is sent from a printer 100 to a controller 200, and informs that the power switch of the printer 100 is turned on, and the printer is set in an operation ready state. A CPRDY signal is sent from the controller 200 to the printer 100, and informs that the power switch of the controller 200 is turned on, and the controller 200 is set in an operation ready state. An RDY signal is sent from the printer 100 to the controller 200, and indicates a state wherein the printer 100 can start or continue a printing operation any time when it receives a PRNT signal (to be described later). When execution of the printing operation is disabled (e.g., when paper sheets in the paper cassette 2 are used up), the RDY signal goes to "0" level. A PRNT signal is sent from the controller 200 to the printer 100, and instructs the start or continuation of a printing operation. The printer 100 starts a printing operation upon reception of the PRNT signal. A VSREQ signal is sent from the printer 100 to the controller 200, and is output after the PRNT signal output as the printing operation start instruction from the controller 200 goes to "1" level when the RDY signal sent from the printer 100 is at "1" level. The VSREQ signal indicates that the printer 100 is ready to receive image data. In this state, a VSYNC signal (to be described later) can be received. A VSYNC signal is sent from the controller 200 to the printer 100, and is used for establishing synchronization of an output timing of image data in the subscanning direction. A toner image formed on the drum 11 is transferred onto a paper sheet while establishing synchronization in the subscanning direction in synchronism with the VSYNC signal. A BD signal is sent from the printer 100 to the controller 200, and is used for establishing synchronization of an output timing of image data in the main scanning direction. A toner image formed on the drum 11 is transferred onto a paper sheet while establishing synchronization in the main scanning direction in synchronism with the BD signal. The BD signal indicates that a scanning laser beam is located at a start point of the main scanning operation. A VDO signal is sent from the controller 200 to the printer 100, and is used for transmitting image data to be printed. The VDO signal is output in synchronism with a VCLK signal (to be described later). The controller 200 receives code data such as PCL codes transmitted from a host apparatus, and causes an internal character generator to generate character bit signals corresponding to the received code data. The controller 200 also receives vector codes such as postscript codes, and generates figure bit data according to the codes. In addition, the controller 200 generates bit image data read from an image scanner, and transmits the data as the VDO signal to the printer 100. When the VDO signal is "1", the printer 100 prints out a black image; when it is "0", the printer prints out a white image. A VCLK signal is sent from the controller 200 to the printer 100, and is a sync signal used upon transmission/reception of the VDO signal. An SC signal is a bidirectional serial signal for bidirectionally transmitting and receiving a "command" as a signal sent from the controller 200 to the printer 100, and "status" as a signal sent from the printer 100 to the controller 200. An SBSY signal and a CBSY signal (to be described later) are used as sync signals upon transmission or reception of the SC signal. The "command" is an 8-bit serial signal, and is, e.g., instruction information for instructing, to the controller 200 from the printer 100, whether the paper feed mode is a mode for feeding paper sheets from the cassette or a mode for feeding paper sheets from a manual port. The "status" is an 8-bit serial signal, and is, e.g., information for informing, from the printer 100 to the controller 200, various states of the printer such as a wait state wherein the temperature of a fixing device in the printer 100 has not reached a printing enable temperature yet, a paper jam state, a state wherein the paper cassette has no paper sheets, and the like. An SCLK signal is a sync pulse signal used when the printer 100 fetches the "command" or when the controller 200 fetches the "status". A CSBY signal is a signal used by the controller 200 to occupy the SC signal and the SCLK signal prior to transmission of the "command". An SBSY signal is a signal used by the printer 100 to occupy the SC signal and the SCLK signal prior to transmission of the "status". After the VDO signal is input to the printer 100 together with the VCLK signal, the VDO signal is input to a VDO signal processor 101, arranged in the printer 100, for performing signal processing of this embodiment. The VDO signal processor performs signal conversion of the input VDO signal by signal processing (to be described later), and inputs the VDO signal as a converted signal VDOM to a laser driver (not shown), thereby turning on/off the semiconductor laser 51. The operation of the interface will be described below. When the power switch of the printer 100 is turned on, and the power switch of the controller 200 is turned on, the printer 100 initializes its internal states, and sets the PPRDY signal to be output to the controller 200 to be "1" . The controller 200 similarly initializes its internal states, and sets the CPRDY signal to be output to the printer 100 to be "1". Thus, the printer 100 and the controller 200 confirm each other's states that their power switches are turned on. Thereafter, the printer 100 energizes the fixing heater 24 incorporated in the fixing rollers 8 and 8', and when the surface temperature of the fixing roller reaches a fixing temperature, the printer 100 sets the RDY signal to be "1". After the controller 200 confirms that the RDY signal is "1", if there is data to be printed, the controller 200 sets the PRNT signal to be output to the printer 100 to be "1". When the printer 100 confirms that the PRNT signal is "1", it rotates the photosensitive drum 11 to uniformly initialize the potential on the surface of the photosensitive drum. At the same time, in a cassette paper feed mode, the printer 100 drives the paper feed cam 3 to start a paper feed operation of paper sheets, and conveys the leading end portion of a paper sheet to the position of the registration shutter 5. On the other hand, in a manual feed mode, the printer 100 conveys a paper sheet manually inserted from the paper feed table 16 by the manual feed roller 17 to the position of the registration shutter 5. Thereafter, when the printer 100 is ready to receive the VDO signals, it sets the VSREQ signal to be "1". After the controller 200 confirms that the VSREQ signal is "1", it sets the VSYNC signal to be "1", and at the same time, sequentially sends the VDO signals in synchronism with the BD signal. When the printer confirms that the VSYNC signal goes to "1", it drives the registration solenoid 6 in synchronism with the VSYNC signal, thereby releasing the registration shutter 5. Thus, the paper sheet 1 is conveyed to the photosensitive drum 11. According to the VDO signals, the printer 100 turns on the laser beam when an image is to be printed in black, and turns off the laser beam when an image is to be printed in white, thereby forming a latent image on the photosensitive drum 11. Upon rotation of the photosensitive drum 11, the latent image forming portion is moved, and reaches the developing unit 14. The developing unit 14 applies a toner on the latent image, thus forming a toner image on the photosensitive drum 11. The toner image portion on the photosensitive drum 11 is then fed to the position of the transfer charger 15, and the toner image on the drum 11 is transferred onto the paper sheet 1. The paper sheet on which the toner image is transferred is conveyed to the fixing rollers 8 and 8', and the toner image is fixed by the fixing rollers 8 and 8'. Thereafter, the paper sheet is exhausted onto the exhaust tray. Fig. 9 is a block diagram of a VDO signal processor 101 for performing smoothing processing, which is arranged in an input unit of the printer engine applied to a laser beam printer having a printing dot density of 300 dpi. In the example shown in Fig. 9 as shown in Fig. 10, the feature of pixel data in a surrounding region (11 pixels in the main scanning direction x 9 pixels in the subscanning direction) surrounding a pixel A to be printed (to be referred to as a "pixel of interest" hereinafter) is checked with respect to the pixel of interest, and the pixel of interest is changed according to the checking result. More specifically, when, for example, a pixel of interest A of dot data of an English letter "a" at a resolution of 300 dpi shown in Fig. 11 is to be printed, dot data in a region S (11 pixels in the main scanning direction x 9 pixels in the subscanning direction = 99 pixels) surrounding the pixel of interest A are stored in a temporary storage means. Thus, the dot data shown in Fig. 12 are stored. Thereafter, the feature of the dot data group in the region S are checked, the data of the pixel of interest A to be printed is changed according to the feature, and the changed pixel is printed. In this case, the data of the pixel of interest is changed to data, so that the edge portion of a figure constituted by a dot group can be smoothly printed. As shown in Fig. 13, the pixel of interest A is constituted by four small pixel sections (x1, x2, x3, and x4) divided in the main scanning direction. Therefore, the pixel of interest can be equivalently printed at a printing dot density of 1,200 dpi in the main scanning direction x 300 dpi in the subscanning direction. In Fig. 9, reference numerals 25 to 33 denote line memories 1 to 9. The line memories 25 to 33 store dot data having a main scanning length in correspondence with a page to be printed. More specifically, the line memories store input image signals VDO while sequentially shifting them in synchronism with the clock signal VCLK. The line memories 25 to 33 are coupled in the order of the line memory 1 (25) the line memory 2 (26) the line memory 3 (27) ... the line memory 9 (33), and store dot data having a main scanning length for 9 lines with respect to the subscanning direction. Reference numerals 34 to 42 denote shift registers 1 to 9. The shift registers 1 to 9 (34 to 42) respectively correspond to the line memories 1 to 9 (25 to 33), and receive outputs from the corresponding line memories (25 to 33). Each of the shift registers (34 to 42) has an 11-bit arrangement. As shown in Fig. 9, the shift registers constitute a dot-matrix memory (la to 1k, 2a to 2k, 3a to 3k,..., 9a to 9k, i.e., 11 dots in the main scanning direction x 9 lines in the subscanning direction). Of the matrix memory, a dot 5f at the central portion is defined as a dot of interest. Reference numeral 43 denotes a processing circuit for detecting the feature of data stored in the dot-matrix memory for smoothing, and changing the pixel of interest 5f as needed. The processing circuit 43 receives the bits (la to 9k, i.e., a total of 99 bits) from the shift registers 1 to 9, and outputs a parallel signal MDT corresponding to the changed pixel. The parallel signal MDT is input to a parallel/serial converter 44. The parallel/serial converter 44 converts the input parallel signal MDT into a serial signal VDOM, and causes a laser driver (not shown) to drive the laser 51. In this example, the parallel signal consists of 4 bits (X1, X2, X3, and X4). Similarly, processing for one main scanning line is sequentially performed. Reference numeral 45 denotes a clock generator for receiving the BD signal as a main scanning sync signal, and generates a clock signal VCK as a clock signal synchronized with the BD signal. The clock signal VCK has a frequency four times a clock frequency f 0 necessary for performing recording at 300 dpi in the main scanning direction. The serial signals VDOM are sequentially output in synchronism with the clock signal VCK from the clock generator 45. Reference numeral 46 denotes a frequency divider for receiving the clock signal VCK, and dividing it with 4 to generate a clock signal VCKN having the frequency f 0 . The clock signal VCKN is used as a sync clock when the processing circuit 43 fetches dot data from the dot-matrix memory. In Fig. 9, when image signals VDO at 300 dpi are transmitted from the controller 200 to the printer 100 in synchronism with the image clock signal VCLK, received image dot data are sequentially stored in the line memories 1 to 9 (25 to 33). At the same time, of the dot data stored in the line memories 1 to 9 (25 to 33), dot-matrix data of 11 dots in the main scanning direction x 9 dots in the subscanning direction are extracted to the shift registers 1 to 9 (34 to 42). Thereafter, the processing circuit 43 detects the feature of the dot matrix data extracted to the shift registers 1 to 9 (34 to 42), and generates changed data consisting of four data X1 to X4 obtained by equally dividing the pixel of interest into four sections in the main scanning direction according to the detected feature. The processing circuit 43 then prints the changed data. Figs. 14 and 15 are views for explaining an algorithm of the processing circuit 43 for extracting the feature of a dot pattern from the entire matrix region of 11 dots in the main scanning direction x 9 dots in the subscanning direction, and checking if the dot matrix is one to be subjected to smoothing. The processing algorithm of the processing circuit 43 will be described below with reference to Figs. 14 and 15. Fig. 14 -a shows a reference region of 11 dots in the main scanning direction x 9 dots in the subscanning direction. In Fig. 14-a, 99 pixels are expressed by a matrix of a, b, c, d, e, f, g, h, i, j, and k in the main scanning direction, and 1, 2, 3, 4, 5, 6, 7, 8, and 9 in the sub scanning direction. For example, a pixel of interest is expressed by 5f. The central pixel is selected as a pixel to be changed for smoothing. Fig. 14-b shows a state wherein the reference region shown in Fig. 14-a is divided into 17 regions X1 to X8, Y1 to Y8, and 5f. Each of the regions X1 to X8 consists of 6 dots, i.e., the region X1 consists of dots 3d, 3e, 3f, 4d, 4d, and 4f; the region X2 consists of dots 3f, 3g, 3h, 4f, 4g, and 4h; the region X3 consists of dots 6d, 6e, 6f, 7d, 7e, and 7f; the region X4 consists of dots 6f, 6g, 6h, 7f, 7g, and 7h; the region X5 consists of dots 3d, 3e, 4d, 4e, 5d, and 5e; the region X6 consists of dots 5d, 5e, 6d, 6e, 7d, and 7e; the region X7 consists of dots 3g, 3h, 4g, 4h, 5g, and 5h; and the region X8 consists of dots 5g, 5h, 6g, 6h, 7g, and 7h. Each of the regions Y1 to Y8 except the regions Y2 and Y6 consists of 9 dots, i.e., the region Y1 consists of dots 1a, 1b, 1c, 2a, 2b, 2c, 3a, 3b, and 3c; the region Y3 consists of dots li, lj, 1k, 2i, 2j, 2k, 3i, 3j, and 3k; the region Y4 consists of dots 4i, 4j, 4k, 5i, 5j, 5k, 6i, 6j, and 6k; the region Y5 consists of dots 7i, 7j, 7k, 8i, 8j, 8k, 9i, 9j, and 9k; the region Y7 consists of dots 7a, 7b, 7c, 8a, 8b, 8c, 9a, 9b, and 9c; and the region Y8 consists of 4a, 4b, 4c, 5a, 5b, 5c, 6a, 6b, and 6c. Each of the regions Y2 and Y6 consists of 10 dots, i.e., the region Y2 consists of dots 1d, 1e, 1f, 1g, 1h, 2d, 2e, 2f, 2g, and 2h; and the region Y6 consists of dots 8d, 8e, 8f, 8g, 8h, 9d, 9e, 9f, 9g, and 9h. In this manner, the reference region can be divided into eight 6-dot regions (X1 to X8), six 9-dot regions (Y1, Y3, Y4, Y5, Y7, and Y8), and two 10-dot regions (Y2 and Y6). The feature of each region is assumed to be expressed by Xn and Yn. If all the dots in each region are the same (all the pixels are ○ <white pixels> or all the pixels are  <black pixels>), the feature (Xn, Yn) of each region is assumed to be "0". If dots in each region are different from each other (○ <white pixels> and  <black pixels> are mixed), the feature of each region is assumed to be "1". For example, if all the dots in the region X1 are dots, the feature of the region X1 is X1 = "0"; if dots in the region X1 include both ○ and  dots, the feature of the region X1 is Xl = "1". The feature of each region is detected by a circuit shown in Fig. 16. In Fig. 16, reference symbols Al to A16 denote EX-OR gates. Each of the EX-OR gates Al to A16 EX-ORs all the pixel signals in the corresponding region (X1 to X8, Y1 to Y8) (if all the input signals are the same, the gate outputs "0"; if the input signals are different from each other, it outputs "1"). In this manner, the features X1 to X8 and Y1 to Y8 of the respective regions are obtained. A circuit shown in Fig. 17 detects whether or not at least one feature Yn of the regions Y1 to Y8 is "0". In Fig. 17, reference symbols B1 to B8 denote inverters; and C1, an OR gate. The feature signals Y1 to Y8 from the respective regions are logically inverted by the inverters B1 to B8, and the inverted signals are input to the OR gate C1. Thus, an output Z1 from the OR gate C1 goes to "1" when at least one of the signals Y1 to Y8 is "0". A further detailed supplementary explanation will be given below. The printing operation process in the controller 200 will be described below with reference to Fig. 18 showing in detail the arrangement of the controller 200. In Fig. 18, reference numeral 114 denotes an image memory for storing bit map data (image data) for one page; 115, an address generator for generating addresses for the image memory 114; 116, an output buffer register for converting image data read out from the image memory 114 into image signals VDO; 117, a sync clock generator for generating the image clock signal VCLK synchronized with the above-mentioned BD signal as the horizontal sync signal; 118, a CPU for controlling the overall controller; 119, a printer interface as an I/O unit with the printer engine 100; and 120, a host computer interface as a signal I/O unit with an external host apparatus such as a personal computer. In the above arrangement, an operation performed when the image signals VDO are sent to the printer engine will be described below. When image data for one page are prepared in the image memory 114, the controller 200 outputs the print request signal PRNT to the printer 100. Upon reception of the PRNT signal, the printer 100 starts a printing operation. When the printer 100 is ready to accept the vertical sync signal VSYNC, and to perform the printing operation, it sends the VSREQ signal to the controller 200. Upon reception of the VSREQ signal, the controller 200 outputs the vertical sync signal VSYNC to the printer 100, and counts a predetermined period of time from the VSYNC signal to perform the printing operation from a predetermined position in the subscanning direction. Upon completion of the count operation of the predetermined period of time, the address generator 115 sequentially generates addresses from the start address of image data stored in the image memory 114 so as to read out image data. The readout image data are input to the output buffer register 116 in units of main scanning lines. The output buffer register 116 counts a predetermined number of pulses of the image clock signal VCLK after the BD signal is input in units of printing lines, so that the printing operation can be performed from a predetermined position in the main scanning direction, and thereafter, outputs data for each printing line as image signals VDO synchronized with the VCLK signal to the printer 100. The printer 100 performs the above-mentioned image forming operation. The above-mentioned operation is performed in units of printing pages, thus always performing the printing operation at the same positions on paper sheets. Fig. 19 is a detailed block diagram showing an example of a laser beam printer. The laser beam printer shown in Fig. 19 is mainly constituted by the printer 100, the controller 200, a signal processing circuit 205, and an oscillator 206. The signal processing circuit 205 of this embodiment is functionally located between the controller 200 and the printer 100. The circuit 205 increases the main scanning resolution of image signals VDO of 300 dpi output from the controller 200 to 1,200 dpi four times that of the signals VDO, and outputs them as smoothed signals SVDO to the printer 100. Other I/O signals of the signal processing circuit 205 will be described below. Input signals from the controller 200 include the VDO signals and the VSYNC signal. An input signal from the printer 100 includes the BD signal as the horizontal sync signal. An output signal to the controller 200 includes the VCLK signal as an image clock, i.e., a clock for the VDO signals synchronized with the BD signal. A CLK signal input from the oscillator 206 is used as a fundamental block in the signal processing circuit 205, and has a frequency eight times that of the VCLK signal. The VCLK signal is generated by frequency-dividing the CLK signal by 8 at a timing synchronized with the BD signal, and has sync precision 1/8 its own period for the BD signal. Therefore, a shift (jitter) of an image in the main scanning direction with respect to the BD signal can be maintained within 1/8 dot, and high image quality can be obtained. An example of signal processing executed by the signal processing circuit 205 shown in Fig. 9 will be described below with reference to Fig. 20 and subsequent drawings. Fig. 20 is a view for explaining smoothing processing of the signal processing circuit 205 for a figure in which the inclination of a boundary portion is 1/2 (a lateral line inclined at 45° or less). When a bit pattern in a frame at the left side in each of Fig. 20 is detected, a four-divided pixel of interest (central pixel) is changed, as shown in a pattern at the right side in the corresponding figure. Fig. 21 respectively show in detail the algorithms in Fig. 20-a to d. Fig. 21 is a view for explaining in detail the algorithm corresponding to Fig. 20-a. When the regions X5 = 0 and X2 = 0, as shown in Fig. 21-b, at least one of the regions Y1 to Y8, X3, and X4 is 0, and a bit pattern is expressed by 7a = 7b = 6c = 6d = 5e = 5f = 4g = 4h = 3i = 3j = 2k = 0, and 8a = 8b = 7c = 7d = 6e = 6f = 5g = 5h = 4i = 4j = 3k = 1, as shown in Fig. 21-a, a pixel of interest (central pixel) 5f is changed to have xl = 0, x2 = 0, x3 = 1, and x4 = 1, and the changed pixel is output. Fig. 22 shows in detail a circuit for realizing this algorithm. In Fig. 22, reference symbols B1 to B15 denote inverters; E1 to E3, AND gates; and C1, an OR gate. The inputs of the AND gate E2 receive data of the regions X2 and X5. The inputs of the OR gate Cl receive data of the regions X3, X4, and Y1 to Y8 (Z1). The inputs of the AND gate El receive bit pattern data. When the AND condition of the AND gate E3 is satisfied, the AND gate E3 outputs "1" as an output PTN1; otherwise, it outputs "0". The output PTN1 is input to an input of an OR gate Q4 in a circuit shown in Fig. 15 (to be described later). Fig. 23 is a view for explaining in detail the algorithm corresponding to Fig. 20-b. When the region X1 = 0, as shown in Fig. 23-b, at least one of the regions Y1 to Y8, X7, X3, and X4 is 0, and a bit pattern is expressed by 7a = 6b = 6c = 5d = 5e = 4f = 4g = 3h = 3i = 2j = 2k = 0, and 8a = 7b = 7c = 6d = 6e = 5f = 5g = 4h = 4i = 3j = 3k = 1, as shown in Fig. 26-a, a pixel of interest (central pixel) 5f is changed to have x1 = 0, x2 = 0, x3 = 1, and x4 = 1, and the changed pixel is output. Fig. 24 shows a circuit for realizing this circuit. In Fig. 24, reference symbols B1 to B15 denote inverters; E1 and E3, AND gates; and C1, an OR gate. The input of the inverter B12 receives data of the region X1. The inputs of the OR gate C1 receive data of the regions X3, X4, X7, and Y1 to Y8 (Z1). The inputs of the AND gate El receive bit pattern data. When the AND condition of the AND gate E3 is satisfied, the AND gate E3 outputs "1" as an output PTN2; otherwise, it outputs "0". The output PTN2 is input to an input of an OR gate Q13 in the circuit shown in Fig. 35 (to be described later). Fig. 35 is a view for explaining in detail the algorithm corresponding to Fig. 20-c. When the regions X8 = 0 and X3 = 0, as shown in Fig. 25-b, at least one of the regions Y1 to Y8, X1, and X2 is 0, and a bit pattern is expressed by 7a = 6b = 6c = 5d = 5e = 4f = 4g = 3h = 3i = 2j = 2k = 1, and 8a = 7b = 7c = 6d = 6e = 5f = 5g = 4h = 4i = 3j = 3k = 0, as shown in Fig. 25-a, a pixel of interest (central pixel) 5f is changed to have xl = 1, x2 = 1, x3 = 0, and x4 = 0, and the changed pixel is output. Fig. 26 shows a circuit for realizing this algorithm. In Fig. 26, reference symbols B1 to B15 denote inverters; El to E3, AND gates; and C1, an OR gate. The inputs of the AND gate E2 receive data of the regions X3 and X8. The inputs of the OR gate C1 receive data of the regions X1, X2, and Y1 to Y8 (Z1). The inputs of the AND gate El receive the bit pattern data. When the AND condition of the AND gate E3 is satisfied, the AND gate E3 outputs "1" as an output PTN3; otherwise, it outputs "0". The output PTN3 is input to an input of the OR gate Q4 in the circuit shown in Fig. 35 (to be described later). Fig. 27 is a view for explaining in detail the algorithm corresponding to Fig. 20-d. When the regions X4 = 0 and X8 = 0, as shown in Fig. 27-b, at least one of the regions Y1 to Y8, X1, X2, and X6 is 0, and a bit pattern is expressed by 7a = 7b = 6c = 6d = 5e = 5f = 4g = 4h = 3i = 3j = 2k = 1, and 8a = 8b = 7c = 7d = 6e = 6f = 5g = 5h = 4i = 4j = 3k = 0, a pixel of interest (central pixel) 5f is changed to have x1 = 1, x2 = 1, x3 = 0, and X4 = 0, and the changed pixel is output. Fig. 28 shows a circuit for realizing this algorithm. In Fig. 28, reference symbols B1 to B15 denote inverters; E1 to E3, AND gates; and C1, an OR gate. The inputs of the AND gate E2 receive data of the regions X4 and X8. The inputs of the OR gate C1 receive data of the regions X1, X2, X6, and Y1 to Y8 (Z1). The inputs of the AND gate El receive bit pattern data. When the AND condition of the AND gate E3 is satisfied, the AND gate E3 outputs "1" as an output PTN4; otherwise, it outputs "0". The outputPTN4 is input to an input of the OR gate Q13 in the circuit shown in Fig. 35 (to be described later). Fig. 29 is a view for explaining smoothing processing for a figure in which the inclination of a boundary portion is 2/1 (a longitudinal line inclined at 45° or more). When a bit pattern in a frame at the left side in each of Fig. 29 is detected, processing for changing a four-divided pixel of interest (central pixel), as shown in a pattern at the right side in the corresponding figure, is performed. Fig. 31 show in detail the algorithms shown in Fig. 29. Fig. 31 is a views for explaining in detail the algorithm corresponding to Fig. 29-a. When regions X1 = 0 and X6 = 0, as shown in Fig. 31-b, at least one of the regions Y1 to Y8, X4, and X7 is 0, and a bit pattern is expressed by 1h = 2g = 3g = 4f = 5f = 6e = 7e = 8d = 9d = 0, and 1i = 2h = 3h = 4g = 5g = 6f = 7f = 8e = 9e = 1, as shown in Fig. 35-a, a pixel of interest (central pixel) 5f is changed to have xl = 0, x2 = 0, x3 = 0, and x4 = 1, and the changed pixel is output. Fig. 32 is a view for explaining in detail the algorithm corresponding to Fig. 29-b. When the region X5 = 0, as shown in Fig. 32-b, at least one of the regions Y1 to Y8, X3, X8, and X7 is 0, and a bit pattern is expressed by 1h = 2h = 3g = 4g = 5f = 6f = 7e = 8e = 9d = 1, and lg = 2g = 3f = 4f = 5e = 6e = 7d = 8d = 9c = 0, as shown in Fig. 32-a, a pixel of interest (central pixel) 5f is changed to have x1 = 0, x2 = 1, x3 = 1, and x4 = 1, and the changed pixel is output. Fig. 37 is a view for explaining in detail the algorithm corresponding to Fig. 29-c. When the regions X4 = 0 and X7 = 0, as shown in Fig. 33-b, at least one of the regions Y1 to Y8, X1, and X6 is 0, and a bit pattern is expressed by 1h = 2h = 3g = 4g = 5f = 6f = 7e = 8e = 9d = 0, and lg = 2g = 3f = 4f = 5e = 6e = 7d = 8d = 9c = 1, as shown in Fig. 33-a, a pixel of interest (central pixel) 5f is changed to have x1 = 1, x2 = 0, x3 = 0, and x4 = 0, and the changed pixel is output. Fig. 38 is a view for explaining in detail the algorithm corresponding to Fig. 29-d. When the regions X4 = 0 and X8 = 0, as shown in Fig. 34-b, at least one of the regions Y1 to Y8, X1, and X8 is 0, and a bit pattern is expressed by 1h = 2g = 3g = 4f = 5f = 6e = 7e = 8d = 9d = 1, and li = 2h = 3h = 4g = 5g = 6f = 7f = 8e = 9e = 0, as shown in Fig. 34-a, a pixel of interest (central pixel) 5f is changed to have x1 = 1, x2 = 1, x3 = 1, and x4 = 0, and the changed pixel is output. Note that, in practice, the patterns shown in Fig. 20 also have feature extraction patterns in which the right and left portions are replaced with each other to have the pixel of interest (central pixel) as the center (i.e., a total of eight patterns are available). Similarly, the patterns shown in Fig. 29 also have feature extraction patterns in which the right and left portions are replaced with each other to have the pixel of interest (central pixel) as the center (i.e., a total of eight patterns are available). For example, a pattern obtained by replacing the right and left portions of the feature extraction pattern shown in Fig. 20 is as shown in Fig. 30. In the smoothing algorithm in this case, if 2a = 3b = 3c = 4d = 4e = 5f = 5g = 6h = 6i = 7j = 7k = 0 (○ dots) and 3a = 4b = 4c = 5d = 5e = 6f = 6g = 7h = 7i = 8j = 8k = 1 ( dots), X7 = X1 = 0, and at least one of the regions Y1 to Y8, X3, and X4 is "1", a pixel of interest 5f is changed to have x1 = 1, x2 = 1, x3 = 0, and x4 = 0. Similarly, symmetrical algorithms in the right-and-left direction are set for the patterns shown in Fig. 20-b,c and d. In this manner, since the symmetrical feature extraction algorithms in the right-and-left direction are prepared, smoothing processing for characters "O", "U", "V", "W", and the like can be performed by the symmetrical algorithms, and these characters can have natural appearances. Figs. 35 and 36 show a data generator, including a plurality of feature detection circuits, for receiving output signals from the feature detection circuits, and generating data of the pixel of interest 5f according to the input signals. Note that Fig. 36 shows in detail a portion of the circuit shown in Fig. 35. In Figs. 35 and 36, reference symbols Q1 to Q16 denote OR gates; R1 to R64, U1, and U2, 2-input AND gates; S1 to S4, 16-input OR gates; E4, an inverter; and T1, a NOR gate. Each of the output signals, extracted as a plurality of features, from the feature detection circuits is connected to a corresponding one of the OR gates Q1 to Q16. Of the outputs from the feature detection circuits, the outputs PTN1 and PTN3 are connected to the OR gate Q4, the outputs PTN2 and PTN4 are connected to the OR gate Q13, and so on. The signals, including the outputs PTN1 to PTN4, from all the feature detection circuits are connected to the NOR gate T1. In correspondence with the outputs "1" from the OR gates Q1 to Q16, each of code generators constituted by four AND gates of the AND gates R1 to R64 generates a corresponding one of codes "0" to "F" as a code of four bits 20 (R4 output), 21 (R3 output), 22 (R2 output), and 23 (R1 output). Of these code outputs, data at the bit position 20 are logically ORed by the OR gate S1, and the ORed result is output as an output "x1" of the OR gate S1. Data at the bit position 21 of the code outputs are logically ORed by the OR gate S2, and the ORed result is output as an output "x2" of the OR gate S2. Data at the bit position 22 of the code outputs are logically ORed by the OR gate S3, and the ORed result is output as an output "x3" of the OR gate S3. Data at the bit position 23 of the code outputs are logically ORed by the OR gate S4, and the ORed result is output as an output "x4" of the OR gate S4. In this manner, one of the codes "0" to "F" corresponding to the output from one of the OR gates Q1 to Q16, two or more of which are never selected at the same time, is obtained as the outputs x1 to x4 from the OR gates S1 to S4. For example, if the code is "3", x1 = 1, x2 = 1, x3 = 0, and x4 = 0. If the code is "9", x1 = 1, x2 = 0, x3 = 0, and x4 = 1. Since all the feature coincidence signals are connected to the inputs of the NOR gate T1, if at least one of the feature coincidence signals is not "1" (none of the features coincide with each other), the output from the NOR gate T1 goes to "1". At this time, when a pixel of interest 5f is a "○" dot, the output from the two-input AND gate U1 goes to "1", and sets the output from the OR gate Q1 to be "1", thus outputting a code "0" to x1 to x4 (i.e., x1 = 0, x2 = 0, x3 = 0, and x4 = 0). When a pixel of interest 5f is a  dot, the output from the 2-input AND gate U2 goes to "1", and sets the output from the OR gate Q16 to be "1", thus outputting a code "F" to x1 to x4 (i.e., x1 = 1, x2 = 1, x3 = 1, and x4 = 1). In this manner, when the features do not coincide with the predetermined features, data of the pixel of interest 5f is preserved and printed. The outputs xl to x4 from the data generator are input to the known parallel/serial converter 44, and the converter 44 generates signals VDOM (SVDO signals) output in synchronism with the clock signal VCL in the order of x1, x2, x3, and x4. The signals VDOM drive the laser through the laser driver. Fig. 37-b shows output image signals obtained when smoothing processing of a lateral line having an inclination of 45° or less shown in Fig. 37-a is performed using the above-mentioned algorithms. As can be seen from Fig. 37-b, the line is processed, so that pulse width signal components to be added to the left boundary portion of the line image have the same time interval as the pulse width signal components deleted from the central portion to the left boundary portion of the line image. The same processing is performed for the right boundary portion of the line image. The pulse width added to the left boundary portion is controlled to be equal to the pulse width added to the right boundary portion. Fig. 38-b shows output image signals obtained when smoothing processing of a longitudinal line having an inclination of 45° or less shown in Fig. 38-a is performed using the above-mentioned algorithms. As can be seen from Fig. 38-b, the same signal width as that added to (or deleted from) the left edge boundary portion of the line image is deleted from (or added to) the right edge boundary portion. As a result, the width of the line after the smoothing processing can be kept unchanged from that before smoothing. With this processing, the width of the line after smoothing processing can be prevented from being increased or decreased. The line can have uniform appearances at its right and left edge portions, thus effectively improving image quality of the line. Fig. 39 is a view showing conventional smoothing algorithms performed by the present applicant for a lateral line whose boundary portion is almost horizontal. When smoothing processing is performed using the algorithms shown in Fig. 39 smoothed signals of a one-dot line shown in Fig. 40-a are as shown in Fig. 40-b, and as a result, the signals are printed on a paper sheet, as shown in Fig. 40-c, according to electrophotography characteristics. On the other hand, smoothed signals of a one-dot line shown in Fig. 40-d are as shown in Fig. 40-e, and as a result, the signals are printed on a paper sheet, as shown in Fig. 40-f, according to electrophotography characteristics. As can be seen from Fig. 40 c and f, even when similar one-dot lines are to be processed, the lines shown in Fig. 40 a and d have different black dot areas to be added to smoothing processing portions, and the line shown in Fig. 40 -d has a smaller number of dots to be printed than that of the line shown in Fig. 40-a by one dot. When a smoothing/printing operation is performed for the line shown in Fig. 40-d, the line is thinned and becomes discontinuous, as shown in Fig. 40f. When the dot area to be added to the smoothing processing portion is increased by an algorithm, which can prevent the line from being thinned unlike in Fig. 40-f, the line shown in Fig. 40-d can be prevented from being thinned by the smoothing processing. However, the width of the smoothing processing portion of the line shown in Fig. 40-a is undesirably increased. Fig. 41 is a view showing smoothing processing algorithms for a boundary portion of an almost horizontal lateral line according to this example. The detailed algorithms are the same as those described above, and a detailed description thereof will be omitted here. Note that the algorithm shown in Fig. 41-a has a total of four patterns, which are symmetrical in the horizontal and vertical directions to have a pixel of interest (central pixel) as the center, as shown in Figs. 42 (1) to (4). Each of the algorithms shown in Fig. 41 b to p has a total of four patterns, which are symmetrical in the horizontal and vertical directions to have a pixel of interest (central pixel) as the center, although not shown. With the algorithms shown in Fig. 41 since either one of the two types of one-dot lines can be determined, optimal processing that can prevent a line width from being increased/decreased according to the type can be executed. Fig. 43 is an explanatory view when smoothing processing are performed for the two types of one-dot lines using these algorithms. As can be seen from Fig. 43, the algorithms that can identify the two types of one-dot lines are used, and the one-dot line of either type can be printed to have an equal black area of pixels of a smoothing processing portion to that before smoothing. As a result, the width of the smoothing processing portion can be prevented from being increased/decreased, thus allowing printing with high image quality. Fig. 44 is a view showing conventional smoothing algorithms, previously proposed by the present applicant, for a longitudinal line whose boundary portion is almost vertical. When smoothing is performed using these algorithms, smoothed signals of a one-dot line shown in Fig. 45-a are as shown in Fig. 45-b. On the other hand, smoothed signals for a one-dot line shown in Fig. 45-c are as shown in Fig. 45-d. As can be seen from Fig. 45 a and d, even when similar one-dot lines are to be processed, the lines shown in Fig. 45 a and c have different black dot areas to be added to smoothing processing portions, and the line shown in Fig. 45-c has a larger number of dots to be printed than that of the line shown in Fig. 45-a by one dot. Thus, as a result of the smoothing/printing operation for the line shown in Fig. 45-a, the width of the smoothing processing portion of the line shown in Fig. 45-b is increased, and a line with a node is printed. On the contrary, when the dot area to be added to a smoothing processing portion is decreased by an algorithm that can prevent the width of the line shown in Fig. 45-a from being increased, an increase in width of the line shown in Fig. 45-a by the smoothing processing can be prevented. However, the width of the smoothing processing portion of the line shown in Fig. 45-c is undesirably decreased. Fig. 46 is a view showing smoothing processing algorithms for a boundary portion of an almost vertical longitudinal line according to an embodiment of the present invention, that can eliminate the above-mentioned drawbacks. The detailed algorithms are the same as those described above, and a detailed description thereof will be omitted here. Note that the algorithm shown in Fig. 46-a has a total of four patterns, which are symmetrical in the horizontal and vertical directions to have a pixel of interest (central pixel) as the center, although not shown. Since the algorithms shown in Fig. 46 can discriminate either of the two types of one-dot lines, i.e., the line including one overlapping pixel, or the line including no overlapping pixel, optimal processing that can prevent the line width from being increased/decreased according to the type can be executed. Fig. 47 is an explanatory view when smoothing processing is performed for the above-mentioned two types of one-dot lines using the algorithms shown in Fig. 46. As can be seen from Fig. 47, the algorithms that can identify the two types of one-dot lines are used, and the one-dot line of either type can be printed to have an equal black area of pixels of a smoothing processing portion to that before smoothing. As a result, the width of the smoothing processing portion can be prevented from being increased/decreased, thus allowing printing with high image quality. Fig. 48 is a detailed block diagram showing a laser beam printer to which an image processing apparatus according to the present invention is applied. The same reference numerals in Fig. 48 denote the same parts as in Fig. 19. In Fig. 48, an 8CLK signal is a clock signal having a frequency eight times that of the VCLK signal, and is the same as the CLK signal in practice. In a laser beam printer shown in Fig. 48, a pulse change circuit 207 is inserted between the signal processing circuit 205 and the printer 100 in the printer described above with reference to Fig. 19. The pulse change circuit 207 receives the 8CLK signal and the VCLK signal in addition the SVDO signals from the signal processing circuit 205. The circuit 207 outputs SSVDO signals (to be described later) to the printer 100. The pulse change circuit 207 also receives 6-bit parallel signals SB under the control of a CPU 208 for controlling the controller 200 or the printer 100. In Fig. 48, the signal processing circuit 205 increases the main scanning resolution of image signals VDO of 300 dpi output from the controller 200 to 1,200 dip four times that of the VDO signals, and outputs the signals as smoothed signals SVDO to the pulse change circuit 207 in synchronism with the VCLK signal. Upon reception of the SVDO signals, the pulse change circuit 207 increases the main scanning resolution of predetermined signals to an integer multiple of that of the SVDO signals (e.g., 2,400 dpi twice that of the SVDO signals), and outputs the changed signals as SSVDO signals to the printer 100. Figs. 49 and 50 are detailed circuit diagrams of the pulse change circuit 207. In Fig. 49, reference symbols DF1 to DF8 denote D-type flip-flops; and PR1, a data converter. An SVDO signal is input to the ID0 input of the data converter PR1. The data converter PR1 outputs an OD0 output corresponding to the ID0 input to the D input of the flip-flop DF1. The Q output from the flip-flop DF1 is input to the ID1 input of the data converter PR1. The data converter PR1 outputs an OD1 output corresponding to the ID1 input to the D input of the flip-flop DF2. The Q output from the flip-flop DF2 is input to the ID2 input of the data converter PR1. The data converter PR1 outputs an OD2 output corresponding to the ID2 input to the D input of the flip-flop DF3. The Q output from the flip-flop DF3 is input to the ID3 input of the data converter PR1. The data converter PR1 outputs an OD3 output corresponding to the ID3 input to the D input of the flip-flop DF4. The Q output from the flip-flop DF4 is input to the ID4 input of the data converter PR1. The data converter PR1 outputs an OD4 output corresponding to the ID4 input to the D input of the flip-flop DF5. The Q output from the flip-flop DF5 is input to the ID5 input of the data converter PR1. The data converter PR1 outputs an OD5 output corresponding to the ID5 input to the D input of the flip-flop DF6. The Q output from the flip-flop DF6 is input to the ID6 input of the data converter PR1. The data converter PR1 outputs an OD6 output corresponding to the ID6 input to the D input of the flip-flop DF7. The Q output from the flip-flop DF7 is input to the ID7 input of the data converter PR1. The data converter PR1 outputs an OD7 output corresponding to the ID7 input to the D input of the flip-flop DF8. The Q output from the flip-flop DF8 is output as an SSVDO signal. The data converter PR1 receives 6-bit parallel signals SB (SB0 to SB5). The parallel signals SB are controlled by the CPU 208 (not shown) for controlling the printer 100 or the controller 200. The clock inputs CK of the flip-flops DF1 to DF8 receive the 8CLK signal. The data converter PR1 receives the VCLK signal. Fig. 50 shows the detailed circuit of the data converter PR1. In Fig. 50, reference symbol BB denotes inverters; AA and AND1, AND gates; OR and OR1, OR gates; DF9, a D-type flip-flop; and PSM, a data generator. Reference symbol RP1 denotes a decoder constituted by inverters BB and one AND gate AA. The decoder RP1 outputs an output signal PLS1 when ID0 to ID7 signals are ID0 = 0, ID1 = 0, ID2 = 0, ID3 = 0, ID4 = 1, ID5 = 1, ID6 = 0, and ID7 = 0. The signal PLS1 is input to the OR gate OR1 and the data generator PSM. Reference symbol RP2 denotes a decoder constituted by inverters BB and another AND gate AA. The decoder RP2 outputs an output signal PLS2 when ID0 to ID7 signals are ID0 = 0, ID1 = 0, ID2 = 1, ID3 = 1, ID4 = 0, ID5 = 0, ID6 = 0, and ID7 = 0. The signal PLS2 is input to the OR gate OR1 and the data generator PSM. Reference symbol RP3 denotes a decoder constituted by inverters BB and still another AND gate AA. The decoder RP3 outputs an output signal PLS3 when ID0 to ID7 signals are ID0 = 0, ID1 = 0, ID2 = 1, ID3 = 1, ID4 = 1, ID5 = 1, ID6 = 0, and ID7 = 0. The signal PLS3 is input to the OR gate OR1 and the data generator PSM. At the Q output of the flip-flop DF9, a signal obtained by extracting a 1/8 pulse from the leading edge of the VCLK signal is obtained. This signal is logically ANDed with a signal output from the OR gate 0R1 as an ORed result of the PLS1 to PLS3 signals by the AND gate AND1, and the AND gate AND1 generates a PSEL signal. The data generator PSM receives the PLS1 to PLS3 signals, and also receives the SB0 to SB5 signals. The data generator PSM generates PM0 to PM7 signals (8 bits) according to a logic (to be described later), and inputs these signals to data selectors DM0 to DM7 each constituted by one inverter BB and two AND gates AA. The data selector DM0 receives the PM0 signal and the ID0 signal. When the PSEL signal is "0", the selector DM0 selects the ID0 signal; when the PSEL signal is "1", it selects the PM0 signal, and outputs an output OD0. The data selector DM1 receives the PM1 signal and the ID1 signal. When the PSEL signal is "0", the selector DM1 selects the ID1 signal; when the PSEL signal is "1", it selects the PM1 signal, and outputs an output OD1. The data selector DM2 receives the PM2 signal and the ID2 signal. When the PSEL signal is "0", the selector DM2 selects the ID2 signal; when the PSEL signal is "1", it selects the PM2 signal, and outputs an output OD2. The data selector DM3 receives the PM3 signal and the ID3 signal. When the PSEL signal is "0", the selector DM3 selects the ID3 signal; when the PSEL signal is "1", it selects the PM3 signal, and outputs an output OD3. The data selector DM4 receives the PM4 signal and the ID4 signal. When the PSEL signal is "0", the selector DM4 selects the ID4 signal; when the PSEL signal is "1", it selects the PM4 signal, and outputs an output OD4. The data selector DM5 receives the PM5 signal and the ID5 signal. When the PSEL signal is "0", the selector DM5 selects the ID5 signal; when the PSEL signal is "1", it selects the PM5 signal, and outputs an output OD5. The data selector DM6 receives the PM6 signal and the ID6 signal. When the PSEL signal is "0", the selector DM6 selects the ID6 signal; when the PSEL signal is "1", it selects the PM6 signal, and outputs an output OD6. The data selector DM7 receives the PM7 signal and the ID7 signal. When the PSEL signal is "0", the selector DM7 selects the ID7 signal; when the PSEL signal is "1", it selects the PM7 signal, and outputs an output OD7. Prior to the detailed description of the operation of the data generator, pulse change patterns will be explained below with reference to Figs. 51 to 53. Figs. 51-a, 52-b, and 53-a show patterns corresponding to one dot (equivalent to one dot at 300 dpi) of an SVDO signal (when the modulation pixel size is set to be 1/4). In Figs. 51 to 53, modulation pixels obtained by dividing one dot into four sections are represented by I, II, III, and IV in turn from the left. Fig. 51-a shows a pattern having I = 0, II = 1, III = 0, and IV = 0. Fig. 51 b to e show various candidate patterns for changing the modulation pixel size to 1/8 in correspondence with the pattern shown in Fig. 51-a. Patterns 1 ○ to 9 ○ shown in Fig. 51-b are patterns in each of which the pattern shown in Fig. 51-a is replaced with one pulse having a different pulse width. Patterns 1 ○ to 9 ○ shown in Fig. 51-c are patterns in each of which the pattern shown in Fig. 51-a is replaced with two pulses. Patterns 1 ○ to 6 ○ shown in Fig. 51-d are patterns in each of which the pattern shown in Fig. 51-a is replaced with three pulses. A pattern 1 shown in Fig. 51-e is a pattern in which the pattern shown in Fig. 51-a is replaced with four pulses. Of these patterns, eight types of patterns 1 ○ to 8 ○ shown in Fig. 54-b are assumed to be sampled. Fig. 52-a shows a pattern having I = 0, II = 0, III = 1, and IV = 0. Figs. 52-b to 52-e show various candidate patterns for changing the modulation pixel size to 1/8 in correspondence with the pattern shown in Fig. 52-a. Patterns 1 ○ to 9 ○ shown in Fig. 52-b are patterns in each of which the pattern shown in Fig. 52-a is replaced with one pulse having a different pulse width. Patterns 1 ○ to 9 ○ shown in Fig. 52-c are patterns in each of which the pattern shown in Fig. 52-a is replaced with two pulses. Patterns 1 ○ to 6 ○ shown in Fig. 52-d are patterns in each of which the pattern shown in Fig. 52-a is replaced with three pulses. A pattern 1 ○ shown in Fig. 55E is a pattern in which the pattern shown in Fig. 52-a is replaced with four pulses. Of these patterns, eight types of patterns 1 ○ to 8 ○ shown in Fig. 55-b are assumed to be sampled. Furthermore, Fig. 53-a shows a pattern having I = 0, II = 1, III = 1, and IV = 0. Fig. 53 b to e show various candidate patterns for changing the modulation pixel size to 1/8 in correspondence with the pattern shown in Fig. 53-a. Patterns 1 ○ to 9 ○ shown in Fig. 53-b are patterns in each of which the pattern shown in Fig. 53-a is replaced with one pulse having a different pulse width. Patterns 1 ○ to shown in Fig. 53-c are patterns in each of which the pattern shown in Fig. 53-a is replaced with two pulses. Patterns 1 ○ to 6 ○ shown in Fig. 53-d are patterns in each of which the pattern shown in Fig. 53-a is replaced with three pulses. A pattern 1 ○ shown in Fig. 53-e is a pattern in which the pattern shown in Fig. 53-a is replaced with four pulses. Of these patterns, eight types of patterns 1 ○ to 8 ○ shown in Fig. 58-b are assumed to be sampled. Fig. 56 shows the operation logic of the data generator PSM for executing the pattern conversion shown in Figs. 54 & 55. Fig. 57 shows the operation logic of the data generator PSM for executing the pattern conversion shown in Fig. 58. The output PLS1 from the decoder RP1 goes to "1" when a pattern (I = 0, II = 0, III = 1, and IV = 0) shown in Fig. 55-a is detected. The output PLS2 from the decoder RP2 goes to "1" when a pattern (I = 0, II = 1, III = 0, and IV = 0) shown in Fig. 54-a is detected. The output PLS3 from the decoder RP3 goes to "1" when a pattern (I = 0, II = 1, III = 1, and IV = 0) shown in Fig. 58-a is detected. In Fig. 56, for example, when SB5 = 0, SB4 = 1, and SB3 = 1, if PLS3 = 0, PLS2 = 0, and PLS1 = 1, then PM7 = 0, PM6 = 0, PM5 = 0, PM4 = 1, PM3 = 0, PM2 = 1, PM1 = 0, and PM0 = 0 are output regardless of the values of SB2 to SB0. Thus, the pattern shown in Fig. 54-a is converted into a pattern 4 ○ shown in Fig. 54-b. If PLS3 = 0, PLS2 = 1, and PLS1 = 0, then PM7 = 0, PM6 = 0, PM5 = 1, PM4 = 0, PM3 = 1, PM2 = 0, PM1 = 0, and PM0 = 0 are output, and the pattern shown in Fig. 55-a is converted into a pattern 4 ○ shown in Fig. 55-b. Similarly, when the values of SB5 to SB3 are selected, one of the patterns 1 ○ to 8 ○ shown in Fig. 55 can be designated in correspondence with the pattern shown in Fig. 55-a, and one of the patterns 1 ○ to 8 ○ shown in Fig. 54-b can be designated in correspondence with the pattern shown in Fig. 54-a. In Fig. 57 for example, when SB2 = 0, SB1 = 1, and SB0 = 0, if PLS3 = 1, PLS2 = 0, and PLS1 = 0, then PM7 = 0, PM6 = 1, PM5 = 1, PM4 = 0, PM3 = 0, PM2 = 1, PM1 = 1, and PM0 = 0 are output regardless of the values of SB5 to SB3. Thus, the pattern shown in Fig. 58-a is converted into the pattern 3 ○ shown in Fig. 58-b. Similarly, upon selection of the values of SB2 to SB0, one of the patterns 1 ○ to 8 ○ shown in Fig. 58 -b can be designated in correspondence with the pattern shown in Fig. 58-a. According to this embodiment, first pulse signals that are already formed into pulses are received, and can be converted into second pulse signals having a smaller modulation pixel size than that of the first pulse signals according to the features of the pulses. Fig. 59 is a show change patterns when the modulation pixel size is set to be smaller, e.g., 1/16. In this case, a 16CLK signal having a frequency twice that of the 8CLK signal shown in Fig. 49 is used, and the number of D-type flip-flops DF1 to DF8 is doubled, i.e., 16 flip-flops are used, thus achieving the pattern conversion in the same manner as described above. Fig. 60 show another data conversion. Fig. 60 exemplify a case wherein three pixels are referred to, and a change pattern of the central pixel is determined according to the states of the three pixels. This case can be realized by increasing the number of D-type flip-flops DF1 to DF8 in correspondence with three pixels (24 flip-flops) in the arrangement shown in Figs. 49 and 50. The signal processing circuit 205 and the pulse change circuit 207 may be integrated as a single IC package. However, if these circuits are prepared as separate IC packages, the signal processing circuit 205, which has a relatively large logic circuit keyboard, but does not relatively require a high-speed operation, can comprise a low-speed, inexpensive C-MOS logic IC, and the pulse change circuit 207, which has a relatively small logic circuit keyboard, but requires a relatively high-speed operation, can comprise a high-speed, relatively expensive BI-CMOS logic IC or ECL logic IC. Thus, a circuit arrangement having high cost performance can be realized as a whole. When the above-mentioned pulse conversion function is used, the following conventional drawbacks can be eliminated. When the select signals SB5 to SB0 are selected according to the toner particle size, in the case of a normal particle size toner (a toner particle size = 10 to 12 µ), the pattern 3 ○ shown in Fig. 55B the pattern 3 ○ shown in Fig. 54B, or the pattern 3 ○ shown in Fig. 61B is selected. In the case of a small particle size toner (a toner particle size = 5 to 6 µ), the pattern 6 ○ shown in Fig. 55B the pattern 6 ○ in Fig. 54-b, or the pattern 4 ○ shown in Fig. 58-b is selected. In this manner, as the toner particle size becomes smaller, the pulses are further segmented (the number of pulses is increased), so that the modulation pixels can be avoided from being developed to have a "whisker"-like pattern. Thus, the modulation pixels are printed to be "blurred", thereby preventing deterioration of smoothing printing quality, and maintaining high image quality. When the printing dot density is switched between, for example, 240 dpi and 300 dpi, as shown in, e.g., Fig 61 a change pattern is selected in correspondence with the printing dot density, so that high image quality can be maintained in correspondence with the printing dot density. The printing dot density is switched as follows. In Fig. 48 described above, for example, the controller 200 transmits the switching command to the printer engine 100 through the serial signal, and the CPU 208, which received the command, and controls the printer engine 100, generates the SB signals corresponding to the printing dot density to be selected. Fig. 61 is a view showing the flow of the smoothing processing for an almost horizontal black line having a one-dot width. Fig. 61 -a shows a dot pattern before smoothing processing, and Fig. 61 B shows a pattern subjected to the smoothing processing at the first modulation pixel size (1/4 a dot). The pattern shown in Fig. 61-b is converted into a pattern shown in Fig. 61-c a t 240 dpi, and is converted into a pattern shown in Fig. 61-d at 300 dpi both as a pattern having the second modulation pixel size (1/8 a dot). A case will be explained below wherein the printing density is changed. In Fig. 48 described above, the controller 200 transmits a printing density change command to the printer 100 through the serial signals. Upon reception of the density change command, the CPU 208, which controls the printer 100, performs a density change operation in an electrophotography process (e.g., changes the developing bias voltage according to a designated density), and at the same time, generates the SB signals according to the density. For example, in each of Figs. 55-b, 54-b and 58-b, patterns are sequentially selected in the order from 1 ○ to 8 ○ as the density becomes lower. Contrary to this, as the density becomes higher, patterns are sequentially selected in the order from 8 ○ to 1 ○. Thus, a uniform density of a smoothing processing portion can be maintained, and high image quality can also be maintained. In the above case, the density is changed in response to a command from the controller. Alternatively, information of a dot density change means such as a volume, operated by a user, at an operation unit of the printer 100 may be input, and may b e fetched by the CPU 208. The CPU 208 may change SB signals according to the input information to select a pattern. Furthermore, a thermistor or a humidity sensor may be connected to the input port of the CPU 208 for controlling the printer engine 100, and a signal from the thermistor or the humidity sensor may be fetched by the CPU 208 as A/D-converted data. The CPU 208 may change SB signals in correspondence with a value uniform density of a smoothing processing portion can be maintained, and high image quality can also be maintained. As described above, the smoothing logic is converted upon switching of the resolution to perform optimal smoothing processing. Thus, a high-quality image output can be obtained at each resolution. Note that the present invention may be applied to either a system constituted by a plurality of devices or an apparatus consisting of one device. The present invention may also be applied to a case wherein a system or an apparatus is realized by supplying a program thereto. As described above, since the present invention comprises a conversion means for converting a smoothing processing method of a pixel whose dot density is increased upon switching of the resolution of a recording apparatus, a proper smoothing processing method can be adopted according to the switched resolution, and a high-quality image output can be obtained.

Claims: An image recording apparatus comprising: information signal generation means (200) for generating bit information signals representing pixels of an image to be printed; temporary storage means (25 to 33) for temporarily storing at least some of the bit information signals generated by said information signal generation means; feature detection means (34-42,43) for determining whether or not the bit information signals stored in said temporary storage means have one of a plurality of predetermined features; information changing means (43,205,207) for, when said feature detection means detects that bit information signals stored in said temporary storage means have one of the plurality of predetermined features, changing printing information for the corresponding pixel in the bit information signals stored in said temporary storage means, said information changing means comprising: first forming means (205) for forming, on the basis of the bit signal information for a pixel, a pattern composed of a plurality of smaller first small pixels, characterised in that said information changing means further comprises: data generation means (207,PR1, PSM) for pre-storing a plurality of patterns of even smaller second small pixels for each pattern formed of said first small pixels by said first forming means; and second forming means (207,208,PR1,PSM,SBO-SB5) for selecting one of the plurality of second small pixel patterns pre-stored in said data generation means, dependent on printing conditions, for providing a smoothing effect for the particular pixel to be printed, regardless of changes in printing conditions, and for forming changed printing information based on the selected second small pixel pattern. Apparatus according to claim 1, wherein the said second forming means (207,208) is arranged to use a frequency N times that used by said first forming means, where N is an integer not less than 2. Apparatus according to claim 1 or 2, wherein the first and second forming means are arranged to provide the respective patterns using pulse signals and the number of pulse signals per unit time used by said second forming means (207,208) is larger than the number of pulse signals per unit time used by said first forming means. Apparatus according to claim 1, 2 or 3, wherein said first forming means (205) has a resolution four times that of a subscanning resolution of the bit information signals, and said second forming means (207,208) is arranged to provide the patterns as second small pixels constituted by equal-interval pulse width units having a resolution eight times the subscanning resolution. Apparatus according to claim 1, wherein a subscanning resolution of the bit information signals is one of 240 dots/inch, 300 dots/inch, and 600 dots/inch. Apparatus according to any one of the preceding claims, wherein said temporary storage means (la-9k, 205) is arranged to form an M x N dot matrix, and said feature detection means is arranged to perform feature collation for the dot information signals throughout the entire said matrix. Apparatus according to claim 1, wherein said information changing means (43,205,207) is arranged to covert a pixel to be printed into binary signals in units of first small pixels obtained by equally dividing a recording time for the bit information in a main scanning direction of the apparatus into n sections, and wherein a recording time of the small pixel is set to fall within a range between 180 nsec and 4 nsec. Apparatus according to claim 6, further comprising: means (208) for receiving a command for switching a printing dot resolution; and means (208) for switching printing dot resolution in response to the command, wherein said information changing means (43,205,207) is arranged to convert information for one pixel into information for a plurality of second small pixels, and to change an algorithm used for the conversion in accordance with the printing dot resolution switching command received by said command receiving means (205) so as to effect smoothing. Apparatus according to claim 6, further comprising: means (208) for receiving a command for switching a printing density, and for switching the printing density in response to the command, wherein said information changing means (43,205,207) is arranged to convert information for one pixel into information for a plurality of second small pixels, and to change an algorithm used for the conversion in accordance with the printing density switching command received by said command receiving means. Apparatus according to claim 6, further comprising: means (208) for detecting an environmental temperature or humidity, wherein said information changing means (43,205,207) is arranged to covert information for one pixel into information for a plurality of second small pixels, and to change an algorithm used for the conversion in accordance with the environmental temperature or humidity detected by said detecting means so as to effect smoothing. Apparatus according to any one of the preceding claims, comprising modulation means for modulating a light beam according to the changed printing information signal, and scanning means for deflecting the light beam to scan a recording medium onto which an image is to be printed to form an electrostatic latent image to be developed by developing means, said first and second forming means (205 and 207, 208,PR1,PSM,SBO-SB5) being arranged to generate respective modulation signals for controlling modulation of the light beam. A method for recording an image comprising the steps of: generating bit information signals representing pixels of an image to be printed; temporarily storing, in temporary storage means (25 to 33), at least some of the bit information signals generated in said generating step; determining whether or not the bit information signals stored in said temporary storing step have one of a plurality of predetermined features; changing printing information for a pixel to be printed when it is determined that the corresponding bit information signals stored in said temporary storing step have one of the plurality of predetermined features; forming, on the basis of the bit signal information for a pixel, a pattern composed of a plurality of smaller first small pixels; characterised in that said changing step further includes the steps of: pre-storing a plurality of patterns of even smaller second small pixels for each pattern of said first small pixels formed in said forming step, dependent on printing conditions; selecting one of the pre-stored plurality of second small pixel patterns so as to provide smoothing effect for the pixel to be printed regardless of changes in printing conditions; and forming changed printing information. A method according to claim 12, which comprises performing feature collation for the dot information signals throughout an M x N dot matrix to determine whether or not the bit information signals stored in said temporary storing step have one of said plurality of predetermined features. A method according to claim 12, which comprises changing the printing information by converting a pixel to be printed into binary signals in units of second small pixels obtained by equally dividing a recording time for the bit information in a main scanning direction of the apparatus into n sections, with the recording time for the second small pixel being set to fall within a range between 180 nsec and 4 nsec. A method according to claim 12, further comprising: switching printing dot resolution in response to a printing dot resolution switching command, and changing an algorithm used for the conversion of information for one pixel into information for the plurality of smaller second small pixels in accordance with the printing dot resolution switching command so as to effect smoothing. A method according to claim 12, further comprising: switching printing density in response to a print density switching command, and changing an algorithm used for the conversion of information for one pixel into information for the plurality of smaller second small pixels in accordance with the printing density switching command. A method according to claim 12, further comprising: detecting an environmental temperature or humidity, and changing an algorithm used for the conversion of the information for one pixel into the information for the plurality of smaller second small pixels in accordance with the detected environmental temperature or humidity so as to effect smoothing. A method according to any one of claims 12 to 17, comprising modulating a light beam according to the changed printing information and deflecting the light beam to scan a recording medium onto which an image is to be printed to form an latent image and developing the latent image using developing means.

Inventors: ATOBE HIROSHI C O CANON KABUSH, ITOH MICHIO C O CANON KABUSHIK, KANAIWA KIYOSHI C O CANON KABU, KASHIHARA ATSUSHI C O CANON KA, KAWANA TAKASHI C O CANON KABUS, MANO HIROSHI C O CANON KABUSHI, SAITO TETUSO C O CANON KABUSHI, SETO KAORU C O CANON KABUSHIKI, YAMADA HIROMICHI C O CANON KAB, ATOBE, HIROSHI, ITOH, MICHIO, KANAIWA, KIYOSHI, KASHIHARA, ATSUSHI, KAWANA, TAKASHI, MANO, HIROSHI, SAITO, TETUSO, SETO, KAORU, YAMADA, HIROMICHI, ATOBE, HIROSHI, C/O CANON KABUSHIKI KAISHA, ITOH, MICHIO, C/O CANON KABUSHIKI KAISHA, KANAIWA, KIYOSHI, C/O CANON KABUSHIKI KAISHA, KASHIHARA, ATSUSHI, C/O CANON KABUSHIKI KAISHA, KAWANA, TAKASHI, C/O CANON KABUSHIKI KAISHA, MANO, HIROSHI, C/O CANON KABUSHIKI KAISHA, Saito, Tetuso, c/o Canon Kabushiki Kaisha, SETO, KAORU, C/O CANON KABUSHIKI KAISHA, YAMADA, HIROMICHI, C/O CANON KABUSHIKI KAISHA
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1992
Main classification: G06K15
IPC codes: G06K15