微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 当使用iTextSharp填充其他字段时,如何在PDF中强制格式化和计算?

我有一个包含许多文本字段的PDF表单.在这些字段中输入的值用于计算其他字段中的值(计算字段是只读的).

当我在Adobe Reader中打开表单并填写字段时,计算字段会自动重新计算.

但是,我使用iTextSharp填充字段,展平生成的表单,然后通过Web将展平的表单流回用户.

该部分工作正常,但计算字段永远不会计算.我假设因为没有用户触发事件(如keydowns或焦点或模糊)正在触发,所以不会发生计算.

显然,我可以从可填写的表单中删除计算,并在填充字段时在服务器上完成所有计算,但我希望可填写的表单可供人类和服务器使用.

有谁知道如何强制计算?

编辑:
我感觉不太喜欢iText / iTextSharp在这里爱…

这里有一些细节.将stamper.AcroFields.GenerateAppearances设置为true无济于事.

我认为答案在于页面操作中的某个地方,但我不知道如何触发它…

解决方法

Paulo Soares(iText的主要开发者之一和iTextSharp的当前维护者) says

iText doesn’t do any effort to fix calculated fields because most of the times that’s impossible. PdfcopyFields has some support for it that sometimes works and sometimes don’t.

原文地址:https://www.jb51.cc/csharp/92561.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐