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

前端之家收集整理的这篇文章主要介绍了c# – 当使用iTextSharp填充其他字段时,如何在PDF中强制格式化和计算?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个包含许多文本字段的PDF表单.在这些字段中输入的值用于计算其他字段中的值(计算字段是只读的).

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

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

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

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

有谁知道如何强制计算?

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

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

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

解决方法

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

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.

猜你在找的C#相关文章