Como fazer stencil ?
Um stencil de imagem é um esboço ou modelo simplificado criado a partir de uma imagem e normalmente usado para fins artísticos, como desenho ou graffiti. Este processo envolve a conversão dos detalhes de uma imagem em formas e linhas básicas que podem ser facilmente traçadas ou reproduzidas. Aspose.SVG para Python via .NET permite que você crie um stencil de imagem programaticamente ou usando um Stencil Maker online. Aqui você pode vetorizar uma imagem e aplicar técnicas de stencil online ou usando Python.
Criador de stencil de imagem
Image Stencil Maker suporta JPEG, JPG, PJP, PJPEG, PNG, BMP, ICO, GIF, TIFF, SVG e outros formatos de imagem. Ele usa algoritmos de quantização de cores para reduzir os números de cores em sua imagem, converte a imagem em SVG e cria arte em stencil online. Use nosso Stencil Maker gratuito para criar arte de stencil impressionante sem esforço!
O stencil de imagem transforma uma imagem ou foto comum em uma imagem de contorno, perfeita para criar arte em stencil com efeitos semelhantes aos de graffiti. Aqui estão as etapas básicas para transformar uma foto ou imagem em um stencil :
- Converta a imagem em escala de cinza (opcional). Você pode converter a imagem em escala de cinza ou reduzir o número de cores para quantizá-la.
- Quantizar as cores da imagem. Esta etapa simplifica a imagem reduzindo sua paleta de cores. Após a quantização, você pode baixar ou vetorizar o resultado para obter o contorno do stencil .
- Desenhar Estênceis. Existem três opções para desenhar estênceis:
- None – todas as formas vetorizadas são preenchidas.
- Auto – as formas não são preenchidas e as bordas mantêm a cor original.
- MonoColor – As formas não são preenchidas e as bordas têm uma cor predefinida.
Stencil de imagem em Python
Aspose.SVG for Python via .NET API fornece classes e métodos que permitem implementar o processo de vetorização de imagens e trabalhar com diversas opções de pré-processamento de imagens antes de salvá-las no formato vetorial SVG. Junto com o controle de parâmetros de vetorização como trace_smoother
, error_threshold
, max_iterations
, path_builder
, etc., você também pode configurar o desenho do stencil da imagem.
No exemplo de código a seguir, convertemos uma imagem em um vetor e aplicamos a técnica de stencil para fazer o stencil :
Faça stencil em Python
import os
import aspose.svg.imagevectorization as vec
import aspose.svg.drawing as dr
# Setup directories
input_folder = "data/"
output_folder = "output/"
if not os.path.exists(output_folder):
os.makedirs(output_folder)
# Configuration for image vectorization
path_builder = vec.BezierPathBuilder()
path_builder.trace_smoother = vec.ImageTraceSmoother(1)
path_builder.error_threshold = 30.0
path_builder.max_iterations = 30
vectorizer = vec.ImageVectorizer()
vectorizer.configuration.path_builder = path_builder
vectorizer.configuration.colors_limit = 10
vectorizer.configuration.line_width = 1.0
# Configuration for image stencil
stencil_config = vec.StencilConfiguration()
stencil_config.type = vec.StencilType.MONO_COLOR
stencil_config.color = dr.Color.from_rgb(0, 0, 255)
vectorizer.configuration.stencil = stencil_config
# Vectorize an image
src_file = "image.png"
with vectorizer.vectorize(os.path.join(input_folder, src_file)) as document:
output_file = os.path.join(output_folder, "image-stencil.svg")
document.save(output_file)
Passos para fazer stencil em Python
Para vetorizar uma imagem e fazer stencil com a biblioteca Python Aspose.SVG, você deve seguir alguns passos:
- Importe os módulos e classes necessários de
aspose.svg.drawing
,aspose.svg.imagevectorization
e outros pacotes necessários. - Crie uma instância da classe
BezierPathBuilder
para definir a estratégia de construção de caminho.
- Defina o valor da propriedade
trace_smoother
usando uma instância de ImageTraceSmoother . Este parâmetro (severity) controla o quanto os caminhos traçados serão suavizados. - Defina o valor da propriedade
error_threshold
deBezierPathBuilder
. Este parâmetro define a margem de erro aceitável para aproximar as formas de bitmap com caminhos vetoriais. - Especifique o valor da propriedade
max_iterations
do objetoBezierPathBuildert
. Esta configuração determina o número máximo de iterações permitidas para o algoritmo de otimização de caminho durante a vetorização, que é quantas vezes o algoritmo tentará melhorar a precisão do caminho.
- Defina o valor da propriedade
- Crie uma instância da classe
ImageVectorizer
. O
ImageVectorizer
é a classe principal usada para converter imagens em gráficos vetoriais.- Atribua a configuração
path_builder
(definida anteriormente) ao objetovectorizer
. Isso significa que o vetorizador usará as configurações especificadas empath_builder
para criação e otimização de caminho. - Defina a propriedade
colors_limit
da classe ImageVectorizerConfiguration . Este parâmetro determina o número máximo de cores que serão utilizadas na imagem vetorizada. Isso afeta o modo como o vetorizador lida com a simplificação de cores e reduz o número de cores exclusivas na saída. - Especifique a propriedade
line_width
da classeImageVectorizerConfiguration
. Esta configuração determina a largura dos caminhos vetoriais no arquivo SVG resultante.
- Atribua a configuração
- Inicialize uma nova instância da classe
StencilConfiguration
, que contém as configurações para o processo de criação do estêncil.
- Defina a propriedade
type
do stencil comoMONO_COLOR
. Isso criará um stencil com uma cor única e uniforme para o contorno. - Defina a propriedade
color
para o contorno do stencil . O métodoColor.from_rgb(0, 0, 255)
cria um objeto de cor que representa a cor azul usando valores RGB (vermelho: 0, verde: 0, azul: 255). - Aplique a configuração do stencil ao vetorizador.
- Defina a propriedade
- Use o método vectorize() para vetorizar uma imagem do arquivo especificado.
- Salve a imagem vetorizada como um arquivo SVG usando o método
save()
no
SVGDocument
resultante.
Aspose.SVG oferece um Vetorizador de imagens online gratuito que permite converter imagens bitmap JPG, PNG, BMP, TIFF, ICO e GIF em gráficos vetoriais. Com este aplicativo você pode aplicar diversas opções para obter o resultado perfeito. Economize tempo e experimente os benefícios dos gráficos vetoriais experimentando este Vetorizador de imagens hoje mesmo!
Perguntas frequentes
Aspose.SVG permite que você converta Image para SVG de qualquer maneira – online ou programaticamente. Por exemplo, você pode vetorizar Image em tempo real usando o Online Image Vectorizer que converte suas imagens rapidamente e com alta qualidade. Por outro lado, você pode usar Aspose.SVG para API .NET para vetorizar Image programaticamente.
O processo de conversão de imagem de raster para vetorial é chamado de vetorização de imagem. É um processo computacional complexo que converte uma imagem bitmap composta por pixels em uma imagem vetorial composta por linhas, curvas e outras formas geométricas.
As imagens vetoriais são essenciais para qualquer profissional que trabalhe com desenhos, gráficos ou esboços. Muitos designers, impressores, arquitetos e artistas geralmente optam por trabalhar com esboços ou desenhos como imagens vetoriais. E eles têm boas razões! Ao contrário dos gráficos de bitmap, as artes vetoriais são redimensionáveis e escaláveis sem perda de qualidade e ainda serão exibidas com a mesma clareza. Além disso, a vetorização pode ser usada para atualizar ou recuperar imagens.
As imagens vetoriais são o que você precisa para produzir banners, logotipos, mapas, letreiros, bordados, gravuras, gráficos, plantas, etc.
O processo de vetorização utiliza a quantização da imagem colorida – técnica que reduz o número de cores diferentes utilizadas em uma imagem, pretendendo que a nova imagem seja o mais semelhante possível visualmente à original. Em seguida, o Vectorizer substitui todos os pontos ou pixels da mesma cor por formas geométricas ou curvas usando um conjunto de algoritmos de rastreamento de contorno. A etapa final é converter os pontos de rastreamento em linhas de caminho SVG e curvas Bezier e adicioná-los ao documento SVG.
Introdução à API Python
Se você deseja desenvolver gráficos vetoriais escaláveis e seus aplicativos, instale nosso Aspose.SVG for Python via .NET API flexível e de alta velocidade. pip
é a maneira mais fácil de baixar e instalar Aspose.SVG for Python via .NET API. Para fazer isso, execute o seguinte comando:
pip install aspose-svg-net
Para obter mais detalhes sobre a instalação da biblioteca Python e os requisitos do sistema, consulte Documentação Aspose.SVG.