Класс RescaleOp
- Все реализованные интерфейсы:
-
BufferedImageOp,RasterOp
public class RescaleOp extends Object implements BufferedImageOp, RasterOp
Псевдокод операции масштабирования:
for each pixel from Source object {
for each band/component of the pixel {
dstElement = (srcElement*scaleFactor) + offset
}
}
Для растровых изображений масштабирование выполняется по каналам. Количество наборов констант масштабирования может быть одним, в этом случае одни и те же константы применяются ко всем каналам, или оно должно быть равно количеству каналов исходного растрового изображения.
Для BufferedImages масштабирование выполняется по цветовым и альфа-компонентам. Количество наборов констант масштабирования может быть одним, в этом случае одни и те же константы применяются ко всем цветовым (но не альфа) компонентам. В противном случае, количество наборов констант масштабирования может быть равно количеству цветовых компонентов исходного изображения, в этом случае масштабирование альфа-компонента (если он есть) не выполняется. Если ни один из этих случаев не применим, количество наборов констант масштабирования должно быть равно количеству цветовых компонентов исходного изображения плюс альфа-компоненты, в этом случае масштабируются все цветовые и альфа-компоненты.
Исходные BufferedImage с преумноженной альфой обрабатываются так же, как и изображения без преумножения для целей масштабирования. То есть масштабирование выполняется по каналу на исходных данных BufferedImage без учета того, преумножена ли информация. Если требуется преобразование цвета в целевой ColorModel, состояние преумножения как источника, так и назначения будет учтено на этом шаге.
Масштабирование изображений с IndexColorModel не поддерживается.
Если в конструкторе указан объект RenderingHints, то могут быть использованы параметры цветового рендеринга и дithering, когда требуется преобразование цвета.
Обратите внимание, что разрешено использование операции на месте (т. е. исходный и целевой объекты могут быть одним и тем же).
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
RescaleOp |
Создает новый RescaleOp с требуемыми коэффициентами масштабирования и смещениями. |
RescaleOp |
Создает новый RescaleOp с требуемым коэффициентом масштабирования и смещением. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
BufferedImage |
createCompatibleDestImage |
Создает целевое изображение с нулевыми значениями и соответствующим размером и количеством каналов. |
WritableRaster |
createCompatibleDestRaster |
Создает целевое изображение с нулевыми значениями Raster с соответствующим размером и количеством каналов, исходя из источника. |
final BufferedImage |
filter |
Масштабирует исходное BufferedImage. |
final WritableRaster |
filter |
Масштабирует пиксельные данные в исходном Raster. |
final Rectangle2D |
getBounds2D |
Возвращает область границ масштабированного целевого изображения. |
final Rectangle2D |
getBounds2D |
Возвращает область границ масштабированного целевого Raster. |
final int |
getNumFactors() |
Возвращает количество коэффициентов масштабирования и смещений, используемых в этом RescaleOp. |
final float[] |
getOffsets |
Возвращает смещения в заданном массиве. |
final Point2D |
getPoint2D |
Возвращает расположение целевой точки, заданной точкой в источнике. |
final RenderingHints |
getRenderingHints() |
Возвращает параметры рендеринга для данной операции. |
final float[] |
getScaleFactors |
Возвращает коэффициенты масштабирования в заданном массиве. |
Подробное описание конструкторов
RescaleOp
public RescaleOp(float[] scaleFactors, float[] offsets, RenderingHints hints)
- Параметры:
-
scaleFactors- заданные коэффициенты масштабирования -
offsets- заданные смещения -
hints- заданныеRenderingHintsилиnull
RescaleOp
public RescaleOp(float scaleFactor, float offset, RenderingHints hints)
- Параметры:
-
scaleFactor- заданный коэффициент масштабирования -
offset- заданное смещение -
hints- заданныеRenderingHintsилиnull
Подробное описание методов
getScaleFactors
public final float[] getScaleFactors(float[] scaleFactors)
- Параметры:
-
scaleFactors- массив, содержащий коэффициенты масштабирования этогоRescaleOp - Возвращает:
- коэффициенты масштабирования этого
RescaleOp.
getOffsets
public final float[] getOffsets(float[] offsets)
- Параметры:
-
offsets- массив, содержащий смещения этогоRescaleOp - Возвращает:
- смещения этого
RescaleOp.
getNumFactors
public final int getNumFactors()
- Возвращает:
- количество коэффициентов масштабирования и смещений этого
RescaleOp.
filter
public final BufferedImage filter(BufferedImage src, BufferedImage dst)
- Определено в:
-
filterв интерфейсеBufferedImageOp - Параметры:
-
src- изображениеBufferedImageдля фильтрации -
dst- назначение для операции фильтрации илиnull - Возвращает:
- отфильтрованное
BufferedImage. - Исключения:
-
IllegalArgumentException- если цветовая модельColorModelsrcявляетсяIndexColorModel, или если количество коэффициентов масштабирования и смещений в этомRescaleOpне соответствует требованиям, изложенным в комментариях к классу, или если исходные и целевые изображения различаются по размеру.
filter
public final WritableRaster filter(Raster src, WritableRaster dst)
- Определено в:
-
filterв интерфейсеRasterOp - Параметры:
-
src-Rasterдля фильтрации -
dst- назначение для операции фильтрации илиnull - Возвращает:
- отфильтрованный
WritableRaster. - Исключения:
-
IllegalArgumentException- еслиsrcиdstне имеют одинакового количества каналов, или если количество коэффициентов масштабирования и смещений в этомRescaleOpне соответствует требованиям, указанным в комментариях к классу, или если исходный и целевой Raster различаются по размеру.
getBounds2D
public final Rectangle2D getBounds2D(BufferedImage src)
- Определено в:
-
getBounds2Dв интерфейсеBufferedImageOp - Параметры:
-
src- изображениеBufferedImageдля фильтрации - Возвращает:
- Прямоугольник, ограничивающий преобразованное изображение назначения.
getBounds2D
public final Rectangle2D getBounds2D(Raster src)
- Определено в:
-
getBounds2Dв интерфейсеRasterOp - Параметры:
-
src- преобразованный целевойRaster - Возвращает:
- Границы указанного
Raster.
createCompatibleDestImage
public BufferedImage createCompatibleDestImage(BufferedImage src, ColorModel destCM)
- Определено в:
-
createCompatibleDestImageв интерфейсеBufferedImageOp - Параметры:
-
src- Источник изображения для операции фильтрации. -
destCM- Цветовая модель назначения. Если null, используется цветовая модель источника. - Возвращает:
- нулевое изображение назначения.
createCompatibleDestRaster
public WritableRaster createCompatibleDestRaster(Raster src)
Raster с правильным размером и количеством каналов, заданных этим источником.- Определено в:
-
createCompatibleDestRasterв интерфейсеRasterOp - Параметры:
-
src- исходныйRaster - Возвращает:
- нулевой целевой
Raster.
getPoint2D
public final Point2D getPoint2D(Point2D srcPt, Point2D dstPt)
- Определено в:
-
getPoint2Dв интерфейсеBufferedImageOp - Определено в:
-
getPoint2Dв интерфейсеRasterOp - Параметры:
-
srcPt- точка в исходном изображении -
dstPt- целевая точка илиnull - Возвращает:
- местоположение целевой точки.
getRenderingHints
public final RenderingHints getRenderingHints()
- Определено в:
-
getRenderingHintsв интерфейсеBufferedImageOp - Определено в:
-
getRenderingHintsв интерфейсеRasterOp - Возвращает:
- параметры отрисовки этого
RescaleOp.
© 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/image/RescaleOp.html