บีบอัดรูปภาพใน Python

การบีบอัดภาพ เป็นวิธีที่ใช้กันโดยทั่วไปซึ่งจะลดขนาดไฟล์ของภาพโดยที่ยังคงคุณภาพของภาพไว้ ด้วยการลบข้อมูลที่ซ้ำซ้อนหรือข้อมูลที่ไม่จำเป็นออก เทคนิคการบีบอัดภาพช่วยให้อัปโหลดได้เร็วขึ้น ลดความต้องการพื้นที่จัดเก็บ และปรับปรุงการใช้แบนด์วิธ ขณะประมวลผลรูปภาพโดยทางโปรแกรม คุณมักจะต้องลดขนาด ดังนั้นในบทความนี้ คุณจะได้เรียนรู้วิธีบีบอัดรูปภาพในแอปพลิเคชัน Python อย่างง่าย

ไลบรารีการบีบอัดรูปภาพ Python

ในการบีบอัดรูปภาพใน Python เราจะใช้ Aspose.Imaging for Python เป็นไลบรารีการประมวลผลรูปภาพที่ทรงพลังซึ่งมีฟีเจอร์มากมายในการประมวลผลและจัดการรูปภาพจากภายในแอปพลิเคชัน Python ของคุณ คุณสามารถ ดาวน์โหลด ไลบรารีหรือติดตั้งโดยใช้คำสั่งต่อไปนี้

> pip install aspose-imaging-python-net 

บีบอัดรูปภาพใน Python

ในการบีบอัดภาพ คุณสามารถตั้งค่าระดับการบีบอัดได้ตั้งแต่ 0 ถึง 9 ค่า 9 แสดงถึงการบีบอัดสูงสุด และ 0 คือโหมดจัดเก็บ ต่อไปนี้เป็นขั้นตอนในการบีบอัดภาพ PNG ใน Python

  • ขั้นแรกให้โหลดรูปภาพโดยใช้คลาสรูปภาพ
  • จากนั้นสร้างวัตถุของคลาส PngOptions
  • หลังจากนั้น ให้ตั้งค่าระดับการบีบอัดโดยใช้คุณสมบัติ PngOptions.compressionlevel
  • สุดท้าย บันทึกภาพที่บีบอัดโดยใช้เมธอด Image.save(String, PngOptions)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีบีบอัดรูปภาพใน 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():
  	# เส้นทางไฟล์อินพุตและเอาต์พุต
	input_file = os.path.join(templates_folder, "template.png")
	output_file = os.path.join(templates_folder, "compressed_png.png")
  
  	# โหลดภาพ
	with Image.load(input_file) as image:
		obj_init = PngOptions()
    
    		# ตั้งค่าระดับการบีบอัด
		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)
    
    		# บันทึกภาพที่บีบอัด
		image.save(output_file, obj_init)

	if delete_output:
		os.remove(output_file)

ในการบีบอัดรูปภาพในรูปแบบอื่น เราจะใช้คลาส ImageOptionที่เกี่ยวข้อง ตัวอย่างเช่น ในการบีบอัดรูปภาพ JPG เราจะใช้ JpegOptions และสำหรับรูปภาพ Tiff เราจะใช้ TiffOptions คลาส

รับไลบรารีการบีบอัดรูปภาพฟรี

คุณสามารถรับ ใบอนุญาตชั่วคราวฟรี และบีบอัดรูปภาพในแอปพลิเคชัน Python โดยไม่มีข้อจำกัดในการประเมิน

บีบอัดรูปภาพออนไลน์

นอกจากนี้ เรายังได้สร้างเครื่องมือบนเว็บ เครื่องมือบีบอัดรูปภาพฟรี เพื่อบีบอัดรูปภาพออนไลน์ คุณสามารถใช้เครื่องมือนี้เพื่อบีบอัดรูปภาพได้มากเท่าที่คุณต้องการโดยไม่ต้องสร้างบัญชี

บทสรุป

บทความนี้นำเสนอวิธีแก้ปัญหาที่มีประสิทธิภาพสำหรับการบีบอัดรูปภาพใน Python ด้วยความช่วยเหลือของขั้นตอนและตัวอย่างโค้ด คุณได้เรียนรู้วิธีบีบอัดรูปภาพอย่างง่ายดาย นอกจากนี้ เรายังแนะนำให้คุณรู้จักกับเครื่องมือบีบอัดรูปภาพออนไลน์ฟรี ซึ่งใช้ Aspose.Imaging for Python คุณสามารถใช้เครื่องมือได้จากทุกที่โดยไม่ต้องสร้างบัญชี

คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับไลบรารีการประมวลผลรูปภาพ Python ของเราได้โดยใช้ เอกสารประกอบ นอกจากนี้ คุณสามารถแบ่งปันความคิดเห็นของคุณกับเราผ่านทางฟอรัม

ดูสิ่งนี้ด้วย