SwiftHTML & CSSSolidityDesenvolvimento de JogosSolana/Rust
05.02.2025

Alterando a Cor de Imagens PNG com CSS: Técnica de Sobreposição

Resposta Rápida

Para mudar a cor de uma imagem PNG usando CSS, você pode utilizar uma combinação da propriedade background-color do contêiner e da propriedade mix-blend-mode para a imagem. O modo de sobreposição multiply geralmente fornece os melhores resultados.

.image-container {
   background-color: blue; /* Insira sua cor preferida */
}

img {
   mix-blend-mode: multiply; /* É aqui que a mágica da sobreposição acontece */
}
<div class="image-container">
   <img src="sua-imagem.png" alt="">
</div>

Essa abordagem utiliza as áreas transparentes do PNG, permitindo que a cor de fundo penetre apenas nas partes visíveis da imagem. Seus PNGs parecerão completamente novos, e tudo que você precisa é apenas algumas linhas de código!

Entendendo os Filtros CSS para Manipulação Dinâmica de Imagens

Vamos dar uma olhada mais de perto no processo de mudança de cor de imagens PNG usando filtros CSS. A propriedade filter em CSS oferece amplas capacidades para aprimorar a percepção visual e manipular imagens em tempo real.

Como Funciona: Noções Básicas da Aplicação de Filtros

Os filtros CSS são funções que modificam a percepção visual dos elementos HTML. Literalmente, uma única linha de código pode mudar radicalmente a aparência dos seus PNGs.

img {
   filter: grayscale(100%); /* Transforma a imagem em uma foto em preto e branco */
}
img {
   filter: sepia(100%); /* "Destaca" a foto para um efeito vintage */
}
img {
   filter: saturate(200%); /* Torna as cores vibrantes, igual aos filmes */
}
img {
   filter: hue-rotate(90deg); /* Que tal deixar gatinhos roxos? */
}

Aprofundando-se no hue-rotate

O filtro hue-rotate envolve mudanças dinâmicas na paleta de cores da imagem. Ao experimentar combinações de filtros, como invert, você pode alcançar efeitos surpreendentes.

img {
   filter: invert(75%) hue-rotate(90deg) saturate(3); 
   /* Primeiro, invertemos as cores, depois aplicamos um filtro de cor! */
}

Visualização

Aqui está um exemplo de uso do hue-rotate:

img {
   filter: hue-rotate(90deg); /* Isso acontece com o típico cachorro azul... */
}
Antes: 🖼️🐶 (Cachorro Azul)  
Depois de aplicar hue-rotate: 🖼️🐕‍🦺 (Cachorro Amarelo)

Use sua imaginação e pense na imagem PNG como um objeto neutro, e o filter como pincéis e tintas.

Objeto: 🗿 (Imagem PNG)  
🎨 filtro: hue-rotate(120deg) = Tonalidade Verde  
Resultado: 🗿💚 (Objeto Verde)  

Já se sentindo um artista? 🎨

Efeitos Avançados de Filtro

Adicionando Sombras Coloridas Usando drop-shadow

Os filtros CSS podem não apenas mudar cores, mas também criar impressionantes efeitos de sombra. A função drop-shadow ajuda a tornar os elementos da imagem mais notáveis:

img {
   filter: drop-shadow(2px 2px 5px blue); /* Agora a sombra faz parte do estilo também! */
}

Combinando Font Awesome e SVG

Usar ícones do Font Awesome é conveniente para personalizar ícones, pois são fáceis de escalar e alterar via CSS. No entanto, SVG funciona perfeitamente para gráficos vetoriais, proporcionando controle inigualável durante mudanças dinâmicas:

<svg>
  <circle cx="50" cy="50" r="40" stroke="green" stroke-width="4" fill="yellow" />
</svg>

Recursos Úteis

  1. filter | CSS-Tricks — Explore todas as capacidades da propriedade de filtro CSS para editar parâmetros de cor de imagem.
  2. A Arte dos Filtros SVG e Porque Eles São Incríveis — Smashing Magazine — Descubra as poderosas habilidades dos filtros SVG para alterar a cor de PNG.
  3. Modos de Mistura Desmistificados – A List Apart — Descubra os mistérios dos modos de mistura em CSS para alcançar vários efeitos de cor.
  4. Propriedade filter CSS - W3Schools — Uma referência indispensável para a propriedade filter CSS.
  5. Como Criar um Efeito de Texto Quente e Retro no Adobe Illustrator | Envato Tuts+ — Um tutorial para criar efeitos de texto retro e manipular imagens no Adobe Illustrator.

Video

Did you like this article? Rate it from 1 to 5:

Thank you for voting!