Class MagicWandTool

Class MagicWandTool

Nome do espaço: Aspose.Imaging.MagicWand Assembleia: Aspose.Imaging.dll (25.4.0)

A classe para magia wand algoritmo principal lógica.

public class MagicWandTool : IPartialArgb32PixelLoader

Inheritance

object MagicWandTool

Implements

IPartialArgb32PixelLoader

Membros herdados

object.GetType() , object.MemberwiseClone() , object.ToString() , object.Equals(object?) , object.Equals(object?, object?) , object.ReferenceEquals(object?, object?) , object.GetHashCode()

Examples

O exemplo mostra como selecionar uma área simples de uma imagem com base no tom e cor de qualquer pixel usando a ferramenta 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
                                                                                                                                    });
                                                                                                                                }

O exemplo mostra como selecionar uma área complicada de uma imagem usando a ferramenta Magic Wand e a capacidade de interagir com máscaras (invert, union, substrato).

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(Direção, int[ ], O ponto, o ponto)

Processar os pixels carregados.

public void Process(Rectangle pixelsRectangle, int[] pixels, Point start, Point end)

Parameters

pixelsRectangle Rectangle

Os pixels são rectangulares.

pixels int [ ]

Os 32 bits de pixels ARGB.

start Point

Se não é igual a (esquerda, topo) significa que não é um rectangulo completo que temos.

end Point

Se não é igual a (direita, fundo) significa que não é um rectangulo completo que temos.

Select(Arquivo da tag: MagicWandSettings)

Cria um novo Aspose.Imaging.MagicWand.ImageMasks.ImageBitMask com base em Aspose.Imaging.MagicWand.MagicWandSettings e fonte Aspose.Imaging.RasterImage.

public static ImageBitMask Select(RasterImage source, MagicWandSettings settings)

Parameters

source RasterImage

Raster imagem para o algoritmo para funcionar.

settings MagicWandSettings

As configurações do algoritmo de wand mágico usado na criação de máscaras.

Returns

ImageBitMask

Novo Aspose.Imaging.MagicWand.ImageMasks.ImageBitMask.

 Português