Compactação de imagem é um método comumente usado que reduz o tamanho do arquivo de imagens enquanto preserva sua qualidade visual. Ao remover dados redundantes ou desnecessários, as técnicas de compactação de imagem permitem uploads mais rápidos, requisitos de armazenamento reduzidos e melhor utilização da largura de banda. Ao processar imagens programaticamente, muitas vezes você precisa reduzir seus tamanhos. Portanto, neste artigo, você aprenderá como compactar imagens facilmente em um aplicativo Python.
- Biblioteca de Compressão de Imagens Python
- Comprimir imagens em Python
- Ferramenta online para compactar imagens
Biblioteca de Compressão de Imagens Python
Para compactar imagens em Python, usaremos Aspose.Imaging for Python. É uma poderosa biblioteca de processamento de imagens que oferece uma variedade de recursos para processar e manipular imagens de seus aplicativos Python. Você pode baixar a biblioteca ou instalá-la usando o seguinte comando.
> pip install aspose-imaging-python-net
Comprimir uma imagem em Python
Para compactar uma imagem, você pode definir o valor do nível de compactação de 0 a 9. O valor 9 representa a compactação máxima e 0 é o modo de armazenamento. A seguir estão as etapas para compactar uma imagem PNG em Python.
- Primeiro, carregue a imagem usando a classe Image.
- Em seguida, crie um objeto da classe PngOptions.
- Depois disso, defina o nível de compactação usando a propriedade PngOptions.compressionlevel.
- Finalmente, salve a imagem compactada usando o método Image.save(String, PngOptions).
O exemplo de código a seguir mostra como compactar uma imagem em Python.
from aspose.imaging.fileformats.png import PngColorType
from aspose.imaging.imageoptions import PngOptions
from aspose.imaging import ColorPaletteHelper, Image
import os
if 'TEMPLATE_DIR' in os.environ:
templates_folder = os.environ['TEMPLATE_DIR']
else:
templates_folder = r"C:\Users\USER\Downloads\templates"
delete_output = 'SAVE_OUTPUT' not in os.environ
def compress_png():
# Caminhos de arquivo de entrada e saída
input_file = os.path.join(templates_folder, "template.png")
output_file = os.path.join(templates_folder, "compressed_png.png")
# Carregar imagem
with Image.load(input_file) as image:
obj_init = PngOptions()
# Definir nível de compactação
obj_init.compression_level = 9
obj_init.progressive = True
obj_init.color_type = PngColorType.INDEXED_COLOR
obj_init.palette = ColorPaletteHelper.get_close_image_palette(image, 1 << 5)
# Salvar imagem compactada
image.save(output_file, obj_init)
if delete_output:
os.remove(output_file)
Para compactar imagens de outros formatos, usaremos a respectiva classe ImageOption. Por exemplo, para compactar imagens JPG, usaremos JpegOptions e para imagens Tiff, usaremos TiffOptions classe.
Obtenha uma biblioteca gratuita de compactação de imagens
Você pode obter uma licença temporária gratuita e compactar imagens em seus aplicativos Python sem nenhuma limitação de avaliação.
Compactar imagens on-line
Também criamos uma ferramenta baseada na web, compressor de imagem gratuito, para compactar imagens online. Você pode usar esta ferramenta para compactar quantas imagens precisar sem criar uma conta.
Conclusão
Este artigo forneceu uma solução eficiente para compactar imagens em Python. Com a ajuda de etapas e amostra de código, você aprendeu como compactar uma imagem sem esforço. Além disso, apresentamos a você uma ferramenta on-line gratuita de compactação de imagens, baseada no Aspose.Imaging para Python. Você pode usar a ferramenta de qualquer lugar sem criar uma conta.
Você pode explorar mais sobre nossa biblioteca de processamento de imagem Python usando documentação. Além disso, você pode compartilhar seus comentários conosco através do nosso fórum.