Класс GraphicsConfiguration
public abstract class GraphicsConfiguration extends Object
GraphicsConfiguration описывает характеристики графического устройства, такого как принтер или монитор. Может быть несколько объектов GraphicsConfiguration, связанных с одним графическим устройством, представляющих различные режимы или возможности рисования. Соответствующая структура в нативном коде будет различаться в зависимости от платформы. Например, в системах оконного интерфейса X11 каждый визуальный объект является разным GraphicsConfiguration. В Microsoft Windows объекты GraphicsConfiguration представляют доступные форматы пикселей в текущем разрешении и цветовой глубине. В виртуальной многоэкранной среде, где область рабочего стола может охватывать несколько физических экранов, границы объектов 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); Чтобы определить, является ли ваша среда виртуальной многоэкранной средой, вызовите метод getBounds для каждого из объектов GraphicsConfiguration в вашей системе. Если какая-либо из координат начала возвращаемых границ не равна (0, 0), ваша среда является виртуальной многоэкранной средой.
Вы также можете использовать getBounds для определения границ виртуального устройства. Для этого сначала вызовите метод getBounds для каждого из объектов GraphicsConfiguration в вашей системе. Затем вычислите объединение всех границ, возвращённых методами 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());
}
}
- См. также:
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Это абстрактный класс, который нельзя создать напрямую. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
BufferedImage |
createCompatibleImage |
Возвращает BufferedImage с форматированием данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. |
BufferedImage |
createCompatibleImage |
Возвращает BufferedImage, поддерживающий указанную прозрачность и имеющий формат данных и цветовую модель, совместимые с этим GraphicsConfiguration. |
VolatileImage |
createCompatibleVolatileImage |
Возвращает VolatileImage с форматированием данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. |
VolatileImage |
createCompatibleVolatileImage |
Возвращает VolatileImage с форматированием данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. |
VolatileImage |
createCompatibleVolatileImage |
Возвращает VolatileImage с форматированием данных и цветовой моделью, совместимыми с этим GraphicsConfiguration, используя указанные возможности изображения. |
VolatileImage |
createCompatibleVolatileImage |
Возвращает VolatileImage с форматированием данных и цветовой моделью, совместимыми с этим GraphicsConfiguration, используя указанные возможности изображения и значение прозрачности. |
abstract Rectangle |
getBounds() |
Возвращает границы GraphicsConfiguration в координатах устройства. |
BufferCapabilities |
getBufferCapabilities() |
Возвращает возможности буферизации этого GraphicsConfiguration. |
abstract ColorModel |
getColorModel() |
Возвращает ColorModel, связанный с этим GraphicsConfiguration. |
abstract ColorModel |
getColorModel |
Возвращает ColorModel, связанный с этим GraphicsConfiguration, который поддерживает указанную прозрачность. |
abstract AffineTransform |
getDefaultTransform() |
Возвращает по умолчанию AffineTransform для этого GraphicsConfiguration. |
abstract GraphicsDevice |
getDevice() |
Возвращает GraphicsDevice, связанный с этим GraphicsConfiguration. |
ImageCapabilities |
getImageCapabilities() |
Возвращает возможности изображения этого GraphicsConfiguration. |
abstract AffineTransform |
getNormalizingTransform() |
Возвращает AffineTransform, который может быть соединён с по умолчанию AffineTransform GraphicsConfiguration, так что 72 единицы в пространстве пользователя равны 1 дюйму в пространстве устройства. |
boolean |
isTranslucencyCapable() |
Возвращает, поддерживает ли этот GraphicsConfiguration тип прозрачности PERPIXEL_TRANSLUCENT. |
Краткое описание конструкторов
GraphicsConfiguration
protected GraphicsConfiguration()
- См. также:
Краткое описание методов
getDevice
public abstract GraphicsDevice getDevice()
GraphicsDevice, связанный с этим GraphicsConfiguration.- Возвращает:
- объект
GraphicsDevice, связанный с этимGraphicsConfiguration.
createCompatibleImage
public BufferedImage createCompatibleImage(int width, int height)
BufferedImage с макетом данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. Этот метод не имеет никакого отношения к отображению памяти устройства. Возвращенный BufferedImage имеет макет и цветовую модель, наиболее близкие к этой собственной конфигурации устройства, и поэтому могут быть оптимально скопированы на это устройство.- Параметры:
-
width- ширина возвращаемогоBufferedImage -
height- высота возвращаемогоBufferedImage - Возвращает:
BufferedImage, макет данных и цветовая модель которого совместимы с этимGraphicsConfiguration.
createCompatibleImage
public BufferedImage createCompatibleImage(int width, int height, int transparency)
BufferedImage, который поддерживает указанную прозрачность и имеет макет данных и цветовую модель, совместимые с этим GraphicsConfiguration. Этот метод не имеет никакого отношения к отображению памяти устройства. Возвращенный BufferedImage имеет макет и цветовую модель, которые могут быть оптимально скопированы на устройство с этим GraphicsConfiguration.- Параметры:
-
width- ширина возвращаемогоBufferedImage -
height- высота возвращаемогоBufferedImage -
transparency- указанный режим прозрачности - Возвращает:
BufferedImage, макет данных и цветовая модель которого совместимы с этимGraphicsConfiguration, а также поддерживает указанную прозрачность.- Исключения:
-
IllegalArgumentException- если прозрачность не является допустимым значением - См. также:
createCompatibleVolatileImage
public VolatileImage createCompatibleVolatileImage(int width, int height)
VolatileImage с макетом данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. Возвращенный VolatileImage может иметь данные, которые хранятся оптимально для базового графического устройства, и поэтому может извлечь выгоду из ускорения рендеринга, зависящего от платформы.- Параметры:
-
width- ширина возвращаемогоVolatileImage -
height- высота возвращаемогоVolatileImage - Возвращает:
VolatileImage, макет данных и цветовая модель которого совместимы с этимGraphicsConfiguration.- С версии:
- 1.4
- См. также:
createCompatibleVolatileImage
public VolatileImage createCompatibleVolatileImage(int width, int height, int transparency)
VolatileImage с макетом данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. Возвращенный VolatileImage может иметь данные, которые хранятся оптимально для базового графического устройства, и поэтому может извлечь выгоду из ускорения рендеринга, зависящего от платформы.- Параметры:
-
width- ширина возвращаемогоVolatileImage -
height- высота возвращаемогоVolatileImage -
transparency- указанный режим прозрачности - Возвращает:
VolatileImage, макет данных и цветовая модель которого совместимы с этимGraphicsConfiguration.- Исключения:
-
IllegalArgumentException- если прозрачность не является допустимым значением - С версии:
- 1.5
- См. также:
createCompatibleVolatileImage
public VolatileImage createCompatibleVolatileImage(int width, int height, ImageCapabilities caps) throws AWTException
VolatileImage с макетом данных и цветовой моделью, совместимыми с этим GraphicsConfiguration, используя указанные возможности изображения. Если параметр caps равен null, он фактически игнорируется, и этот метод создаст VolatileImage без учета ограничений ImageCapabilities. Возвращенный VolatileImage имеет макет и цветовую модель, наиболее близкие к этой собственной конфигурации устройства, и поэтому могут быть оптимально скопированы на это устройство.- Параметры:
-
width- ширина возвращаемогоVolatileImage -
height- высота возвращаемогоVolatileImage -
caps- возможности изображения - Возвращает:
VolatileImage, макет данных и цветовая модель которого совместимы с этимGraphicsConfiguration.- Исключения:
-
AWTException- если указанные возможности изображения не могут быть удовлетворены этой графической конфигурацией - С версии:
- 1.4
createCompatibleVolatileImage
public VolatileImage createCompatibleVolatileImage(int width, int height, ImageCapabilities caps, int transparency) throws AWTException
VolatileImage с макетом данных и цветовой моделью, совместимыми с этим GraphicsConfiguration, используя указанные возможности изображения и значение прозрачности. Если параметр caps равен null, он фактически игнорируется, и этот метод создаст VolatileImage без учета ограничений ImageCapabilities. Возвращенный VolatileImage имеет макет и цветовую модель, наиболее близкие к этой собственной конфигурации устройства, и поэтому могут быть оптимально скопированы на это устройство.- Параметры:
-
width- ширина возвращаемогоVolatileImage -
height- высота возвращаемогоVolatileImage -
caps- возможности изображения -
transparency- указанный режим прозрачности - Возвращает:
VolatileImage, макет данных и цветовая модель которого совместимы с этимGraphicsConfiguration.- Исключения:
-
IllegalArgumentException- если прозрачность не является допустимым значением -
AWTException- если указанные возможности изображения не могут быть удовлетворены этой графической конфигурацией - С версии:
- 1.5
- См. также:
getColorModel
public abstract ColorModel getColorModel()
ColorModel, связанный с этим GraphicsConfiguration.- Возвращает:
- объект
ColorModel, связанный с этимGraphicsConfiguration.
getColorModel
public abstract ColorModel getColorModel(int transparency)
ColorModel, связанный с этим GraphicsConfiguration, который поддерживает указанную прозрачность.- Параметры:
-
transparency- указанный режим прозрачности - Возвращает:
- объект
ColorModel, связанный с этимGraphicsConfigurationи поддерживающий указанную прозрачность, или null, если прозрачность не является допустимым значением. - См. также:
getDefaultTransform
public abstract AffineTransform getDefaultTransform()
AffineTransform для этого GraphicsConfiguration. Это преобразование обычно является тождественным преобразованием для большинства обычных экранов. Стандартное преобразование сопоставляет координаты устройству таким образом, что 72 единицы координат пользовательского пространства приблизительно соответствуют 1 дюйму в пространстве устройства. Нормирующее преобразование может использоваться для более точного отображения этого соответствия. Координаты в пространстве координат, определяемом стандартным преобразованием AffineTransform для устройств экрана и принтера, имеют начало в верхнем левом углу целевой области устройства, при этом координаты X увеличиваются вправо, а координаты Y увеличиваются вниз. Для буферов изображений, не связанных с устройством, таких как те, которые не созданы createCompatibleImage, это преобразование является тождественным преобразованием.- Returns:
- стандартное преобразование
AffineTransformдля этогоGraphicsConfiguration.
getNormalizingTransform
public abstract AffineTransform getNormalizingTransform()
AffineTransform устройства GraphicsConfiguration, чтобы 72 единицы в пользовательском пространстве соответствовали 1 дюйму в пространстве устройства. Для конкретного Graphics2D, g, можно сбросить преобразование для создания такого соответствия, используя следующий псевдокод:
GraphicsConfiguration gc = g.getDeviceConfiguration();
g.setTransform(gc.getDefaultTransform());
g.transform(gc.getNormalizingTransform());
Обратите внимание, что иногда это преобразование является тождественным, например, для принтеров или вывода метафайлов, и что это преобразование является точным лишь в той мере, в которой это отражено информацией, предоставленной подлежащей системой. Для буферов изображений, не связанных с устройством, таких как те, которые не созданы createCompatibleImage, это преобразование является тождественным, так как нет действительного измерения расстояния.- Returns:
- преобразование для конкатенации со стандартным преобразованием
AffineTransform, чтобы 72 единицы в пользовательском пространстве отображались как 1 дюйм в пространстве устройства.
getBounds
public abstract Rectangle getBounds()
GraphicsConfiguration в координатах устройства. В многоэкранной среде с виртуальным устройством границы могут иметь отрицательные значения X или Y.- Returns:
- границы области, покрываемой этим
GraphicsConfiguration. - Since:
- 1.3
getBufferCapabilities
public BufferCapabilities getBufferCapabilities()
GraphicsConfiguration.- Returns:
- возможности буферизации этого объекта графической конфигурации
- Since:
- 1.4
getImageCapabilities
public ImageCapabilities getImageCapabilities()
GraphicsConfiguration.- Returns:
- возможности работы с изображениями для этого объекта графической конфигурации
- Since:
- 1.4
isTranslucencyCapable
public boolean isTranslucencyCapable()
GraphicsConfiguration тип прозрачности PERPIXEL_TRANSLUCENT.- Returns:
- указывает, поддерживает ли данная графическая конфигурация эффекты прозрачности.
- Since:
- 1.7
- See Also:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/java/awt/GraphicsConfiguration.html