使用VSTO将内容从PPT形状复制到占位符并保留格式

时间:2017-08-02 14:05:24

标签: c# vsto powerpoint

我有一个PPT,我需要将文本从一个或多个形状复制到占位符,然后删除原始形状。

我的问题是我需要保留所有格式,但即使粘贴特殊,我也有一些问题(如子弹间距)没有结转。

当我使用下面的方法时,子弹显示在文本旁边而不是原始间距。

for (int jCurr = slide.Shapes.Count; jCurr >= 1; jCurr--)
{
    currShp = slide.Shapes[jCurr]
    if (currShp.Type == Microsoft.Office.Core.MsoShapeType.msoTextBox && textPlaceholder > 0)
    {
        currShp.TextFrame.TextRange.TrimText().Copy();
        slide.Shapes.Placeholders[2].TextFrame.TextRange.Characters(0, 0).PasteSpecial();
        currShp.Delete();
    }
}

我也试过:

currShp.PickUp();

然后:

slide.Shapes.Placeholders[2].Apply();

更正了我的项目符号,但有时如果原始部分加粗,它会加占占位符中的所有文本。

似乎必须有一种更简单的方法来复制和保留格式。

0 个答案:

没有答案