allresult.Doc.AppendDocument(CreateDocument().Document, ImportFormatMode.KeepSourceFormatting);
CreateDocument().Document 创建了一个空的
var documentBuilder = new Aspose.Words.DocumentBuilder();
return documentBuilder;
但是由于我之前插入的是带页码的导致我后插入的空页也存在页码,请问怎么解决
尝试了
foreach (FieldStart start in allresult.Doc.LastSection.Document.GetChildNodes(NodeType.FieldStart, true))
{
if (start.FieldType == FieldType.FieldPage || start.FieldType == FieldType.FieldTOC)
{
start.GetField().Remove();
}
}
这个是可以删除页码,但是删除了全部的,未能达成我只删除最后的目的
试试
documentBuilder.PageSetup.ClearFormatting();
这个试过,不行
没有仔细研究过,不过我猜测这个api应该是对word的各种操作提供了接口。可以这样试试:你手动编辑一个word文档,看看怎么才能让中间一页和其余页不一样,不带页码。然后在去官网查文档,有没有提供这样功能的API
我猜会用到分隔符,不加分隔符,不可能有的页有页码,有的没有吧。你看看官网的文档,有没有提供插入分隔符或者分页符的api
---- 更新-----
我查了下,这样是加入分隔符:
document.Sections[0].Paragraphs[1].AppendBreak(BreakType.PageBreak);
---更新---
你看看这里:https://jingyan.baidu.com/article/4d58d541c880a89dd5e9c07d.html 。是要加入分隔符的吧。这个api已经提供了加入分隔符的方法,剩下的就靠你搞了,祝你好运
document没有对应的属性啊,allresult.Doc.Sections[0]. 这后面就没你写的那个属性了
@暮色垂年: 哦,我粘贴来的,不管怎么说,应该能获得当前段落吧Paragraphs,然后就可以插入分隔符了,或者在官网上搜下吧
原因是你插入的空页跟之前的页面在同一个section, 同一个section要么都有页码,要么都没有页码。所以只能重新插入一个section, 然后在该section添加空页,并且新加的section不要继承前面section的页眉页脚,这能才能避免新页也有页码。
逻辑就是这样。Apose我没用过,但Spire.Doc (http://www.e-iceblue.cn/Introduce/Free-Spire-Doc-NET.html)
肯定可以实现这个需求。