استخدم واجهة برمجة تطبيقات تحسين المستندات الخاصة بنا لتطوير برنامج عالي المستوى ومستقل عن النظام الأساسي في Python. هذا حل قوي لتقليل حجم المستند والصورة باستخدام Python.
جعل الملفات الكبيرة أصغر دون فقدان الجودة. احذف البيانات غير الضرورية وغير المستخدمة. تقليص حجم ملفات Word و HTML في Python. توفر مكتبة Python للمطورين واجهة برمجة تطبيقات متكاملة لتحسين المستندات بتنسيقات مختلفة.
تعد مكتبة Python حلاً مستقلاً ولا تتطلب تثبيت أي برنامج تابع لجهة خارجية.
يمكن الحصول على أقصى تأثير من خلال تحسين الصور عالية الدقة، وكذلك المستندات التي تحتوي على مثل هذه الصور. ستساعدك مكتبة Python على ضغط ملفات HTML و DOCX و DOC و RTF و ODT و EPUB و HTML و JPG و PNG.
أصبح تحسين المستندات دون فقدان الجودة أمرًا سهلاً باستخدام 'Aspose.Words for Python via .NET'. يوضح المثال التالي كيفية تقليص حجم Word في Python:
pip install aspose-words
ينسخ
import aspose.words as aw
doc = aw.Document("Input.docx")
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.docx", save_options)
import aspose.words as aw
doc = aw.Document("Input.docx")
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.docx", save_options)
import aspose.words as aw
doc = aw.Document("Input.docx")
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.docx")
import aspose.words as aw
doc = aw.Document("Input.docx")
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.docx", save_options)
import aspose.words as aw
doc = aw.Document()
builder = aw.DocumentBuilder(doc)
shape = builder.InsertImage("Input.docx")
save_options = aw.saving.ImageSaveOptions(aw.SaveFormat.DOCX)
shape.get_shape_renderer().save("Output.docx", 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.docx", '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.docx", save_options)
def set_page_size(page_setup, width, height):
page_setup.page_width = width;
page_setup.page_height = height;
نستضيف حزم Python بنا في مستودعات PyPi. يرجى اتباع التعليمات خطوة بخطوة حول كيفية تثبيت "Aspose.Words for Python via .NET" في بيئة المطور لديك.
هذه الحزمة متوافقة مع Python ≥3.5 و <3.12. إذا قمت بتطوير برنامج لنظام التشغيل Linux، فيرجى إلقاء نظرة على المتطلبات الإضافية لدول gcc و libpython في وثائق المنتج.