有没有办法以编程方式将 RTF 格式的文本插入到 PowerPoint TextFrame 中?
string myString = <some RTF formatted text>;
MyPlaceholder.TextFrame.TextRange.Text = myString;
这个答案让我很接近:是否可以使用 OpenXml 将 RTF 文本片段插入到 Word 文档 (.docx) 中?
但我无法弄清楚如何在 PowerPoint 而不是 Word 中执行此操作。
我想做的是将应用程序中的 RichEditBox 中的文本复制到 PowerPoint 幻灯片上,并维护字体颜色、格式等。我能够成功地将文本导入 PowerPoint。我只是无法引入格式(例如字体颜色)。
谢谢。
我终于能够通过使用以下代码行从 RichEditBox 保存到流,然后写入文件来完成此任务:
tempRichEditBox.Document.SaveToStream(Windows.UI.Text.TextGetOptions.FormatRtf, randAccStream);
然后我使用这一行将文件导入到 PowerPoint 中。字体颜色和格式保持不变。
var rtfShape = PptSlide.Shapes.AddOLEObject(FileName: rtfFileName);
我通过剪贴板解决了它。
Clipboard.SetText(rtfText, TextDataFormat.Rtf)
shape.TextFrame.TextRange.PasteSpecial(DataType:=PP.PpPasteDataType.ppPasteRTF)