0

我正在尝试通过 C# 代码动态使用书签将文本从一个 Word 文档复制到另一个 Word 文档。我只能从一个文档的书签中检索数据并将其插入到另一个文档中,但是文本的格式正在发生变化。

例如,如果我在源文档书签中添加了一些颜色、字体,则不会将相同的格式复制到目标文档的书签中;仅复制文本。

//getting the text from source documents bookmark.
string text = Document1.Bookmarks.get_Item(ref objI).Range.Text.ToString();
//copying the text to Document 2's bookmark
objWordDoc1.Bookmarks.get_Item(booktest).Range.Text = text;

我怎样才能复制格式呢?

4

1 回答 1

1

你有两个选择:

  1. 使用复制和粘贴,例如

    // Copy
    Document1.Bookmarks.get_Item(ref objI).Range.Copy();
    
    // Paste
    objWordDoc1.Bookmarks.get_Item(booktest).Range.PasteAndFormat(WdRecoveryType.wdFormatOriginalFormatting);
    
  2. 使用格式化文本属性(http://msdn.microsoft.com/de-de/library/microsoft.office.interop.word.range.formattedtext(v=office.11 ​​).aspx 。(我没有测试这个)

    Range text = Document1.Bookmarks.get_Item(ref objI).Range.FormattedText; objWordDoc1.Bookmarks.get_Item(booktest).Range = FormattedText;

于 2013-07-24T06:00:00.260 回答