zl程序教程

您现在的位置是:首页 >  后端

当前栏目

【JAVA生成PDF】利用模板生成PDF

JAVAPDF模板 利用 生成
2023-09-11 14:21:26 时间

java如何生成PDF文件

1.首先需要导入pom.xml

<dependency>
    <groupId>org.xhtmlrenderer</groupId>
    <artifactId>flying-saucer-pdf</artifactId>
    <version>9.0.8</version>
</dependency>
DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();    
    Document doc = builder.parse(new ByteArrayInputStream(htmlStr.getBytes("UTF-8")));
    ITextRenderer renderer = new ITextRenderer();
    ITextFontResolver fontResolver = renderer.getFontResolver();
    renderer.setDocument(doc, null);
    //对应的css样式是:'Arial Unicode MS'
    //fontResolver.addFont("C:/WINDOWS/Fonts/ARIALUNI.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
    //微软宋体 对应的css样式是:"Calibri"
    fontResolver.addFont(getFontPath(request)+"calibri.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
    //宋体 对应的css样式是:'SimSun'
    fontResolver.addFont(getFontPath(request)+"simsun.ttc", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
    //仿宋 对应的css样式是:'FangSong'
    fontResolver.addFont(getFontPath(request)+"simfang.ttf", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
    //设置图片URL相对路径
    renderer.getSharedContext().setBaseURL(imagePath);
    renderer.layout();
    renderer.createPDF(out);
    renderer.finishPDF();