一、导入依赖

  <dependency><groupId>com.itextpdf</groupId><artifactId>html2pdf</artifactId><version>4.0.0</version></dependency><!--        中文字体--><dependency><groupId>com.itextpdf</groupId><artifactId>font-asian</artifactId><version>7.2.0</version></dependency>

二、解决中文乱码问题

/*** @description: html导出PDF支持中文,避免乱码* @author: chang* @create: 2021-11-04 14:25**/
public class ChineseFontProvider extends XMLWorkerFontProvider {@Overridepublic Font getFont(String fontname, String encoding, float size, int style) {try {BaseFont bfChinese = BaseFont.createFont("STSong-Light","UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);
//            BaseFont bfChinese = BaseFont.createFont("STSongStd-Light","UniGB-UCS2-H",BaseFont.NOT_EMBEDDED);return new Font(bfChinese,13,style);//            return new Font(bfChinese,size,style);}catch (Exception e){e.printStackTrace();}return super.getFont(fontname, encoding, size, style);}
}

三、由html字符串生成pdf

 public static void convertHtmlToPdf() throws IOException{String htmlStr = "<!DOCTYPE html>\n" +"<html>\n" +"<head>\n" +"<meta charset=\"utf-8\">\n" +"<title>文档标题</title>\n" +"</head>\n" +"<body>\n" +"\t<h1>我的第一个HTML页面</h1>\n" +"\t<p>我的第一个段落。</p>\n" +"</body>\n" +"</html>\n" +"\n";Document document = new Document();try {PdfWriter writer = PdfWriter.getInstance(document,new FileOutputStream(FILE_BASE_PATH+"htmlToPDF.pdf"));document.open();XMLWorkerHelper.getInstance().parseXHtml(writer,document,new ByteArrayInputStream(htmlStr.getBytes(StandardCharsets.UTF_8)),null, Charset.forName("UTF-8"),new ChineseFontProvider());document.close();} catch (DocumentException e) {e.printStackTrace();}}

参考链接:

  1. iText-Asian jar可以使用的中文字符及iText——>html2pdf使用(附坑)_Chuck_le的博客-程序员宅基地
  2. Hello HTML to PDF

itextpdf convert html string to Pdf相关推荐

  1. java 使用itextpdf工具实现HTML转PDF文件

    java 使用itextpdf工具实现HTML转PDF文件 本文转载https://my.oschina.net/960823/blog/1588166内容 demo maven依赖包 <dep ...

  2. ITextpdf将Markdown转换成PDF详细流程(HTML转PDF)

    #作者:杨景文 一.文章说明 此篇文章将解决itextpdf转PDF遇到的以下问题: 1.中文不显示问题 2.表格或者图片超宽问题 3.pdf样式问题 4.Markdown引用样式在PDF中正常显示 ...

  3. itextpdf将图片转成pdf文件及pdfbox将多张pdf合成一张

    记录只为自己以后方便查找. 转载参考  pdf合并:http://www.cnblogs.com/MoreThinking/archive/2017/07/27/7245433.html 图片转pdf ...

  4. java convert函数_自己实现 java中 Convert.toDouble(String str)处理函数 | 学步园

    今天在superWaba上看到Convert.toDouble(String str),由于底层问题比较大的数就出错,现在自己写了一个 程序中info()是我加的打印,可以去掉 java中 Conve ...

  5. C - AtoI: Convert a string of digits into its numeric equivalent

    分享一个大牛的人工智能教程.零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.net /** AtoI: Convert a string ...

  6. convert:图片转pdf失败

     造冰箱的大熊猫@cnblogs 2019/1/21 1.环境 操作系统/Ubuntu 16.04.5 LTS,内核/4.15.0-43-generic,convert/ImageMagick 6.8 ...

  7. 使用poi+itextpdf将word转成pdf

    将word转换成pdf确实有很多种方案! 背景 最近正好需要做一个这样的功能,需求是将word模板进行签名后转换为pdf.为此,我花了一点时间去网上找方案.期间遇到了一些坑,这里记录一下. 方案选择 ...

  8. java itextpdf使用HTML模板生成pdf文件,并设置table

    我们这里是maven项目,导入相应jar包: <dependency><groupId>org.freemarker</groupId><artifactId ...

  9. java使用itextpdf将图片转换成pdf的简单实例

    1.首先下载itextpdf包. 2.然后倒入到工程,并创建项目 源代码如下: public class Img2Pdf {public static void main(String[] args) ...

最新文章

  1. 关于endian的故事,big-endian和little-endian
  2. dos下操作mysql数据库常用命令
  3. 终极Java日志字典:开发人员最常记录的单词是什么?
  4. 产品经理如何锻炼自己看透事物本质的能力
  5. iTween for Unity
  6. SGU 274 Spam-filter
  7. 探索哪个进程使磁盘I/O升高
  8. js判断时间两小时之内_JS 判断两个时间的大小(可自由选择精确度:天,小时,分钟,秒)...
  9. Python基础知识从hello world 开始(第四天完结)
  10. python爬虫--看看虎牙女主播中谁最“顶”
  11. 微信公众平台开发(8)--微信公众平台接入完整实例
  12. 百度SEO与谷歌SEO的10大区别
  13. Unity Bounds 边界框(包围盒)
  14. 一切不能拌饭的菜都是耍流氓
  15. JavaScript 中的“黑话”,你知多少?
  16. redis实现共同好友功能
  17. 【每日早报】2019/12/09
  18. 2020年中国储能材料产业链上中下游及未来发展趋势分析,电化学储能高速发展,储氢瓶、加氢站建设拉动需求「图」
  19. 外包程序员面试遭HR鄙视,称:外包就是程序员的“职业污点”?
  20. 苹果4s怎么越狱_【爆料】大神把苹果手机刷入了安卓系统!

热门文章

  1. 南邮汇编 Homework3.8 拼装字节
  2. php详情页模板怎么做,WordPress自定义文章详情页模板
  3. matlab x(n)16点DFT,[基于MATLAB的数字信号处理实例分析.doc
  4. 郑州大学c语言实验报告答案,郑州大学c语言实验报告册答案
  5. wxminiapp中NeteaseCloudMusicApi接口服务器的搭建
  6. 怎么将微信小程序项目转为uniapp项目
  7. 最新的阿里内部Java性能调优实战笔记,学完就能用的性能调优方法
  8. 密钥生成工具类:RSA2 256位 加解密工具类 RsaUtils
  9. 阿里云Aliplayer高级功能介绍(一):视频截图 1
  10. 10道集合框架面试题(含解析),来看看你会多少