You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用iText让PDF表单数字字段保留两位小数格式?

问题:iText填充数字格式PDF表单字段无法显示指定格式?

我有一个在Adobe Acrobat中设置为数字格式的PDF表单,尝试用以下iText代码填充字段:

form.GetField("field_name").SetValue("123");
// 结果PDF中显示123

form.GetField("field_name").SetValue("123", "123.00");
// 使用display参数后,PDF中还是显示123而非"123.00"

看起来所有值都被当作字符串处理,请问用iText填充表单字段值时,能否将值视为数字?

手动在Acrobat Reader中填写表单时,输入"123"切换焦点后会自动显示为"123.00"。


解决方案(编辑补充)

后来放弃直接设置数字的尝试,改用以下方法处理,既能正常显示指定格式,还能设置正确的字体和大小:

void SetFormField(PdfAcroForm form, string key, string value, string? display = null) {
    var font = PdfFontFactory.CreateFont(StandardFonts.TIMES_ROMAN);
    if (display == null) {
        form.GetField(key).SetValue(value, font, 11f);
    } else {
        form.GetField(key).SetFontAndSize(font, 11f).SetValue(value, display);
    }
}

此时才意识到,PDF确实比普通文本文档复杂得多!


内容的提问来源于stack exchange,提问作者Sam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 15:55:36