הקוד לדחיסת PDF ב Python

ספריית Python בעלת ביצועים גבוהים למיטוב התוכן והגודל של PDF תוך שמירה על האיכות המקורית ונתוני הבסיס

זהו פתרון מקצועי לדחיסת PDF באמצעות Python. השתמש ב PDF ממשק API לאופטימיזציה שלנו כדי לפתח תוכנה ברמה גבוהה, בלתי תלויה בפלטפורמה ב-Python. נסה את זה באינטרנט בחינם!

הצג את קטע הקוד

דחוס PDF ב Python

ספריית Python זו מספקת למפתחים את היכולת לדחוס במהירות וביעילות מסמכי PDF באופן פרוגרמטי. קבל בקלות פלט PDF אופטימלי מוכן להדפסה, אחסון בארכיון או שיתוף ברשת. זהו פתרון עצמאי לעיבוד מסמכי PDF עבור Python שאינו מצריך התקנת תוכנת צד שלישי.

הקטנת גודל קובץ PDF באמצעות Python

המוצר שלנו מספק למפתחי Python API משולב כדי להקטין את הגודל של קבצי PDF. דחיסת PDF מתבצעת בשני מעברים. במהלך המעבר הראשון, כל דפי ה PDF מומרים לפורמט תמונה. המוצר שלנו משתמש באלגוריתמים אדפטיביים ויעילים ביותר של דחיסת תמונה המאפשרים למפתחים לקבל פלט PDF קומפקטי תוך שמירה על איכות אופטימלית של המסמך. במעבר הבא, רצף התמונות נדחס ומשולב ליצירת תוכן של קובץ PDF חדש ומותאם.

דחיסת PDF קלה עם 'Aspose.Words for Python via .NET'. הדוגמה הבאה מדגימה כיצד להקטין את הגודל של קובץ PDF ב Python:

דוגמה לקוד ב Python כדי לדחוס PDF קבצים
העלה קובץ שברצונך לבצע אופטימיזציה/דחיסה
הפעל קוד
בחר את פורמט היעד מהרשימה
50%
pip install aspose-words
עותק
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)):
    # הגדר את גודל העמוד המקסימלי כדי למנוע את קנה המידה הנוכחי של תמונת העמוד.
    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: # זה תלוי במפתח לבחור את הספרייה לדחיסת תמונה. image = Image.open(shape.image_data.to_stream()) # ... # דחוס תמונה והחזר אותה לצורה. 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: # זה תלוי במפתח לבחור את הספרייה לדחיסת תמונה. image = Image.open(shape.image_data.to_stream()) # ... # דחוס תמונה והחזר אותה לצורה. 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: # זה תלוי במפתח לבחור את הספרייה לדחיסת תמונה. image = Image.open(shape.image_data.to_stream()) # ... # דחוס תמונה והחזר אותה לצורה. 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)): # הגדר את גודל העמוד המקסימלי כדי למנוע את קנה המידה הנוכחי של תמונת העמוד. 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;
הפעל קוד

כיצד לדחוס PDF ב Python

  1. התקן Aspose.Words for Python via .NET.
  2. הוסף הפניה לספרייה (ייבא את הספרייה) לפרויקט Python שלך.
  3. פתח את קובץ המקור PDF ב Python.
  4. דחוס PDF מבלי לאבד איכות.
  5. קרא לשיטת document_cleanup(). הקוד שיתקבל עשוי להשתנות בהתאם לפורמט קובץ הפלט.
  6. קבל את התוצאה הדחוסה כקובץ PDF.

ספריית Python כדי לייעל ולדחוס PDF קבצים

אנו מארחים את חבילות Python שלנו במאגרי PyPi. אנא עקוב אחר ההוראות שלב אחר שלב כיצד להתקין את "Aspose.Words for Python via .NET" בסביבת המפתחים שלך.

דרישות מערכת

חבילה זו תואמת ל- Python ≥3.5 ו <3.12. אם אתה מפתח תוכנה עבור לינוקס, אנא עיין בדרישות נוספות עבור gcc ו- libpython בתיעוד המוצר.

אופטימיזציות אחרות של פורמט קבצים נתמכות

אתה יכול לבצע אופטימיזציה של קבצים בפורמטים רבים אחרים של קבצים:

5%

הירשם לעדכוני מוצר Aspose

קבל ניוזלטרים והצעות חודשיים שנשלחו ישירות לתיבת הדואר שלך.

© Aspose Pty Ltd 2001-2024. כל הזכויות שמורות.