C#如何使用 Spire.Doc 6.8.16 版本 进行复制指定页码页面,并在后面该页面后面进行粘贴
时间: 2024-03-19 17:44:54 浏览: 78
您可以使用 Spire.Doc 中的 Document.Clone() 方法来复制指定页码的页面,然后使用 Document.Range.InsertContent() 方法将复制的页面粘贴到目标文档中指定的位置。以下是一个简单的示例代码:
```csharp
using Spire.Doc;
// 加载源文档
Document sourceDoc = new Document("source.docx");
// 复制第3页
Section pageToCopy = sourceDoc.Sections[2].Clone();
// 加载目标文档
Document targetDoc = new Document("target.docx");
// 在目标文档的第5页后插入复制的页面
targetDoc.Sections[4].AddParagraph().AppendBreak(BreakType.PageBreak);
targetDoc.Sections[4].InsertSection(pageToCopy);
// 保存目标文档
targetDoc.SaveToFile("target.docx", FileFormat.Docx);
```
这段代码会将 `source.docx` 中第3页的内容复制到 `target.docx` 中第5页的后面。您可以根据具体的需求来修改代码。注意,需要确保源文档和目标文档都已经加载完成并且正确保存。
相关问题
Spire.Doc 6.8版本如何使用C#操作当前word复制指定页码和书签粘贴在他后面
您可以使用以下代码来实现您的需求:
```csharp
// 创建Document对象
Document doc = new Document();
// 将指定页码和书签复制到剪贴板
doc.CopyPageRange(2, 3); // 复制第2页到第3页
doc.Bookmarks["bookmark1"].Select(); // 选择名为"bookmark1"的书签
doc.Copy();
// 在文档末尾粘贴剪贴板内容
doc.Sections[doc.Sections.Count - 1].Body.LastParagraph.AppendText("\n"); // 添加一个段落
doc.Sections[doc.Sections.Count - 1].Body.LastParagraph.Paste(); // 粘贴剪贴板内容
```
其中,`CopyPageRange`方法用于将指定页码范围的内容复制到剪贴板,`Select`方法用于选择指定的书签,`Copy`方法用于将选择的内容复制到剪贴板,`AppendText`方法用于在文档末尾添加一个空段落,`Paste`方法用于将剪贴板内容粘贴到文档末尾的空段落中。
请问能使用Spire.Doc 6.8.16版本的方法去实现吗?
Spire.Doc 6.8.16版本也可以使用类似的方式实现在一个文档中插入另一个文档的内容。
以下是示例代码:
```csharp
// 打开源文档
Document sourceDoc = new Document("source.docx");
// 复制第2页到第4页的内容
Document cloneDoc = new Document();
for (int i = 1; i <= 3; i++)
{
Section sourceSection = sourceDoc.Sections[i];
Section cloneSection = cloneDoc.AddSection();
cloneSection.PageSetup = sourceSection.PageSetup.Clone();
foreach (DocumentObject obj in sourceSection.Body.ChildObjects)
{
cloneSection.Body.ChildObjects.Add(obj.Clone());
}
}
// 打开目标文档
Document destDoc = new Document("dest.docx");
// 在目标文档中插入复制的内容到指定位置
Section destSection = destDoc.Sections[4];
foreach (Section cloneSection in cloneDoc.Sections)
{
destSection.PageSetup = cloneSection.PageSetup.Clone();
foreach (DocumentObject obj in cloneSection.Body.ChildObjects)
{
destSection.Body.ChildObjects.Add(obj.Clone());
}
}
```
以上代码将从源文档中复制第2页到第4页的内容,并插入到目标文档的第5页。我们遍历复制文档中的每个节和块,将其克隆并添加到目标文档。请注意,这些代码在Spire.Doc 6.8.16版本上测试通过。
阅读全文