Koden för att komprimera DOCX i Python

Högpresterande Python bibliotek för att optimera DOCX innehåll och storlek med bibehållen originalkvalitet och baslinjedata

Det här är en professionell lösning för att komprimera DOCX med Python. Använd vårt DOCX optimerings API för att utveckla plattformsoberoende programvara på hög nivå i Python. Prova det gratis online!

Visa kodavsnitt

Komprimera DOCX filen i Python

Gör stora DOCX filer mindre utan kvalitetsförlust. Radera onödig och oanvänd data. Krympa storleken på en DOCX fil i kod. Python biblioteket ger utvecklare ett integrerat API för att optimera DOCX innehåll.

Minska storleken på DOCX filer med Python

Python biblioteket är en fristående lösning och kräver ingen programvara från tredje part installerad.

Förlustfri komprimering och djup innehållsoptimering på ett enkelt sätt med 'Aspose.Words for Python via .NET'. Följande exempel visar hur man optimerar innehållet i en DOCX fil i Python:

Kodexempel i Python för att komprimera DOCX filer
Ladda upp en fil du vill optimera/komprimera
Kör kod
Välj målformat från listan
pip install aspose-words
Kopiera
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:
        #  Det är upp till utvecklaren att välja biblioteket för bildkomprimering.
        image = Image.open(shape.image_data.to_stream())

        # ...
        #  Komprimera bilden och ställ tillbaka den till formen.
        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: # Det är upp till utvecklaren att välja biblioteket för bildkomprimering. image = Image.open(shape.image_data.to_stream()) # ... # Komprimera bilden och ställ tillbaka den till formen. 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: # Det är upp till utvecklaren att välja biblioteket för bildkomprimering. image = Image.open(shape.image_data.to_stream()) # ... # Komprimera bilden och ställ tillbaka den till formen. 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: # Det är upp till utvecklaren att välja biblioteket för bildkomprimering. image = Image.open(shape.image_data.to_stream()) # ... # Komprimera bilden och ställ tillbaka den till formen. 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") # Uppdatera sidinställningarna för att beskära dokumentet så att det passar bildens storlek. 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)): # Ställ in maximal sidstorlek för att undvika skalning av den aktuella sidbilden. 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;
Kör kod

Så här komprimerar du DOCX

  1. Installera Aspose.Words for Python via .NET.
  2. Lägg till en biblioteksreferens (importera biblioteket) till ditt Python projekt.
  3. Öppna källfilen DOCX i Python.
  4. Komprimera DOCX utan att förlora kvalitet.
  5. Anropa metoden document_cleanup(). Den resulterande koden kan variera beroende på utdatafilformatet.
  6. Hämta det komprimerade resultatet som en DOCX fil.

Python bibliotek för att optimera och komprimera DOCX filer

Vi är värd för våra Python paket i PyPi- förråd. Följ steg-för-steg-instruktionerna för hur du installerar "Aspose.Words for Python via .NET" i din utvecklarmiljö.

Systemkrav

Detta paket är kompatibelt med Python ≥3.5 och <3.12. Om du utvecklar programvara för Linux, vänligen ta en titt på ytterligare krav för gcc och libpython i produktdokumentation.

Andra filformatsoptimeringar som stöds

Du kan optimera filer i många andra filformat:

5%

Prenumerera på Aspose produktuppdateringar

Få månatliga nyhetsbrev och erbjudanden direkt levererade till din brevlåda.

© Aspose Pty Ltd 2001-2024. Alla rättigheter förbehållna.