Device-dependent means that, for example, the same color defined in RGB might look different on one monitor when compared to how it looks on a different monitor. The new java.awt.font package supports glyphs and text with multiple fonts. Text and glyphs can be transformed and drawn into a graphics context just like any geometric shape. The new java.awt.geom package lets you create basic geometry shapes and perform affine transformations. The new AffineTransform class translates, rotates, scales, and shears geometry shapes while maintaining parallel lines.
All lines parallel before the affine transformation are parallel after the transformation.
Points now have integer, float, or double precision, and lines have float precision. New point classes are Point2D abstract base class, Point2D.Double , and Point2D.Float . The pre-existing java.awt.Point class provides integer precision. You can now create regular rectangles with double or float precision, and round rectangles with float precision. New regular rectangle classes are Rectangle2D abstract base class, Rectangle2D.Double , and Rectangle2D.Float .