کد فشرده سازی PDF در Python

کتابخانه Python با کارایی بالا برای بهینه سازی محتوا و اندازه PDF با حفظ کیفیت اصلی و داده های پایه

این یک راه حل حرفه ای برای فشرده سازی PDF با استفاده از Python است. از API بهینه سازی PDF ما برای توسعه نرم افزار سطح بالا و مستقل از پلت فرم در پایتون استفاده کنید. آن را به صورت آنلاین به صورت رایگان امتحان کنید!

مشاهده قطعه کد

PDF را در Python فشرده کنید

این کتابخانه Python به توسعه دهندگان این امکان را می دهد که اسناد PDF را به سرعت و کارآمد فشرده کنند. به راحتی خروجی PDF بهینه شده را برای چاپ، بایگانی یا اشتراک گذاری از طریق شبکه آماده کنید. این یک راه حل مستقل پردازش اسناد PDF برای Python است که نیازی به نصب نرم افزار شخص ثالث ندارد.

اندازه یک PDF را با استفاده از Python کاهش دهید

محصول ما به توسعه دهندگان Python یک API یکپارچه برای کاهش اندازه فایل های PDF ارائه می دهد. فشرده سازی PDF در دو پاس انجام می شود. در طی اولین پاس، تمام صفحات PDF به فرمت تصویر تبدیل می شوند. محصول ما از الگوریتم‌های فشرده‌سازی تصویر تطبیقی و بسیار کارآمد استفاده می‌کند که به توسعه‌دهندگان اجازه می‌دهد با حفظ کیفیت مطلوب سند، خروجی فشرده PDF را دریافت کنند. در پاس بعدی، توالی تصاویر فشرده شده و ترکیب می شود تا محتوای یک فایل PDF جدید و بهینه شده را تشکیل دهد.

فشرده‌سازی PDF با "Aspose.Words برای 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. تمامی حقوق محفوظ است.