因为公司取证的原因,需要把很多的资质图片文件打包生成pdf,所以用php写了一个脚本来自动生成文件。
代码如下:
<?php  
//设置超时事件。防止超时异常
ini_set("max_execution_time",18000);
//设置内存使用,防止大数据量超内存
ini_set("memory_limit",'-1');
header("Content-type:text/html;charset=utf-8");
require_once('TCPDF/tcpdf.php');
require_once('TCPDF/config/tcpdf_config.php');
//tcpdf 创建一个pdf对象
$pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8', false);

$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

// set margins
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);

// set auto page breaks
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);

// set image scale factor
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);

// set some language-dependent strings (optional)
if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
require_once(dirname(__FILE__).'/lang/eng.php');
$pdf->setLanguageArray($l);
}

$hostdir='1\3'; //要操作的目录名
$filesnames = scandir($hostdir);//获取全部文件名
sort($filesnames,SORT_NUMERIC);//文件名排序,根据数字从小到大排列
//遍历文件名
foreach ($filesnames as $name) {
if(strstr($name,'jpg')){//如果是图片则添加到pdf中
// Image($file, $x='', $y='', $w=0, $h=0, $type='', $link='', $align='', $resize=false, $dpi=300, $palign='', $ismask=false, $imgmask=false, $border=0, $fitbox=false, $hidden=false, $fitonpage=false)
$pdf->AddPage();//添加一个页面
$filename = $hostdir.'\\'.$name;//拼接文件路径
                        //gd库操作  读取图片
$source = imagecreatefromjpeg($filename);
                       //gd库操作  旋转90度
$rotate = imagerotate($source, 90, 0);
                      //gd库操作  生成旋转后的文件放入别的目录中
imagejpeg($rotate,$hostdir.'\\123\\'.$name.'_1.jpg');
                        //tcpdf操作  添加图片到pdf中
$pdf->Image($hostdir.'\\123\\'.$name.'_1.jpg', 15, 26, 210, 297, 'JPG', '', 'center', true, 300);

}
}

$pdf->Output('1.pdf', 'I'); //输出pdf文件
//删除生成的目录及文件
function delDirAndFile( $dirName )
{
if ( $handle = opendir( "$dirName" ) ) {
while ( false !== ( $item = readdir( $handle ) ) ) {
if ( $item != "." && $item != ".." ) {
if ( is_dir( "$dirName/$item" ) ) {
delDirAndFile( "$dirName/$item" );
} else {
if( unlink( "$dirName/$item" ) )echo "成功删除文件: $dirName/$item<br />n";
}
}
}
closedir( $handle );
if( rmdir( $dirName ) )echo "成功删除目录: $dirName<br />n";
}
}

delDirAndFile($hostdir.'\\123');

php 利用gd库及tcpdf 自动多图片生成pdf相关推荐

  1. Py之pygame:有趣好玩—利用pygame库实现鱼儿自动实时目标跟踪(附完整代码)

    Py之pygame:有趣好玩-利用pygame库实现鱼儿自动实时目标跟踪(附完整代码) 目录 输出结果 实现代码 输出结果 实现代码 #Py之pygame:利用pygame库实现鱼儿自动实时目标跟踪i ...

  2. c++代码好玩_Py之pygame:有趣好玩—利用pygame库实现鱼儿自动实时目标跟踪(附完整代码)...

    Py之pygame:有趣好玩-利用pygame库实现鱼儿自动实时目标跟踪(附完整代码) 目录 输出结果 实现代码 输出结果 ​ 实现代码 #Py之pygame:利用pygame库实现鱼儿自动实时目标跟 ...

  3. php 利用GD库在制定图片上添加文字

    我们可以利用php的gd库扩展来对我们的图片进行处理,例如是生成缩略图,对图片进行裁切,和本章将说的在图片添加文字. 1.首先我们需要接受到我们需要的文字:$key = $_GET['key'];具体 ...

  4. php 利用GD库将正方形图片变成圆形

    当我们获取到微信头像时,我们抓取下来会发现是正方形,但是现实中我们一般都是用圆形的. 以下我将介绍用php 原生GD库,将图片抓取下来后切成圆角,其实代码很简单,所以就直接是上代码了 <?php ...

  5. PHP GD库解析一张简单图片并输出

    这里只演示一下2种颜色值的图片,简单描述下概念. 首先要安装下GD库.否则下面的代码运行不了. $size = getimagesize('2.png'); // 获取图片大小 $res = imag ...

  6. 利用libjpeg库实现jpg与bmp图片互转指南

    jpg与bmp图片互转指南 一.原理: ​ jpg与bmp图片格式都是以rgb像素为基础的,但是jpg在bmp的rgb的基础上进行了压缩.而且存储的方式是bgr,因此,在二者转换过程中需要转换对应的格 ...

  7. php使用gd库将文字转换成图片

    GD库是干什么用的呢!它是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片. <?php header("Content-type: ...

  8. php的验证码要gd库,PHP利用GD库实现一个简单的验证码

    搜索热词 下面是编程之家 jb51.cc 通过网络收集整理的代码片段. 编程之家小编现在分享给大家,也给大家做个参考. $img=imagecreatetruecolor(100,40); $red= ...

  9. Python 爬虫篇-利用urllib库下载网页中的图片实例演示

    我们用的是 urllib 库,这个库是 python 自带的,我们直接就可以使用. 我们需要来了解一下基本原理,它可以通过图片地址将图片下载下来. 我们来找一张图片做实例看一下. 查看图片的地址,把地 ...

  10. 如何利用手机实现图片生成PDF格式,这个方法超实用!

    说到图片,不管是男孩子还是女孩子都喜欢拍照,想必大家的手机相册中都用很多美照吧,不知道大家是否有遇到这样的情况,在有的地方,我们需要将图片的格式进行转换,那你是否找到了方法了?若是没有那就赶紧来看看这 ...

最新文章

  1. 北邮王啸:图神经网络的两面性
  2. 位运算和典型应用详解
  3. 局域网语音通话demo
  4. Windows Server 2003 R2中的“分布式文件系统”案例应用
  5. 如何快速提高网站流量
  6. 金仓Linux安装版取消开机自启服务
  7. 说说4种常用编码的区别?
  8. nyoj42一笔画问题
  9. jzoj1252,P5194-天平【dfs,set】
  10. 通讯网关 api网关_API网关正在经历身份危机
  11. 边工作边刷题:70天一遍leetcode: day 11-1
  12. 如何备份MySql的数据库
  13. SharePoint2007文档的点击率统计
  14. 使用 T4 文本模板生成设计时代码
  15. (转)android EditText 设置弹出数字输入法键盘
  16. unity自定义组件
  17. Linux 系统 uos / deepin 系统安装过程中 最全常用命令及问题 总结
  18. 视频去水印工具推荐-视频去水印步骤
  19. 关于计算机的英语作文带翻译,关于网络的英语作文带翻译
  20. 手撕Resnet卷积神经网络-pytorch-详细注释版(可以直接替换自己数据集)-直接放置自己的数据集就能直接跑。跑的代码有问题的可以在评论区指出,看到了会回复。训练代码和预测代码均有。

热门文章

  1. 高颜值挂脖式运动蓝牙耳机盘点,五款3D环绕高音质蓝牙耳机测评分享
  2. 制作一款app系统软件大概需要多少钱
  3. 历史重演?元宇宙会走上世纪交替时的互联网老路么?
  4. MFI认证——苹果MFI认证流程
  5. 定义一个方法用于判断一个字符串是否是对称的字符串(StringBuilder),例如:abcba、上海自来水来自海上均为对称字符串。
  6. 用js计时器写倒计时
  7. window的dos命令学习笔记 二
  8. 洛克菲勒写给儿子的38封信
  9. C语言大作业指针字符串处理,[C语言-PTA]说反话-加强版 — 字符串的指针式处理 | 祭夜の咖啡馆...
  10. CWE ID 470:Use of Externally-Controlled Input to Select Classes or Code (‘Unsafe Reflection‘)