用php_imagick实现复古效果的方法
介绍
Php_imagick是一个Php扩展,可以被PHP用来调用ImageMagick函数。使用这个扩展可以让PHP拥有和ImageMagick一样的功能。ImageMagick是一个强大、稳定、免费的工具集和开发工具包,可用于读取、写入和处理超过185个基本图像文件,包括流行的TIFF、JPEG、GIF、PNG、PDF和PhotoCD格式。使用ImageMagick,可以根据web应用的需要动态生成图片,还可以对一张(或一组)图片进行大小改变、旋转、锐化、增亮或添加特效,并将操作结果保存为相同格式或其他格式。
示例php_imagick程序
1.创建缩略图并显示它
?phpheader(' Content-type : image/JPEG ');$ image=new Imagick(' image . jpg ');//如果提供0作为宽度或高度参数,//纵横比保持$image-thumbnailImage(100,0);echo $ image?2.在目录下创建一个缩略图并保存
?PHP $ images=new Imagick(glob(' images/*)。JPG’);foreach($images as $image) {//提供0强制缩略图图像保持纵横比$ image-缩略图图像(1024,0);} $ images-write images();3.简写GIF动画图片
?php/*创建一个新的imagick对象并读入GIF */$ im=new imag ick(' example . GIF ');/*调整所有帧的大小*/foreach ($im as $frame) {/* 50x50帧*/$frame-thumbnailImage(50,50);/*将虚拟画布设置为正确的大小*/$frame-setImagePage(50,50,0,0);}/*注意writeImages而不是write image */$ im-write images(' example _ small . gif ',true);用php_imagick实现复古效果的方法
我们先来看看效果图
复古效果显示
为了达到上述效果,我们首先使用Photoshop来实现以下步骤。
打开原件
创建新图层并用颜色# c0fff填充后,不透明度设置为44%,图层混合模式为柔光
创建新图层并用颜色#000699填充后,不透明度设置为48%,图层混合模式被排除
合并层
有了PHP代码,您只需要遵循上面的步骤。代码如下:
//打开图片$im=new Imagick('。/hebe . jpg ');//新建一层,填充颜色`# c0fff `,不透明度设置为` 44% `$ layer=new imagik();$ layer-new image($ im-getImageWidth(),$im-getImageHeight(),' # C0FFFF ');$ layer-setImageOpacity(0.44);//叠加在原图上,图层混合模式为‘柔光’$ im-composite image($ layer,imagick :3360 composite _ soft light,0,0);//新建一层,填充颜色` #000699 `,不透明度设置为` 48% `$ layer=new imagik();$ layer-new image($ im-getImageWidth(),$im-getImageHeight(),' # 000699 ');$ layer-setImageOpacity(0.48);//叠加在原图像上,图层混合模式为` exclude `$ im-composite image($ layer,imagick :3360 composite _ exclude,0,0);//完成!$im-writeImage('。/vintage . jpg ');摘要
以上就是使用php_imagick实现复古效果的方法。文章通过示例代码进行了详细介绍。有兴趣的朋友自己敲代码更方便。希望本文的内容能给大家的学习或工作带来一些帮助。有问题可以留言交流。
版权声明:用php_imagick实现复古效果的方法是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。