没有找到合适的产品?
联系客服协助选型:023-68661681
提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:李显亮|2020-07-07 10:20:32.890|阅读 639 次
概述:在Aspose.Words中,DocumentBuilder.InsertField方法用于在文档中插入新字段。本文将介绍如何更新和删除字段。
# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>
相关链接:
Aspose.Words for .NET是一种高级Word文档处理API,用于执行各种文档管理和操作任务。API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word。此外,API支持所有流行的Word处理文件格式,并允许将Word文档导出或转换为固定布局文件格式和最常用的图像/多媒体格式。
>>Aspose.Words for .NET已经更新至v20.7,添加了新节点以处理多节结构化文档标签,改进了SmartArt冷渲染的性能,RevisionOptions类扩展了新的属性,点击下载体验
加载文档后,Aspose.Words模仿Microsoft Word的行为,并且自动更新字段选项已关闭。该行为可以总结如下:
要显式更新整个文档中的字段,只需调用Document.UpdateFields。要更新文档一部分中包含的字段,请获取Range对象并调用Range.UpdateFields方法。在Aspose.Words中,可以使用Node.Range属性为文档树中的任何节点(例如Section,HeaderFooter,Paragraph等)获取Range。可以通过调用Field.Update来更新单个字段的结果。
当执行将文档转换为固定页面格式(例如PDF或XPS)时,Aspose.Words会自动更新与页面布局相关的字段PAGE,PAGEREF,这些字段位于文档的页眉/页脚中。此行为模仿了打印文档时Microsoft Word的行为。如果要更新文档中的所有其他字段,则需要在呈现文档之前调用Document.UpdateFields。
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_WorkingWithFields(); Document doc = new Document(dataDir + "Rendering.doc"); // This updates all fields in the document. doc.UpdateFields(); dataDir = dataDir + "Rendering.UpdateFields_out.pdf"; doc.Save(dataDir);
当执行邮件合并时,文档中的所有字段都会自动更新。这是因为邮件合并是字段更新的情况。该程序遇到一个邮件合并字段,需要更新其结果,这涉及从数据源获取值并将其插入该字段中。逻辑当然更复杂,例如,当到达文档/邮件合并区域的末尾但仍然有其他数据要合并时,则需要复制该区域并更新新的字段集。
w:dirty是一个字段级属性,将仅在您打开文档时刷新您指定的字段。它告诉MS Word仅在下次打开文档时刷新此字段。使用LoadOptions.UpdateDirtyFields属性来指定是否使用dirty属性更新字段。当LoadOptions.UpdateDirtyFields的值设置为true时,将在文档加载时更新Field.IsDirty或FieldChar.IsDirty属性具有真值的所有字段。以下示例显示如何更新具有脏属性的字段。
LoadOptions lo = new LoadOptions(); //Update the fields with the dirty attribute lo.UpdateDirtyFields = true; //Load the Word document Document doc = new Document(dataDir + @"input.docx", lo); //Save the document into DOCX doc.Save(dataDir + "output.docx", SaveFormat.Docx);
使用SaveOptions.UpdateLastSavedTimeProperty属性是否在保存文档时更新相应的内置文档属性(BuiltInDocumentProperties.LastSavedTime)。 下面的示例显示如何更新此属性。
Document doc = new Document(dataDir + "Document.doc"); OoxmlSaveOptions options = new OoxmlSaveOptions(); options.UpdateLastSavedTimeProperty = true; dataDir = dataDir + "UpdateLastSavedTimeProperty_out.docx"; // Save the document to disk. doc.Save(dataDir, options);
在以前的版本中,调用Document.UpdateFields或Range.UpdateFields只会更新常规字段(例如IF或DOCPROPERTY),而不会更新与页面布局相关的字段(例如PAGE或NUMPAGES)。现在,较新的版本将更新常规和页面布局相关的字段。当Document.UpdateFields或Range.UpdateFields被称为所有字段在整个文件/范围更新。如果在更新过程中遇到与页面布局相关的字段(例如PAGE字段),则可能涉及构建文档布局。 下例显示了如何更新文档中的所有字段。
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_WorkingWithFields(); Document doc = new Document(dataDir + "Rendering.doc"); // This updates all fields in the document. doc.UpdateFields(); dataDir = dataDir + "Rendering.UpdateFields_out.pdf"; doc.Save(dataDir);
如前所述,所有字段现在都使用Document.UpdateFields更新。现在,这意味着更新文档中字段的更简洁明了的方法。这也意味着在诸如更新TOC字段之类的情况下,不再需要对Document.UpdatePageLayout的任何调用。所有工作都在Document.UpdateFields调用中处理。 下面的示例显示如何通过调用字段更新来完全重建文档中的TOC字段。
// The path to the documents directory. string dataDir = RunExamples.GetDataDir_WorkingWithFields(); Document doc = new Document(dataDir + "Field.RemoveField.doc"); Field field = doc.Range.Fields[0]; // Calling this method completely removes the field from the document. field.Remove();
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com
创建报表系统时,确保报表工具与各种数据库兼容非常重要。FastReport .NET是 .NET 应用程序中广受欢迎的报表生成库之一。在本文中,我们将介绍如何在 FastReport .NET 中通过报表设计器和代码构建和连接 Firebird 插件。
如果您是开发人员、印刷专业人士或平面设计师,将PPTX/PPT文件转换为EMF 格式将为您带来诸多优势,例如平台独立性、布局处理能力等等。本文将特别介绍如何借助Aspose.Slides for .NET在 C# 中将 PPTX 转换为 EMF,并重点介绍具体步骤和代码示例。
本文将为大家介绍如何用图表控件LightningChart JS实现实时并行坐标图开发,欢迎下载新版组件体验!
本文主要介绍如何使用DevExpress WPF Grid控件检查节点,欢迎下载最新版组件体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@evget.com
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢
慧都科技 版权所有 Copyright 2003-
2025 渝ICP备12000582号-13 渝公网安备
50010702500608号