Класс GraphicsConfiguration
public abstract class GraphicsConfiguration extends Object
GraphicsConfiguration описывает характеристики графического устройства, такого как принтер или монитор. Может быть несколько объектов GraphicsConfiguration связанных с одним графическим устройством, представляющих различные режимы или возможности рисования. Соответствующая структура в нативном коде будет различаться в зависимости от платформы. Например, в системах оконного интерфейса X11 каждый визуальный элемент является разным GraphicsConfiguration. В Microsoft Windows, GraphicsConfiguration представляют PixelFormats, доступные в текущем разрешении и глубине цвета. В среде виртуальных устройств с несколькими экранами, где область рабочего стола может охватывать несколько физических экранов, границы объектов 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, чтобы 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, это преобразование является преобразованием тождества.- Возвращает:
- значение по умолчанию
AffineTransformдля этогоGraphicsConfiguration.
getNormalizingTransform
public abstract AffineTransform getNormalizingTransform()
AffineTransform, которое можно конкатенировать с преобразованием по умолчанию AffineTransform объекта GraphicsConfiguration, чтобы 72 единицы в пользовательском пространстве соответствовали 1 дюйму в пространстве устройства. Для конкретного объекта Graphics2D, g, можно сбросить преобразование для создания такого соответствия, используя следующий псевдокод:
GraphicsConfiguration gc = g.getDeviceConfiguration();
g.setTransform(gc.getDefaultTransform());
g.transform(gc.getNormalizingTransform());
Обратите внимание, что иногда это преобразование является преобразованием тождества, например, для принтеров или метафайлов, и что эта точность определяется данными, предоставляемыми основной системой. Для буферов изображений, не связанных с устройством, таких как те, что не созданы createCompatibleImage, это преобразование является преобразованием тождества, так как нет действительного измерения расстояния.- Возвращает:
- преобразование
AffineTransformдля конкатенации с преобразованием по умолчаниюAffineTransform, чтобы 72 единицы в пользовательском пространстве соответствовали 1 дюйму в пространстве устройства.
getBounds
public abstract Rectangle getBounds()
GraphicsConfiguration в координатах устройства. В среде с несколькими экранами и виртуальным устройством границы могут иметь отрицательные значения X или Y.- Возвращает:
- границы области, охватываемой этим
GraphicsConfiguration. - С:
- 1.3
getBufferCapabilities
public BufferCapabilities getBufferCapabilities()
GraphicsConfiguration.- Возвращает:
- возможности буферизации этого объекта конфигурации графики
- С:
- 1.4
getImageCapabilities
public ImageCapabilities getImageCapabilities()
GraphicsConfiguration.- Возвращает:
- возможности работы с изображениями для этого объекта конфигурации графики
- С:
- 1.4
isTranslucencyCapable
public boolean isTranslucencyCapable()
GraphicsConfiguration тип полупрозрачности PERPIXEL_TRANSLUCENT.- Возвращает:
- поддерживает ли заданная конфигурация графики эффекты полупрозрачности.
- С:
- 1.7
- См. также:
© 1993, 2021, 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://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/java/awt/GraphicsConfiguration.html