Class MagicWandTool
Namn på plats: Aspose.Imaging.MagicWand Församling: Aspose.Imaging.dll (25.4.0)
Klassen för magisk wand algoritm huvudlogik.
public class MagicWandTool : IPartialArgb32PixelLoader
Inheritance
Implements
Arvsmedlemmar
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
Exempelet visar hur man väljer ett enkelt område av en bild baserat på ton och färg av någon pixel med Magic Wand-verktyget.
var imageFilePath = "input.png";
using (RasterImage image = (RasterImage)Image.Load(inputFilePath))
{
// Create a new mask using magic wand tool based on tone and color of pixel (120, 100) with custom threshold equal to 150
MagicWandTool
.Select(image, new MagicWandSettings(120, 100) { Threshold = 150 })
// Apply mask to the image
.Apply();
// Save image with forced transparency color type option
image.Save(outputFilePath, new ImageOptions.PngOptions()
{
ColorType = PngColorType.TruecolorWithAlpha
});
}
Exempelet visar hur man väljer ett komplicerat område av en bild med hjälp av Magic Wand-verktyget och förmågan att interagera med masker (inverter, union, substrat).
var imageFilePath = "input.png";
using (RasterImage image = (RasterImage)Image.Load(inputFilePath))
{
// Create a new mask using magic wand tool based on tone and color of pixel (845, 128)
MagicWandTool.Select(image, new MagicWandSettings(845, 128))
// Union the existing mask with the specified one created by magic wand tool
.Union(new MagicWandSettings(416, 387))
// Invert the existing mask
.Invert()
// Subtract the specified mask created by magic wand tool with specified threshold from the existing one
.Subtract(new MagicWandSettings(1482, 346) { Threshold = 69 })
// Subtract four specified rectangle masks from the existing mask one by one
.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))
// Feather mask with specified settings
.GetFeathered(new FeatheringSettings() { Size = 3 })
// Apply mask to the image
.Apply();
// Save image
image.Save(outputFilePath);
}
Methods
Process(Rektangel, int[ ], Point och Point)
Processerar de laddade pixlarna.
public void Process(Rectangle pixelsRectangle, int[] pixels, Point start, Point end)
Parameters
pixelsRectangle
Rectangle
pixlar är rektangulära.
pixels
int
[ ]
Den 32-bitars ARGB pixlar.
start
Point
Om inte lika med (vänster, topp) betyder det att det inte är full rektangle vi har.
end
Point
Om inte lika med (rätten, botten) betyder det att det inte är full rektangle vi har.
Select(RasterImage och MagicWandSettings)
Skapar en ny Aspose.Imaging.MagicWand.ImageMasks.ImageBitMask baserad på Aspose.Imaging.MagicWand.MagicWandSettings och källor Aspose.Imaging.RasterImage.
public static ImageBitMask Select(RasterImage source, MagicWandSettings settings)
Parameters
source
RasterImage
Raster bild för algoritmen att arbeta över.
settings
MagicWandSettings
Settings of magic wand algorithm används i skapandet av mask.
Returns
Nya Aspose.Imaging.MagicWand.ImageMasks.ImageBitMask.