Kod untuk memampatkan JPG dalam Python

Pustaka Python berprestasi tinggi untuk mengoptimumkan JPG kandungan dan saiz mengekalkan kualiti asal dan data garis dasar

Ini ialah penyelesaian profesional untuk memampatkan JPG menggunakan Python. Gunakan API pengoptimuman JPG kami untuk membangunkan perisian bebas platform peringkat tinggi dalam Python. Cuba dalam talian secara percuma!

Lihat coretan kod

Mampatkan JPG fail dalam Python

Jadikan JPG fail yang besar lebih kecil tanpa kehilangan kualiti. Padamkan data yang tidak perlu dan tidak digunakan. Kecilkan saiz JPG fail dalam kod. Python menyediakan pembangun dengan API bersepadu untuk mengoptimumkan kandungan JPG.

Kurangkan saiz JPG fail menggunakan Python

Python ialah penyelesaian yang berdiri sendiri dan tidak memerlukan sebarang perisian pihak ketiga dipasang.

Pemampatan tanpa kerugian dan pengoptimuman kandungan dalam dipermudahkan dengan 'Aspose.Words for Python via .NET'. Contoh berikut menunjukkan cara mengoptimumkan kandungan JPG fail dalam Python:

Contoh kod dalam Python untuk memampatkan JPG fail
Muat naik fail yang anda mahu optimumkan/mampatkan
Jalankan kod
Pilih format sasaran daripada senarai
50%
pip install aspose-words
Salinan
import aspose.words as aw

doc = aw.Document()
builder = aw.DocumentBuilder(doc)

shape = builder.InsertImage("Input.jpg")

#  Kemas kini tetapan halaman untuk memangkas dokumen agar sesuai dengan saiz gambar.
pageSetup = builder.page_setup
pageSetup.page_width = shape.width
pageSetup.page_height = shape.height
pageSetup.top_margin = 0
pageSetup.left_margin = 0
pageSetup.bottom_margin = 0
pageSetup.right_margin = 0

save_options = aw.saving.ImageSaveOptions(aw.SaveFormat.JPG)
save_options.jpeg_quality = 50

doc.save("Output.jpg", save_options)
import aspose.words as aw doc = aw.Document("Input.jpg") doc.cleanup() shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)] for shape in shapes: if shape.isImage: # Terpulang kepada pembangun untuk memilih perpustakaan untuk pemampatan imej. image = Image.open(shape.image_data.to_stream()) # ... # Mampatkan imej dan tetapkannya semula kepada bentuk. shape.image_data.set_image("yourCompressedImage") save_options = aw.saving.PdfSaveOptions save_options.cache_background_graphics = true doc.save("Output.jpg", save_options) import aspose.words as aw doc = aw.Document("Input.jpg") doc.cleanup() shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)] for shape in shapes: if shape.isImage: # Terpulang kepada pembangun untuk memilih perpustakaan untuk pemampatan imej. image = Image.open(shape.image_data.to_stream()) # ... # Mampatkan imej dan tetapkannya semula kepada bentuk. shape.image_data.set_image("yourCompressedImage") doc.save("Output.jpg") import aspose.words as aw doc = aw.Document("Input.jpg") doc.cleanup() shapes = [node.as_shape() for node in doc.get_child_nodes(aw.NodeType.SHAPE, True)] for shape in shapes: if shape.isImage: # Terpulang kepada pembangun untuk memilih perpustakaan untuk pemampatan imej. image = Image.open(shape.image_data.to_stream()) # ... # Mampatkan imej dan tetapkannya semula kepada bentuk. shape.image_data.set_image("yourCompressedImage") save_options = aw.saving.OoxmlSaveOptions save_options.compression_level = aw.saving.CompressionLevel.MAXIMUM doc.save("Output.jpg", save_options) import aspose.words as aw doc = aw.Document() builder = aw.DocumentBuilder(doc) shape = builder.InsertImage("Input.jpg") # Kemas kini tetapan halaman untuk memangkas dokumen agar sesuai dengan saiz gambar. pageSetup = builder.page_setup pageSetup.page_width = shape.width pageSetup.page_height = shape.height pageSetup.top_margin = 0 pageSetup.left_margin = 0 pageSetup.bottom_margin = 0 pageSetup.right_margin = 0 save_options = aw.saving.ImageSaveOptions(aw.SaveFormat.JPG) save_options.jpeg_quality = 50 doc.save("Output.jpg", save_options) import aspose.words as aw renderer = aw.pdf2word.fixedformats.PdfFixedRenderer() pdf_read_options = aw.pdf2word.fixedformats.PdfFixedOptions() pdf_read_options.image_format = aw.pdf2word.fixedformats.FixedImageFormat.JPEG pdf_read_options.jpeg_quality = 50 with open ("Input.jpg", 'rb') as pdf_stream: pages_stream = renderer.save_pdf_as_images(pdf_stream, pdf_read_options); builder = aw.DocumentBuilder() for i in range(0, len(pages_stream)): # Tetapkan saiz halaman maksimum untuk mengelakkan penskalaan imej halaman semasa. max_page_dimension = 1584 page_setup = builder.page_setup set_page_size(page_setup, max_page_dimension, max_page_dimension) page_image = builder.insert_image(pages_stream[i]) set_page_size(page_setup, page_image.width, page_image.height) page_setup.top_margin = 0 page_setup.left_margin = 0 page_setup.bottom_margin = 0 page_setup.right_margin = 0 if i != len(pages_stream) - 1: builder.insert_break(aw.BreakType.SECTION_BREAK_NEW_PAGE) save_options = aw.saving.PdfSaveOptions() save_options.cache_background_graphics = true builder.document.save("Output.jpg", save_options) def set_page_size(page_setup, width, height): page_setup.page_width = width; page_setup.page_height = height;
Jalankan kod

Cara untuk memampatkan JPG

  1. Pasang Aspose.Words for Python via .NET.
  2. Tambahkan rujukan perpustakaan (import pustaka) ke projek Python anda.
  3. Buka JPG fail sumber dalam Python.
  4. Mampat JPG tanpa kehilangan kualiti.
  5. Panggil kaedah document_cleanup(). Kod yang terhasil mungkin berbeza-beza bergantung pada format fail output.
  6. Dapatkan hasil termampat sebagai JPG fail.

Pustaka Python untuk mengoptimumkan dan memampatkan JPG fail

Kami menjadi tuan rumah pakej Python kami dalam repositori PyPi. Sila ikut arahan langkah demi langkah tentang cara memasang "Aspose.Words for Python via .NET" ke persekitaran pembangun anda.

Keperluan Sistem

Pakej ini serasi dengan Python ≥3.5 dan <3.12. Jika anda membangunkan perisian untuk Linux, sila lihat keperluan tambahan untuk gcc dan libpython dalam Dokumentasi Produk.

Pengoptimuman format fail lain yang disokong

Anda boleh mengoptimumkan fail dalam banyak format fail lain:

5%

Langgan Kemas Kini Produk Aspose

Dapatkan surat berita bulanan dan tawaran yang dihantar terus ke peti mel anda.

© Aspose Pty Ltd 2001-2024. Hak cipta terpelihara.