barryvdh/laravel-snappy网页转图片、pdf

2024-05-16 04:38

本文主要是介绍barryvdh/laravel-snappy网页转图片、pdf,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、下载wkhtmltopdf

下载地址:https://wkhtmltopdf.org/downloads.html
选择对应的版本下载(我的homesteadubuntu16.04.3下载的是Ubuntu 16.04(xenial) amd64
解压wkhtmltox_0.12.5-1.xenial_amd64.deb,将其中的usr文件单独拿出来放到根目录

二、安装barryvdh/laravel-snappy

composer require barryvdh/laravel-snappy

安装成功后在app.php中的
providers 添加:

Barryvdh\Snappy\ServiceProvider::class,`

facades添加:

'PDF' => Barryvdh\Snappy\Facades\SnappyPdf::class,
'SnappyImage' => Barryvdh\Snappy\Facades\SnappyImage::class,

发布配置文件

php artisan vendor:publish --provider="Barryvdh\Snappy\ServiceProvider"

三、使用
controller中引用app

use App;

在具体的方法中

$pdf = App::make('snappy.pdf.wrapper');
return $pdf//->loadHtml('<h1>你好123</h1>')//->loadFile('http://www.kissyou.club/wap/parttime-job/')->loadView('test.index')->setPaper('a4')->setOrientation('landscape')->setOption('margin-bottom', 0)->setOption('enable-forms', true)//->setOption('grayscale', true)//->setOption('debug-javascript', true)//->setOption('page-offset', 8)->setOption('encoding', 'utf-8')//->setOption('header-font-name', 'msyh')//->setOption('enable-external-links', true)->inline();  // $data 为传递的参数//return $pdf->inline(); // 显示

四、会遇到不能识别汉字的时候

下载字体

$ wget http://font.ubuntu.com/download/ubuntu-font-family-0.83.zip

解压字

$ unzip ubuntu-font-family-0.83.zip

同时将windows下的微软雅黑、宋体等放进去

复制字体到对应的目录

$ sudo cp -r ubuntu-font-family-0.83/ /usr/share/fonts/truetype/

加可写权限

$ sudo chmod 755 /usr/share/fonts/truetype/ubuntu-font-family-0.83/ -R

刷新字体库

fc-cache -f -v

在html页面中增加字体,不加也行默认宋体

<style>body {font-family:  msyh;}
</style>

参考文档:
https://packagist.org/packages/barryvdh/laravel-snappy
https://github.com/barryvdh/laravel-snappy
https://wkhtmltopdf.org/usage/wkhtmltopdf.txt

这篇关于barryvdh/laravel-snappy网页转图片、pdf的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/993896

相关文章

使用Python实现无损放大图片功能

《使用Python实现无损放大图片功能》本文介绍了如何使用Python的Pillow库进行无损图片放大,区分了JPEG和PNG格式在放大过程中的特点,并给出了示例代码,JPEG格式可能受压缩影响,需先... 目录一、什么是无损放大?二、实现方法步骤1:读取图片步骤2:无损放大图片步骤3:保存图片三、示php

Java高效实现Word转PDF的完整指南

《Java高效实现Word转PDF的完整指南》这篇文章主要为大家详细介绍了如何用Spire.DocforJava库实现Word到PDF文档的快速转换,并解析其转换选项的灵活配置技巧,希望对大家有所帮助... 目录方法一:三步实现核心功能方法二:高级选项配置性能优化建议方法补充ASPose 实现方案Libre

使用Python提取PDF大纲(书签)的完整指南

《使用Python提取PDF大纲(书签)的完整指南》PDF大纲(Outline)​​是PDF文档中的导航结构,通常显示在阅读器的侧边栏中,方便用户快速跳转到文档的不同部分,大纲通常以层级结构组织,包含... 目录一、PDF大纲简介二、准备工作所需工具常见安装问题三、代码实现完整代码核心功能解析四、使用效果控

基于Python实现进阶版PDF合并/拆分工具

《基于Python实现进阶版PDF合并/拆分工具》在数字化时代,PDF文件已成为日常工作和学习中不可或缺的一部分,本文将详细介绍一款简单易用的PDF工具,帮助用户轻松完成PDF文件的合并与拆分操作... 目录工具概述环境准备界面说明合并PDF文件拆分PDF文件高级技巧常见问题完整源代码总结在数字化时代,PD

Python实现Word转PDF全攻略(从入门到实战)

《Python实现Word转PDF全攻略(从入门到实战)》在数字化办公场景中,Word文档的跨平台兼容性始终是个难题,而PDF格式凭借所见即所得的特性,已成为文档分发和归档的标准格式,下面小编就来和大... 目录一、为什么需要python处理Word转PDF?二、主流转换方案对比三、五套实战方案详解方案1:

Java使用Thumbnailator库实现图片处理与压缩功能

《Java使用Thumbnailator库实现图片处理与压缩功能》Thumbnailator是高性能Java图像处理库,支持缩放、旋转、水印添加、裁剪及格式转换,提供易用API和性能优化,适合Web应... 目录1. 图片处理库Thumbnailator介绍2. 基本和指定大小图片缩放功能2.1 图片缩放的

java中pdf模版填充表单踩坑实战记录(itextPdf、openPdf、pdfbox)

《java中pdf模版填充表单踩坑实战记录(itextPdf、openPdf、pdfbox)》:本文主要介绍java中pdf模版填充表单踩坑的相关资料,OpenPDF、iText、PDFBox是三... 目录准备Pdf模版方法1:itextpdf7填充表单(1)加入依赖(2)代码(3)遇到的问题方法2:pd

Python操作PDF文档的主流库使用指南

《Python操作PDF文档的主流库使用指南》PDF因其跨平台、格式固定的特性成为文档交换的标准,然而,由于其复杂的内部结构,程序化操作PDF一直是个挑战,本文主要为大家整理了Python操作PD... 目录一、 基础操作1.PyPDF2 (及其继任者 pypdf)2.PyMuPDF / fitz3.Fre

Python实现PDF按页分割的技术指南

《Python实现PDF按页分割的技术指南》PDF文件处理是日常工作中的常见需求,特别是当我们需要将大型PDF文档拆分为多个部分时,下面我们就来看看如何使用Python创建一个灵活的PDF分割工具吧... 目录需求分析技术方案工具选择安装依赖完整代码实现使用说明基本用法示例命令输出示例技术亮点实际应用场景扩

SpringBoot集成EasyPoi实现Excel模板导出成PDF文件

《SpringBoot集成EasyPoi实现Excel模板导出成PDF文件》在日常工作中,我们经常需要将数据导出成Excel表格或PDF文件,本文将介绍如何在SpringBoot项目中集成EasyPo... 目录前言摘要简介源代码解析应用场景案例优缺点分析类代码方法介绍测试用例小结前言在日常工作中,我们经