1. Início
  2. Tutoriais
  3. Quando o botão direito falha

Tutorial — o menu esmaecido

Como salvar um SVG quando o botão direito não deixa

Você clica com o botão direito no ícone e não há Salvar imagem como… nenhum. Nada está quebrado e você não perdeu nenhuma configuração — o navegador genuinamente não acha que aquilo é uma imagem.

Assista — 19 segundos

Salvando o que o menu não oferece

tutorial · sem botão direito
Todo ícone desta página recusa o menu de salvar. Os 24 saem do mesmo jeito.

A gravação abre numa página em que nenhum ícone oferece opção de salvar. Não é uma página incomum — é assim que a maioria dos sistemas de ícones é publicada.

O que a gravação mostra

  1. Salvar imagem como… sumiu em todo ícone daqui
  2. A extensão lê o DOM em vez do menu
  3. Inline, fundo CSS, sprite, img — todos encontrados
  4. Escolha o que você realmente quer
  5. Nomeie
  6. Salvo — um vetor de verdade, não um print

O motivo de verdade

O navegador só oferece salvar o que ele consegue buscar

Salvar imagem como… aparece quando o navegador tem uma imagem com um endereço que ele pode requisitar. Essa categoria é mais estreita do que parece, e os sistemas de ícones modernos ficam quase inteiramente fora dela. Há quatro lugares onde um SVG se esconde numa página, e só um deles se comporta bem.

  • <svg> inline. O markup está escrito direto no HTML. Sem src, sem URL, nada para buscar — então o menu não oferece nada. É assim que a grande maioria dos ícones é publicada hoje. Como é lido →
  • background-image do CSS. O vetor é definido numa folha de estilo, muitas vezes como URI data: embutido. O navegador arquiva como decoração em vez de conteúdo. Como é lido →
  • Referências <use> de sprite. Um sprite escondido guarda todo ícone; cada lugar em que um ícone aparece é só um ponteiro para ele. Salvar o ponteiro te dá um arquivo vazio. Como é lido →
  • Origens <img> e <object>. O caso amigável — e mesmo aqui a origem pode ser um URI data: que o diálogo de salvar estraga, ou uma URL de outra origem que salva com um nome sem sentido.

Então três das quatro não podem ser salvas desse jeito nem em princípio. Ler o DOM funciona nas quatro, porque a essa altura cada uma delas já foi resolvida em markup real pelo próprio navegador.

Salvando mesmo assim

Você não precisa saber qual das quatro está olhando. É esse o ponto.

  1. Deixe o menu do botão direito em paz. Se Salvar imagem como… sumiu ou está esmaecido, nenhuma quantidade de tentativas vai invocá-lo. A ausência é informação, não defeito.
  2. Abra o popup. Clique no botão da barra de ferramentas na página. A varredura resolve as quatro origens em markup independente — inline, fundo CSS, referência de sprite e origem de imagem igualmente.
  3. Veja a prévia para identificar o certo. A prévia isolada é o jeito mais rápido de distinguir dois ícones parecidos, principalmente num conjunto em que a página os mostra a 16 px.
  4. Nomeie e salve. Digite um nome de arquivo e aperte Baixar o atual. O namespace é consertado na saída, então o arquivo abre no Figma, no Illustrator e em todo navegador.

Coisas que parecem solução mas não são

  • Tirar um print. Isso converte um vetor independente de resolução numa grade fixa de pixels, para sempre. Ele vai borrar assim que alguém escalar, e não dá para recolorir. A comparação completa →
  • Copiar markup do DevTools. Isso funciona, mas é trabalhoso, e o markup que você copia está sem o namespace xmlns, então o arquivo resultante não vai abrir até você adicionar na mão. Se você quer o markup em vez de um arquivo, Copiar código faz o mesmo trabalho com o namespace já consertado.
  • Caçar o arquivo na aba Network. Ótimo para origens <img>. Inútil para as outras três, porque nenhuma requisição foi feita — o markup chegou dentro do documento HTML.
Por que falha
Três das quatro origens de SVG não têm endereço buscável.
O que funciona
Ler o DOM renderizado, onde as quatro já viraram markup real.
De bônus
O xmlns faltante é consertado, então o arquivo realmente abre.
Veja também
Uma rota mais rápida para um ícone · SVG inline

Vale saber

Perguntas frequentes

Por que Salvar imagem como… está esmaecido num SVG?

Porque o navegador não classifica aquele elemento como imagem buscável. Markup SVG inline, imagens de fundo CSS e referências de sprite não têm endereço por trás, então o item de menu não tem sobre o que agir.

Existe alguma configuração do navegador que liga isso?

Não. Não é permissão nem preferência — o item de menu está ausente porque a coisa por baixo genuinamente não é um recurso de imagem salvável. Ler a página é o caminho para contornar.

Não posso só tirar um print?

Pode, mas você perde o ponto inteiro de um vetor. Um print é uma grade fixa de pixels que borra quando escalada e não dá para recolorir. O SVG salvo continua nítido em qualquer tamanho e pode ser reestilizado.

E copiar o markup do DevTools?

Funciona, mas o markup que você copia normalmente não tem o namespace xmlns, então o arquivo não vai abrir até você adicionar na mão. A extensão conserta isso automaticamente.

Isso funciona em todo site?

Em qualquer página que você consiga abrir no Chrome 88+, Edge ou Brave. Ele não alcança páginas internas do navegador, galerias de extensões, nem conteúdo atrás de um login que você não tem.


O menu disse não. Leve mesmo assim.

Quatro esconderijos, uma varredura, e um arquivo que abre de verdade.