Koden til at komprimere PDF i Python

Højtydende Python bibliotek til at optimere PDF indhold og -størrelse ved at bevare den originale kvalitet og basisdata

Dette er en professionel løsning til at komprimere PDF ved hjælp af Python. Brug vores PDF optimerings API til at udvikle platform-uafhængig software på højt niveau i Python. Prøv det gratis online!

Se kodestykket

Komprimer PDF i Python

Dette Python bibliotek giver udviklere mulighed for hurtigt og effektivt at komprimere PDF dokumenter programmatisk. Få nemt optimeret PDF output klar til udskrivning, arkivering eller deling over netværket. Det er en selvstændig PDF dokumentbehandlingsløsning til Python, der ikke kræver nogen tredjepartssoftware, der skal installeres.

Reducer størrelsen af en PDF ved hjælp af Python

Vores produkt giver Python udviklere en integreret API til at reducere størrelsen af PDF filer. PDF komprimering udføres i to omgange. I løbet af det første gennemløb konverteres alle sider i PDF'en til billedformat. Vores produkt bruger adaptive og højeffektive billedkomprimeringsalgoritmer, der gør det muligt for udviklere at få kompakt PDF output og samtidig bevare den optimale kvalitet af dokumentet. Ved næste gennemløb komprimeres billedsekvensen og kombineres for at danne indholdet af en ny, optimeret PDF fil.

PDF komprimering gjort let med 'Aspose.Words for Python via .NET'. Følgende eksempel viser, hvordan du reducerer størrelsen af en PDF fil i Python:

Kodeeksempel i Python for at komprimere PDF filer
Upload en fil, du vil optimere/komprimere
Kør kode
Vælg målformatet fra listen
50%
pip install aspose-words
Kopi
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.pdf", '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)):
    # Indstil maksimal sidestørrelse for at undgå skalering af det aktuelle sidebillede.
    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.pdf", save_options)

def set_page_size(page_setup, width, height):

    page_setup.page_width = width;
    page_setup.page_height = height;
import aspose.words as aw doc = aw.Document("Input.pdf") 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 er op til udvikleren at vælge biblioteket til billedkomprimering. image = Image.open(shape.image_data.to_stream()) # ... # Komprimer billedet og sæt det tilbage til formen. shape.image_data.set_image("yourCompressedImage") save_options = aw.saving.PdfSaveOptions save_options.cache_background_graphics = true doc.save("Output.pdf", save_options) import aspose.words as aw doc = aw.Document("Input.pdf") 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 er op til udvikleren at vælge biblioteket til billedkomprimering. image = Image.open(shape.image_data.to_stream()) # ... # Komprimer billedet og sæt det tilbage til formen. shape.image_data.set_image("yourCompressedImage") doc.save("Output.pdf") import aspose.words as aw doc = aw.Document("Input.pdf") 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 er op til udvikleren at vælge biblioteket til billedkomprimering. image = Image.open(shape.image_data.to_stream()) # ... # Komprimer billedet og sæt det tilbage til formen. shape.image_data.set_image("yourCompressedImage") save_options = aw.saving.OoxmlSaveOptions save_options.compression_level = aw.saving.CompressionLevel.MAXIMUM doc.save("Output.pdf", save_options) import aspose.words as aw doc = aw.Document() builder = aw.DocumentBuilder(doc) shape = builder.InsertImage("Input.pdf") save_options = aw.saving.ImageSaveOptions(aw.SaveFormat.PDF) shape.get_shape_renderer().save("Output.pdf", 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.pdf", '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)): # Indstil maksimal sidestørrelse for at undgå skalering af det aktuelle sidebillede. 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.pdf", save_options) def set_page_size(page_setup, width, height): page_setup.page_width = width; page_setup.page_height = height;
Kør kode

Sådan komprimeres PDF i Python

  1. Installer Aspose.Words for Python via .NET.
  2. Tilføj en biblioteksreference (importér biblioteket) til dit Python projekt.
  3. Åbn kilde PDF filen i Python.
  4. Komprimer PDF uden at miste kvalitet.
  5. Kald metoden document_cleanup(). Den resulterende kode kan variere afhængigt af outputfilformatet.
  6. Få det komprimerede resultat som en PDF fil.

Python bibliotek for at optimere og komprimere PDF filer

Vi hoster vores Python pakker i PyPi- depoter. Følg venligst trin-for-trin instruktionerne om, hvordan du installerer "Aspose.Words for Python via .NET" til dit udviklermiljø.

Systemkrav

Denne pakke er kompatibel med Python ≥3.5 og <3.12. Hvis du udvikler software til Linux, så se venligst på yderligere krav til gcc og libpython i produktdokumentation.

Andre understøttede filformatoptimeringer

Du kan optimere filer i mange andre filformater:

5%

Abonner på Aspose produktopdateringer

Få månedlige nyhedsbreve og tilbud leveret direkte til din postkasse.

© Aspose Pty Ltd 2001-2024. Alle rettigheder forbeholdes.