Le code pour compresser DOCX en Python

Bibliothèque Python hautes performances pour optimiser le contenu et la taille de DOCX en conservant la qualité d'origine et les données de référence

Il s'agit d'une solution professionnelle pour compresser DOCX en utilisant Python. Utilisez notre API d'optimisation DOCX pour développer des logiciels de haut niveau indépendants de la plate-forme en Python. Essayez-le en ligne gratuitement!

Afficher l'extrait de code

Compressez le DOCX fichier dans Python

Réduisez la taille des gros DOCX fichiers sans perte de qualité. Supprimez les données inutiles et inutilisées. Réduisez la taille d'un DOCX fichier dans le code. La Python bibliothèque fournit aux développeurs une API intégrée pour optimiser le contenu DOCX.

Réduisez la taille des DOCX fichiers à l'aide de Python

Python bibliothèque est une solution autonome et ne nécessite l'installation d'aucun logiciel tiers.

Compression sans perte et optimisation approfondie du contenu simplifiées avec 'Aspose.Words for Python via .NET'. L'exemple suivant montre comment optimiser le contenu d'un DOCX fichier dans Python:

Exemple de code dans Python pour compresser DOCX fichiers
Téléchargez un fichier que vous souhaitez optimiser/compresser
Exécuter le code
Sélectionnez le format cible dans la liste
pip install aspose-words
Copie
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:
        #  C'est au développeur de choisir la bibliothèque pour la compression d'image.
        image = Image.open(shape.image_data.to_stream())

        # ...
        #  Compressez l'image et remettez-la à la forme.
        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: # C'est au développeur de choisir la bibliothèque pour la compression d'image. image = Image.open(shape.image_data.to_stream()) # ... # Compressez l'image et remettez-la à la forme. 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: # C'est au développeur de choisir la bibliothèque pour la compression d'image. image = Image.open(shape.image_data.to_stream()) # ... # Compressez l'image et remettez-la à la forme. 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: # C'est au développeur de choisir la bibliothèque pour la compression d'image. image = Image.open(shape.image_data.to_stream()) # ... # Compressez l'image et remettez-la à la forme. 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)): # Définissez la taille de page maximale pour éviter la mise à l'échelle de l'image de la page actuelle. 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;
Exécuter le code

Comment compresser DOCX en Python

  1. Installez Aspose.Words for Python via .NET.
  2. Ajoutez une référence de bibliothèque (importez la bibliothèque) à votre projet Python.
  3. Ouvrez le fichier source DOCX dans Python.
  4. Compressez DOCX sans perte de qualité.
  5. Appelez la méthode document_cleanup(). Le code résultant peut varier en fonction du format du fichier de sortie.
  6. Obtenez le résultat compressé sous forme de DOCX fichier.

Python bibliothèque pour optimiser et compresser DOCX fichiers

Nous hébergeons Python dans des référentiels PyPi. Veuillez suivre les instructions étape par étape sur la façon d'installer "Aspose.Words for Python via .NET" dans votre environnement de développeur.

Configuration requise

Ce package est compatible avec Python ≥3.5 et <3.12. Si vous développez des logiciels pour Linux, veuillez consulter les exigences supplémentaires pour gcc et libpython dans Product Documentation.

Autres optimisations de format de fichier prises en charge

Vous pouvez optimiser des fichiers dans de nombreux autres formats de fichiers:

5%

Abonnez-vous aux mises à jour des produits Aspose

Recevez des newsletters mensuelles et des offres directement dans votre boîte mail.

© Aspose Pty Ltd 2001-2024. Tous les droits sont réservés.