Код для сжатия DOCX на Python

Высокопроизводительная Python библиотека для оптимизации содержимого и размера DOCX с сохранением исходного качества и исходных данных.

Это профессиональное решение для сжатия DOCX с помощью Python. Используйте наш API оптимизации DOCX для разработки высокоуровневого независимого от платформы программного обеспечения на Python. Попробуйте онлайн бесплатно!

Посмотреть фрагмент кода

Сжать DOCX файл на Python

Уменьшайте размер больших DOCX файлов без потери качества. Удалите ненужные и неиспользуемые данные. Уменьшите размер DOCX файла в коде. Python библиотека предоставляет разработчикам интегрированный API для оптимизации содержимого DOCX файлов.

Уменьшить размер DOCX файлов на Python

Python библиотека является автономным решением и не требует установки стороннего ПО.

Сжатие без потерь и глубокая оптимизация контента стали проще благодаря 'Aspose.Words for Python via .NET'. В следующем примере показано, как оптимизировать содержимое DOCX файла на Python:

Пример кода на Python для сжатия DOCX файлов
Загрузите файл, который хотите оптимизировать/сжать
Выполнить код
Выберите целевой формат из списка
pip install aspose-words
Копировать
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") 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)): # Установите максимальный размер страницы, чтобы избежать масштабирования изображения текущей страницы. 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;
Выполнить код

Как сжать DOCX Python

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

Python библиотека для оптимизации и сжатия DOCX файлов

Мы размещаем наши пакеты Python в репозиториях PyPi. Следуйте пошаговым инструкциям по установке "Aspose.Words for Python via .NET" в среду разработчика.

Системные Требования

Этот пакет совместим с Python ≥3.5 и <3.12. Если вы разрабатываете программное обеспечение для Linux, ознакомьтесь с дополнительными требованиями для gcc и libpython в документации по продукту.

Оптимизация других поддерживаемых форматов файлов

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

5%

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

Получайте ежемесячные информационные бюллетени и предложения, доставляемые прямо на ваш почтовый ящик.