添加了字体,没有换行问题,没有<strong>标签不解析问题。html
jar字体
<dependency> <groupId>org.xhtmlrenderer</groupId> <artifactId>flying-saucer-pdf</artifactId> <version>9.0.8</version> </dependency>
html 文件 转换 PDFurl
String inputFile = "D:/testHtml.html"; String outFile = "F:/outPdf.pdf"; OutputStream os = new FileOutputStream(outFile); ITextRenderer renderer = new ITextRenderer(); ITextFontResolver fontResolver = renderer.getFontResolver(); fontResolver.addFont("C:/Windows/fonts/simsun.ttc", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED); String url = new File(inputFile).toURI().toURL().toString(); renderer.setDocument(url); renderer.layout(); renderer.createPDF(os); os.close();
ITextRenderer renderer = new ITextRenderer(); ITextFontResolver fontResolver = renderer.getFontResolver(); fontResolver.addFont("C:/Windows/fonts/simsun.ttc", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED); os = new ByteArrayOutputStream(); String htmlstr = "你的HTML字符串"; renderer.setDocumentFromString(htmlstr); renderer.layout(); renderer.createPDF(os);
若是你须要动态替换HTML里面的数据,推荐使用freemarkerspa
StringTemplateLoader templateLoader = new StringTemplateLoader(); templateLoader.putTemplate("模板,也就是你的HTML", sb.toString()); Configuration config = new Configuration(); config.setTemplateLoader(templateLoader); Template template = config.getTemplate("模板,也就是你的HTML"); StringWriter writer = new StringWriter(); template.process("须要替换数据所对应的参数", writer);
给本身的建议 百度时要用时间排序下 尽可能看时间较近的文章。.net