java.awt
Class RenderingHints

java.lang.Object
  extended byjava.awt.RenderingHints
All Implemented Interfaces:
Cloneable, Map

public class RenderingHints
extends Object
implements Map, Cloneable

The RenderingHints class contains rendering hints that can be used by the Graphics2D class, and classes that implement BufferedImageOp and Raster.


Nested Class Summary
static class RenderingHints.Key
          Defines the base type of all keys used to control various aspects of the rendering and imaging pipelines.
 
Nested classes inherited from class java.util.Map
Map.Entry
 
Field Summary
(package private)  HashMap hintmap
           
static RenderingHints.Key KEY_ALPHA_INTERPOLATION
          Alpha interpolation hint key.
static RenderingHints.Key KEY_ANTIALIASING
          Antialiasing hint key.
static RenderingHints.Key KEY_COLOR_RENDERING
          Color rendering hint key.
static RenderingHints.Key KEY_DITHERING
          Dithering hint key.
static RenderingHints.Key KEY_FRACTIONALMETRICS
          Font fractional metrics hint key.
static RenderingHints.Key KEY_INTERPOLATION
          Interpolation hint key.
static RenderingHints.Key KEY_RENDERING
          Rendering hint key.
static RenderingHints.Key KEY_STROKE_CONTROL
          Stroke normalization control hint key.
static RenderingHints.Key KEY_TEXT_ANTIALIASING
          Text antialiasing hint key.
static Object VALUE_ALPHA_INTERPOLATION_DEFAULT
          Alpha interpolation hint value -- ALPHA_INTERPOLATION_DEFAULT.
static Object VALUE_ALPHA_INTERPOLATION_QUALITY
          Alpha interpolation hint value -- ALPHA_INTERPOLATION_QUALITY.
static Object VALUE_ALPHA_INTERPOLATION_SPEED
          Alpha interpolation hint value -- ALPHA_INTERPOLATION_SPEED.
static Object VALUE_ANTIALIAS_DEFAULT
          Antialiasing hint values -- rendering is done with the platform default antialiasing mode.
static Object VALUE_ANTIALIAS_OFF
          Antialiasing hint values -- rendering is done without antialiasing.
static Object VALUE_ANTIALIAS_ON
          Antialiasing hint values -- rendering is done with antialiasing.
static Object VALUE_COLOR_RENDER_DEFAULT
          Color rendering hint value -- COLOR_RENDER_DEFAULT.
static Object VALUE_COLOR_RENDER_QUALITY
          Color rendering hint value -- COLOR_RENDER_QUALITY.
static Object VALUE_COLOR_RENDER_SPEED
          Color rendering hint value -- COLOR_RENDER_SPEED.
static Object VALUE_DITHER_DEFAULT
          Dithering hint values -- use the platform default for dithering.
static Object VALUE_DITHER_DISABLE
          Dithering hint values -- do not dither when rendering.
static Object VALUE_DITHER_ENABLE
          Dithering hint values -- dither when rendering, if needed.
static Object VALUE_FRACTIONALMETRICS_DEFAULT
          Font fractional metrics hint values -- use the platform default for fractional metrics.
static Object VALUE_FRACTIONALMETRICS_OFF
          Font fractional metrics hint values -- fractional metrics disabled.
static Object VALUE_FRACTIONALMETRICS_ON
          Font fractional metrics hint values -- fractional metrics enabled.
static Object VALUE_INTERPOLATION_BICUBIC
          Interpolation hint value -- INTERPOLATION_BICUBIC.
static Object VALUE_INTERPOLATION_BILINEAR
          Interpolation hint value -- INTERPOLATION_BILINEAR.
static Object VALUE_INTERPOLATION_NEAREST_NEIGHBOR
          Interpolation hint value -- INTERPOLATION_NEAREST_NEIGHBOR.
static Object VALUE_RENDER_DEFAULT
          Rendering hint values -- The platform default rendering algorithms are chosen.
static Object VALUE_RENDER_QUALITY
          Rendering hint values -- Appropriate rendering algorithms are chosen with a preference for output quality.
static Object VALUE_RENDER_SPEED
          Rendering hint values -- Appropriate rendering algorithms are chosen with a preference for output speed.
static Object VALUE_STROKE_DEFAULT
          Stroke normalization control hint value -- STROKE_DEFAULT.
static Object VALUE_STROKE_NORMALIZE
          Stroke normalization control hint value -- STROKE_NORMALIZE.
static Object VALUE_STROKE_PURE
          Stroke normalization control hint value -- STROKE_PURE.
static Object VALUE_TEXT_ANTIALIAS_DEFAULT
          Text antialiasing hint value -- text rendering is done using the platform default text antialiasing mode.
static Object VALUE_TEXT_ANTIALIAS_OFF
          Text antialiasing hint value -- text rendering is done without antialiasing.
static Object VALUE_TEXT_ANTIALIAS_ON
          Text antialiasing hint value -- text rendering is done with antialiasing.
 
Constructor Summary
RenderingHints(Map init)
          Constructs a new object with keys and values initialized from the specified Map object (which may be null).
RenderingHints(RenderingHints.Key key, Object value)
          Constructs a new object with the specified key/value pair.
 
Method Summary
 void add(RenderingHints hints)
          Adds all of the keys and corresponding values from the specified RenderingHints object to this RenderingHints object.
 void clear()
          Clears this RenderingHints object of all key/value pairs.
 Object clone()
          Creates a clone of this RenderingHints object that has the same contents as this RenderingHints object.
 boolean containsKey(Object key)
          Returns true if this RenderingHints contains a mapping for the specified key.
 boolean containsValue(Object value)
          Returns true if this RenderingHints maps one or more keys to the specified value.
 Set entrySet()
          Returns a Set view of the mappings contained in this RenderingHints.
 boolean equals(Object o)
          Compares the specified Object with this RenderingHints for equality.
 Object get(Object key)
          Returns the value to which the specified key is mapped.
 int hashCode()
          Returns the hash code value for this RenderingHints.
 boolean isEmpty()
          Returns true if this RenderingHints contains no key-value mappings.
 Set keySet()
          Returns a Set view of the Keys contained in this RenderingHints.
 Object put(Object key, Object value)
          Maps the specified key to the specified value in this RenderingHints object.
 void putAll(Map m)
          Copies all of the mappings from the specified Map to this RenderingHints.
 Object remove(Object key)
          Removes the key and its corresponding value from this RenderingHints object.
 int size()
          Returns the number of key-value mappings in this RenderingHints.
 String toString()
          Returns a rather long string representation of the hashmap which contains the mappings of keys to values for this RenderingHints object.
 Collection values()
          Returns a Collection view of the values contained in this RenderinHints.
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

hintmap

HashMap hintmap

KEY_ANTIALIASING

public static final RenderingHints.Key KEY_ANTIALIASING
Antialiasing hint key.


VALUE_ANTIALIAS_ON

public static final Object VALUE_ANTIALIAS_ON
Antialiasing hint values -- rendering is done with antialiasing.


VALUE_ANTIALIAS_OFF

public static final Object VALUE_ANTIALIAS_OFF
Antialiasing hint values -- rendering is done without antialiasing.


VALUE_ANTIALIAS_DEFAULT

public static final Object VALUE_ANTIALIAS_DEFAULT
Antialiasing hint values -- rendering is done with the platform default antialiasing mode.


KEY_RENDERING

public static final RenderingHints.Key KEY_RENDERING
Rendering hint key.


VALUE_RENDER_SPEED

public static final Object VALUE_RENDER_SPEED
Rendering hint values -- Appropriate rendering algorithms are chosen with a preference for output speed.


VALUE_RENDER_QUALITY

public static final Object VALUE_RENDER_QUALITY
Rendering hint values -- Appropriate rendering algorithms are chosen with a preference for output quality.


VALUE_RENDER_DEFAULT

public static final Object VALUE_RENDER_DEFAULT
Rendering hint values -- The platform default rendering algorithms are chosen.


KEY_DITHERING

public static final RenderingHints.Key KEY_DITHERING
Dithering hint key.


VALUE_DITHER_DISABLE

public static final Object VALUE_DITHER_DISABLE
Dithering hint values -- do not dither when rendering.


VALUE_DITHER_ENABLE

public static final Object VALUE_DITHER_ENABLE
Dithering hint values -- dither when rendering, if needed.


VALUE_DITHER_DEFAULT

public static final Object VALUE_DITHER_DEFAULT
Dithering hint values -- use the platform default for dithering.


KEY_TEXT_ANTIALIASING

public static final RenderingHints.Key KEY_TEXT_ANTIALIASING
Text antialiasing hint key.


VALUE_TEXT_ANTIALIAS_ON

public static final Object VALUE_TEXT_ANTIALIAS_ON
Text antialiasing hint value -- text rendering is done with antialiasing.


VALUE_TEXT_ANTIALIAS_OFF

public static final Object VALUE_TEXT_ANTIALIAS_OFF
Text antialiasing hint value -- text rendering is done without antialiasing.


VALUE_TEXT_ANTIALIAS_DEFAULT

public static final Object VALUE_TEXT_ANTIALIAS_DEFAULT
Text antialiasing hint value -- text rendering is done using the platform default text antialiasing mode.


KEY_FRACTIONALMETRICS

public static final RenderingHints.Key KEY_FRACTIONALMETRICS
Font fractional metrics hint key.


VALUE_FRACTIONALMETRICS_OFF

public static final Object VALUE_FRACTIONALMETRICS_OFF
Font fractional metrics hint values -- fractional metrics disabled.


VALUE_FRACTIONALMETRICS_ON

public static final Object VALUE_FRACTIONALMETRICS_ON
Font fractional metrics hint values -- fractional metrics enabled.


VALUE_FRACTIONALMETRICS_DEFAULT

public static final Object VALUE_FRACTIONALMETRICS_DEFAULT
Font fractional metrics hint values -- use the platform default for fractional metrics.


KEY_INTERPOLATION

public static final RenderingHints.Key KEY_INTERPOLATION
Interpolation hint key.


VALUE_INTERPOLATION_NEAREST_NEIGHBOR

public static final Object VALUE_INTERPOLATION_NEAREST_NEIGHBOR
Interpolation hint value -- INTERPOLATION_NEAREST_NEIGHBOR.


VALUE_INTERPOLATION_BILINEAR

public static final Object VALUE_INTERPOLATION_BILINEAR
Interpolation hint value -- INTERPOLATION_BILINEAR.


VALUE_INTERPOLATION_BICUBIC

public static final Object VALUE_INTERPOLATION_BICUBIC
Interpolation hint value -- INTERPOLATION_BICUBIC.


KEY_ALPHA_INTERPOLATION

public static final RenderingHints.Key KEY_ALPHA_INTERPOLATION
Alpha interpolation hint key.


VALUE_ALPHA_INTERPOLATION_SPEED

public static final Object VALUE_ALPHA_INTERPOLATION_SPEED
Alpha interpolation hint value -- ALPHA_INTERPOLATION_SPEED.


VALUE_ALPHA_INTERPOLATION_QUALITY

public static final Object VALUE_ALPHA_INTERPOLATION_QUALITY
Alpha interpolation hint value -- ALPHA_INTERPOLATION_QUALITY.


VALUE_ALPHA_INTERPOLATION_DEFAULT

public static final Object VALUE_ALPHA_INTERPOLATION_DEFAULT
Alpha interpolation hint value -- ALPHA_INTERPOLATION_DEFAULT.


KEY_COLOR_RENDERING

public static final RenderingHints.Key KEY_COLOR_RENDERING
Color rendering hint key.


VALUE_COLOR_RENDER_SPEED

public static final Object VALUE_COLOR_RENDER_SPEED
Color rendering hint value -- COLOR_RENDER_SPEED.


VALUE_COLOR_RENDER_QUALITY

public static final Object VALUE_COLOR_RENDER_QUALITY
Color rendering hint value -- COLOR_RENDER_QUALITY.


VALUE_COLOR_RENDER_DEFAULT

public static final Object VALUE_COLOR_RENDER_DEFAULT
Color rendering hint value -- COLOR_RENDER_DEFAULT.


KEY_STROKE_CONTROL

public static final RenderingHints.Key KEY_STROKE_CONTROL
Stroke normalization control hint key.


VALUE_STROKE_DEFAULT

public static final Object VALUE_STROKE_DEFAULT
Stroke normalization control hint value -- STROKE_DEFAULT.


VALUE_STROKE_NORMALIZE

public static final Object VALUE_STROKE_NORMALIZE
Stroke normalization control hint value -- STROKE_NORMALIZE.


VALUE_STROKE_PURE

public static final Object VALUE_STROKE_PURE
Stroke normalization control hint value -- STROKE_PURE.

Constructor Detail

RenderingHints

public RenderingHints(Map init)
Constructs a new object with keys and values initialized from the specified Map object (which may be null).

Parameters:
init - a map of key/value pairs to initialize the hints or null if the object should be empty

RenderingHints

public RenderingHints(RenderingHints.Key key,
                      Object value)
Constructs a new object with the specified key/value pair.

Parameters:
key - the key of the particular hint property
value - the value of the hint property specified with key
Method Detail

size

public int size()
Returns the number of key-value mappings in this RenderingHints.

Specified by:
size in interface Map
Returns:
the number of key-value mappings in this RenderingHints.

isEmpty

public boolean isEmpty()
Returns true if this RenderingHints contains no key-value mappings.

Specified by:
isEmpty in interface Map
Returns:
true if this RenderingHints contains no key-value mappings.

containsKey

public boolean containsKey(Object key)
Returns true if this RenderingHints contains a mapping for the specified key.

Specified by:
containsKey in interface Map
Parameters:
key - key whose presence in this RenderingHints is to be tested.
Returns:
true if this RenderingHints contains a mapping for the specified key.
Throws:
ClassCastException - key is not of type RenderingHints.Key
NullPointerException - key is null

containsValue

public boolean containsValue(Object value)
Returns true if this RenderingHints maps one or more keys to the specified value. More formally, returns true if and only if this RenderingHints contains at least one mapping to a value v such that
 (value==null ? v==null : value.equals(v))
 
. This operation will probably require time linear in the RenderingHints size for most implementations of RenderingHints.

Specified by:
containsValue in interface Map
Parameters:
value - value whose presence in this RenderingHints is to be tested.
Returns:
true if this RenderingHints maps one or more keys to the specified value.

get

public Object get(Object key)
Returns the value to which the specified key is mapped.

Specified by:
get in interface Map
Parameters:
key - a rendering hint key
Returns:
the value to which the key is mapped in this object or null if the key is not mapped to any value in this object.
Throws:
ClassCastException - key is not of type RenderingHints.Key.
See Also:
put(Object, Object)

put

public Object put(Object key,
                  Object value)
Maps the specified key to the specified value in this RenderingHints object. Neither the key nor the value can be null. The value can be retrieved by calling the get method with a key that is equal to the original key.

Specified by:
put in interface Map
Parameters:
key - the rendering hint key.
value - the rendering hint value.
Returns:
the previous value of the specified key in this object or null if it did not have one.
Throws:
NullPointerException - if the key or value is null.
ClassCastException - key is not of type RenderingHints.Key.
IllegalArgumentException - value is not appropriate for the specified key.
See Also:
get(Object)

add

public void add(RenderingHints hints)
Adds all of the keys and corresponding values from the specified RenderingHints object to this RenderingHints object. Keys that are present in this RenderingHints object, but not in the specified RenderingHints object are not affected.

Parameters:
hints - the set of key/value pairs to be added to this RenderingHints object

clear

public void clear()
Clears this RenderingHints object of all key/value pairs.

Specified by:
clear in interface Map

remove

public Object remove(Object key)
Removes the key and its corresponding value from this RenderingHints object. This method does nothing if the key is not in this RenderingHints object.

Specified by:
remove in interface Map
Parameters:
key - the rendering hints key that needs to be removed
Returns:
the value to which the key had previously been mapped in this RenderingHints object, or null if the key did not have a mapping.
Throws:
ClassCastException - key is not of type RenderingHints.Key.

putAll

public void putAll(Map m)
Copies all of the mappings from the specified Map to this RenderingHints. These mappings replace any mappings that this RenderingHints had for any of the keys currently in the specified Map.

Specified by:
putAll in interface Map
Parameters:
m - the specified Map
Throws:
ClassCastException - class of a key or value in the specified Map prevents it from being stored in this RenderingHints.
IllegalArgumentException - some aspect of a key or value in the specified Map prevents it from being stored in this RenderingHints.

keySet

public Set keySet()
Returns a Set view of the Keys contained in this RenderingHints. The Set is backed by the RenderingHints, so changes to the RenderingHints are reflected in the Set, and vice-versa. If the RenderingHints is modified while an iteration over the Set is in progress, the results of the iteration are undefined. The Set supports element removal, which removes the corresponding mapping from the RenderingHints, via the Iterator.remove, Set.remove, removeAll retainAll, and clear operations. It does not support the add or addAll operations.

Specified by:
keySet in interface Map
Returns:
a Set view of the keys contained in this RenderingHints.

values

public Collection values()
Returns a Collection view of the values contained in this RenderinHints. The Collection is backed by the RenderingHints, so changes to the RenderingHints are reflected in the Collection, and vice-versa. If the RenderingHints is modified while an iteration over the Collection is in progress, the results of the iteration are undefined. The Collection supports element removal, which removes the corresponding mapping from the RenderingHints, via the Iterator.remove, Collection.remove, removeAll, retainAll and clear operations. It does not support the add or addAll operations.

Specified by:
values in interface Map
Returns:
a Collection view of the values contained in this RenderingHints.

entrySet

public Set entrySet()
Returns a Set view of the mappings contained in this RenderingHints. Each element in the returned Set is a Map.Entry. The Set is backed by the RenderingHints, so changes to the RenderingHints are reflected in the Set, and vice-versa. If the RenderingHints is modified while while an iteration over the Set is in progress, the results of the iteration are undefined.

The entrySet returned from a RenderingHints object is not modifiable.

Specified by:
entrySet in interface Map
Returns:
a Set view of the mappings contained in this RenderingHints.

equals

public boolean equals(Object o)
Compares the specified Object with this RenderingHints for equality. Returns true if the specified object is also a Map and the two Map objects represent the same mappings. More formally, two Map objects t1 and t2 represent the same mappings if t1.keySet().equals(t2.keySet()) and for every key k in t1.keySet(),
 (t1.get(k)==null ? t2.get(k)==null : t1.get(k).equals(t2.get(k)))
 
. This ensures that the equals method works properly across different implementations of the Map interface.

Specified by:
equals in interface Map
Overrides:
equals in class Object
Parameters:
o - Object to be compared for equality with this RenderingHints.
Returns:
true if the specified Object is equal to this RenderingHints.
See Also:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
Returns the hash code value for this RenderingHints. The hash code of a RenderingHints is defined to be the sum of the hashCodes of each Entry in the RenderingHints object's entrySet view. This ensures that t1.equals(t2) implies that t1.hashCode()==t2.hashCode() for any two Map objects t1 and t2, as required by the general contract of Object.hashCode.

Specified by:
hashCode in interface Map
Overrides:
hashCode in class Object
Returns:
the hash code value for this RenderingHints.
See Also:
Map.Entry.hashCode(), Object.hashCode(), Object.equals(Object), equals(Object)

clone

public Object clone()
Creates a clone of this RenderingHints object that has the same contents as this RenderingHints object.

Overrides:
clone in class Object
Returns:
a clone of this instance.
See Also:
Cloneable

toString

public String toString()
Returns a rather long string representation of the hashmap which contains the mappings of keys to values for this RenderingHints object.

Overrides:
toString in class Object
Returns:
a string representation of this object.