Optimera och komprimera filer i Python

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

Använd vårt API för dokumentoptimering för att utveckla plattformsoberoende programvara på hög nivå i Python. Detta är en kraftfull lösning för att minska dokument- och bildstorleken med Python.

Visa kodavsnitt

Komprimera Word och HTML dokument i Python

Gör stora filer mindre utan kvalitetsförlust. Radera onödig och oanvänd data. Krymp storleken på Word och HTML filer i Python. Vårt Python bibliotek ger utvecklare ett integrerat API för att optimera dokument i olika format.

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

Minska storleken på Word och HTML filer med Python

Den maximala effekten kan uppnås genom att optimera högupplösta bilder, såväl som dokument som innehåller sådana bilder. Vårt Python bibliotek hjälper dig att komprimera DOCX, DOC, RTF, ODT, EPUB, HTML, JPG, PNG filer.

Optimering av dokument utan kvalitetsförlust på ett enkelt sätt med 'Aspose.Words for Python via .NET'. Följande exempel visar hur man förminskar storleken på ett Word dokument i Python:

Python kodexempel för att optimera filens innehåll och storlek
Ladda upp en fil du vill optimera/komprimera
Kör kod
Välj målformat från listan
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 Word, JPG och andra filformat i Python

  1. Installera Aspose.Words for Python via .NET.
  2. Lägg till en biblioteksreferens (importera biblioteket) till ditt Python projekt.
  3. Öppna källfilen i Python.
  4. Komprimera dokument och bilder utan att förlora kvalitet.
  5. Anropa metoden document_cleanup(). Den resulterande koden kan variera beroende på in-/utdatafilformaten.
  6. Få resultatet som en komprimerad fil.

Python bibliotek för att optimera och komprimera 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.

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.