Код для сжатия 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

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