java.lang.Object java.awt.GraphicsEnvironment
The GraphicsEnvironment class describes the collection of GraphicsDevice objects and Font objects available to a Java(tm) application on a particular platform. The resources in this GraphicsEnvironment might be local or on a remote machine. GraphicsDevice objects can be screens, printers or image buffers and are the destination of Graphics2D drawing methods. Each GraphicsDevice has a number of GraphicsConfiguration objects associated with it. These objects specify the different configurations in which the GraphicsDevice can be used.
Constructor Summary | |
---|---|
protected |
GraphicsEnvironment
() This is an abstract class and cannot be instantiated directly. |
Method Summary | |
---|---|
abstract Graphics2D |
createGraphics
(
BufferedImage
img) Returns a Graphics2D object for rendering into the specified BufferedImage . |
abstract Font [] |
getAllFonts
() Returns an array containing a one-point size instance of all fonts available in this GraphicsEnvironment. |
abstract String |
getAvailableFontFamilyNames
() Returns an array containing the names of all font families |
abstract String |
getAvailableFontFamilyNames
(
Locale
Returns an array containing the |
Point |
getCenterPoint
() Returns the Point where Windows should be centered. |
abstract GraphicsDevice |
getDefaultScreenDevice
() Returns the default screen GraphicsDevice. |
static GraphicsEnvironment |
getLocalGraphicsEnvironment
() Returns the local GraphicsEnvironment. |
Rectangle |
getMaximumWindowBounds
() Returns the maximum bounds for centered Windows. |
abstract GraphicsDevice [] |
getScreenDevices
() Returns an array of all of the screen GraphicsDevice objects. |
static boolean |
isHeadless
() Tests whether or not a display, keyboard, and mouse can be supported in this environment. |
boolean |
isHeadlessInstance
() Returns whether or not a display, keyboard, and mouse can be supported in this graphics environment. |
void |
preferLocaleFonts
()
Indicates a preference for locale-specific fonts in the mapping of logical fonts to physical fonts. |
void |
preferProportionalFonts
()
Indicates a preference for proportional over non-proportional (e.g. |
Methods inherited from class java.lang. Object |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
Constructor Detail |
---|
protected GraphicsEnvironment()
Method Detail |
---|
public static GraphicsEnvironment getLocalGraphicsEnvironment()
public static boolean isHeadless()
public boolean isHeadlessInstance()
public abstract GraphicsDevice[] getScreenDevices() throws HeadlessException
public abstract GraphicsDevice getDefaultScreenDevice() throws HeadlessException
public abstract Graphics2D createGraphics(BufferedImage img)
public abstract Font[] getAllFonts()
This method provides for the application the most precise control over which Font instance is used to render text. If a font in this GraphicsEnvironment has multiple programmable variations, only one instance of that Font is returned in the array, and other variations must be derived by the application.
If a font in this environment has multiple programmable variations, such as Multiple-Master fonts, only one instance of that font is returned in the Font array. The other variations must be derived by the application.
public abstract String[] getAvailableFontFamilyNames()
Typical usage would be for presentation to a user for selection of a particular family name. An application can then specify this name when creating a font, in conjunction with a style, such as bold or italic, giving the font system flexibility in choosing its own best match among multiple fonts in the same font family.
This method provides for the application some control over which Font instance is used to render text, but allows the Font object more flexibility in choosing its own best match among multiple fonts in the same font family.
public abstract String[] getAvailableFontFamilyNames(Locale l)
Typical usage would be for presentation to a user for selection of a particular family name. An application can then specify this name when creating a font, in conjunction with a style, such as bold or italic, giving the font system flexibility in choosing its own best match among multiple fonts in the same font family.
This method provides for the application some control over which Font instance used to render text, but allows the Font object more flexibility in choosing its own best match among multiple fonts in the same font family. If l is null, this method returns an array containing all font family names available in this GraphicsEnvironment.
public void preferLocaleFonts ()
The actual change in font rendering behavior resulting from a call to this method is implementation dependent; it may have no effect at all, or the requested behavior may already match the default behavior. The behavior may differ between font rendering in lightweight and peered components. Since calling this method requests a different font, clients should expect different metrics, and may need to recalculate window sizes and layout. Therefore this method should be called before user interface initialisation.
public void preferProportionalFonts ()
The actual change in font rendering behavior resulting from a call to this method is implementation dependent; it may have no effect at all. The behavior may differ between font rendering in lightweight and peered components. Since calling this method requests a different font, clients should expect different metrics, and may need to recalculate window sizes and layout. Therefore this method should be called before user interface initialisation.
public Point getCenterPoint() throws HeadlessException
public Rectangle getMaximumWindowBounds() throws HeadlessException
To get the usable bounds of a single display, use GraphicsConfiguration.getBounds() and Toolkit.getScreenInsets().