Записващ Aspose.Slides FOSS Python API референция
A. Също така: затварящ знак е резервиран регион на макет или основен слайд, който определя: по подразбиране позиция, размер и форматиране за определен тип съдържание (заглавие, Когато обикновен слайд се основава на текст, подпис, дата, номер на слайда и т.н., той е основан на стандартна схема за изображение (вж. макет, който има места за държителите, съответните форми на слайда наследяват тези позиции и формати.
Пакетът: aspose.slides_foss
Как работят при изпълнението на тази програма?
Поместните стойки се представят вътрешно като обикновени форми, чийто XML носи <p:ph> елемент, който посочва типа и индекса на резервоара. Shape клас чете се: <p:ph> да се определи дали една форма е място за започващи и ходи на layout → master inheritance chain за решаване на позицията на формата, когато няма локална <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 | Таблица 1 |
clipArt | Клипът за изкуство |
dgm | Диаграма |
media | Медиен обект |
header | Header (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)