Comprimi le immagini in Python

Compressione dell’immagine è un metodo comunemente usato che riduce la dimensione del file delle immagini preservandone la qualità visiva. Rimuovendo i dati ridondanti o non necessari, le tecniche di compressione delle immagini consentono caricamenti più rapidi, requisiti di archiviazione ridotti e un migliore utilizzo della larghezza di banda. Durante l’elaborazione delle immagini a livello di codice, spesso è necessario ridurne le dimensioni. Quindi in questo articolo imparerai come comprimere facilmente le immagini in un’applicazione Python.

Libreria di compressione immagini Python

Per comprimere le immagini in Python, useremo Aspose.Imaging for Python. È una potente libreria per l’elaborazione delle immagini che offre una gamma di funzionalità per elaborare e manipolare le immagini dall’interno delle tue applicazioni Python. Puoi scaricare la libreria o installarla usando il seguente comando.

> pip install aspose-imaging-python-net 

Comprimi un’immagine in Python

Per comprimere un’immagine, è possibile impostare il valore del livello di compressione da 0 a 9. Il valore 9 rappresenta la compressione massima e 0 è la modalità di memorizzazione. Di seguito sono riportati i passaggi per comprimere un’immagine PNG in Python.

  • Innanzitutto, carica l’immagine usando la classe Image.
  • Quindi, crea un oggetto della classe PngOptions.
  • Successivamente, imposta il livello di compressione utilizzando la proprietà PngOptions.compressionlevel.
  • Infine, salva l’immagine compressa utilizzando il metodo Image.save(String, PngOptions).

L’esempio di codice seguente mostra come comprimere un’immagine in 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():
  	# Percorsi dei file di input e output
	input_file = os.path.join(templates_folder, "template.png")
	output_file = os.path.join(templates_folder, "compressed_png.png")
  
  	# Carica immagine
	with Image.load(input_file) as image:
		obj_init = PngOptions()
    
    		# Imposta il livello di compressione
		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)
    
    		# Salva immagine compressa
		image.save(output_file, obj_init)

	if delete_output:
		os.remove(output_file)

Per comprimere immagini di altri formati, utilizzeremo la rispettiva classe ImageOption. Ad esempio, per comprimere le immagini JPG, useremo JpegOptions e per le immagini Tiff, useremo TiffOptions classe.

Ottieni la libreria di compressione delle immagini gratuita

Puoi ottenere una licenza temporanea gratuita e comprimere le immagini nelle tue applicazioni Python senza limitazioni di valutazione.

Comprimi immagini online

Abbiamo anche creato uno strumento basato sul Web, compressore di immagini gratuito, per comprimere le immagini online. Puoi utilizzare questo strumento per comprimere tutte le immagini di cui hai bisogno senza creare un account.

Conclusione

Questo articolo ti ha fornito una soluzione efficiente per comprimere le immagini in Python. Con l’aiuto di passaggi e esempi di codice, hai imparato a comprimere un’immagine senza sforzo. Inoltre, ti abbiamo presentato uno strumento di compressione delle immagini online gratuito, basato su Aspose.Imaging for Python. Puoi utilizzare lo strumento da qualsiasi luogo senza creare un account.

Puoi esplorare di più sulla nostra libreria di elaborazione delle immagini Python usando documentazione. Inoltre, puoi condividere il tuo feedback con noi tramite il nostro forum.

Guarda anche