html清除样式-支持HTML/CSS/JS网页转换为PDF(高质量)的终极解决方案

2023-08-28 0 617 百度已收录

(坑给你踩,给你找出可行的结果,让你的方向明确,存在的小问题可以自己解决)

1.后台转换成pdf就别想了html清除样式,我已经帮你爬过坑了。

后端转PDF的本质就是通过canvas将网页转为图片,将图片转为PDF。

坑一:PDF文件占用显存较多。 应该是500kb的pdf,但是它会直接给你传20M的pdf。

陷阱二:PDF模糊、文字拖尾、控制音质的各种参数无法解析。

坑三:PDF好像是图片,文字很难复制。

2.前端PHP转PDF的转换就别想了html清除样式,我已经帮你爬过坑了。

前端转PDF的本质就是用PHP做HTML。

陷阱一:用PHP写html是一件痛苦的事,只有勤劳的人才能吃得下,尤其是遇到JS图表之类的样式,直接没有什么可爱的。

陷阱二:PHP做html的事情无法在浏览器上预览。 只能编写并导入pdf才能看到疗效。 开发一套后,您可以导入数百个 pdf。 这些苦你能承受吗?

坑3:还需要导入字体包等,麻烦死了。

3.不要再想着前端调用HTML转PDF了,我已经帮你爬过坑了。

前端调用HTML转PDF,本质是PHP识别HTML然后转换。

陷阱一:大部分HTML不支持,不支持css文件,不支持js等图表,只能写内联样式。

陷阱二:编写的浏览器预览效果与导入的PDF不一致。 尝试调整一下样式,然后导入pdf看看效果。 开发一套后,您可以导入数百个 pdf。 你能承受这个艰辛吗?

明天,梁哥从万坑爬下来,向辛勤的程序员献上一篇:HTML/CSS/JS网页转PDF(高质量)的终极解决方案,请手下留情。

1、准备工作:要传输的网页、服务器环境。

(1)要传输的网页:使用html、css、js格式化你要导出的网页样式。 不用担心兼容性,支持你能想到的所有疗效。 如果您是在网站上预览弹窗页面,可以在iram中设置页面弹窗。

(2)服务器环境:建议使用白痴维护的linux的宝塔。 如果你是linux命令高手,可以不用宝塔。

2.安装wkhtmltopdf:在服务器上安装wkhtmltopdf软件。

软件安装过程中可能会出现各种linux提示和错误。 由于错误多种多样,我无法一一为大家列出。 你可以按照linux错误爬取文档并自行处理。 我这里只给出一个供我探索。 明确可行且可用的想法,您可以按照想法进行操作。

A. 打开服务器终端。

B.下载wkhtmltopdf并复制并运行命令:

wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox-0.12.5-1.centos7.x86_64.rpm

C.安装wkhtmltopdf副本并运行命令:

sudo yum localinstall -y wkhtmltox-0.12.5-1.centos7.x86_64.rpm

D、检查wkhtmltopdf是否安装成功,复制运行命令:

wkhtmltopdf -V

3. 使用 PHP 创建开箱即用的 API 套接字

function PDF()
    {
        $inputFile = 'https://baidu.com'; //您要转出的网页路径
        $outputFile = ROOT_PATH . 'public/uploads/pdf/xxxx.pdf'; //存放PDF的物理路径
        $url =  '/public/uploads/pdf/xxxx.pdf'; //定义相对路径
        $wkhtmltopdfBinary = '/usr/local/bin/wkhtmltopdf --margin-top 5mm --margin-bottom 5mm --margin-left 5mm --margin-right 5mm'; //wkhtmltopdf命令的路
        $command = $wkhtmltopdfBinary . ' ' . escapeshellarg($inputFile) . ' ' . escapeshellarg($outputFile); //构建命令
        exec($command, $output, $returnCode); //执行命令行
        //执行失败暴露错误,用于debug
        if ($returnCode !== 0) { 
            $obj['output']=$output;
            $obj['returnCode']=$returnCode;
            return $obj;
        };
        //执行成功,如果有数据库操作,请在下面写你的数据操作
    }
}

4、出口疗效

写在最后:如果操作过程中遇到问题,可以私信联系我。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 html html清除样式-支持HTML/CSS/JS网页转换为PDF(高质量)的终极解决方案 https://www.wkzy.net/game/168476.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务