Класс GraphicsConfiguration
- java.lang.Object
-
- java.awt.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());
}
}
- См. также:
-
Window,Frame,GraphicsEnvironment,GraphicsDevice
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected | GraphicsConfiguration() | Это абстрактный класс, который нельзя создать напрямую. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
BufferedImage | createCompatibleImage(int width,
int height) | Возвращает |
BufferedImage | createCompatibleImage(int width,
int height,
int transparency) | Возвращает |
VolatileImage | createCompatibleVolatileImage(int width,
int height) | Возвращает |
VolatileImage | createCompatibleVolatileImage(int width,
int height,
int transparency) | Возвращает |
VolatileImage | createCompatibleVolatileImage(int width,
int height,
ImageCapabilities caps) | Возвращает |
VolatileImage | createCompatibleVolatileImage(int width,
int height,
ImageCapabilities caps,
int transparency) | Возвращает |
abstract Rectangle | getBounds() | Возвращает границы |
BufferCapabilities | getBufferCapabilities() | Возвращает возможности буферизации этого |
abstract ColorModel | getColorModel() | Возвращает |
abstract ColorModel | getColorModel(int transparency) | Возвращает |
abstract AffineTransform | getDefaultTransform() | Возвращает стандартное |
abstract GraphicsDevice | getDevice() | Возвращает |
ImageCapabilities | getImageCapabilities() | Возвращает возможности изображения этого |
abstract AffineTransform | getNormalizingTransform() | Возвращает |
boolean | isTranslucencyCapable() | Возвращает, поддерживает ли этот |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Подробное описание конструкторов
GraphicsConfiguration
protected GraphicsConfiguration()
Это абстрактный класс, который нельзя создать напрямую. Экземпляры должны быть получены из соответствующего фабричного метода или метода запроса.
Методы
getDevice
public abstract GraphicsDevice getDevice()
Возвращает связанное с этим GraphicsConfiguration графическое устройство GraphicsDevice.
- Возвращает:
- объект
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- если режим прозрачности не является допустимым - См. также:
-
Transparency.OPAQUE,Transparency.BITMASK,Transparency.TRANSLUCENT
createCompatibleVolatileImage
public VolatileImage createCompatibleVolatileImage(int width,
int height) Возвращает VolatileImage с структурой данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. Возвращаемый VolatileImage может содержать данные, оптимизированные для графического устройства, и поэтому может использовать ускорение рендеринга, специфичное для платформы.
- Параметры:
-
width- ширина возвращаемогоVolatileImage -
height- высота возвращаемогоVolatileImage - Возвращает:
VolatileImage, структура данных и цветовая модель которого совместимы с этимGraphicsConfiguration.- С тех пор:
- 1.4
- См. также:
Component.createVolatileImage(int, int)
createCompatibleVolatileImage
public VolatileImage createCompatibleVolatileImage(int width,
int height,
int transparency) Возвращает VolatileImage с структурой данных и цветовой моделью, совместимыми с этим GraphicsConfiguration. Возвращаемый VolatileImage может содержать данные, оптимизированные для графического устройства, и поэтому может использовать ускорение рендеринга, специфичное для платформы.
- Параметры:
-
width- ширина возвращаемогоVolatileImage -
height- высота возвращаемогоVolatileImage -
transparency- указанный режим прозрачности - Возвращает:
VolatileImage, структура данных и цветовая модель которого совместима с этимGraphicsConfiguration.- Исключения:
-
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 Возвращает 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
- См. также:
-
Transparency.OPAQUE,Transparency.BITMASK,Transparency.TRANSLUCENT,Component.createVolatileImage(int, int)
getColorModel
public abstract ColorModel getColorModel()
Возвращает связанную с этим GraphicsConfiguration цветовую модель ColorModel.
- Возвращает:
- объект
ColorModel, связанный с этимGraphicsConfiguration.
getColorModel
public abstract ColorModel getColorModel(int transparency)
Возвращает цветовую модель ColorModel с указанным режимом прозрачности, связанную с этим GraphicsConfiguration.
- Параметры:
-
transparency- указанный режим прозрачности - Возвращает:
- объект
ColorModel, связанный с этимGraphicsConfigurationи поддерживающий указанный режим прозрачности, или null, если режим прозрачности не является допустимым. - См. также:
-
Transparency.OPAQUE,Transparency.BITMASK,Transparency.TRANSLUCENT
getDefaultTransform
public abstract AffineTransform getDefaultTransform()
Возвращает стандартное преобразование AffineTransform для этого GraphicsConfiguration.
Это преобразование обычно является единичным преобразованием для большинства обычных экранов. Стандартное преобразование сопоставляет координаты на устройстве таким образом, что 72 единицы координат пользовательского пространства примерно соответствуют 1 дюйму в пространстве устройства. Нормализующее преобразование может быть использовано для более точного отображения. Координаты в пространстве координат, определённом стандартным преобразованием для устройств экрана и принтера, имеют начало координат в верхнем левом углу целевой области устройства, координаты X увеличиваются вправо, а координаты Y увеличиваются вниз. Для буферов изображений, не связанных с устройством, таких как те, что не созданы методом createCompatibleImage, это преобразование — единичное преобразование.
- Возвращает:
- стандартное преобразование для этого
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, это преобразование является единичным, так как нет действительного измерения расстояния.- Возвращает:
- преобразование для конкатенации со стандартным преобразованием
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
- См. также:
Window.setBackground(Color)
© 1993, 2020, 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/11/docs/api/java.desktop/java/awt/GraphicsConfiguration.html