chrome 插件 html转pdf,利用Chrome Headless模式,网页转PDF

本文介绍了如何在Linux环境下,特别是CentOS 7上,利用Chrome的Headless模式将网页转换为PDF文件。这种方法可以解决字体问题,并且能够进行截图和其他功能。详细步骤包括安装Chrome、设置CSS样式以及运行命令`google-chrome --headless --disable-gpu --print-to-pdf`来生成PDF。
摘要由CSDN通过智能技术生成

原来一直是用wkhtmltopdf来将网页打印成PDF文件,它是基于QtWebKit内核的。但最近有个很奇怪

的字体问题困扰着我。所以找找其它能在Linux下实现相同功能的方法。然后发现Chrome Headless模式可

以实现我想要的,而且用Chrome来实现,可以排除掉很多Bug怀疑。

Chrome Headless模式相当于一个没有界面的浏览器,能实现很多功能,能实现pdf打印,截图等,扩展下,可以

做web测试,爬虫抓取等等。

CentOS 7下的安装:

# vi /etc/yum.repos.d/chrome.repo

[google-chrome]

name=google-chrome

baseurl=http://dl.google.com/linux/chrome/rpm/stable/$basearch

enabled=1

gpgcheck=1

gpgkey=https://dl-ssl.google.com/linux/linux_signing_key.pub

# yum info google-chrome-stable

# yum install -y google-chrome-stable

# yum install -y mesa-libOSMesa mesa-libOSMesa-devel gnu-free-sans-fonts

# yum install -y ipa-gothic-fonts ipa-pgothic-fonts准备一个网页:

body {

width: 910px;

height: 1280px;

font-f

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将React HTML换为PDF,可以使用Puppeteer和headless Chrome来实现。以下是一个基本的步骤: 1. 首先,安装Puppeteer和相关的依赖库。Puppeteer是一个Chrome浏览器的Node.js库,可以用来模拟浏览器操作。 2. 创建一个React组件,并使用React的渲染方法将其渲染为HTML。 3. 使用Puppeteer启动一个headless Chrome浏览器实例。 4. 在headless Chrome浏览器中打开一个新的页面,并将React组件渲染的HTML加载到这个页面中。 5. 将页面保存为PDF文件。 下面是一个使用Puppeteer和headless Chrome将React HTML换为PDF的示例代码: ```javascript const puppeteer = require('puppeteer'); async function convertHTMLtoPDF() { const browser = await puppeteer.launch(); const page = await browser.newPage(); // 渲染React组件为HTML const reactComponent = <YourReactComponent />; const html = ReactDOMServer.renderToString(reactComponent); await page.setContent(html); // 将页面保存为PDF文件 await page.pdf({ path: 'output.pdf', format: 'A4' }); await browser.close(); } convertHTMLtoPDF(); ``` 请注意,在上面的示例代码中,您需要将`<YourReactComponent />`替换为您自己的React组件,并根据需要进行其他自定义设置,比如指定输出的PDF文件路径和格式。 希望这个示例能帮助您将React HTML换为PDF。如果您需要更多详细的信息和其他选项,可以查阅Puppeteer的官方文档。 参考资料: Puppeteer官方文档: https://pptr.dev/ 《如何使用Puppeteer和Headless ChromeHTML换为PDF》- Medium: https://medium.com/@abhishek900018/how-to-convert-html-to-pdf-using-puppeteer-and-headless-chrome-d2a3c4a1b0e9 《前端生成pdf并上传的流程》- 简书: https://www.jianshu.com/p/e1e7de3dc7e6
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值