حائز مكان Aspose.Slides FOSS Python API مرجع

(أ) حائز مكان هي منطقة محجوزة على تخطيط أو شريحة رئيسية تحدد الموقع الافتراضي والحجم والتنسيق لنوع معين من المحتوى (العنوان،, نص الجسم، وقدم الصفحة، والتاريخ، ورقم الشريحة ، إلخ.) عندما يستند شريح عادي إلى تخطيط الذي لديه الحافظات، والأشكال المقابلة على الشريحة ترث تلك المواقف والشكلات.

حزمة: aspose.slides_foss


كيف يعمل المحتلون في هذا التنفيذ؟

يتم تمثيل الحاملات الداخلية كشكل عادي والذي يحمل XML a <p:ph> عنصر يحدد نوع الحافظة على المكان والمؤشر. Shape الطبقة يقرأ: <p:ph> لتحديد ما إذا كان الشكل هو حامل مكان ويمشي على تصميم → السلسلة الرئيسية للتخلي عن وضع الشكل عندما لا يوجد محلي <a:xfrm> هو محدد.

لا يوجد واحد منفصل Placeholder ملف الطبقة في هذا الإصدار؛ حائز مكان هويتهم تحمل من قبل البند الأساسي. AutoShape, Table,أو غيرها من الأشكال.


اكتشاف أشكال الحاملة للمكان

الشكل على تخطيط أو شرائح XML هو حامل مكان عندما يكون nvSpPr/nvPr (أو المكالمة (مجموعة الخصائص غير البصرية) تحتوي على <p:ph> العنصر.

المجلس الوزاري Shape الفئة الأساسية تعرض المساعد الداخلي _get_placeholder_info() التي يعيد a (ph_type, ph_idx) المجموعة أو None لأشكال غير حاملة للمكان.


التراث في المخططات و الحامل الرئيسي للمكان

عندما لا يكون لشكله المنزلق شكله الخاص <a:xfrm> العنصر، الإطار يحدد الموقع والحجم من الحافظة على المكان المتوافقة في شرائح التخطيط، و ثم من الشريحة الرئيسية إذا لم يحدد المخطط واحدة. هذا يتم التعامل مع التراث تلقائياً؛ يصل رمز العميل فقط إلى shape.x, shape.y, shape.width,، و shape.height.


PlaceholderType (أعلن في __all__)

يتم الإعلان عن أنواع الحافظة التالية في سطح API العام. إنها ترسم خريطة إلى type سمة من <p:ph> في OOXML:

قيمة النوعوصف
bodyالجسم / مساحة المحتوى
titleعنوان الشريحة
ctrTitleعنوان مركز
subTitleترجمة:
dtالتاريخ والوقت
ftrأسفل المقالة
sldNumرقم الشريحة
picحافظ على مكان الصورة
objالمادة العامة
chartالرسم البياني
tblالجدول
clipArtفنون المقطع
dgmالرسم البياني
mediaكائن الوسائط
headerHeader (notes pages) (مُحملة مكان)

أمثلة رمزية

تحديد أشكال الحافظة على المكان في التخطيط

import aspose.slides_foss as slides

with slides.Presentation("deck.pptx") as prs:
    layout = prs.layout_slides[0]
    print(f"Layout: {layout.name!r}")
    for shape in layout.shapes:
        # Access the internal placeholder info via the XML helper
        ph_info = shape._get_placeholder_info() if hasattr(shape, '_get_placeholder_info') else None
        if ph_info:
            ph_type, ph_idx = ph_info
            print(f"  Placeholder: type={ph_type!r}  idx={ph_idx}"
                  f"  at ({shape.x:.0f}, {shape.y:.0f})")
        else:
            print(f"  Regular shape: {shape.name!r}")

إضافة شريحة و العمل مع عنوانها مكان الحامل

import aspose.slides_foss as slides
from aspose.slides_foss import SlideLayoutType
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    # Use the Title layout which has a title placeholder
    title_layout = prs.layout_slides.get_by_type(SlideLayoutType.TITLE)
    if title_layout is None:
        title_layout = prs.layout_slides[0]

    slide = prs.slides.add_empty_slide(title_layout)

    # The first shape on a TITLE layout is typically the title placeholder
    for shape in slide.shapes:
        if hasattr(shape, 'add_text_frame'):
            shape.add_text_frame("Quarterly Review")
            break

    prs.save("titled-slide.pptx", SaveFormat.PPTX)

إضافة النص إلى جميع الأشكال على الشريحة (بما في ذلك الحوائط)

import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation("template.pptx") as prs:
    slide = prs.slides[0]
    for i, shape in enumerate(slide.shapes):
        if hasattr(shape, 'add_text_frame'):
            try:
                shape.add_text_frame(f"Content {i + 1}")
            except Exception:
                pass  # some shapes may not accept text
    prs.save("filled.pptx", SaveFormat.PPTX)

انظر أيضاً

 العربية