《PHP应用:利用php_imagick实现复古效果的方法》要点:
本文介绍了PHP应用:利用php_imagick实现复古效果的方法,希望对您有用。如果有疑问,可以联系我们。
介绍PHP教程
php_imagick是一个可以供PHP调用ImageMagick功能的PHP扩展,使用这个扩展可以使PHP具备和ImageMagick相同的功能.
ImageMagick是一套功能强大、稳定而且免费的工具集和开发包,可以用来读、写和处理超过185种基本格式 的图片文件,包括流行的TIFF, JPEG, GIF, PNG, PDF以及PhotoCD等格式.利用ImageMagick,你可以根据web应用程序的需要动态生成图片, 还可以对一个(或一组)图片进行改变大小、旋转、锐化、减色或增加特效等操作,并将操作的结果以相同格式或其它格式保存.
PHP教程
php_imagick程序示例PHP教程
1.创建一个缩略图并显示出来PHP教程
<?phpheader('Content-type: image/jpeg');$image = new Imagick('image.jpg');// If 0 is provided as a width or height parameter,// aspect ratio is maintained$image->thumbnailImage(100, 0);echo $image;?>
2.创建一个目录下的缩略图,并保存PHP教程
<?php$images = new Imagick(glob('images/*.JPG'));foreach($images as $image) {// Providing 0 forces thumbnailImage to maintain aspect ratio$image->thumbnailImage(1024,0);}$images->writeImages();?>
3.缩略GIF动画图片PHP教程
<?php/* Create a new imagick object and read in GIF */$im = new Imagick("example.gif");/* Resize all frames */foreach ($im as $frame) {/* 50x50 frames */$frame->thumbnailImage(50, 50);/* Set the virtual canvas to correct size */$frame->setImagePage(50, 50, 0, 0);}/* Notice writeImages instead of writeImage */$im->writeImages("example_small.gif", true);?>
利用php_imagick实现复古效果的方法PHP教程
先来看下效果图PHP教程
复古效果展示PHP教程
要实现以上效果,我们先用Photoshop用以下步骤实现.PHP教程
打开原图
PHP教程
新建图层,使用颜色#C0FFFF填充后,不透明度设为44%,图层混合模式为柔光
PHP教程
新建图层,使用颜色#000699填充后,不透明设置为48%,图层混合模式为排除
PHP教程
合并图层
PHP教程
用PHP代码,也就只需要按照以上步骤实现即可,代码如下:PHP教程
//打开图片$im = new Imagick('./hebe.jpg');//新建图层,使用颜色`#C0FFFF`填充后,不透明度设为`44%`$layer = new Imagick();$layer->newImage($im->getImageWidth(), $im->getImageHeight(), '#C0FFFF');$layer->setImageOpacity (0.44);//叠加到原图上,图层混合模式为`柔光`$im->compositeImage($layer, Imagick::COMPOSITE_SOFTLIGHT, 0, 0);//新建图层,使用颜色`#000699`填充后,不透明设置为`48%`$layer = new Imagick();$layer->newImage($im->getImageWidth(), $im->getImageHeight(), '#000699');$layer->setImageOpacity (0.48);//叠加到原图上,图层混合模式为`排除` $im->compositeImage($layer, Imagick::COMPOSITE_EXCLUSION, 0, 0);//完成!$im->writeImage('./vintage.jpg');
总结PHP教程
以上就是利用php_imagick实现复古效果的方法,文章通过示例代码介绍的还是很详细的,感兴趣的朋友们自己敲敲代码更能方便理解,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流.PHP教程
转载请注明本页网址:
/jiaocheng/2999.html
希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, LeCMS, ClassCMS, Fastadmin, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。