Class MagicWandTool
Název místa: Aspose.Imaging.MagicWand Shromáždění: Aspose.Imaging.dll (25.4.0)
Klasa pro magický wand algoritmus hlavní logika.
public class MagicWandTool : IPartialArgb32PixelLoader
Inheritance
Implements
Dědiční členové
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
Příklad ukazuje, jak vybrat jednoduchou oblast obrazu na základě tónu a barvy jakéhokoli pixelu pomocí nástroje Magic Wand.
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
});
}
Příklad ukazuje, jak vybrat komplikovanou oblast obrazu pomocí nástroje Magic Wand a schopnost interakce s masky (invert, union, substrát).
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(Vzdálenost, int[]a[], bod, bod a bod)
Zpracovává nabité pixely .
public void Process(Rectangle pixelsRectangle, int[] pixels, Point start, Point end)
Parameters
pixelsRectangle
Rectangle
Pixel je rektangulárn.
pixels
int
[]a[]
32bitové pixely ARGB.
start
Point
Pokud to není stejné jako (levo, nahoře), znamená to, že to není plný rektangle máme.
end
Point
Pokud není stejný jako (vpravo, dolní) znamená, že to není plný rektangle máme.
Select(Rozhraní, MagicWandSettings)
Vytváří nový Aspose.Imaging.MagicWand.ImageMasks.ImageBitMask založený na Aspose.Imaging.MagicWand.MagicWandSettings a zdroj Aspose.Imaging.RasterImage.
public static ImageBitMask Select(RasterImage source, MagicWandSettings settings)
Parameters
source
RasterImage
Raster obrázek pro algoritmus pracovat přes.
settings
MagicWandSettings
Nastavení magického wandového algoritmu používaného při vytváření masky.
Returns
Nový Aspose.Imaging.MagicWand.ImageMasks.ImageBitMask.