将连接器的格式更改为 python pptx 中的一个箭头
Changing format of Connector to an arrow one in python pptx
我正在使用 python-pptx
库并在幻灯片中连接形状。我正在尝试创建这样的箭头 Connector
形状:
但是我找不到任何属性来将直线更改为箭头线。我已经阅读了有关 dash_style
的文档,但这不会仅更改样式。
我找到了解决方案 here。
from pptx.oxml import parse_xml
from pptx.enum.shapes import MSO_CONNECTOR_TYPE
connector = prs.slides[0].shapes.add_connector(MSO_CONNECTOR_TYPE.STRAIGHT, Cm(start_left), Cm(start_top), Cm(end_left), Cm(end_top))
line_elem = connector.line._get_or_add_ln()
line_elem.append(parse_xml("""
<a:headEnd type="arrow" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"/>
"""))
# or
line_elem = connector.line._get_or_add_ln()
line_elem.append(parse_xml("""
<a:tailEnd type="arrow" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"/>
"""))
# change line color and width
connector.line.fill.solid()
connector.line.fill.fore_color.rgb = RGBColor(0, 0, 0)
connector.line.width = Pt(2.5)
我正在使用 python-pptx
库并在幻灯片中连接形状。我正在尝试创建这样的箭头 Connector
形状:
但是我找不到任何属性来将直线更改为箭头线。我已经阅读了有关 dash_style
的文档,但这不会仅更改样式。
我找到了解决方案 here。
from pptx.oxml import parse_xml
from pptx.enum.shapes import MSO_CONNECTOR_TYPE
connector = prs.slides[0].shapes.add_connector(MSO_CONNECTOR_TYPE.STRAIGHT, Cm(start_left), Cm(start_top), Cm(end_left), Cm(end_top))
line_elem = connector.line._get_or_add_ln()
line_elem.append(parse_xml("""
<a:headEnd type="arrow" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"/>
"""))
# or
line_elem = connector.line._get_or_add_ln()
line_elem.append(parse_xml("""
<a:tailEnd type="arrow" xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main"/>
"""))
# change line color and width
connector.line.fill.solid()
connector.line.fill.fore_color.rgb = RGBColor(0, 0, 0)
connector.line.width = Pt(2.5)