Class MagicWandTool
Το όνομα: Aspose.Imaging.MagicWand Συγκέντρωση: Aspose.Imaging.dll (25.4.0)
Η τάξη για το μαγικό wand αλγόριθμο κύρια λογική.
public class MagicWandTool : IPartialArgb32PixelLoader
Inheritance
Implements
Κληρονομημένα μέλη
object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()
Examples
Το παράδειγμα δείχνει πώς να επιλέξετε μια απλή περιοχή μιας εικόνας με βάση τον τόνο και το χρώμα κάθε pixel χρησιμοποιώντας το εργαλείο 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
});
}
Το παράδειγμα δείχνει πώς να επιλέξετε μια περίπλοκη περιοχή μιας εικόνας χρησιμοποιώντας το εργαλείο Magic Wand και την ικανότητα αλληλεπίδρασης με μάσκες (invert, union, substract).
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(ΠΕΡΙΣΣΣΟΤΕΡΑ, INT[ ]Το σημείο, το σημείο)
Επεξεργάζεται τα φορτισμένα pixels.
public void Process(Rectangle pixelsRectangle, int[] pixels, Point start, Point end)
Parameters
pixelsRectangle
Rectangle
Τα pixels είναι ορθογώνια.
pixels
int
[ ]
Τα 32-bit ARGB pixels
start
Point
Αν δεν είναι ίσο με (αριστερά, πάνω) σημαίνει ότι δεν είναι πλήρης ορθογώνιο έχουμε.
end
Point
Αν δεν είναι ίσο με (δεξιά, κάτω) σημαίνει ότι δεν είναι πλήρης ορθογώνιο έχουμε.
Select(Ετικέτες MagicWandSettings)
Δημιουργεί ένα νέο Aspose.Imaging.MagicWand.ImageMasks.ImageBitMask με βάση το Aspose.Imaging.MagicWand.MagicWandSettings και την πηγή Aspose.Imaging.RasterImage.
public static ImageBitMask Select(RasterImage source, MagicWandSettings settings)
Parameters
source
RasterImage
Raster εικόνα για το αλγόριθμο να λειτουργήσει πέρα.
settings
MagicWandSettings
Οι ρυθμίσεις του αλγόριθμου μαγικού βάντα που χρησιμοποιείται για τη δημιουργία μάσκας.
Returns
Νέο Aspose.Imaging.MagicWand.ImageMasks.ImageBitMask.