php 网页保存为pdf

  一开始用的自写html,然后转为pdf,但是这种方式很多css都不支持,不能完全达到效果,然后尝试使用wkhtmltopdf,

发现此方法貌似不能将vue项目的网页保存为pdf,可能是因为有跳转,不过也在此记录一下,目前还在学习如何使用无头浏览器实现此功能.

我的测试环境是win10,首先要安装wkhtmltopdf这个程序,下载地址:

https://wkhtmltopdf.org/downloads.html

 然后安装之后,配置环境变量

 然后在命令行测试一下

wkhtmltopdf -V

 

这样算是安装好了,接下来是代码

首先安装php扩展

composer require mikehaertl/phpwkhtmltopdf

我用的tp6框架做的测试,代码写在自定义命令行中:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$pdf = new Pdf('http://oa.admin.sosyun.com/home/login/index.html');
 
// 设置PDF文件的输出路径
        $pdf->setOptions([
            'page-size' => 'A4',
            'margin-top' => '10mm',
            'margin-right' => '10mm',
            'margin-bottom' => '10mm',
            'margin-left' => '10mm',
        ]);
 
// 生成PDF并保存
 
        if (!$pdf->saveAs(public_path().'output.pdf')) {
            echo "PDF生成失败: " . $pdf->getError();
        } else {
            echo "PDF生成成功: output.pdf";
        }

  试试吧

posted @   西瓜霜  阅读(40)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
历史上的今天:
2020-09-02 mysql 设置远程登录
点击右上角即可分享
微信分享提示