全部
常见问题
产品动态
精选推荐

PHP ImageMagick扩展有哪些函数?PHP ImageMagick扩展的使用方法

管理 管理 编辑 删除

ImageMagick是一个免费的创建、编辑、合成图片的软件。它可以读取、转换、写入多种格式的图片。图片切割、颜色替换、各种效果的应用,图片的旋转、组合,文本,直线,多边形,椭圆,曲线,附加到图片伸展旋转。

官方网站:https://imagemagick.org/index.php

PHP相关文档:https://www.php.net/manual/zh/book.imagick.php

安装ImageMagick

相关文章:https://imagemagick.org/script/download.php

1.window

下载安装可执行文件即可:https://imagemagick.org/script/download.php#windows

下载安装扩展:https://pecl.php.net/package/imagick

拓展的版本需要和PHP版本相匹配,版本不匹配时扩展无法加载(32位、64位、兼容的PHP版本等)

2.linux

# 安装ImageMagick
yum install ImageMagick
yum install ImageMagick-devel
# 安装拓展
pecl install imagick-3.6.0

# 手动安装
wget https://pecl.php.net/get/imagick-3.6.0.tgz -T 5
tar -zxf imagick-3.6.0.tgz
cd imagick-3.6.0
/www/server/php/74/bin/phpize

./configure --with-php-config=/www/server/php/74/bin/php-config --with-imagick=/usr/local/ImageMagick-7.1.0 --with-webp
 make && make install
 
 
 ImageMagick-devel是用于 ImageMagick程序开发的静态库和头文件。

Imagick介绍

在Imagick中可以同时存在多张图像,比如:

  1. newImage(新建图像)
  2. addImage(添加图像)
  3. clone关键词(克隆图像)
  4. hasNextImage和hasPreviousImage(是否还有其他图像)
  5. getIteratorIndex和setIteratorIndex(setImageIndex)和resetIterator和setLastIterator
  6. appendImages,追加一整个ImageMagick对象
  7. getNumberImages,获取图像的数量
  8. Imagick通过destroy()/clear()方法释放内存

相关函数

相关文档:https://phpimagick.com/

相关常量:https://www.php.net/manual/zh/imagick.constants.php

1.Imagick类

Imagick类涵盖了如何修改基于像素的图像的 Imagick 类的所有方法。

1.1 创建画布


// 创建一个新图片,宽500px,高300px,黑色,格式为png的图片: 
// 也可以使用远程图片进行初始化
$img =new Imagick();
$img->newImage(500,300,'black','png');

1.2 获取图片的分辨率


// 通过图片路径进行初始化
$imgtwo = new Imagick($imageSrc);
$height=$img->getImageHeight();//获取图片1高度
$width=$img->getImageWidth();//获取图片1宽度
// 获取长宽的关联数组
$img->getImageGeometry();

1.3 文字绘制


<?php
/* Create some objects */
$image = new Imagick();
$draw = new ImagickDraw();
$pixel = new ImagickPixel('white');

/* New image */
$image->newImage(800, 300, $pixel);

/* Black text */
$draw->setFillColor('green');

/* Font properties */
$draw->setFont('./a.ttf');
$draw->setFontSize(30);

/* Create text */
/* 可通过换行符实现文字写入时的换行 */
$image->annotateImage($draw, 30, 140, 0, '使用php/windows 安装 ImageMagick 扩展');

/* Give image a format */
$image->setImageFormat('png');

/* Output the image with headers */
header('Content-type: image/png');
echo $image;


请登录后查看

小码二开 最后编辑于2024-05-23 09:51:48

快捷回复
回复({{post_count}}) {{!is_user ? '我的回复' :'全部回复'}}
排序 默认正序 回复倒序 点赞倒序

{{item.user_info.nickname ? item.user_info.nickname : item.user_name}}

作者 管理员 企业

{{item.floor}}# 同步到gitee 已同步到gitee {{item.is_suggest==1? '取消推荐': '推荐'}}
沙发 板凳 地板 {{item.floor}}#
{{item.user_info.title}}
附件

{{itemf.name}}

{{item.created_at}}  {{item.ip_address}}
{{item.like_count}}
{{item.showReply ? '取消回复' : '回复'}}
删除
回复
回复

{{itemc.user_info.nickname}}

{{itemc.user_name}}

作者 管理员 企业

回复 {{itemc.comment_user_info.nickname}}

附件

{{itemf.name}}

{{itemc.created_at}}   {{itemc.ip_address}}
{{itemc.like_count}}
{{itemc.showReply ? '取消回复' : '回复'}}
删除
回复
回复
查看更多
回复
回复
1013
{{like_count}}
{{collect_count}}
添加回复 ({{post_count}})

相关推荐

小码二开 企业
金牌技术服务商:专注CRMEB产品的深度定制与合规模式开发, 微信与电话同号:13515970381

回答

439

发布

181

经验

23086

今日热榜
本月热榜
$item.title
{{item.title}}
热度 {{item.heat}}

快速安全登录

使用微信扫码登录
{{item.label}} {{item.label}} {{item.label}} 板块推荐 常见问题 产品动态 精选推荐 首页头条 首页动态 首页推荐
加精
取 消 确 定
回复
回复
问题:
问题自动获取的帖子内容,不准确时需要手动修改. [获取答案]
答案:
提交
bug 需求 取 消 确 定

微信登录/注册

切换手机号登录

{{ bind_phone ? '绑定手机' : '手机登录'}}

{{codeText}}
切换微信登录/注册
暂不绑定
CRMEB客服

CRMEB咨询热线 咨询热线

400-8888-794

微信扫码咨询

CRMEB开源商城下载 源码下载 CRMEB帮助文档 帮助文档
返回顶部 返回顶部
CRMEB客服