Optimumkan dan mampatkan fail dalam Python

Pustaka Python berprestasi tinggi untuk mengoptimumkan kandungan dan saiz fail dengan mengekalkan kualiti asal dan data asas

Gunakan API Pengoptimuman Dokumen kami untuk membangunkan perisian peringkat tinggi dan bebas platform dalam Python. Ini ialah penyelesaian yang berkuasa untuk mengurangkan saiz dokumen dan imej menggunakan Python.

Lihat coretan kod

Mampatkan Word dokumen dan HTML dalam Python

Jadikan fail besar lebih kecil tanpa kehilangan kualiti. Padamkan data yang tidak perlu dan tidak digunakan. Kecilkan saiz Word fail dan HTML dalam Python. Python kami menyediakan pembangun dengan API bersepadu untuk mengoptimumkan dokumen dalam pelbagai format.

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

Kurangkan saiz Word fail dan HTML menggunakan Python

Kesan maksimum boleh diperoleh dengan mengoptimumkan imej resolusi tinggi, serta dokumen yang mengandungi imej sedemikian. Python kami akan membantu anda untuk memampatkan DOCX fail, DOC, RTF, ODT, EPUB, HTML, JPG, PNG.

Pengoptimuman dokumen tanpa kehilangan kualiti dipermudahkan dengan 'Aspose.Words for Python via .NET'. Contoh berikut menunjukkan cara mengecilkan saiz Word dokumen dalam Python:

Python contoh kod untuk mengoptimumkan kandungan dan saiz fail
Muat naik fail yang anda mahu optimumkan/mampatkan
Jalankan kod
Pilih format sasaran daripada senarai
pip install aspose-words
Salinan
import aspose.words as aw

doc = aw.Document("Input.docx")
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.docx", save_options)
import aspose.words as aw doc = aw.Document("Input.docx") 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.docx", save_options) import aspose.words as aw doc = aw.Document("Input.docx") 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.docx") import aspose.words as aw doc = aw.Document("Input.docx") 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.docx", save_options) import aspose.words as aw doc = aw.Document() builder = aw.DocumentBuilder(doc) shape = builder.InsertImage("Input.docx") save_options = aw.saving.ImageSaveOptions(aw.SaveFormat.DOCX) shape.get_shape_renderer().save("Output.docx", 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.docx", '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.docx", 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 Word, JPG dan format fail lain dalam Python

  1. Pasang Aspose.Words for Python via .NET.
  2. Tambahkan rujukan perpustakaan (import pustaka) ke projek Python anda.
  3. Buka fail sumber dalam Python.
  4. Memampatkan dokumen dan imej tanpa kehilangan kualiti.
  5. Panggil kaedah document_cleanup(). Kod yang terhasil mungkin berbeza bergantung pada format fail input/output.
  6. Dapatkan hasilnya sebagai fail termampat.

Python perpustakaan untuk mengoptimumkan dan memampatkan 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.

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.