使用itext根据freemarks模版生成pdf,表格产生跨页问题解决方法

java根据模版动态生成pdf的文章点击打开链接

  使用XMLWorkerHelper.getInstance().parseXHtml();生成pdf。

如果直接根据ftl模版中的

填充数据,如果表格列大于第一列填充空白,整个表格会整体移到第二页。

整个表格列大于整页pdf空白,会直接不显示表格。主要看我<#list>循环的模版代码,就可以完全解决这个问题。

我的list中循环的是div+表格




    
    
    
    





流程编号:${(info.processNumber)!}
流程标题:${(info.title)!}
所属公司:${(info.company)!}
所在部门:${(info.depart)!}
申请人:${(info.applicant)!}
申请时间:${(info.applicantDate)!}
联系方式:${(info.contact)!}
紧急情况:${(info.emergency)!}
发票总张数:${(info.invoiceNum)!}
费用所属部门:${(info.costDepart)!}
费用所属公司:${(info.costCompany)!}
费用付款总金额:${(info.amount)!}
费用付款总金额大写:${(info.amountCapital)!}
是否后补发票:${(info.supply)!}
<#if (info.remarks)?? >
备注:${(info.remarks)!}
费用科目 付款金额 确认金额 发票张数 收款人账户名称及帐号 收款人开户银行及支行 账户类型 事由
<#list module as module>
${(module.subject)!} ${(module.amount)!} ${(module.confirm)!} ${(module.attachno)!} ${(module.accountTitle)!}
${(module.account)!}
${(module.accountBank)!}
${(module.openBank)!}
${(module.type)!} ${(module.reason)!}
执行环节 执行人 开始时间 结束时间 提交意见 审批方式 任务历时
<#list record as record>
${(record.link)!} ${(record.user)!} ${(record.createTime)!} ${(record.endDate)!} ${(record.opinion)!} ${(record.way)!} ${(record.duration)!}






你可能感兴趣的:(itext,根据模版生成pdf,freemarks,跨页,空白)