Класс 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 с макетом данных и цветовой моделью, совместимой с этим GraphicsConfiguration.

BufferedImage createCompatibleImage​(int width, int height, int transparency)

Возвращает BufferedImage, который поддерживает указанную прозрачность и имеет макет данных и цветовую модель, совместимую с этим GraphicsConfiguration.

VolatileImage createCompatibleVolatileImage​(int width, int height)

Возвращает VolatileImage с макетом данных и цветовой моделью, совместимой с этим GraphicsConfiguration.

VolatileImage createCompatibleVolatileImage​(int width, int height, int transparency)

Возвращает VolatileImage с макетом данных и цветовой моделью, совместимой с этим GraphicsConfiguration.

VolatileImage createCompatibleVolatileImage​(int width, int height, ImageCapabilities caps)

Возвращает VolatileImage с макетом данных и цветовой моделью, совместимой с этим GraphicsConfiguration, используя указанные возможности изображения.

VolatileImage createCompatibleVolatileImage​(int width, int height, ImageCapabilities caps, int transparency)

Возвращает VolatileImage с макетом данных и цветовой моделью, совместимой с этим GraphicsConfiguration, используя указанные возможности изображения и значение прозрачности.

abstract Rectangle getBounds()

Возвращает границы GraphicsConfiguration в координатах устройства.

BufferCapabilities getBufferCapabilities()

Возвращает возможности буферизации этого GraphicsConfiguration.

abstract ColorModel getColorModel()

Возвращает ColorModel, связанный с этим GraphicsConfiguration.

abstract ColorModel getColorModel​(int transparency)

Возвращает 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.

Методы, объявленные в классе 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.

Возвращает:
объект 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

Spec-Zone .ru
спецификации, руководства, описания, API