Код для стиснення Word в Python

Високопродуктивна бібліотека Python для оптимізації вмісту та розміру Word із збереженням вихідної якості та базових даних

Це професійне рішення для стиснення Word за допомогою Python. Використовуйте наш API оптимізації Word, щоб розробити високорівневе, незалежне від платформи програмне забезпечення на Python. Спробуйте онлайн безкоштовно!

Переглянути фрагмент коду

Стисніть Word файл у Python

Зменшуйте великі Word файли без втрати якості. Видаліть непотрібні та невикористовувані дані. Зменшіть розмір Word файлу у коді. Бібліотека Python надає розробникам інтегрований API для оптимізації вмісту Word.

Зменшіть розмір Word файлів за допомогою Python

Бібліотека Python є окремим рішенням і не потребує встановлення стороннього програмного забезпечення.

Стиснення без втрат і глибока оптимізація вмісту стали легкими завдяки 'Aspose.Words for Python via .NET'. У наступному прикладі показано, як оптимізувати вміст Word файлу у Python:

Приклад коду в Python для стиснення 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:
        #  Вибір бібліотеки для стиснення зображень залежить від розробника.
        image = Image.open(shape.image_data.to_stream())

        # ...
        #  Стисніть зображення та поверніть його до форми.
        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: # Вибір бібліотеки для стиснення зображень залежить від розробника. image = Image.open(shape.image_data.to_stream()) # ... # Стисніть зображення та поверніть його до форми. 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: # Розробник повинен вибрати бібліотеку для стиснення зображень. image = Image.open(shape.image_data.to_stream()) # ... # Стисніть зображення та поверніть його до форми. 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: # Вибір бібліотеки для стиснення зображень залежить від розробника. image = Image.open(shape.image_data.to_stream()) # ... # Стисніть зображення та поверніть його до форми. 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") # Оновіть налаштування сторінки, щоб обрізати документ відповідно до розміру зображення. 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.DOCX) doc.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)): # Встановіть максимальний розмір сторінки, щоб уникнути масштабування зображення поточної сторінки. 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;
Виконати код

Як стиснути Word Python

  1. Встановіть Aspose.Words for Python via .NET.
  2. Додайте посилання на бібліотеку (імпортуйте бібліотеку) до свого проекту Python.
  3. Відкрийте вихідний Word файл у Python.
  4. Стисніть Word без втрати якості.
  5. Викличте метод document_cleanup(). Отриманий код може відрізнятися в залежності від формату вихідного файлу.
  6. Отримайте стиснутий результат у вигляді Word файлу.

Python бібліотека для оптимізації та стиснення WORD файлів

Ми розміщуємо наші пакунки Python у сховищах PyPi. Будь ласка, дотримуйтесь покрокових інструкцій щодо встановлення "Aspose.Words for Python via .NET" у середовище розробника.

Системні вимоги

Цей пакет сумісний з Python ≥3.5 і <3.12. Якщо ви розробляєте програмне забезпечення для Linux, перегляньте додаткові вимоги до gcc і libpython у документації продукту.

Інші підтримувані оптимізації формату файлів

Ви можете оптимізувати файли в багатьох інших форматах:

5%

Підпишіться на оновлення продукту Aspose

Отримуйте щомісячні інформаційні бюлетені та пропозиції безпосередньо на вашу поштову скриньку.

© Aspose Pty Ltd 2001-2024. Всі права захищені.