java怎麼生成pdf呢?不知道的小夥伴來看看小編今天的分享吧!
java生成pdf可以用itext-PdfStamper pdfStamper(俗稱摳模板)。需要用PDF編輯器編輯好模板,留出空白等待程序填充。程序生成與下載即可。
代碼:
/**
* 摳模板
* @throws Exception
*/
public void createAllPdf() throws Exception {
//填充創建pdf
PdfReader reader = null;
PdfStamper stamp = null;
try {
reader = new PdfReader("E:/module.pdf");
SimpleDateFormat simp = new SimpleDateFormat("yyyy-MM-dd");
String times = simp.format(new Date()).trim();
//創建生成報告名稱
String root = ServletActionContext.getRequest().getRealPath("/upload") + File.separator;
if (!new File(root).exists())
new File(root).mkdirs();
File deskFile = new File(root, times + ".pdf");
stamp = new PdfStamper(reader, new FileOutputStream(deskFile));
//取出報表模板中的所有字段
AcroFields form = stamp.getAcroFields();
// 填充數據
form.setField("name", "zhangsan");
form.setField("sex", "男");
form.setField("age", "15");
//報告生成日期
SimpleDateFormat dateformat = new SimpleDateFormat("yyyy-MM-dd");
String generationdate = dateformat.format(new Date());
form.setField("generationdate", generationdate);
stamp.setFormFlattening(true);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (stamp != null) {
stamp.close();
}
if (reader != null) {
reader.close();
}
}
}