Como converter imagens PNG/JPEG para SVG em linha de comando

Publicado por Fábio Berbert de Paula em 27/05/2025

[ Hits: 1.738 ]

Blog: https://fabio.automatizando.dev

 


Como converter imagens PNG/JPEG para SVG em linha de comando



DISCLAIMER: esse procedimento só funcionará para imagens monocromáticas, ou seja, imagens que possuem apenas duas cores (preto e branco). Se a imagem for colorida, ela será convertida para um formato monocromático, o que pode não ser o resultado desejado. Para imagens coloridas, você precisaria de um processo mais complexo que envolve vetorização avançada, isso pode ser obtido através de softwares como Inkscape ou ferramentas online especializadas.

Para converter imagens PNG ou JPEG para SVG usando a linha de comando, você pode usar uma combinação entre o ImageMagick e o potrace. Aqui estão os passos para realizar essa conversão:

1. Instalar o ImageMagick e o Potrace

No Ubuntu/Debian, você pode instalar ambos com o seguinte comando:

sudo apt-get install imagemagick potrace

No macOS, você pode usar o Homebrew:

brew install imagemagick potrace

2. Converter a imagem PNG/JPEG para um formato de bitmap (PBM)

Use o ImageMagick para converter a imagem PNG ou JPEG para um formato de bitmap PBM. Execute o seguinte comando:

convert input.png output.pbm

Onde:
  • `input.png` é o arquivo de entrada (pode ser um arquivo JPEG também).
  • `output.pbm` é o arquivo de saída no formato PBM.

3. Converter o arquivo PBM para SVG usando o Potrace

Agora, use o Potrace para converter o arquivo PBM para SVG. Execute o seguinte comando:

potrace output.pbm -s -o output.svg

Onde:
  • `output.pbm` é o arquivo de entrada no formato PBM.
  • `output.svg` é o arquivo de saída no formato SVG.

4. Verificar o arquivo SVG

Você pode verificar o arquivo SVG gerado usando um visualizador de SVG ou um navegador web. Basta abrir o arquivo `output.svg` no seu navegador para ver a imagem convertida.

Bônus: SVG colorido com o Inkscape

Se você deseja converter imagens coloridas para SVG, uma opção é usar o Inkscape, que possui uma ferramenta de rastreamento de bitmap. Você pode abrir a imagem no Inkscape e usar a opção "Rastrear Bitmap" para criar um SVG colorido. No entanto, isso não é feito via linha de comando e requer interação com a interface gráfica do usuário.

Instale o Inkscape no Ubuntu/Debian com:

sudo apt-get install inkscape

No macOS, você pode instalar o Inkscape usando o Homebrew:

brew install --cask inkscape

Com o Inkscape instalado, você pode abrir a imagem com o comando:

inkscape input.png

E então clicar em:

Path > Trace Bitmap

e selecionar "Multiple Scans" para criar um SVG colorido. Após isso, você pode salvar o arquivo como SVG clicando em:
File > Save As

e escolhendo o formato SVG.

Outras dicas deste autor

SSH sem senha não funciona? Eis a solução

Como escrever em arquivos protegidos usando o sudo e redirecionamento

Renomeando um usuário no Linux

O comando man

Resolvendo flash sem som no Firefox

Leitura recomendada

Removendo Sessão Convidado do Ubuntu-14.04-LTS

Procurar arquivos modificados a mais de "n" dias

Comando para manipulação de pacotes PKGTool

Os comandos "which" e "whereis"

openSUSE - Como remover versões antigas do kernel

  

Comentários
[1] Comentário enviado por maurixnovatrento em 08/06/2025 - 20:05h

Legal. Vou verificar essa dica.
______________________________________________________________________
Inscreva-se no meu Canal: https://www.youtube.com/@LinuxDicasPro
Repositório GitHub do Canal: https://github.com/LinuxDicasPro
Grupo do Telegram: https://t.me/LinuxDicasPro



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts