MyPDF_Android

最近公司项目要求,需要Android设备连接打印机,打印PDF格式的文件,文件内容根据不同的流水,信息可以变。

想了好几天。。。。最终用PDFBOX的Apache的PDF框架,因为免费,防止知识产权侵犯。

总结下,自己思考过程中的一些经验,还有一些障碍。

方法1: 采用View的形式,把表单模板做成图片,做为View的一个背景图,然后在View上进行Textview和ImageView绝对坐标控制位置,暴露控件设置内容的接口,然后用谷歌的原生API,PDFDocument 获取View的cavans,把View填充进去,然后生成PDF文件。此方法可行的,但是有个问题,打印的文件,发现字迹不是很清晰,尤其是背景那个模板上的字迹。所以弃用。--------MainActivity一些代码。

方法2:用jasperreport框架,这个框架我们公司后台成熟,无奈,在Android的SDK环境下编译有问题,几经周折,放弃了。---------TestActivity2

方法3:用Itext框架,方法可行,能解决公司问题,但是由于是外企项目,牵涉一些侵权,所以放弃了。---------TestActivity3

方法4:用PDFbox框架,能满足我目前项目的需求,流程是模板PDF作为背景,然后再上面添加文字,换行,修改字体样式(新细明体),字体位置,图片添加等等。---------TestActivity4