官方英文手册>>地址

安装使用

//通过官方composer引入
$ composer requrie mpdf/mpdf
//简易用法
<?php
require_once __DIR__ . '/vendor/autoload.php';
$mpdf = new \Mpdf\Mpdf();
$mpdf->WriteHTML('<h1>Hello world!</h1>'); //写入html代码
$mpdf->Output(); //输出 pdf文档

样式问题

虽然mpdf支持绝大部分的css样式,但是还是有一些常用的样式支持的不太友好,比如 浮动定位

文字和一些基本的样式我不再赘述,这里主要讲一下如何实现以下几种情况

列表

通常我们在HTML中使用列表的方式无非是 ulli ,但是当我们使用横排列表时,是需要使用到浮动的属性,但是浮动并不是那么友好,所以这里我建议使用表格,使用表格时注意要在trstyle加上height属性。

右浮动

在html可以随意使用向右浮动,但是在mpdf中不行, 所以我们用文本右对齐的方式或者使用pading-left来实现有浮动效果,因为大多都是生成固定大小pdf,所以也不用担心页面的自适应问题,只要我们的样式在A4纸上没有问题就可以了

图片

在mpdf中使用图片是个大问题,不能浮动,不能随意的当背景,不能定位,总之图片不能随意使用
解决方案有三种

1.使用图片水印

$mpdf->SetWatermarkImage('../images/background.jpg');
$mpdf->showWatermarkImage = true;

缺点是当pdf大于一张时,图片会在每一张pdf的同样位置显示

2.使用mpdf中提供的Image()方法,使用方式:

$mpdf->Image('files/images/frontcover.jpg', 0, 0, 210, 297, 'jpg', '', true, false);

3.使用html的方式(推荐)
使用方式,尽量把这个div放在body下面 因为mpdf相对定位比较奇怪,
当你的pdf为多张时,你的图片在第几张pdf中,就尽量把图片放在那一张的html附近并且是在body下面,调试位置时,你的top属性是相对当前pdf页面计算的,例如你的图片放在第二张pdf最上方,只需要把你的图片放在第二张html元素附近,并把style中的top值设为0就可以了

<div style="position: absolute; left:0; right: 0; top: 0; bottom: 0;"><img src="/files/images/frontcover.jpg" style="width: 210mm; height: 297mm; margin: 0;" />
</div>

以后有机会更新…

MPDF 使用攻略(如何使用图片,表格)相关推荐

  1. OpenCV计算机视觉编程攻略之提取图片轮廓-使用Canny函数

    OpenCV计算机视觉编程攻略之提取图片轮廓-使用Canny函数,很方便..代码如下: #include <vector> #include <iostream> #inclu ...

  2. element表格攻略大全,表头合并,表格合并,动态添加一列

    elementui表格攻略大全,表头合并,表格合并,动态添加一列 element合并表头与合并表格,需求就是这样,数据结构中需要有一个大类集合,由于数据结构是我定的,图二是这个表格的数据结构 [{fu ...

  3. node 生产的env文件怎么注入_前端各种文件上传攻略,从小图片到大文件断点续传...

    写在前面 今年国庆假期终于可以憋在家里了不用出门了,不用出去看后脑了,真的是一种享受.这么好的光阴怎么浪费,睡觉.吃饭.打豆豆这怎么可能(耍多了也烦),完全不符合我们程序员的作风,赶紧起来把文章写完. ...

  4. 写给新手前端的各种文件上传攻略,从小图片到大文件断点续传

    写在前面 今年国庆假期终于可以憋在家里了不用出门了,不用出去看后脑了,真的是一种享受.这么好的光阴怎么浪费,睡觉.吃饭.打豆豆这怎么可能(耍多了也烦),完全不符合我们程序员的作风,赶紧起来把文章写完. ...

  5. 前端各种文件上传攻略,从小图片到大文件断点续传

    写在前面 今年国庆假期终于可以憋在家里了不用出门了,不用出去看后脑了,真的是一种享受.这么好的光阴怎么浪费,睡觉.吃饭.打豆豆这怎么可能(耍多了也烦),完全不符合我们程序员的作风,赶紧起来把文章写完. ...

  6. 文明5 java 攻略_【图片】新手入门教程(科技胜利向指导)【文明5吧】_百度贴吧...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 三.游戏快捷键 文明百科 F1 Civilopedia F1 经济讯息 F2 Economic Info F2 军事讯息 F3 Military Info ...

  7. Dataset之DA:数据增强(Data Augmentation)的简介、方法、案例应用之详细攻略

    Dataset之DA:数据增强(Data Augmentation)的简介.方法.案例应用之详细攻略 目录 DA的简介 DA的方法 DA的案例应用 DA的简介 数据集增强主要是为了减少网络的过拟合现象 ...

  8. 【云栖大会夺宝攻略】在线PK、打卡领奖、抢offer,开发者专属玩法在这里

    简介:云栖大会2020就要来了! 什么才是开发者专属"游园"姿势? 丰厚"宝藏"如何免费拿? 不要慌!游玩入口就在下面,快点击图片去"夺宝" ...

  9. 国际服服务器怎么换账号吗,战争雷霆国际服怎么切换账号 | 手游网游页游攻略大全...

    发布时间:2016-04-21 战争雷霆国际服回归活动和不删档集结活动可以一起参加吗?活动奖励领取说明.战争雷霆战争小伙伴们可能对于不删档开启之后的活动还不了解,那么就和多游小编一起来看一看吧. 战争 ...

最新文章

  1. sourcetree 回滚
  2. Jinja2 模板用法
  3. sklearn onehot
  4. 「深入Java」类型信息:RTTI和反射
  5. 手把手教你用CAB发布OCX的简单办法
  6. 用matlab做纹理合成,关于图像纹理合成的Matlab例程
  7. python importlib_学习python importlib的导入机制
  8. 由1 2 3 4可以组成多个十百 无重复的数字
  9. Rust : Pointer......to be continued
  10. PHP+MYSQL图书管理系统(课设)
  11. 【原创】 ES5高效封装WIN10系统教程2020系列(六)ES5封装
  12. 逻辑数据库设计 - 需要ID(谈主键Id)
  13. 为什么今年高考数学又出编程题?
  14. skimage.feature函数使用说明
  15. 免费建立一个自己的网站
  16. 安防监控专用工业交换机与普通交换机的区别
  17. 【有奖倒计时】带你走进AI应用创新大赛十强背后的故事!
  18. SciML求解简谐振动的微分方程
  19. 每日优鲜完成新一轮4.5亿美元融资,自有品牌商品占比j将提升至50%
  20. 从腾讯云服务器迁移到轻量应用服务器

热门文章

  1. 【附源码】计算机毕业设计SSM校园后台报修管理系统
  2. 使用deep穿透更改 Element ui 样式在 谷歌浏览器生效,而在火狐浏览器不生效问题
  3. 【文末赠书】用Python实现一个电影订票系统!
  4. java度量衡换算器代码_Java开发笔记(四)Java帝国的度量衡
  5. Spark优化篇:RBO/CBO
  6. 电子电路仿真(Matlab代码实现)
  7. Java制导软件_GitHub - yaoceyi/JavaCC: JavaCC实现简易编译器
  8. java 使用zxing生成条形码(可自定义文字位置、边框样式)
  9. 海量数据处理 大量数据中找出最大的前10个数 (Top K 问题)
  10. Android逆向工程--将Apk转成Java文件