所有类


java.awt
类 GraphicsConfiguration

java.lang.Object
  继承者 java.awt.GraphicsConfiguration

public abstract class GraphicsConfiguration
   
   
   
   
   
extends Object

GraphicsConfiguration 类描述了图形目标(如打印机或监视器)的特征。有许多与单一图形设备相关的 GraphicsConfiguration 对象,它们表示了不同的绘图模式或功能。相应的本机结构也将会因平台而异。例如,在 X11 窗口系统上,每个可视组件都是一个不同的 GraphicsConfiguration。在 Microsoft Windows 系统上,GraphicsConfiguration 表示当前分辨率和颜色深度下可用的 PixelFormat。

在虚拟设备多屏幕环境中(其中桌面区域可以跨越多个物理屏幕设备),GraphicsConfiguration 对象的边界与虚拟坐标系统相关。当设置组件的位置时,使用 getBounds 来获得所需 GraphicsConfiguration 的边界和 GraphicsConfiguration 坐标位置的偏移量,以下代码示例给出了说明:

      Frame f = new Frame(gc);  // where gc is a GraphicsConfiguration
      Rectangle bounds = gc.getBounds();
      f.setLocation(10 + bounds.x, 10 + bounds.y); 

要确定您的环境是否为虚拟设备环境,可以对系统中的所有 GraphicsConfiguration 对象调用 getBounds。如果所有返回的边界原点都不是 (0, 0),则您的环境为虚拟设备环境。

也可以使用 getBounds 来确定虚拟设备的边界。为此,首先要对系统中的所有 GraphicsConfiguration 对象调用 getBounds。然后计算调用 getBounds 返回的所有边界的并集。此并集就是虚拟设备的边界。以下代码示例可计算虚拟设备的边界。

      Rectangle virtualBounds = new Rectangle();
      GraphicsEnvironment ge = GraphicsEnvironment.
              getLocalGraphicsEnvironment();
      GraphicsDevice[] gs =
              ge.getScreenDevices();
      for (int j = 0; j < gs.length; j++) { 
          GraphicsDevice gd = gs[j];
          GraphicsConfiguration[] gc =
              gd.getConfigurations();
          for (int i=0; i < gc.length; i++) {
              virtualBounds =
                  virtualBounds.union(gc[i].getBounds());
          }
      } 

另请参见:
Window, Frame, GraphicsEnvironment, GraphicsDevice

构造方法摘要
protected GraphicsConfiguration()
          这是一个不可直接实例化的抽象类。
 
方法摘要
abstract  BufferedImage createCompatibleImage(int width, int height)
          返回一个数据布局和颜色模型与此 GraphicsConfiguration 兼容的 BufferedImage
abstract  BufferedImage createCompatibleImage(int width, int height, int transparency)
          返回一个支持指定透明度,并且数据布局和颜色模型与此 GraphicsConfiguration 兼容的 BufferedImage
abstract  VolatileImage createCompatibleVolatileImage(int width, int height)
          返回一个数据布局和颜色模型与此 GraphicsConfiguration 兼容的 VolatileImage
 VolatileImage createCompatibleVolatileImage(int width, int height, ImageCapabilities caps)
          返回一个数据布局和颜色模型与此 GraphicsConfiguration 兼容并使用指定图像功能的 VolatileImage
 VolatileImage createCompatibleVolatileImage(int width, int height, ImageCapabilities caps, int transparency)
          返回一个数据布局和颜色模型与此 GraphicsConfiguration 兼容并使用指定图像功能和透明度值的 VolatileImage
abstract  VolatileImage createCompatibleVolatileImage(int width, int height, int transparency)
          返回一个数据布局和颜色模型与此 GraphicsConfiguration 兼容的 VolatileImage
abstract  Rectangle getBounds()
          返回 GraphicsConfiguration 在设备坐标中的边界。
 BufferCapabilities getBufferCapabilities()
          返回此 GraphicsConfiguration 的缓冲区功能。
abstract  ColorModel getColorModel()
          返回与此 GraphicsConfiguration 相关的 ColorModel
abstract  ColorModel getColorModel(int transparency)
          返回与此 GraphicsConfiguration 相关并支持指定透明度的 ColorModel
abstract  AffineTransform getDefaultTransform()
          返回此 GraphicsConfiguration 默认的 AffineTransform
abstract  GraphicsDevice getDevice()
          返回与此 GraphicsConfiguration 相关的 GraphicsDevice
 ImageCapabilities getImageCapabilities()
          返回此 GraphicsConfiguration 的图像功能。
abstract  AffineTransform getNormalizingTransform()
          返回可与 GraphicsConfiguration 的默认 AffineTransform 连接的 AffineTransform,这样用户空间的 72 单元等于设备空间的 1 英寸。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

GraphicsConfiguration

protected GraphicsConfiguration()
这是一个不可直接实例化的抽象类。必须从合适的工厂或查询方法中获取实例。

另请参见:
GraphicsDevice.getConfigurations(), GraphicsDevice.getDefaultConfiguration(), GraphicsDevice.getBestConfiguration(java.awt.GraphicsConfigTemplate), Graphics2D.getDeviceConfiguration()
方法详细信息

getDevice

public abstract GraphicsDevice getDevice()
返回与此 GraphicsConfiguration 相关的 GraphicsDevice

返回:
一个与此 GraphicsConfiguration 相关的 GraphicsDevice 对象。

createCompatibleImage

public abstract BufferedImage createCompatibleImage(int width,
                                                    int height)
返回一个数据布局和颜色模型与此 GraphicsConfiguration 兼容的 BufferedImage。此方法与设备的内存映射无关。返回的 BufferedImage 其数据布局和颜色模型与本机设备配置最接近,因此最适合于位图传输 (blitted) 到此设备上。

参数:
width - 返回的 BufferedImage 宽度
height - 返回的 BufferedImage 高度
返回:
一个数据布局和颜色模型与此 GraphicsConfiguration 兼容的 BufferedImage

createCompatibleVolatileImage

public abstract VolatileImage createCompatibleVolatileImage(int width,
                                                            int height)
返回一个数据布局和颜色模型与此 GraphicsConfiguration 兼容的 VolatileImage。返回的 VolatileImage 可能有最适合于存储基础图形设备的数据,并且可能因此从特定于平台的呈现加速中受益。

参数:
width - 返回的 VolatileImage 宽度
height - 返回的 VolatileImage 高度
返回:
一个数据布局和颜色模型与此 GraphicsConfiguration 兼容的 VolatileImage
另请参见:
Component.createVolatileImage(int, int)

createCompatibleVolatileImage

public abstract VolatileImage createCompatibleVolatileImage(int width,
                                                            int height,
                                                            int transparency)
返回一个数据布局和颜色模型与此 GraphicsConfiguration 兼容的 VolatileImage。返回的 VolatileImage 可能有最适合于存储基础图形设备的数据,并且可能因此从特定于平台的呈现加速中受益。

参数:
width - 返回的 VolatileImage 宽度
height - 返回的 VolatileImage 高度
transparency - 指定的透明度模式
返回:
一个数据和颜色模型与此 GraphicsConfiguration 兼容的 VolatileImage
抛出:
IllegalArgumentException - 如果透明度不是一个有效值
从以下版本开始:
1.5
另请参见:
Transparency.OPAQUE, Transparency.BITMASK, Transparency.TRANSLUCENT, Component.createVolatileImage(int, int)

createCompatibleVolatileImage

public VolatileImage createCompatibleVolatileImage(int width,
                                                   int height,
                                                   ImageCapabilities caps)
                                            throws AWTException
返回一个数据布局和颜色模型与此 GraphicsConfiguration 兼容并使用指定图像功能的 VolatileImage。返回的 VolatileImage 其数据布局和颜色模型与本机设备配置最接近,因此最适合于位图传输 (blitted) 到此设备上。

参数:
width - 返回的 VolatileImage 宽度
height - 返回的 VolatileImage 高度
caps - 图像功能
返回:
一个数据布局和颜色模型与此 GraphicsConfiguration 兼容的 VolatileImage
抛出:
AWTException - 如果此图形配置无法满足提供的图像功能
从以下版本开始:
1.4

createCompatibleVolatileImage

public VolatileImage createCompatibleVolatileImage(int width,
                                                   int height,
                                                   ImageCapabilities caps,
                                                   int transparency)
                                            throws AWTException
返回一个数据布局和颜色模型与此 GraphicsConfiguration 兼容并使用指定图像功能和透明度值的 VolatileImage。返回的 VolatileImage 其数据布局和颜色模型与本机设备配置最接近,因此最适合于位图传输 (blitted) 到此设备上。

参数:
width - 返回的 VolatileImage 宽度
height - 返回的 VolatileImage 高度
caps - 图像功能
transparency - 指定的透明度模式
返回:
一个数据布局和颜色模型与此 GraphicsConfiguration 兼容的 VolatileImage
抛出:
IllegalArgumentException - 如果透明度不是一个有效值
AWTException - 如果此图形配置无法满足提供的图像功能
从以下版本开始:
1.5
另请参见:
Transparency.OPAQUE, Transparency.BITMASK, Transparency.TRANSLUCENT, Component.createVolatileImage(int, int)

createCompatibleImage

public abstract BufferedImage createCompatibleImage(int width,
                                                    int height,
                                                    int transparency)
返回一个支持指定透明度,并且数据布局和颜色模型与此 GraphicsConfiguration 兼容的 BufferedImage。此方法与设备的内存映射无关。返回的 BufferedImage 其数据布局和颜色模型最适合于位图传输 (blitted) 到利用此 GraphicsConfiguration 的设备上。

参数:
width - 返回的 BufferedImage 宽度
height - 返回的 BufferedImage 高度
transparency - 指定的透明度模式
返回:
一个数据布局和颜色模型与此 GraphicsConfiguration 兼容并且还支持指定透明度的 BufferedImage
抛出:
IllegalArgumentException - 如果透明度不是一个有效值
另请参见:
Transparency.OPAQUE, Transparency.BITMASK, Transparency.TRANSLUCENT

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部