ImageGrayscaleMask
Inheritance: java.lang.Object
All Implemented Interfaces: com.aspose.imaging.magicwand.imagemasks.IImageMask
public class ImageGrayscaleMask implements IImageMask
描述灰度图像掩码。
构造函数
| 构造函数 | 描述 |
|---|---|
| ImageGrayscaleMask(int width, int height) | 使用指定的宽度和高度初始化 ImageGrayscaleMask 类的新实例。 |
| ImageGrayscaleMask(RasterImage image) | 使用指定的现有 RasterImage 的尺寸初始化 ImageGrayscaleMask 类的新实例。 |
方法
Example: The example shows how to select a complicated area of an image using Magic Wand tool and the ability to interact with masks (invert, union, subtract).
String imageFilePath = "input.png";
String outputFilePath = "masked-complex.png";
try (RasterImage image = (RasterImage)Image.load(imageFilePath))
{
// 使用魔棒工具基于像素 (845, 128) 的色调和颜色创建新掩码
MagicWandTool.select(image, new MagicWandSettings(845, 128))
// 将现有掩码与由魔棒工具创建的指定掩码合并
.union(new MagicWandSettings(416, 387))
// 反转现有掩码
.invert()
// 从现有掩码中减去由魔棒工具创建的、具有指定阈值的指定掩码
.subtract(new MagicWandSettings(1482, 346) {{ setThreshold(69); }})
// 逐个从现有掩码中减去四个指定的矩形掩码
.subtract(new RectangleMask(0, 0, 800, 150))
.subtract(new RectangleMask(0, 380, 600, 220))
.subtract(new RectangleMask(930, 520, 110, 40))
.subtract(new RectangleMask(1370, 400, 120, 200))
// 使用指定设置羽化掩码
.getFeathered(new FeatheringSettings() {{ setSize(3); }})
// 将掩码应用于图像
.apply();
// 保存图像
image.save(outputFilePath);
}
ImageGrayscaleMask(int width, int height)
public ImageGrayscaleMask(int width, int height)
使用指定的宽度和高度初始化 ImageGrayscaleMask 类的新实例。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| 宽度 | int | 掩码的宽度。 |
| 高度 | int | 掩码的高度。 |
ImageGrayscaleMask(RasterImage image)
public ImageGrayscaleMask(RasterImage image)
使用指定的现有 RasterImage 的尺寸初始化 ImageGrayscaleMask 类的新实例。指定的 RasterImage 将被存储为源图像。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| image | RasterImage | 源图像。 |
getSource()
public final RasterImage getSource()
获取用于创建此掩码的源图像(如果存在)。
Returns: RasterImage - the source image used to create this mask, if exists.
getWidth()
public final int getWidth()
获取此掩码的宽度(以像素为单位)。
Returns: int - 此掩码的宽度(以像素为单位)。
getHeight()
public final int getHeight()
获取此掩码的高度(以像素为单位)。
Returns: int - 此掩码的高度(以像素为单位)。
getBounds()
public final Rectangle getBounds()
获取此掩码的边界(以像素为单位)。
Returns: Rectangle - the bounds, in pixels, of this mask.
getSelectionBounds()
public final Rectangle getSelectionBounds()
获取掩码选定部分的边界(以像素为单位)。
Returns: Rectangle - the bounds of the selected part of the mask, in pixels.
get_Item(int x, int y)
public final byte get_Item(int x, int y)
获取指定像素的透明度。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| x | int | 像素的 x 坐标。 |
| y | int | 像素的 Y 坐标。取值:字节值;透明时为 0;不透明时为 255。 |
Returns: byte
set_Item(int x, int y, byte value)
public final void set_Item(int x, int y, byte value)
设置指定像素的透明度。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| x | int | 像素的 x 坐标。 |
| y | int | 像素的 Y 坐标。取值:字节值;透明时为 0;不透明时为 255。 |
| value | byte | 指定像素的透明度。 |
isOpaque(int x, int y)
public final boolean isOpaque(int x, int y)
检查指定像素是否不透明。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| x | int | 像素的 x 坐标。 |
| y | int | 像素的 y 坐标。 |
Returns: boolean - 如果指定像素不透明则为 true;否则为 false。
isTransparent(int x, int y)
public final boolean isTransparent(int x, int y)
检查指定像素是否透明。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| x | int | 像素的 x 坐标。 |
| y | int | 像素的 y 坐标。 |
Returns: boolean - 如果指定像素透明则为 true;否则为 false。
getByteOpacity(int x, int y)
public final byte getByteOpacity(int x, int y)
获取指定像素的透明度,精确到字节。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| x | int | 像素的 x 坐标。 |
| y | int | 像素的 y 坐标。 |
Returns: byte - 字节值,表示指定像素的透明度。
deepClone()
public final Object deepClone()
创建一个新对象,该对象是当前实例的副本。
Returns: java.lang.Object - 此实例的副本的新对象。
apply()
public final void apply()
如果存在,则将当前掩码应用于 RasterImage 源。
applyTo(RasterImage image)
public final void applyTo(RasterImage image)
将当前掩码应用于指定的 RasterImage。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| image | RasterImage | 要应用掩码的图像。 |
crop(Size size)
public final ImageGrayscaleMask crop(Size size)
使用指定的尺寸裁剪掩码。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| size | Size | 指定的大小。 |
Returns: ImageGrayscaleMask - A cropped ImageGrayscaleMask.
crop(int width, int height)
public final ImageGrayscaleMask crop(int width, int height)
使用指定的宽度和高度裁剪掩码。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| 宽度 | int | 指定的宽度。 |
| 高度 | int | 指定的高度。 |
Returns: ImageGrayscaleMask - A cropped ImageGrayscaleMask.
crop(Rectangle rectangle)
public final ImageGrayscaleMask crop(Rectangle rectangle)
使用指定的矩形裁剪掩码。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| rectangle | Rectangle | 指定的矩形。 |
Returns: ImageGrayscaleMask - A cropped ImageGrayscaleMask.
invert()
public final ImageGrayscaleMask invert()
获取当前掩码的反转。
Returns: ImageGrayscaleMask - New ImageGrayscaleMask.
union(ImageGrayscaleMask mask)
public final ImageGrayscaleMask union(ImageGrayscaleMask mask)
两个掩码的并集。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| mask | ImageGrayscaleMask | 提供的掩码 |
Returns: ImageGrayscaleMask - New ImageGrayscaleMask.
subtract(ImageGrayscaleMask mask)
public final ImageGrayscaleMask subtract(ImageGrayscaleMask mask)
获取从当前掩码中减去提供的掩码的结果。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| mask | ImageGrayscaleMask | 提供的掩码 |
Returns: ImageGrayscaleMask - New ImageGrayscaleMask.
intersect(ImageGrayscaleMask mask)
public final ImageGrayscaleMask intersect(ImageGrayscaleMask mask)
获取当前掩码与提供的掩码的交集。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| mask | ImageGrayscaleMask | 提供的掩码 |
Returns: ImageGrayscaleMask - New ImageGrayscaleMask.
exclusiveDisjunction(ImageGrayscaleMask mask)
public final ImageGrayscaleMask exclusiveDisjunction(ImageGrayscaleMask mask)
获取当前掩码与提供的掩码的异或。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| mask | ImageGrayscaleMask | 提供的掩码 |
Returns: ImageGrayscaleMask - New ImageGrayscaleMask.
op_LogicalNot(ImageGrayscaleMask a)
public static ImageGrayscaleMask op_LogicalNot(ImageGrayscaleMask a)
反转掩码。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| a | ImageGrayscaleMask | 待反转的掩码。 |
Returns: ImageGrayscaleMask - New ImageGrayscaleMask.
op_Addition(ImageGrayscaleMask a, ImageGrayscaleMask b)
public static ImageGrayscaleMask op_Addition(ImageGrayscaleMask a, ImageGrayscaleMask b)
两个掩码的并集。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| a | ImageGrayscaleMask | 第一个掩码。 |
| b | ImageGrayscaleMask | 第二个掩码。 |
Returns: ImageGrayscaleMask - New ImageGrayscaleMask.
op_Subtraction(ImageGrayscaleMask a, ImageGrayscaleMask b)
public static ImageGrayscaleMask op_Subtraction(ImageGrayscaleMask a, ImageGrayscaleMask b)
从第一个掩码中减去第二个掩码。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| a | ImageGrayscaleMask | 第一个掩码。 |
| b | ImageGrayscaleMask | 第二个掩码。 |
Returns: ImageGrayscaleMask - New ImageGrayscaleMask.
op_Multiply(ImageGrayscaleMask a, ImageGrayscaleMask b)
public static ImageGrayscaleMask op_Multiply(ImageGrayscaleMask a, ImageGrayscaleMask b)
两个掩码的交集。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| a | ImageGrayscaleMask | 第一个掩码。 |
| b | ImageGrayscaleMask | 第二个掩码。 |
Returns: ImageGrayscaleMask - New ImageGrayscaleMask.
op_ExclusiveOr(ImageGrayscaleMask a, ImageGrayscaleMask b)
public static ImageGrayscaleMask op_ExclusiveOr(ImageGrayscaleMask a, ImageGrayscaleMask b)
两个掩码的异或。
Parameters:
| 参数 | 类型 | 描述 |
|---|---|---|
| a | ImageGrayscaleMask | 第一个掩码。 |
| b | ImageGrayscaleMask | 第二个掩码。 |
Returns: ImageGrayscaleMask - New ImageGrayscaleMask.