Estou tendo dificuldades para encontrar a melhor maneira de produzir um SVG que mantenha sua qualidade por meio do dimensionamento. O tamanho real da imagem é o tamanho médio, perfeito para pixels no Illustrator. No entanto, depois que eu o salvo como SVG, a linha vertical mais à direita fica embaçada. O que posso fazer para produzir um SVG de melhor qualidade / compatível com a escala?
pequeno
real
ampla
Respostas:
SVG Mantém 100% de qualidade da fonte
Os dados de uma imagem SVG são armazenados como XML em vez de pixels e consistem em componentes que podem ser dimensionados para qualquer nível sem perder a qualidade da fonte .
Resolução da tela
À medida que o gráfico se torna menor na tela, ele tem cada vez menos pixels para representar sua origem (que ainda está em perfeita qualidade), fazendo com que a imagem pareça menos nítida.
Anti-aliasing
A imagem grande (esquerda) e a pequena (direita) são suavizadas (veja a cor leve e sutil usada nas bordas?).
A suavização de serrilhado é uma técnica usada na renderização de imagens que sacrifica a nitidez para evitar bordas irregulares e feias. Essa técnica usada para manter as bordas suaves é a razão da baixa qualidade da imagem menor. Por causa da baixa resolução, o anti-aliasing é muito mais óbvio aqui, e é usado até nas bordas verticais.
Suspeito que isso aconteça no processo de suavização de serrilhado, porque é difícil fazê-lo de maneira diferente ou pela uniformidade da imagem. Se as bordas diagonais estivessem ligeiramente desfocadas devido ao anti-aliasing e as verticais não, não seria um efeito muito equilibrado.
- Artigo de origem por HTML5 Rocks
A solução
Dica de pixel. Conforme vinculado pelo novo usuário abaixo, a dica de pixel é exatamente o que você precisa e a resposta adequada à sua pergunta. O anti-aliasing trata cada ponta como uma unha, esmagando e suavizando sem restrições. A menos que você dê dicas!
Como isso é feito...
- Artigo fonte da The Industry, cortesia de tareq-a.
A sugestão de pixel com formas vetoriais indica ao sistema de renderização a intenção da borda, de modo que o anti-aliasing sabe se deve ou não balançar seu martelo de suavização!
fonte
Como outros observaram, a desfocagem é causada pelo anti-aliasing, quando a linha vertical na imagem em escala não cai exatamente no limite de um pixel.
Você pode corrigir isso manualmente em um editor SVG, primeiro escalando sua imagem para o tamanho desejado e, em seguida, aumentando o zoom e ajustando manualmente as linhas para que caiam exatamente nos limites de pixel. (Se você estiver fazendo isso no Inkscape, recomendo configurar uma grade de 0,5 px com cada segunda linha enfatizada nas preferências do documento.)
Como alternativa, você pode achar útil o plug-in PixelSnap Inkscape . Ele automatiza a parte tediosa desse trabalho, alterando automaticamente as linhas para que caiam precisamente nos limites dos pixels. Embora nem sempre faça um trabalho perfeito, geralmente é muito mais fácil deixá-lo fazer o que é necessário e depois limpar todos os resultados abaixo do ideal do que sempre fazer as dicas de pixel completamente manualmente.
fonte
Acho que Jonathan Todd deu uma boa explicação teórica e um método geral para evitar desfoque. Gostaria de complementar um vídeo de prática sobre como fazer dicas de pixels no Adobe Illustrator, que encontrei neste artigo .
Vou descrever o método deste vídeo da seguinte forma:
Saiba o tamanho do ícone que você deseja mostrar. Se você deseja que ele seja exibido em 16 x 16 pixels, é melhor criar o ícone do mesmo tamanho para obter o efeito ideal. Lembre-se de que é melhor criar ícones personalizados no tamanho exato que você precisa.
Use o Adobe Illustrator para abrir o arquivo de ícone SVG e editá-lo. Dois triângulos são ambos formato SVG, mas um tem um bom alinhamento com uma grade virtual que não será desfocada quando mostrada na tela.
Para editar seu ícone de desfoque, você primeiro define sua unidade de imagem em pixels. Eu acho que isso é diferente no Windows e no Mac OS, então é melhor pesquisar no Google.
Design com dicas de pixel ativadas. ( alt+ ⌘+ Yno mac ou alt+ ctrl+ Yno Windows) era possível ver os pixels da borda horizontal e vertical do triângulo esquerdo alinharem perfeitamente a grade, enquanto o pixel da borda horizontal do triângulo direito não.
Altere a largura e a altura primeiro e altere X e Y para eliminar a parte decimal. Eu sugiro que você edite a largura e a altura primeiro e depois modifique as coordenadas x e y.
alterar valores decimais
para arredondar números (sem frações decimais)
fonte
Talvez este link seja útil para solucionar seu problema, http://theindustry.cc/2012/10/17/designed-pixel-hinting/
fonte