我使用Powerpoint对象模型以编程方式在PowerPoint 2007中创建演示文稿。
我运行程序的某些计算机上的PowerPoint设置了希伯来语作为主要编辑语言。 (要更改主要语言,请按“Office”按钮,然后按“Powerpoint选项”,然后转到热门 - >语言设置 - >主要编辑语言)
在这些计算机上,当我运行程序时,创建的演示文稿中的所有文本(错误地)都显示为右对齐,并且子弹显示在文本的右侧。
我可以通过编辑生成的演示文稿PPTX文件中的ppt / presentation.xml来解决这个问题。我为每个项目符号级别的“默认文本样式”调整了Alignment和RightToLeft属性。但是,XML编辑不是这个项目的好选择。
除了单独更改每个TextBox之外,如何使用对象模型(即VBA)更改演示文稿中的默认文本方向?
感谢您的建议,
我尝试了什么:
我执行了Application.Presentations(1).LayoutDirection = ppDirectionLeftToRight
,它改变了PowerPoint用户界面的方向。我还将Application.Presentations(1).LanguageID
更改为美国英语。
不幸的是,做这些事并没有解决创建的演示文稿中从右到左文本的问题。
所以最后我放弃了更改演示文稿本身的参数,并且确实直接更改了ParagraphFormat.TextDirection
和ParagraphFormat.Alignment
每个TextBox的每个Run
,我最初试图避免这种情况。这有所期望的效果。
答案 0 :(得分:4)
在C#中它会看起来像这样:
textbox.TextFrame.TextRange.ParagraphFormat.TextDirection = PpDirection.ppDirectionRightToLeft