如何用jsPDF创建多行可编辑且高度动态的Acrobat Reader表单字段?
问题解决:多行输入字段内容超出时字体缩小而非保持高度滚动
问题描述
已完成表单字段的可编辑与多行输入设置,但输入内容时字段高度固定不变,仅字体自动缩小。
问题截图

相关代码
doc.text(20, 220, "Notes:"); var notesField = new TextField(); notesField.multiline = true; notesField.maxFontSize = 12; notesField.height = 150; notesField.Rect = [280, 202, 160, 18]; notesField.fontSize = 12; doc.addField(notesField);
问题原因与解决方案
问题出在两个关键配置上:
- Rect属性与height冲突:
Rect数组的最后一个值是字段高度,你设置的18覆盖了height = 150的配置,导致实际字段高度只有18px,内容只能通过缩小字体适配。 - maxFontSize触发字体缩小:
maxFontSize = 12与默认fontSize一致,当内容超出字段高度时,就会触发字体自动缩小逻辑。
修改后的代码
doc.text(20, 220, "Notes:"); var notesField = new TextField(); notesField.multiline = true; // 移除maxFontSize,避免内容超出时缩小字体 notesField.height = 150; // 修正Rect的高度,与height保持一致 notesField.Rect = [280, 202, 160, 150]; notesField.fontSize = 12; // 开启滚动属性(若API支持),让内容超出时滚动显示 notesField.scrollable = true; doc.addField(notesField);
内容的提问来源于stack exchange,提问作者TigerCode
相关产品推荐
相关产品推荐

