Kód pro komprimaci PDF v Python

Vysoce výkonná knihovna Python pro optimalizaci obsahu a velikosti PDF při zachování původní kvality a výchozích dat

Toto je profesionální řešení pro kompresi PDF pomocí Python. Použijte naše optimalizační rozhraní API PDF k vývoji softwaru na vysoké úrovni, nezávislého na platformě v Pythonu. Vyzkoušejte to online zdarma!

Zobrazit fragment kódu

Komprimujte PDF v Python

Tato knihovna Python poskytuje vývojářům možnost rychle a efektivně programově komprimovat PDF dokumenty. Získejte snadno optimalizovaný výstup PDF připravený pro tisk, archivaci nebo sdílení po síti. Jedná se o samostatné řešení pro zpracování PDF dokumentů pro Python, které nevyžaduje instalaci žádného softwaru třetích stran.

Zmenšete velikost PDF pomocí Python

Náš produkt poskytuje vývojářům Python integrované rozhraní API pro snížení velikosti PDF souborů. Komprese PDF se provádí ve dvou průchodech. Během prvního průchodu jsou všechny stránky PDF převedeny do obrazového formátu. Náš produkt využívá adaptivní a vysoce účinné algoritmy komprese obrázků, které umožňují vývojářům získat kompaktní výstup PDF při zachování optimální kvality dokumentu. Při dalším průchodu je sekvence obrázků zkomprimována a zkombinována tak, aby vytvořila obsah nového optimalizovaného PDF souboru.

Komprese PDF je snadná s 'Aspose.Words for Python via .NET'. Následující příklad ukazuje, jak zmenšit velikost PDF souboru v Python:

Příklad kódu v Python pro komprimaci PDF souborů
Nahrajte soubor, který chcete optimalizovat/komprimovat
Spustit kód
Vyberte cílový formát ze seznamu
50%
pip install aspose-words
Kopírovat
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)):
    # Nastavte maximální velikost stránky, abyste zabránili změně měřítka aktuální stránky.
    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: # Je na vývojáři, aby si vybral knihovnu pro kompresi obrázků. image = Image.open(shape.image_data.to_stream()) # ... # Komprimujte obrázek a nastavte jej zpět do tvaru. 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: # Je na vývojáři, aby si vybral knihovnu pro kompresi obrázků. image = Image.open(shape.image_data.to_stream()) # ... # Komprimujte obrázek a nastavte jej zpět do tvaru. 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: # Je na vývojáři, aby si vybral knihovnu pro kompresi obrázků. image = Image.open(shape.image_data.to_stream()) # ... # Komprimujte obrázek a nastavte jej zpět do tvaru. 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)): # Nastavte maximální velikost stránky, abyste zabránili změně měřítka aktuální stránky. 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;
Spustit kód

Jak komprimovat PDF

  1. Nainstalujte Aspose.Words for Python via .NET.
  2. Přidejte odkaz na knihovnu (importujte knihovnu) do svého Python projektu.
  3. Otevřete zdrojový PDF soubor v Python.
  4. Komprimujte PDF bez ztráty kvality.
  5. Zavolejte metodu document_cleanup(). Výsledný kód se může lišit v závislosti na formátu výstupního souboru.
  6. Získejte komprimovaný výsledek jako PDF soubor.

Knihovna Python k optimalizaci a komprimaci PDF souborů

Naše balíčky Python hostujeme v úložištích PyPi. Postupujte prosím podle pokynů krok za krokem, jak nainstalovat "Aspose.Words for Python via .NET" do vašeho vývojářského prostředí.

Požadavky na systém

Tento balíček je kompatibilní s Python ≥3.5 a <3.12. Pokud vyvíjíte software pro Linux, podívejte se prosím na další požadavky pro gcc a libpython v dokumentaci k produktu.

Další podporované optimalizace formátu souborů

Můžete optimalizovat soubory v mnoha dalších formátech souborů:

5%

Přihlaste se k odběru aktualizací produktu Aspose

Získejte měsíční zpravodaje a nabídky přímo do vaší poštovní schránky.

© Aspose Pty Ltd 2001-2024. Všechna práva vyhrazena.