一、前言
系统主要使用PHP作为开发语言,有一个需求是实时生成快递面单并且以PDF格式保存。多种方案的实现都不理想,最后选择使用Java生成PDF,然后PHP再调用Java得到PDF。记录解决方案
二、方案选择
一开始使用Html编写快递面单样式,运行时修改为实际数据后再转为PDF。但是写Html过于麻烦,生成的PDF与网页显示的有偏差需要不断调整Html模板。
最终,选择使用JasperReport,虽然PHP有操作JasperReport的库GitHub链接。但是无法解决中文不显示的情况(或者是我不会用…?后文会提及中文问题)
三、开发需要的
- Jaspersoft Studio + 汉化GitHub用于绘制模板。
- Java、PHP运行环境以及IDE
四、开发
安装完Jaspersoft Studio后,使用它制作模板,此时是.jrxml
文件。具体如何使用看这个教程。就不复制过来了,他还有解决中文不显示的问题。