InsertDocumentInline

DocumentBuilder.InsertDocumentInline method

在光标位置插入内联文档。

public Node InsertDocumentInline(Document srcDoc, ImportFormatMode importFormatMode, 
    ImportFormatOptions importFormatOptions)
范围类型描述
srcDocDocument插入的源文档。
importFormatModeImportFormatMode指定如何合并冲突的样式格式。
importFormatOptionsImportFormatOptions允许指定影响结果文档格式的选项。

返回值

插入内容的第一个节点。

评论

此方法模仿 MS Word 行为,就像按下 CTRL+‘A’(选择所有内容), 然后在某个文档内按下 CTRL+‘C’(将选定内容复制到缓冲区), 然后在另一个文档内按下 CTRL+‘V’(从缓冲区插入内容)。

InsertDocument 此方法将目标文档中插入源文档之前段落的内容移动到插入的源文档的最后一个段落中。实际上,这意味着删除了插入的最后一个段落的段落分隔符。

请注意,如果源文档的最后一个节点不是段落,则不会执行任何操作。

例子

显示如何在光标位置插入内联文档。

DocumentBuilder srcDoc = new DocumentBuilder();
srcDoc.Write("[src content]");

// 创建目标文档。
DocumentBuilder dstDoc = new DocumentBuilder();
dstDoc.Write("Before ");
dstDoc.InsertNode(new BookmarkStart(dstDoc.Document, "src_place"));
dstDoc.InsertNode(new BookmarkEnd(dstDoc.Document, "src_place"));
dstDoc.Write(" after");

Assert.AreEqual("Before  after", dstDoc.Document.GetText().TrimEnd());

// 将源文档内联插入目标文档。
dstDoc.MoveToBookmark("src_place");
dstDoc.InsertDocumentInline(srcDoc.Document, ImportFormatMode.UseDestinationStyles, new ImportFormatOptions());

Assert.AreEqual("Before [src content] after", dstDoc.Document.GetText().TrimEnd());

也可以看看