在 Python 中获取演示文稿的文本部分边界
Contents
[
Hide
]
概述
文本部分表示段落内部的特定文本片段,并允许您独立于周围内容对该片段进行操作。 在 Aspose.Slides 中,当您需要检索文本片段的边界、仅对段落的部分应用格式,或在更细粒度的层面控制文本行为时,可以使用部分。
本文展示了如何使用Portion.get_rect获取文本部分的边界矩形。还展示了如何使用Portion.get_coordinates获取文本部分起始位置的坐标。此外,还重点说明了常见的与部分相关的场景,例如对单个文本片段应用超链接、了解格式如何通过部分、段落、文本框和主题继承进行解析,以及处理指定字体不可用的情况。
获取文本部分的边界
使用Portion.get_rect检索文本部分的边界矩形:
import aspose.slides as slides
with slides.Presentation("Shapes.pptx") as presentation:
slide = presentation.slides[0]
shape = slide.shapes[0]
for paragraph in shape.text_frame.paragraphs:
for portion in paragraph.portions:
rectangle = portion.get_rect()
print(f"X = {rectangle.x}; Y = {rectangle.y}; Width = {rectangle.width}; Height = {rectangle.height}")
获取文本部分的坐标
使用Portion.get_coordinates检索文本部分起始位置的坐标:
import aspose.slides as slides
with slides.Presentation("Shapes.pptx") as presentation:
slide = presentation.slides[0]
shape = slide.shapes[0]
for paragraph in shape.text_frame.paragraphs:
for portion in paragraph.portions:
point = portion.get_coordinates()
print(f"X = {point.x}; Y = {point.y}")
常见问题
我可以仅对单个段落中的部分文本应用超链接吗?
是的,您可以将超链接分配给单独的文本部分;只有该片段是可点击的,而不是整段。
样式继承是如何工作的:文本部分会覆盖哪些属性,哪些属性会从段落或文本框继承?
文本部分级别的属性具有最高优先级。如果在Portion上未设置属性,Aspose.Slides 会从Paragraph获取。如果在那里也未设置,Aspose.Slides 将使用TextFrame或theme的样式。
如果在目标机器或服务器上缺少文本部分指定的字体,会发生什么?
字体替换规则 将生效。文本可能会重新换行:度量、连字和宽度可能会改变,这对精确定位很重要。
我可以单独为文本部分设置填充透明度或渐变,而不影响段落的其他部分吗?
是的,文本颜色、填充和透明度在Portion级别可以与相邻片段不同。