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 a
RenderingHints
object and
pass it into Graphics2D
by using the setRenderingHints
method.
If you just want to set one hint, you can call Graphics2D
setRenderingHint
and specify the key-value pair for the
hint you want to set. (The key-value pairs are defined in the
RenderingHints
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); ... }
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 |
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.