Java实现Html转Pdf的方法

 更新时间:2015年07月24日 09:53:27   作者:fzhlee  
这篇文章主要介绍了Java实现Html转Pdf的方法,实例分析了java基于ITextRenderer类操作页面及系统自带字体生成pdf文件的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了Java实现Html转Pdf的方法。分享给大家供大家参考。具体如下:

package test;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import org.xhtmlrenderer.pdf.ITextFontResolver;
import org.xhtmlrenderer.pdf.ITextRenderer;
import com.lowagie.text.pdf.BaseFont;
public class WordToPdf {
  /**
   * @param args
   */
    public static void main(String[] args) throws Exception {
    // TODO Auto-generated method stub
    String inputFile = "D://test.html";
    String url = new File(inputFile).toURI().toURL().toString();
    String outputFile = "D://test.pdf";
    System.out.println(url);
    OutputStream os = new FileOutputStream(outputFile);
    ITextRenderer renderer = new ITextRenderer();
    renderer.setDocument(url);
    // 解决中文支持问题
    ITextFontResolver fontResolver = renderer.getFontResolver();
    fontResolver.addFont("C:/Windows/Fonts/SIMSUN.TTC",
        BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
    // 解决图片的相对路径问题
    // renderer.getSharedContext().setBaseURL("file:/D:/z/temp/");
    renderer.layout();
    renderer.createPDF(os);
    os.close();
  }
}

希望本文所述对大家的java程序设计有所帮助。

相关文章

  • 详解Java解析XML的四种方法

    详解Java解析XML的四种方法

    本篇文章主要介绍了java解析XML的几种方式,XML现在已经成为一种通用的数据交换格式,给数据集成与交互提供了方便,有需要的可以了解一下。
    2016-11-11
  • 解决HttpServletResponse和HttpServletRequest取值的2个坑

    解决HttpServletResponse和HttpServletRequest取值的2个坑

    这篇文章主要介绍了解决HttpServletResponse和HttpServletRequest取值的2个坑问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Springboot如何根据实体类生成数据库表

    Springboot如何根据实体类生成数据库表

    这篇文章主要介绍了Springboot如何根据实体类生成数据库表的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-09-09
  • SpringBoot使用redis生成订单号的实现示例

    SpringBoot使用redis生成订单号的实现示例

    在电商系统中,生成唯一订单号是常见需求,本文介绍如何利用SpringBoot和Redis实现订单号的生成,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-09-09
  • SpringBoot+轻量级分布式日志框架GrayLog实践

    SpringBoot+轻量级分布式日志框架GrayLog实践

    将SpringBoot日志迁移至GrayLog的实战经验,称其配置简单、轻量高效,支持多环境分布式,通过GELF格式实现快速日志追踪与报警,尤其强调traceId在跨服务定位中的关键作用,降低维护成本并提升故障排查效率
    2025-08-08
  • Java双重for循环的优化示例

    Java双重for循环的优化示例

    在工作中,经常性的会出现在两张表中查找相同ID的数据,许多开发者会使用两层for循环嵌套,本文主要介绍了Java双重for循环的优化示例,感兴趣的可以了解一下
    2025-06-06
  • 基于JAVA每月运势api调用代码实例

    基于JAVA每月运势api调用代码实例

    这篇文章主要为大家详细介绍了JAVA每月运势api调用代码实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • 理解 MyBatis 是如何在 Spring 容器中初始化的

    理解 MyBatis 是如何在 Spring 容器中初始化的

    这篇文章主要介绍了理解 MyBatis 是如何在 Spring 容器中初始化的,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • SpringBoot项目保证接口幂等的五种方法

    SpringBoot项目保证接口幂等的五种方法

    在计算机领域中,幂等是指任意一个操作的多次执行总是能获得相同的结果,不会对系统状态产生额外影响,在Java后端开发中,幂等性的实现通常通过确保方法或服务调用的结果具有确定性,本文给大家介绍了SpringBoot项目保证接口幂等的五种方法,需要的朋友可以参考下
    2025-07-07
  • springboot如何自定义properties文件

    springboot如何自定义properties文件

    这篇文章主要介绍了springboot如何自定义properties文件,本文通过示例代码给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-06-06

最新评论