Use the
Graphics2D
class rendering hints attribute to specify whether you want objects to be rendered as quickly as possible or whether you prefer that the rendering quality be as high as possible.To set or change the rendering hints attribute in the
Graphics2D
context, construct aRenderingHints
object and pass it intoGraphics2D
by using thesetRenderingHints
method. If you just want to set one hint, you can callGraphics2D
setRenderingHint
and specify the key-value pair for the hint you want to set. (The key-value pairs are defined in theRenderingHints
class.)For example, to set a preference for antialiasing to be used if possible, you could use
setRenderingHint
:public void paint (graphics g){ Graphics2D g2 = (Graphics2D)g; RenderingHints rh = new RenderingHints( RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON); g2.setRenderingHints(rh); ... }
Note: Not all platforms support modification of the rendering mode, so specifying rendering hints does not guarantee that they will be used.
RenderingHints
supports the following types of hints:
Hint Key Values Antialiasing KEY_ANTIALIASING
VALUE_ANTIALIAS_ON
VALUE_ANTIALIAS_OFF
VALUE_ANTIALIAS_DEFAULT
Alpha Interpolation KEY_ALPHA_INTERPOLATION
VALUE_ALPHA_INTERPOLATION_QUALITY
VALUE_ALPHA_INTERPOLATION_SPEED
VALUE_ALPHA_INTERPOLATION_DEFAULT
Color Rendering KEY_COLOR_RENDERING
VALUE_COLOR_RENDER_QUALITY
VALUE_COLOR_RENDER_SPEED
VALUE_COLOR_RENDER_DEFAULT
Dithering KEY_DITHERING
VALUE_DITHER_DISABLE
VALUE_DITHER_ENABLE
VALUE_DITHER_DEFAULT
Fractional Text Metrics KEY_FRACTIONALMETRICS
VALUE_FRACTIONALMETRICS_ON
VALUE_FRACTIONALMETRICS_OFF
VALUE_FRACTIONALMETRICS_DEFAULT
Image Interpolation KEY_INTERPOLATION
VALUE_INTERPOLATION_BICUBIC
VALUE_INTERPOLATION_BILINEAR
VALUE_INTERPOLATION_NEAREST_NEIGHBOR
Rendering KEY_RENDERING
VALUE_RENDER_QUALITY
VALUE_RENDER_SPEED
VALUE_RENDER_DEFAULT
Stroke Normalization Control KEY_STROKE_CONTROL
VALUE_STROKE_NORMALIZE
VALUE_STROKE_DEFAULT
VALUE_STROKE_PURE
Stroke Normalization Control KEY_STROKE_CONTROL
VALUE_STROKE_NORMALIZE
VALUE_STROKE_DEFAULT
VALUE_STROKE_PURE
Text Antialiasing KEY_TEXT_ANTIALIASING
VALUE_TEXT_ANTIALIAS_ON
VALUE_TEXT_ANTIALIAS_OFF
VALUE_TEXT_ANTIALIAS_DEFAULT
VALUE_TEXT_ANTIALIAS_GASP
VALUE_TEXT_ANTIALIAS_LCD_HRGB
VALUE_TEXT_ANTIALIAS_LCD_HBGR
VALUE_TEXT_ANTIALIAS_LCD_VRGB
VALUE_TEXT_ANTIALIAS_LCD_VBGR
LCD Text Contrast KEY_TEXT_LCD_CONTRAST
Values should be a positive integer in the range 100 to 250. A lower value (eg 100) corresponds to higher contrast text when displaying dark text on a light background. A higher value (eg 200) corresponds to lower contrast text when displaying dark text on a light background. A typical useful value is in the narrow range 140-180. If no value is specified, a system or implementation default value will be applied. When a hint is set to default, the platform rendering default is used.