Java html转PDF

Java调用wkhtmltopdf实现HTML转PDF 本文介绍了使用wkhtmltopdf工具实现HTML转PDF的完整方案。首先说明了wkhtmltopdf相比纯Java方案的渲染优势,然后详细提供了Windows和CentOS7系统的安装指南及环境验证方法。文章重点给出了Java调用wkhtmltopdf的命令行实现代码,包括异步处理标准输出和错误输出的完整示例。针对常见的"libstdc++.so.6 not found"依赖缺失问题,提供了详细的排查步骤和解决方案,包括依赖包检查、重新安装等方法。该方案具有跨平台、样式还原度高等特点 阅读详情
//一个是从html文件直接转,还一个注释部分是拼写html,而后转其实都一样
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.xhtmlrenderer.pdf.ITextFontResolver;
import org.xhtmlrenderer.pdf.ITextRenderer;

import com.lowagie.text.DocumentException;
import com.lowagie.text.pdf.BaseFont;




public class Html2pdf {
	public void htmlCodeComeFromFile(String filePath, String pdfPath) throws IOException {   
		String url = new File(filePath).toURI().toURL().toString();
		ITextRenderer renderer = new ITextRenderer();
		ITextFontResolver font = renderer.getFontResolver();
		File file = new File(filePath);
		Document document = Jsoup.parse(file, "utf-8", "");
//		 StringBuffer html = new StringBuffer();             // DOCTYPE 必需写否则类似于 这样的字符解析会出现错误               
//		 html.append("<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">");        html.append("<html xmlns=\"http://www.w3.org/1999/xhtml\">").append("<head>")
//				.append("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\" />")
//				.append("<style type=\"text/css\" mce_bogus=\"1\">body {font-family: SimSun;}</style>")
//				.append("</head>").append("<body>").append("<div>人员名单:</div>")
//				.append("<table width=\"200\" border=\"1\">").append("<tr>")
//				.append("<td>姓名:</td>").append("<td>年龄:</td>").append("</tr>")
//				.append("<tr>").append("<td>张小三</td>").append("<td>25</td>")
//				.append("</tr>").append("</table>");
//		html.append("</body></html>");
		try {
			font.addFont("C:/WINDOWS/Fonts/simsun.ttc",
					BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
			renderer.setDocumentFromString(document.html());
			//renderer.setDocument(url);
			renderer.getSharedContext().setBaseURL("file:" + filePath);
			renderer.layout();
			FileOutputStream fos = new FileOutputStream(new File(pdfPath));
			renderer.createPDF(fos);
			fos.flush();
			fos.close();
			System.out.println("ok");
		} catch (DocumentException e) {
			e.printStackTrace();
		}
    } 
    public static void main(String[] args) throws IOException {
    	Html2pdf ih = new Html2pdf();   
    ih.htmlCodeComeFromFile("c:\\pdf\\welcome.html", "c:\\pdf\\welcome.pdf"); 
 }
}

Java HTML转PDF完整教程 在当今的IT领域中,对于数据的处理和呈现方式要求越来越严格,特别是在需要将信息转化成PDF格式的场景下。iText是一个强大的Java类库,广泛用于创建和操作PDF文档。它为开发者提供了便捷的API,以编程方式创建高质量的PDF文档,并可包含文本、图像、表格和样式。iText库历经了多年的发展,已被广泛应用于各种项目中,尤其是在涉及到生成PDF报表和发票时。此外,iText还提供了丰富的插件,比如iTextPDF,这为处理复杂的PDF文档提供了更多便捷的方式。 阅读详情

相关推荐

Java实现HTML转PDF的完整示例教程

在数字化时代,将Web页面转换为可打印的PDF文件是一个常见需求。它不仅涉及到文档格式的转换,还包括版面设计、样式保留、交互元素处理等多个方面。在这一章中,我们将概述为什么需要进行HTML转PDF的转换,这个过程中的关键需求是什么,以及用户在实际操作中可能遇到的挑战。库提供了一系列核心类和方法,开发者可以利用这些组件完成HTML到PDF的转换。其中,类用于清理和转换HTML文档,用于应用CSS样式,而则是完成最后HTML渲染工作的核心类。

weixin_31176789的博客 1179

java中使用Jsoup和Itext实现将html转换为PDF

java中使用Jsoup和Itext实现将html转换为PDF

Li_Zhongxin的博客 2443

Java实现PDF转HTML转换服务详解

Apache PDFBox 是一个开源的Java库,用于创建和处理PDF文档。它支持多种功能,包括创建新PDF文档、编辑现有文档,以及提取文本和图像。PDFBox的主要特点是:纯Java实现:易于集成和使用,不依赖于操作系统的原生库。可扩展性:支持自定义字体和图像处理,可以满足特定需求。开源免费:Apache许可证下,可自由使用和修改。使用PDFBox进行PDF解析的代码示例如下:在上述代码中,我们首先加载了PDF文档,然后使用。

weixin_31659095的博客 600

使用java把html转换为标准的PDF文件,完美可运行

使用java把html转换为标准的PDF文件,完美可运行

inovice的博客 2624

PX4代码解析(1)

前言 做pixhawk飞控有一段时间了,但在学习过程中遇到许多困难,目前网上找不到比较完整的PX4学习笔记,我打算结合自己理解,写写自己对PX4源码的理解,不一定对,只是希望与各位大佬交流交流,同时梳理一下无人机知识。 目前打算分享以下几个内容:代码架构;通信协议;姿态解算算法,控制算法。先这样,后面想到再加。本章先来聊聊px4代码结构 一、代码整体结构 既然要聊px4代码结构,那就先把px4代码结构图放出来,因为px4源码仍然在不断更新迭代,因此老版本与新版本目录结构可能有些不同,我的代码解析参考版本为V

qq_36903625的博客 1万+

从入门到精通:MATEKH743 飞控全解析——MAVLink 接口软/硬件对接实战

MATEKH743飞控是基于STM32H743微控制器的无人机核心控制系统,具备强大计算能力和丰富外设接口。该飞控采用双核架构,集成高性能IMU、气压计等传感器,支持多种开源固件(Betaflight/INAV/ArduPilot),适用于FPV穿越机、固定翼及工业无人机。相比PX4等飞控,MATEKH743在性价比和DIY友好度上优势明显,同时支持MAVLink协议实现设备通信。未来发展方向包括集成更高精度传感器、优化电源管理以及拓展工业应用场景,持续推动无人机技术创新。

bother3000的博客 2284

java实现html转PDF

java实现html转PDF

wylsjz的专栏 3771

Vmware虚拟机一打开就蓝屏解决方法

Vmware虚拟机一打开就蓝屏解决方法 问题: 一打开Vmware虚拟机就蓝屏,如下图所示: 解决方法1: 启用和关闭windows功能(对话框)——>虚拟机平台(选项打对勾,默认没勾选)——>确定后重启——>再进应该就好了。 解决方法2: ①.查看电脑中的Hyper-V服务是否关闭 1.打开控制面板-程序-程序和功能 2.双击启用或关闭Windows功能 3.把Hyper-V前面的勾去掉 如果后期发下没有反应,或者电脑本身Hyper-V的服务没有打开,可以先打开在关闭,试

m0_55901666的博客 26万+

java poi html转PDF_word和.txt文件转html 及pdf文件, 使用poi jsoup itext心得

word和.txt文件转html 及pdf文件, 使用poi jsoup itext心得本人第一次写博客,有上面不足的或者需要改正的希望大家指出来,一起学习交流讨论。由于在项目中遇到了这一个问题,在网上也找了很多方法,感觉千篇一律,总有一些问题,因此总结出word转html和pdf文件使用方法。虽然poi功能不是很强大,但毕竟不依靠本地office软件,同样还有一种方式使用jacob也可以将wo...

weixin_30691643的博客 1335

CANoe进阶实战(第十一章)-LIN节点测试调度

《CANoe快速入门实战:LIN节点调度开发》摘要 本文是CANoe系列教程的第十一章,重点讲解如何通过CAPL编程实现LIN报文的灵活调度控制。文章采用"输入-输出-过程"三步骤法,详细介绍了调度表函数linChangeSchedTable()、启动/停止函数linStartScheduler()/linStopDisturbance()等关键API的使用方法。作者创新性地通过系统变量在Test节点间接控制Network节点的调度功能,并提供了完整的节点代码实现方案。最后的Trace窗

weixin_53605885的博客 1022

Unity集成阿里Qwen2.5-Omni全模态大模型实战:语音交互与多模态AI开发指南

本文详细介绍了在Unity中集成阿里Qwen2.5-Omni全模态大模型的实战指南。通过C#脚本开发,实现语音交互、图像分析等多模态AI功能,涵盖API调用、音频处理、流式响应解析等核心步骤,为游戏、虚拟人等Unity应用提供沉浸式智能交互解决方案。

weixin_29005499的博客 315

java 实现word 转PDF (采用第三方技术 IText、Poi、Jsoup)

先讲讲思路:                        第一步:使用 poi 将word转换成 html,这里代码一搜一堆没什么好说的千篇一律。                         (值得注意的地方是IText 根据html生成文件的是否会验证html文件是否标准,例如通过poi转换的出来的html文件的一些标签会缺少标签闭合 ,                      举

ptzrbin的专栏 7万+

数理金融学笔记 Chap2 二叉树模型Binomial

2 二叉树模型与期权定价 Binomial Model and Option Pricing 文章目录2 二叉树模型与期权定价 Binomial Model and Option Pricing单期二叉树模型 One-step Binomial Model风险与无风险资产单期二叉树模型与无套利条件无套利定价 No Arbitrage Pricing风险中性定价 Risk Neutral PricingDelta套期保值 Delta Hedging两期二叉树模型 Two-Step Binomial Model

weixin_66831131的博客 2387

Java 实现 HTML 转 PDF 及合并 PDF 教程

通过文中步骤,我们成功地实现了使用 Java 将 HTML 转换为 PDF 以及合并多个 PDF 文件的功能。在实际应用中,你可以根据具体需求对代码进行进一步优化和扩展,以满足更复杂的业务场景。例如,在 HTML 转 PDF 时,可以对生成的 PDF 文件进行更精细的样式定制;在 HTML 转 PDF 时,生成条形码或二维码到PDF中;在合并 PDF 文件时,可以添加更多的文件筛选条件或对合并顺序进行控制等。希望本教程能帮助你在 Java 开发中顺利解决相关文档处理问题。

wxd0116的博客 4588

(一)激光线扫描-三维成像原理

激光线扫描是一种使用激光作为光源,通过特定的扫描设备(如光学镜头、电机驱动的镜头或电子扫描设备)将激光束引导到目标表面,并按照预定的路径进行扫描的技术。这种技术通常用于测量、检测、打印、切割等多种应用中。

FlyWine的博客 3629

【OpenFOAM】-olaFlow-算例6- waveFloatingObject

波浪作用下的浮体的刚体运动,属于流固耦合(FSI)问题

ou_no的博客 3537

html转pdf(总结五种方法Java)

Java 实现html转pdf,总结五种方法。推荐使用wkhtmltopdf,Itext。

小强快跑~~ 3万+

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Java中实现html转pdf

最近项目中需要生成日报文件,日报文件的格式为`pdf`,且日报的样式相对而言比较复杂,存在多段文字,存在多个表格,且存在样式。目前想到的解决办法是 `先生成html文件,让后将html文件转换成pdf文件`。通过网上搜索,发现`openhtmltopdf`可以实现我们的需求,此处记录一下。

huan的学习记录 1322

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

java html 转pdf_Java Html转pdf实战

年尾手头没啥事,干起了打杂工作,最近帮忙解决后端项目里一个html批量转pdf速度慢的问题,项目里用到的转换工具是 wkhtmltopdf ,这货转单个html还好,批量转速度就慢了。几经摸索(各种baidu、google......)各种测试后,终于找到个性能不错的工具 —— phantomjsPhantomjs安装选择合适自己系统的版本,解压就行,目录结构如下图(mac为例)新建 html2p...

weixin_39524842的博客 225

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

java实现HTML转PDF文件 本文转载https://my.oschina.net/960823/blog/1588166内容 maven依赖包 <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf<...

Michean的博客 7922

Java 实现 HTML 转 PDF 文件

一、概述 我们在实际开发中会遇到各种不同的需求,接到一个需求把页面报告生成 PDF 格式。刚开始我的初步想法是用IText shen

给自己一个smile 5235

Java利用wkhtmltopdf 实现Html转PDF,IMAGE【非常好用】

前言:java实现html转pdf 是非常困难的,网上很多种方式对比了下很多坑,,效果非常不理想 通过wkhtmltopdf 实现效果非常完美,可以html转pdf,也可以转图片。 wkhtmltopdf工具 官网链接:wkhtmltopdf windos版本 自行下载对应版本,解压后目录如下 C:\toms\soft\wkhtmltox\bin>wkhtmltopdf.exe file:///C:/Users/jijun.tang/Desktop/b...

u012272367的博客 2369

Java html转PDF字体问题处理

iText将html转换为PDF时很方便很好用需要严格设置字体,不要加没有引入字体文件内的字体,包括css里和html里按需引入字体文件,排除默认的字体文件,字体文件要放到服务器上,绝对路径引入完整版代码如下:/*** 将HTML转成PDF文件* @return*/if (!// 转换 HTML to PDF// 设置PDF大小// 设置中文// 设置中文// 设置中文// html转换PDF// 关闭。

闫玉林的博客 1775

Java实现HTML转PDF(deepSeekAi->html->pdf)

Java实现HTML转PDF,主要为了解决将ai返回的html文本数据转为PDF文件方便用户下载查看。

牧风人的博客 928

Java实现Html转PDF

文章目录[隐藏]Java实现Html转PDF 原 Java实现Html转PDF 2015年07月07日 10:35:10 死神的丧钟 阅读数:38929 标签: Java HTML转PDF 更多 个人分类: Web Java 项目上的客户提出一个需求,把政务流程中的表单数据导出成pdf或者图片格式,用来作电子档案材料。表单基于公司的电子政务构建平台实现,在数据库保存的都是html格式,因此...

测试 162
上一篇: Java抓取网页信息[例子是抓取双色球某一天的信息]
下一篇: dom4j解析XML
壹圆一角
博客等级 码龄14年 21粉丝 23原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值