centos7系统项目中ImageMagick的安装及使用,测试案例将PDF转成图片
linux  /  管理员 发布于 2年前   1049
ImageMagick 是一个免费的创建、编辑、合成图片的软件,ImageMagick 是免费软件遵守 GPL 许可协议
依赖:
imagick扩展
ImageMagick-devel
ImageMagick-perl
CentOS7安装:
在 CentOS 中可以直接使用 Yum 进行安装,安装上面的3个依赖。
yum install -y ImageMagick ImageMagick-devel ImageMagick-perl
接着使用pecl安装扩展。
找到 PHP 安装目录下的 pecl,
例如 PHP 安装在 /usr/local/php74 目录中,则 pecl 一般在 /usr/local/php74/bin 目标中,
执行命令:
/usr/local/php74/bin/pecl install imagick
即可使用 pecl 自动下载并安装 ImageMagick,
最后在php.ini中添加:
extension=imagick.so
即可启用扩展。
检查一下扩展有没有安装成功,可以执行一下命令
php -m|grep imagick
有imagick字样,说明扩展安装成功
PDF转图片代码示例:
// 实例化imagick对象
$im = new imagick();
//用于设置图像的分辨率,
$im->setResolution(150, 150);
//设置图像的压缩质量,默认值为 0;传入的参数值应为 1-100,对于 JPG 格式图片,值越小,图像体积越小,同时清晰度也较低
//png保持默认就好了
$im->setCompressionQuality(100);
//直接加载 PDF 文件的二进制内容,也可以使用 readImage($filename) 函数读取保存好的 PDF 文件
$im->readImageBlob($fileContent);
//设置要生成的图像的格式,如 jpg,png 等
$im->setImageFormat('jpg');
//设置图像背景色为白色
$im->setImageBackgroundColor('white');
//去掉图像的 alpha 通道
$im->setImageAlphaChannel(Imagick::ALPHACHANNEL_REMOVE);
//将所有图像合并为一层
$im->mergeImageLayers(Imagick::LAYERMETHOD_FLATTEN);
//获取转换生成图像的二进制数据,输出到客户端供下载;
//如果需要保存到文件,可以使用 writeImage($filename) 函数。
header("Content-type: image/jpeg");
echo $im->getImageBlob();
原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..路人 在
php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..博主 在
科学上网翻墙之v2rayN-Core客户端免费公益节点使用教程中评论 @ mashrdn 多切换几个节点测试,免费ssr是没那么稳..Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号