A printer performs printing after appropriately correcting irregularities,
thin-line patchiness, and isolated pixels. A first image-quality
corrector unit detects slanting-line irregularities represented by the
black and white pixel data generated through binary processing according
to a method other than the error-variance method to thereby perform
smoothing processing therefor. A second image-quality corrector unit
detects defects such as irregularities and patchiness specific to the
binary processing according to the error-variance method to thereby
perform smoothing processing therefor. A third image-quality corrector
unit detects isolated pixels in gray fields that are specific to the
binary processing according to the error-variance method to thereby
distribute the isolated pixels to peripheral pixels. When an original
image is reduced in size according to pixel-removal prior to the binary
processing, the pixel-removal is not performed if a gradient variation is
relatively great with respect to peripheral pixels.