该文章是接着上篇文章《PHP极其强大的图片处理库Grafika详细教程(1):图像基本处理》,因为grafika功能太多,因此分开写,其余的点击这里segmentfault
《一、图像基本处理》
《二、图像特效处理模块》
《三、图像属性处理》
《四、图形绘制》app
咱们开门见山,直接继续上实例,详细了解点击上面连接spa
grafika提供了11种滤镜功能,能够知足开发中的任何状况需求。设计
这里先介绍一个操做方法:apply
:它能够将滤镜效果应用到图片3d
使用Blur
参数,模糊化一张图片code
其中模糊度取值范围为0-100,数值越大,图片越模糊blog
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Blur', 50); // 模糊度为10,模糊度取值为0-100 $editor->apply( $image, $filter ); // 将滤镜应用到图片 $editor->save($image,'yanying-blur.jpg');
咱们将图片模糊参数调为50教程
使用Brightness
,加亮或者变暗图片图片
其中亮度值取值范围为开发
-100 至 -1,变暗
0 图片没有变化
1-100图片变量
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Brightness', -50); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Brightness-1.jpg');
使用Colorize
参数,调整图片的红绿蓝三个基础色来改变图片颜色
颜色参数(红色、绿色、蓝色取值范围相同)
取值-100至-1,颜色减小;
若是为0表示不变;
取值1-100,表示色值增长
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Colorize', -50,50,-50); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Colorize.jpg');
使用Contrast
参数能够改变图片的对比度
对比度的取值和以前的也差很少,-100至-1,对比度减小;0不变;1至100,对比度增长
具体什么叫对比度,自行百度,我也不是太清楚,毕竟不是搞设计的
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Contrast', 50); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Contrast.jpg');
使用Dither
来给图像添加噪点,其参数取值只有两个diffusion
:扩散;ordered
:规整的
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Dither', 'diffusion'); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Dither-diffusion.jpg');
Gamma
这个参数在平时是不经常使用的,只有在专业的图像领域才会使用。能够理解为色阶,是灰阶亮度值与灰阶等级之间的数学关系。
这里的Gamma
功能是校订图像色阶,使得图像看起来颜色更加正确
这里的数字值取值范围只有最小值没有最大值只要 >=1.0均可以
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Gamma', 2.0); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Gamma.jpg');
使用Grayscale
使图片全部的色彩丢弃,只保留黑白两种颜色,没有取值。
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Grayscale'); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Grayscale.jpg');
图像反色,也就是弄得和胶片似得。
使用Invert
参数能够达到图像反色效果,也没有可选值
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Invert'); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Invert.jpg');
就是把矢量图形转换成像素点组成的点阵图形,也叫栅格化。搞ps的应该都清楚
该参数有个取值范围只要大于或者等于1就能够,若是值越大,像素点也就越大
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Pixelate',10); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Pixelate-10.jpg');
咱们取值5和取值10对比下
图片锐化就是补偿图像的轮廓,加强图像的边缘及灰度跳变的部分,使图像变得清晰。
使用参数Sharpen
能够处理锐化,其取值为1-100(包含)。
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Sharpen',50); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Sharpen.jpg');
咱们取值50,看下效果
经过数学计算检测出图像的边缘,在ps中较为经常使用。
这里使用Sobel
参数达到相同效果,没有值可选
use Grafika\Grafika; $editor = Grafika::createEditor(); $editor->open( $image, 'yanying-smaller.jpg' ); $filter = Grafika::createFilter('Sobel'); $editor->apply( $image, $filter ); $editor->save($image,'333/yanying-Sobel.jpg');
严颖,PHP研发工程师