الميزات والقدرات
الميزات والقدرات
توفر Aspose.Slides FOSS for Python مجموعة واسعة من القدرات للعمل مع ملفات PowerPoint .pptx برمجيًا. تُدرج هذه الصفحة جميع مجالات الميزات المدعومة مع أمثلة شفرة تمثيلية.
إدخال/إخراج العرض التقديمي
افتح ملف .pptx موجود أو أنشئ ملفًا جديدًا، ثم احفظه مرة أخرى بصيغة PPTX.
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat
# Open an existing presentation
with slides.Presentation("input.pptx") as prs:
print(f"Slide count: {len(prs.slides)}")
prs.save("output.pptx", SaveFormat.PPTX)
# Create a new presentation (starts with one blank slide)
with slides.Presentation() as prs:
prs.save("new.pptx", SaveFormat.PPTX)ملاحظة: PPTX هو تنسيق الحفظ الوحيد المدعوم. التصدير إلى PDF أو HTML أو SVG أو الصور غير متاح.
يتم الحفاظ على أجزاء XML غير المعروفة في ملف المصدر كما هي عند الحفظ، لذا فإن فتح وإعادة حفظ .pptx لن يزيل أبدًا المحتوى الذي لا تفهمه المكتبة بعد.
إدارة الشرائح
إضافة، إزالة، استنساخ، وإعادة ترتيب الشرائح.
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
# Access the first slide
slide = prs.slides[0]
# Add an additional blank slide at the end
prs.slides.add_empty_slide(prs.layout_slides[0])
print(f"Total slides: {len(prs.slides)}")
prs.save("multi-slide.pptx", SaveFormat.PPTX)الأشكال
أضف AutoShapes وPictureFrames وTables وConnectors إلى شريحة.
الأشكال التلقائية
import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
slide = prs.slides[0]
# Add a rectangle at (x=50, y=50) with width=300, height=100
shape = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 300, 100)
shape.add_text_frame("Aspose.Slides FOSS")
prs.save("shapes.pptx", SaveFormat.PPTX)الجداول
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
slide = prs.slides[0]
# Column widths and row heights in points
col_widths = [120.0, 120.0, 120.0]
row_heights = [40.0, 40.0, 40.0]
table = slide.shapes.add_table(50, 50, col_widths, row_heights)
table.rows[0][0].text_frame.text = "Product"
table.rows[0][1].text_frame.text = "Quantity"
table.rows[0][2].text_frame.text = "Price"
prs.save("table.pptx", SaveFormat.PPTX)موصلات
import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
slide = prs.slides[0]
box1 = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 100, 150, 60)
box2 = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 350, 100, 150, 60)
conn = slide.shapes.add_connector(ShapeType.BENT_CONNECTOR3, 0, 0, 10, 10)
conn.start_shape_connected_to = box1
conn.start_shape_connection_site_index = 3 # right side
conn.end_shape_connected_to = box2
conn.end_shape_connection_site_index = 1 # left side
prs.save("connector.pptx", SaveFormat.PPTX)تنسيق النص
تنسيق النص على مستوى الفقرة والحرف باستخدام PortionFormat.
import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType, NullableBool, FillType
from aspose.slides_foss.drawing import Color
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
slide = prs.slides[0]
shape = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 500, 150)
tf = shape.add_text_frame("Bold blue heading")
fmt = tf.paragraphs[0].portions[0].portion_format
fmt.font_height = 28
fmt.font_bold = NullableBool.TRUE
fmt.fill_format.fill_type = FillType.SOLID
fmt.fill_format.solid_fill_color.color = Color.from_argb(255, 0, 70, 127)
prs.save("text.pptx", SaveFormat.PPTX)NullableBool.TRUE يضبط الخاصية صراحةً؛ NullableBool.NOT_DEFINED يرث من القالب الرئيسي للشرائح.
أنواع التعبئة
تطبيق تعبئة صلبة أو تدرجية أو نمطية أو صورة على الأشكال.
import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType, FillType
from aspose.slides_foss.drawing import Color
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
slide = prs.slides[0]
shape = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 300, 150)
# Solid fill
shape.fill_format.fill_type = FillType.SOLID
shape.fill_format.solid_fill_color.color = Color.from_argb(255, 30, 120, 200)
prs.save("fill.pptx", SaveFormat.PPTX)التأثيرات البصرية
تطبيق الظل الخارجي، التوهج، الحافة الناعمة، الضبابية، الانعكاس، والظل الداخلي على الأشكال.
خصائص التأثير يمكن الوصول إليها عبر shape.effect_format. اضبط outer_shadow_effect، glow_effect، soft_edge_effect، blur_effect، reflection_effect أو inner_shadow_effect لتكوين كل منها بشكل مستقل.
تنسيق ثلاثي الأبعاد
قم بتطبيق الحافة ثلاثية الأبعاد، الكاميرا، نظام الإضاءة، المادة، وعمق البثق عبر shape.three_d_format. يتحكم هذا في العمق البصري ونموذج الإضاءة لتصيير الأشكال في عارضات PPTX التي تدعم التأثيرات ثلاثية الأبعاد.
ملاحظات المتحدث
أرفق ملاحظات بأي شريحة باستخدام notes_slide_manager.
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
notes = prs.slides[0].notes_slide_manager.add_notes_slide()
notes.notes_text_frame.text = "Key talking point: emphasize the ROI benefit."
prs.save("notes.pptx", SaveFormat.PPTX)تعليقات
إضافة تعليقات متسلسلة مع معلومات المؤلف وموقع الشريحة.
import aspose.slides_foss as slides
from aspose.slides_foss.drawing import PointF
from aspose.slides_foss.export import SaveFormat
from datetime import datetime
with slides.Presentation() as prs:
author = prs.comment_authors.add_author("Jane Smith", "JS")
slide = prs.slides[0]
author.comments.add_comment(
"Please verify this data before the presentation.",
slide,
PointF(2.0, 2.0),
datetime.now()
)
prs.save("comments.pptx", SaveFormat.PPTX)الصور المضمنة
قم بدمج صورة من مسار ملف في العرض التقديمي وأضفها إلى شريحة كـ PictureFrame.
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
with open("logo.png", "rb") as f:
image_data = f.read()
image = prs.images.add_image(image_data)
slide = prs.slides[0]
slide.shapes.add_picture_frame(
slides.ShapeType.RECTANGLE, 50, 50, 200, 150, image
)
prs.save("with-image.pptx", SaveFormat.PPTX)خصائص المستند
قراءة وكتابة الخصائص الأساسية، وتطبيقية، ومخصصة للمستند.
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat
with slides.Presentation() as prs:
props = prs.document_properties
# Core properties
props.title = "Q1 Results"
props.author = "Finance Team"
props.subject = "Quarterly Review"
props.keywords = "Q1, finance, results"
# Custom property
props.set_custom_property_value("ReviewedBy", "Legal Team")
prs.save("deck.pptx", SaveFormat.PPTX)القيود المعروفة
المناطق التالية تثير NotImplementedError ولا تتوفر في هذه النسخة:
| المنطقة | الحالة |
|---|---|
| المخططات | غير مُنفّذ |
| SmartArt | غير مُنفّذ |
| الرسوم المتحركة والانتقالات | غير مُنفّذ |
| تصدير PDF / HTML / SVG / صورة | غير مُنفّذ (PPTX فقط) |
| ماكرو VBA | غير مُنفّذ |
| التوقيعات الرقمية | غير مُنفّذ |
| الروابط التشعبية وإعدادات الإجراءات | غير مُنفّذ |
| كائنات OLE | غير مُنفّذ |
| النص الرياضي | غير مُنفّذ |
انظر أيضًا
- البدء: التثبيت والبرنامج النصي الأول
- مرجع API: مرجع الفئات والطرق
- دروس إرشادية: مقالات موجهة للمهام