Como redimensionar um GIF animado usando Pillow?

Nov 06, 2025

Deixe um recado

Ei! Se você gosta de trabalhar com GIFs animados e usa Python, provavelmente já encontrou a biblioteca Pillow. Sou fornecedor de produtos Pillow e estou aqui para orientar você no processo de redimensionamento de um GIF animado usando Pillow. É uma habilidade muito útil, seja você um desenvolvedor, um designer ou apenas alguém que adora brincar com imagens.

Por que redimensionar um GIF animado?

Antes de nos aprofundarmos nas instruções, vamos falar sobre por que você pode querer redimensionar um GIF animado. Existem alguns motivos. Talvez você esteja trabalhando em um site e precise otimizar o tamanho do GIF para que sua página carregue mais rápido. Ou talvez você esteja criando uma postagem nas redes sociais e precise ajustar o GIF a uma dimensão específica. Seja qual for o motivo, redimensionar um GIF animado pode ser muito útil.

Pré-requisitos

Em primeiro lugar, você precisará ter o Pillow instalado. Se ainda não o fez, você pode instalá-lo usando pip. Basta abrir seu terminal e executar o seguinte comando:

almofada de instalação pip

Depois de instalar o Pillow, você estará pronto para começar a redimensionar esses GIFs.

O Processo

Vamos dividir o processo de redimensionamento de um GIF animado usando Pillow em algumas etapas simples.

Etapa 1: importe as bibliotecas necessárias

A primeira coisa que você precisa fazer é importar oImagemmódulo da biblioteca Pillow. Veja como você pode fazer isso:

da imagem de importação PIL

Passo 2: Abra o GIF animado

Em seguida, você precisa abrir o arquivo GIF animado. Você pode fazer isso usando oImagem.open()método. Aqui está um exemplo:

gif = Image.open('seu_gif_animado.gif')

Substituir'seu_gif_animado.gif'com o caminho real para o seu arquivo GIF.

Etapa 3: definir o novo tamanho

Agora, você precisa decidir o novo tamanho do seu GIF. Você pode fazer isso especificando a largura e a altura em pixels. Por exemplo, se quiser redimensionar seu GIF para 300 pixels de largura e 200 pixels de altura, você pode definir o novo tamanho assim:

novo_tamanho = (300, 200)

Etapa 4: redimensionar cada quadro

Um GIF animado é composto de vários quadros. Para redimensionar o GIF inteiro, você precisa redimensionar cada quadro individualmente. Você pode fazer isso usando um loop. Aqui está um exemplo:

Household PillowMemory Foam Pillow

frames = [] para quadro no intervalo (0, gif.n_frames): gif.seek (frame) resized_frame = gif.resize (new_size, Image.LANCZOS) frames.append (resized_frame)

Neste código, estamos usando umparaloop para iterar em cada quadro do GIF. Estamos então usando oprocurar()método para mover para o quadro atual, e oredimensionar()método para redimensionar o quadro para o novo tamanho. Finalmente, estamos anexando o quadro redimensionado aoquadroslista.

Etapa 5: salve o GIF redimensionado

Depois de redimensionar todos os quadros, você precisa salvar o GIF redimensionado. Você pode fazer isso usando osalvar()método. Aqui está um exemplo:

frames[0].save('resized_animated_gif.gif', save_all=True, append_images=frames[1:], duração=gif.info['duration'], loop=0)

Neste código, estamos salvando o primeiro quadro doquadroslist como o novo GIF. Estamos usando osave_all=Verdadeiroparâmetro para indicar que queremos salvar todos os frames, e oanexar_images=quadros[1:]parâmetro para anexar os quadros restantes ao primeiro quadro. Também estamos usando oduração=gif.info['duração']parâmetro para definir a duração de cada quadro igual ao GIF original, e ociclo = 0parâmetro para indicar que queremos que o GIF faça um loop indefinidamente.

Juntando tudo

Aqui está o código completo para redimensionar um GIF animado usando Pillow:

from PIL import Image # Abra o GIF animado gif = Image.open('your_animated_gif.gif') # Defina o novo tamanho new_size = (300, 200) # Redimensione cada quadro frames = [] for frame in range(0, gif.n_frames): gif.seek(frame) resized_frame = gif.resize(new_size, Image.LANCZOS) frames.append(resized_frame) # Salve o redimensionado Quadros GIF[0].save('resized_animated_gif.gif', save_all=True, append_images=frames[1:], duração=gif.info['duration'], loop=0)

Dicas e truques

  • Escolha o filtro de reamostragem correto: ao redimensionar uma imagem, você pode escolher diferentes filtros de reamostragem. OImagem.LANCZOSfiltro geralmente é uma boa escolha para redimensionamento de alta qualidade, mas você pode experimentar outros filtros comoImagem.BILINEARouImagem.NEARESTpara ver qual funciona melhor para o seu GIF.
  • Otimize o tamanho do GIF: se estiver redimensionando o GIF para reduzir o tamanho do arquivo, você pode tentar usar ootimizar = Verdadeiroparâmetro ao salvar o GIF. Isso removerá quaisquer metadados desnecessários do GIF e poderá reduzir significativamente o tamanho do arquivo.

Produtos de travesseiros relacionados

Como fornecedor de Almofadas, ofereço uma ampla gama de produtos para atender às suas necessidades. Se você está procurando umAlmofada de espuma viscoelásticapara uma noite de sono confortável ouTravesseiro domésticopara uso diário, eu cuido de você.

Contate-nos para compras

Se você estiver interessado em adquirir nossos produtos de travesseiros, adoraríamos ouvir sua opinião. Quer você seja um varejista que deseja estocar nossos produtos ou um indivíduo que procura um travesseiro de alta qualidade, estamos aqui para ajudar. Basta entrar em contato conosco e iniciaremos a discussão sobre aquisição.

Referências

  • Documentação do travesseiro: https://pillow.readthedocs.io/en/stable/
  • Manual da Biblioteca de Imagens Python: https://www.effbot.org/imagingbook/

Enviar inquérito