php使用imagemagick,php的imagemagick使用; -凯发k8官方网
(1).创建一个新图片,宽500px,高300px,黑色,格式为png的图片$img =new imagick();
$img->newimage(500,300,'black','png')
(2).图片的叠加;
假设我们选取范例1中的$img作为背景,这个时候我们把第二张图片叠加到图片上;选一张马刺gdp组合;
知道图片二的路径假定为$imagesrc="/home/xxxx/spurs.png";
第一步我们实例化这个图片
$imgtwo = new imagick($imagesrc);
因为是要叠加,我们就需要把两张图的大小设置一样;首先我们要活的第一张图片的大小(ps:这里我们也可以指定大小).$height=$img->getimageheight();//获取图片1高度
$width=$img->getimagewidth();//获取图片1宽度
第二步,对图片进行大小调整$imgtwo->resizeimage($width,$height,imagick::filter_lanczos,1);
resizeimage参数说明bool imagick::resizeimage ( int $columns , int $rows , int $filter , float $blur [, bool $bestfit = false ] )
参数解释:
columns 图片的宽度
rows 图片高度
filter 过滤器,用于过滤图片,有高斯filte根据情况而定
blur blur=1 为虚化, blur =-1 为锐化
第三部,叠加图片
使用compositeimage();bool imagick::compositeimage ( imagick $composite_object , int $composite , int $x , int $y [, int $channel = imagick::channel_all ] )
参数说明:
composite_object :用于合并的图片的imagick对象
composite:合并操作,定义操作常量。 具体请查看 合并操作常量列表
x:相对图像顶点左上位置(0,0)的横坐标
y:相对图像顶点左上位置(0,0)的纵坐标
channel:通过传入一个通道常量,来开启通道模式。为了支持多个通道,可以通过二进制运算的操作来合并多个通道常量。
ps:这里是把图片二覆盖到图片一上$img->compositeimage($imgtwo,$image->getimagecompose(),0,0)
生成图片如下:
最后
1.我们可以直接在网页上查看图片,但是要加一个header信息;header("content-type: image/png");
echo $img;
2.可以把图片在指定目录中生成;在当年目录下生成为img.png
$file="./img.png";
$img->writeimage($file);
这样就会在当前目录下生成图片img.png;
(3).在图片上配置文字
需要使用 imagickdraw类;
第一步实例化imagickdraw类:$draw=new imagickdraw();
设置字体颜色$draw->setfillcolor(new imagickpixel('white'));
设置字体大小$draw->setfontsize('25');
设置字体$draw->setfont("../fonts/arial.ttf");
设置字体方向$draw->settextalignment(imagick::align_right);
ps:
imagick::align_right 朝右边
imagick::align_left 左边
imagick::align_center 中间
设置字体编码格式$draw->settextencoding("utf-8")
画出文字$draw->annotation(200,200,'gdp');
在底板上画出;$img->drawimage($draw);
nba历史上最伟大的组合gdp
(4).裁剪图片
这个夏天邓肯退役了,gdp组合解题。我们只能把邓肯去掉$img->cropimage(300, 300, 0, 20);
第一个参数是图片的宽度
第二个是高度
图片裁剪的x轴位置
图片裁剪y轴位置
然后我们再把生成一个圆角$img->roundcorners(60, 60);
就生成了少了邓肯现在马刺,外加一个伦纳德
ps:这里我重新写了文字,变成了gp;
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
总结
以上是凯发k8官方网为你收集整理的php使用imagemagick,php的imagemagick使用;的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 段错误 php,php扩展出现段错误怎么
- 下一篇: