Интерфейс ContextualRenderedImageFactory
- Все суперинтерфейсы:
RenderedImageFactory
public interface ContextualRenderedImageFactory extends RenderedImageFactory
ContextualRenderedImageFactory предоставляет интерфейс для функциональности, которая может отличаться в разных экземплярах RenderableImageOp. Таким образом, разные операции над RenderableImages могут выполняться одним классом, таким как RenderedImageOp, с помощью нескольких экземпляров ContextualRenderedImageFactory. Имя ContextualRenderedImageFactory обычно сокращают до «CRIF».
Все операции, которые должны использоваться в цепочке, независимой от рендеринга, должны реализовывать ContextualRenderedImageFactory.
Классы, реализующие этот интерфейс, должны иметь конструктор без аргументов.
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
RenderedImage |
create |
Создаёт рендеринг, используя RenderContext и ParameterBlock, содержащий источники и параметры операции. |
Rectangle2D |
getBounds2D |
Возвращает область заполнения для результата операции, выполненной на заданном наборе источников, в пространстве, независимом от рендеринга. |
Object |
getProperty |
Получает соответствующий экземпляр свойства, указанного именем параметра. |
String[] |
getPropertyNames() |
Возвращает список имён, распознаваемых getProperty. |
boolean |
isDynamic() |
Возвращает true, если последовательные рендеринги (то есть вызовы create(RenderContext, ParameterBlock)) с одними и теми же аргументами могут давать разные результаты. |
RenderContext |
mapRenderContext |
Преобразует выходной RenderContext операции в RenderContext для каждого из источников операции. |
Методы, объявленные в интерфейсе java.awt.image.renderable.RenderedImageFactory
create
Подробное описание методов
mapRenderContext
RenderContext mapRenderContext(int i, RenderContext renderContext, ParameterBlock paramBlock, RenderableImage image)
Преобразует выходной RenderContext операции в RenderContext для каждого из источников операции. Это полезно для операций, которые могут быть выражены полностью или частично просто как изменения в RenderContext, такие как аффинное преобразование, или для операций, которые хотят получить рендеринги своих источников более низкого качества, чтобы сэкономить вычислительные ресурсы или пропускную способность. Некоторые операции, такие как размытие, также могут использовать этот механизм, чтобы избежать получения источников более высокого качества, чем необходимо.
- Параметры:
-
i- индекс изображения-источника. -
renderContext- RenderContext, применяемый к операции. -
paramBlock- ParameterBlock, содержащий источники и параметры операции. -
image- RenderableImage, который рендерится. - Возвращает:
- RenderContext для источника в указанном индексе вектора параметров, содержащегося в заданном ParameterBlock.
create
RenderedImage create(RenderContext renderContext, ParameterBlock paramBlock)
Создаёт рендеринг, используя RenderContext и ParameterBlock, содержащий источники и параметры операции. Результатом является RenderedImage, учитывающий RenderContext для определения своих размеров и размещения на плоскости изображения. Этот метод содержит «интеллект», который позволяет операции, независимой от рендеринга, адаптироваться к конкретному RenderContext.
- Параметры:
-
renderContext- RenderContext, определяющий рендеринг -
paramBlock- ParameterBlock, содержащий источники и параметры операции - Возвращает:
- RenderedImage, созданный из источников и параметров в заданном ParameterBlock и согласно инструкциям рендеринга в заданном RenderContext.
getBounds2D
Rectangle2D getBounds2D(ParameterBlock paramBlock)
Возвращает область заполнения для результата операции, выполненной на заданном наборе источников, в пространстве, независимом от рендеринга. Границы возвращаются как Rectangle2D, то есть прямоугольник с выравниванием по осям и координатами углов с плавающей точкой.
- Параметры:
-
paramBlock- ParameterBlock, содержащий источники и параметры операции. - Возвращает:
- Rectangle2D, определяющий область заполнения результата в пространстве, независимом от рендеринга.
getProperty
Object getProperty(ParameterBlock paramBlock, String name)
Получает соответствующий экземпляр свойства, указанного именем параметра. Этот метод должен определить, какой экземпляр свойства возвращать, когда существует несколько источников, каждый из которых указывает свойство.
- Параметры:
-
paramBlock- ParameterBlock, содержащий источники и параметры операции. -
name- Строка, содержащая имя желаемого свойства. - Возвращает:
- ссылка на объект, содержащий значение запрошенного свойства.
getPropertyNames
String[] getPropertyNames()
Возвращает список имён, распознаваемых getProperty.
- Возвращает:
- список имён свойств.
isDynamic
boolean isDynamic()
Возвращает true, если последовательные рендеринги (то есть вызовы create(RenderContext, ParameterBlock)) с одними и теми же аргументами могут давать разные результаты. Этот метод может использоваться для определения того, можно ли кэшировать и повторно использовать существующий рендеринг. Возвращение true всегда безопасно.
- Возвращает:
-
trueесли последовательные рендеринги с теми же аргументами могут давать разные результаты;falseв противном случае.
© 1993, 2023, 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/21/docs/api/java.desktop/java/awt/image/renderable/ContextualRenderedImageFactory.html