Koda za stiskanje PDF v Python

Visoko zmogljiva knjižnica Python za optimizacijo vsebine in velikosti PDF ob ohranjanju izvirne kakovosti in osnovnih podatkov

To je profesionalna rešitev za stiskanje PDF s Python. Uporabite naš API za optimizacijo PDF za razvoj programske opreme na visoki ravni, neodvisne od platforme v Pythonu. Preizkusite na spletu brezplačno!

Oglejte si delček kode

Stisnite PDF v Python

Ta knjižnica Python razvijalcem omogoča hitro in učinkovito programsko stiskanje PDF dokumentov. Preprosto pripravite optimiziran izpis PDF, pripravljen za tiskanje, arhiviranje ali skupno rabo prek omrežja. Je samostojna rešitev za obdelavo PDF dokumentov za Python, ki ne zahteva namestitve programske opreme tretjih oseb.

Zmanjšajte velikost PDF ja z uporabo Python

Naš izdelek razvijalcem Python zagotavlja integriran API za zmanjšanje velikosti PDF datotek. Stiskanje PDF poteka v dveh prehodih. Med prvim prehodom se vse strani PDF ja pretvorijo v slikovni format. Naš izdelek uporablja prilagodljive in zelo učinkovite algoritme stiskanja slik, ki razvijalcem omogočajo kompakten izhod PDF, hkrati pa ohranjajo optimalno kakovost dokumenta. Pri naslednjem prehodu se zaporedje slik stisne in združi v vsebino nove, optimizirane PDF datoteke.

Stiskanje PDF jev je preprosto z 'Aspose.Words for Python via .NET'. Naslednji primer prikazuje, kako zmanjšati velikost PDF datoteke v Python:

Primer kode v Python za stiskanje PDF datotek
Naložite datoteko, ki jo želite optimizirati/stisniti
Zaženi kodo
S seznama izberite ciljno obliko
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)):
    # Nastavite največjo velikost strani, da se izognete spreminjanju velikosti slike trenutne strani.
    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: # Razvijalec mora izbrati knjižnico za stiskanje slik. image = Image.open(shape.image_data.to_stream()) # ... # Stisnite sliko in jo nastavite nazaj v obliko. 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: # Razvijalec mora izbrati knjižnico za stiskanje slik. image = Image.open(shape.image_data.to_stream()) # ... # Stisnite sliko in jo nastavite nazaj v obliko. 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: # Razvijalec mora izbrati knjižnico za stiskanje slik. image = Image.open(shape.image_data.to_stream()) # ... # Stisnite sliko in jo nastavite nazaj v obliko. 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)): # Nastavite največjo velikost strani, da se izognete spreminjanju velikosti slike trenutne strani. 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;
Zaženi kodo

Kako stisniti PDF v Python

  1. Namesti Aspose.Words for Python via .NET.
  2. Dodajte referenco knjižnice (uvozite knjižnico) svojemu Python projektu.
  3. Odprite izvorno PDF datoteko v Python.
  4. Stisnite PDF brez izgube kakovosti.
  5. Pokličite metodo document_cleanup(). Nastala koda se lahko razlikuje glede na format izhodne datoteke.
  6. Pridobite stisnjen rezultat kot PDF datoteko.

Knjižnica Python za optimizacijo in stiskanje PDF datotek

Naše pakete Python gostimo v repozitorijih PyPi. Sledite navodilom po korakih, kako namestiti "Aspose.Words for Python via .NET" v okolje razvijalca.

Sistemske zahteve

Ta paket je združljiv s Python ≥3.5 in <3.12. Če razvijate programsko opremo za Linux, si oglejte dodatne zahteve za gcc in libpython v dokumentaciji izdelka.

Druge podprte optimizacije formata datotek

Datoteke lahko optimizirate v številnih drugih oblikah datotek:

5%

Naročite se na posodobitve izdelkov Aspose

Prejemajte mesečna glasila in ponudbe neposredno v vaš nabiralnik.

© Aspose Pty Ltd 2001-2025. Vse pravice pridržane.