To correct variation of gray scale due to aging even in an imaging apparatus where high resolution binary data is rendered to multivalued data through resolution conversion.
A decomposer 21 command interprets a PDL and writes into binary data at a resolution higher than an engine resolution. A rendering section 23 converts the binary data into an engine resolution and renders it into multivalued data by doubling. When the gray scale of a test pattern exceeds predetermined conditions, a gray scale control section 25 performs gray scale correction for a test pattern from a pattern generator 24 until a desired gray scale is attained and holds the correction amount. In a normal output operation mode, the gray scale control section 25 corrects the gray scale of each pixel of the multivalued data with that correction amount.