如题,公司要用程序打印一个出货单,
也就是按照他们给的模板动态的填写里面的内容...
小弟不知道用什么样的方法来完成...
请指教..本人在线等.....
------解决方案--------------------------------------------------------
fop 导出rtf格式的
------解决方案--------------------------------------------------------
是用java2word做的
也是模板
但是你要在你模板里标注你要填写的位置
比如 word中 姓名:张三 你要填写张三对吧
你就在word写 姓名:${bo.name} 当然这名称你自己定义
然后替换 ${bo.name} 为 张三 OK了
下面是我的代码 我用到了 java反射 你程序简单的话 可以省略
- Java code
String inFile = fileUrl + "wordModel.doc"; // 要报存的目标文件 String tpFile = fileUrl + Date2.getDate() + Date2.getTime() + "wordModel.doc"; Document doc; try { doc = new Document(); doc.open(inFile); // java反射 Class clazz = bfo.getClass(); // Field[] fields = clazz.getDeclaredFields();// 所有属性 Field[] fields = clazz.getDeclaredFields(); // for (int i = 0; i < fields.length; i++) { if (fields[i].get(bfo) == null) { doc.replaceAll("${" + fields[i].getName() + "}", ""); } else { doc.replaceAll("${" + fields[i].getName() + "}", fields[i] .get(bfo).toString()); } } doc.saveAs(tpFile); doc.close(false); } catch (Exception e1) { e1.printStackTrace(); } try { Object obj = CommonUtil.downloadFileEx(tpFile); CommonUtil.downLoadFile(obj, fileName, "application/msword"); File file = new File(tpFile); file.delete(); } catch (Exception e) { e.printStackTrace(); }
------解决方案--------------------------------------------------------
关键字:iText
最近刚做了一个iText套打PDF文件的prototype