itext生成pdf用AcroFields.setField替换文本域中的内容,请问怎么设置文本域内容的行间距???

itext生成pdf用AcroFields.setField替换文本域中的内容,请问怎么设置文本域内容的行间距???,第1张

用columnText吧,展示效果差别不大,设置文本的各种属性也方便

BaseFont baseFont1 = BaseFont.createFont("C:/WINDOWS/Fonts/SIMYOU.TTF",BaseFont.IDENTITY_H,BaseFont.NOT_EMBEDDED)

Font font1 = new Font(baseFont1,9,Font.NORMAL)

int pageNo = form.getFieldPositions("~DICO-FUNC").get(0).page

Rectangle signRect = form.getFieldPositions("~DICO-FUNC").get(0).position

PdfContentByte ctOver = stamper.getOverContent(pageNo)

//测试columnText

ColumnText ct = new ColumnText(ctOver)

//行间

ct.setLeading(0,1)

ct.setAlignment(Element.ALIGN_LEFT)

ct.setText(new Paragraph(" 测试输出",font1))

ct.setSimpleColumn(signRect)

ct.go()

检查下有没有document.newPage()使得把数据放到下一页了。 如果没有,那就需要分析代码。但是换种思路也能解决你问题: 把数据作为附件一,附件二等形式生成在pdf的最后,那样就没人关注pdf内容的空白了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11321795.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存