Kôd za komprimiranje PDF u Python

Python biblioteka visoke izvedbe za optimizaciju sadržaja i veličine PDF zadržavajući izvornu kvalitetu i osnovne podatke

Ovo je profesionalno rješenje za komprimiranje PDF pomoću Python. Upotrijebite naš PDF API za optimizaciju za razvoj softvera visoke razine, neovisnog o platformi u Pythonu. Isprobajte online besplatno!

Pogledajte isječak koda

Komprimirajte PDF u Python

Ova Python biblioteka pruža programerima mogućnost brzog i učinkovitog programskog komprimiranja PDF dokumenata. Jednostavno pripremite optimizirani PDF izlaz spreman za ispis, arhiviranje ili dijeljenje putem mreže. To je samostalno rješenje za obradu PDF dokumenata za Python koje ne zahtijeva instaliranje softvera treće strane.

Smanjite veličinu PDF a pomoću Python

Naš proizvod omogućuje Python programerima integrirani API za smanjenje veličine PDF datoteka. PDF kompresija se izvodi u dva prolaza. Tijekom prvog prolaza, sve stranice PDF a se pretvaraju u slikovni format. Naš proizvod koristi prilagodljive i vrlo učinkovite algoritme kompresije slike koji programerima omogućuju kompaktan PDF izlaz uz zadržavanje optimalne kvalitete dokumenta. Na sljedećem prolazu, slijed slika se komprimira i kombinira kako bi se formirao sadržaj nove, optimizirane PDF datoteke.

Kompresija PDF a pojednostavljena uz 'Aspose.Words for Python via .NET'. Sljedeći primjer pokazuje kako smanjiti veličinu PDF datoteke u Python:

Primjer koda u Python za komprimiranje PDF datoteka
Prenesite datoteku koju želite optimizirati/komprimirati
Pokreni kôd
Odaberite ciljni format s popisa
50%
pip install aspose-words
Kopirati
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)):
    # Postavite maksimalnu veličinu stranice kako biste izbjegli skaliranje slike trenutne stranice.
    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: # Na programeru je da odabere biblioteku za kompresiju slike. image = Image.open(shape.image_data.to_stream()) # ... # Komprimirajte sliku i vratite je u oblik. 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: # Na programeru je da odabere biblioteku za kompresiju slika. image = Image.open(shape.image_data.to_stream()) # ... # Komprimirajte sliku i vratite je u oblik. 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: # Na programeru je da odabere biblioteku za kompresiju slike. image = Image.open(shape.image_data.to_stream()) # ... # Komprimirajte sliku i vratite je u oblik. 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") # Ažurirajte postavke stranice kako biste izrezali dokument kako bi odgovarao veličini slike. 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.PDF) doc.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)): # Postavite maksimalnu veličinu stranice kako biste izbjegli skaliranje slike trenutne stranice. 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;
Pokreni kôd

Kako komprimirati PDF

  1. Instalirajte Aspose.Words for Python via .NET.
  2. Dodajte referencu biblioteke (uvezite biblioteku) svom Python projektu.
  3. Otvorite izvornu PDF datoteku u Python.
  4. Sažimanje PDF bez gubitka kvalitete.
  5. Pozovite metodu document_cleanup(). Rezultirajući kod može varirati ovisno o formatu izlazne datoteke.
  6. Dobijte komprimirani rezultat kao PDF datoteku.

Python biblioteka za optimizaciju i komprimiranje PDF datoteka

Naše Python pakete hostiramo u PyPi repozitorijumima. Slijedite upute korak po korak o tome kako instalirati "Aspose.Words for Python via .NET" u svoje razvojno okruženje.

Zahtjevi sustava

Ovaj paket je kompatibilan s Python ≥3.5 i <3.12. Ako razvijate softver za Linux, pogledajte dodatne zahtjeve za gcc i libpython u dokumentaciji proizvoda.

Ostale podržane optimizacije formata datoteke

Možete optimizirati datoteke u mnogim drugim formatima datoteka:

5%

Pretplatite se na Aspose ažuriranja proizvoda

Primajte mjesečne biltene i ponude izravno u vaš poštanski sandučić.

© Aspose Pty Ltd 2001-2024. Sva prava pridržana.