php imagick手册,PHP中使用Imagick实现各种图片效果实例

这篇文章主要介绍了PHP中使用Imagick实现各种图片效果实例,本文讲解了偏置图像、改变图片大

imagick是一个功能强大的图像处理库。

说是翻译 其实就是简要介绍imagick 的主要功能的或者说是我觉得比较实用的功能函数的介绍 以及使用的例子。

因为本人的英语水平有限,所以采用比较通俗或者说比较贴近应用化的语言来描述。

先欣赏一组炫丽的效果:

偏置图像:

例子:

复制代码 代码如下:

ini_set('display_errors',1);

header('Content-type: image/jpeg');

$image = new Imagick('1.jpg');

$image->rollImage(20,39);

echo $image;

?>

thumbnailImage($width,$height) 改变图片大小

例子:

复制代码 代码如下:

ini_set('display_errors',1);

header('Content-type: image/jpeg');

$image = new Imagick('1.jpg');

$image->thumbnailImage(100,0);

echo $image;

?>

addNoiseImage(int $noise_type [, int $channel= Imagick::CHANNEL_ALL ]);

功能:

Adds random noise to the image

添加干扰素

复制代码 代码如下:

Noise constants ( $noise_type 类型)

imagick::NOISE_UNIFORM (integer)

imagick::NOISE_GAUSSIAN (integer)

imagick::NOISE_MULTIPLICATIVEGAUSSIAN (integer)

imagick::NOISE_IMPULSE (integer)

imagick::NOISE_LAPLACIAN (integer)

imagick::NOISE_POISSON (integer)

Channel constants ( $channel 类型)

imagick::CHANNEL_UNDEFINED (integer)

imagick::CHANNEL_RED (integer)

imagick::CHANNEL_GRAY (integer)

imagick::CHANNEL_CYAN (integer)

imagick::CHANNEL_GREEN (integer)

imagick::CHANNEL_MAGENTA (integer)

imagick::CHANNEL_BLUE (integer)

imagick::CHANNEL_YELLOW (integer)

imagick::CHANNEL_ALPHA (integer)

imagick::CHANNEL_OPACITY (integer)

imagick::CHANNEL_MATTE (integer)

imagick::CHANNEL_BLACK (integer)

imagick::CHANNEL_INDEX (integer)

imagick::CHANNEL_ALL (integer)

例子:

复制代码 代码如下:

ini_set('display_errors',1);

header('Content-type: image/jpeg');

$image = new Imagick('1.jpg');

$image->thumbnailImage(100,0);

$image->addNoiseImage(imagick::NOISE_POISSON,imagick::CHANNEL_OPACITY);

echo $image;

?>

annotateImage 创建文本图像

例子:

复制代码 代码如下:

$image = new Imagick();

$draw = new ImagickDraw();

$pixel = new ImagickPixel( 'gray' );

$image->newImage(800, 75, $pixel);

$pixel->setColor('black');

$draw->setFont('Bookman-DemiItalic');

$draw->setFontSize( 30 );

$image->annotateImage($draw, 10, 45, 0, 'The quick brown fox jumps over the lazy dog');

$image->setImageFormat('png');

header('Content-type: image/png');

echo $image;

?>

blurImage(float $radius , float $sigma [, int $channel ])

Adds blur filter to image 图像模糊度处理

参数:

复制代码 代码如下:

int $channel :

imagick::CHANNEL_UNDEFINED (integer)

imagick::CHANNEL_RED (integer)

imagick::CHANNEL_GRAY (integer)

imagick::CHANNEL_CYAN (integer)

imagick::CHANNEL_GREEN (integer)

imagick::CHANNEL_MAGENTA (integer)

imagick::CHANNEL_BLUE (integer)

imagick::CHANNEL_YELLOW (integer)

imagick::CHANNEL_ALPHA (integer)

imagick::CHANNEL_OPACITY (integer)

imagick::CHANNEL_MATTE (integer)

imagick::CHANNEL_BLACK (integer)

imagick::CHANNEL_INDEX (integer)

imagick::CHANNEL_ALL (integer)

复制代码 代码如下:

ini_set('display_errors',1);

header('Content-type: image/jpeg');

$image = new Imagick('1.jpg');

$image->blurImage(5,3);

echo $image;

?>

borderImage ( mixed $bordercolor , int $width , int $height ) 图片边框处理

例子:

复制代码 代码如下:

ini_set('display_errors',1);

header('Content-type: image/jpeg');

$image = new Imagick('1.jpg');

$color=new ImagickPixel();

$color->setColor("rgb(220,220,220)");

$image->borderImage($color,5,4);

$image->blurImage(5,5,imagick::CHANNEL_GREEN);

echo $image;

?>

charcoalImage ( float $radius , float $sigma ) 图像素描处理

参数说明:

$radius :越小越薄。

$sigma: 越大 墨越深 反之。

例子:

复制代码 代码如下:

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/508087.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php流程控制的类型有哪些,流程控制包括哪些内容

流程控制也称为控制流程,是计算机运算领域的用语,其内容包括在程序运行时,个别的指令或是陈述、子程序运行或求值的顺序,不论是在声明式编程语言或是函数编程语言中,都有类似的概念。控制流程(也称为流程控制)是计算机…

PHP公鸡五文钱,公鸡

中国古代数学家张丘建在他的《算经》中提出了一个著名的“百钱买百鸡问题”,鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?实现过程&#…

oracle11g创建闪回分区多大,Oracle闪回区大小预估

一个朋友问如何设置Oracle闪回区大小,有什么依据没有。查证官方文档,有如下描述For example, if you intend to setDB_FLASHBACK_RETENTION_TARGET to 24 hours, and if the database generates 20 GB of redo in a day, then a rule of thumb is to all…

平方变换法提取载波MATLAB,毕业设计(论文)MPSK信号的载波同步算法研究与仿真.doc...

目录摘要IAbstractII第一章 绪论1相移键控技术1第二章 载波同步原理22.1平方变换法和平方环法22.2 同相正交3第三章 相移键控(PSK)信号的调制原理63.1 二进制相移键控的基本原理63.2 二进制差分相移键控(DPSK)的基本原理83.3 多进制相移键控(MPSK)的基本原理113.3.1 QPSK调制原…

oracle dba_waiters中的lockid是什么,查杀oracle lock session and table

查杀oracle 死锁的一些帖子摘录[more]查找死锁进程column sid format 999;column b format 9;column object_name format a30;select v$lock.sid,decode(v$lock.type,MR, Media Recovery,RT,Redo Thread,UN,User Name,TX, Transaction,TM, DML,UL, PL/SQL User Lock,DX, Distri…

查询linux服务器事物传输失败日志,查看fail2ban日志代替lastb查看登录失败记录

之前我曾经用shell脚本提取lastb登录失败超过指定次数的IP加入到iptables,来禁止这些IP登录主机,达到防止恶意攻击的目的。后来为了给主机提供更全面的防护,又安装了fail2ban。今天早上我收到fail2ban发过来的报警邮件提示我禁止了一个IP登录…

文件字符串变量插入linux,Linux Shell脚本实现在文件指定的行插入字符串

涉及知识点:grep字符串查找,awk截取列,until条件操作,sed字符串插入,变量与字符串连接等。人工操作(首先vim打开文件找到字符串所在的位置,插入操作):vim /etc/glance/glance-api-paste.ini# Li…

linux系统子接口配置文件,Linux网卡绑定、子接口-IP别名

查看网卡线缆状态:mii-tool eth0查看网卡底层信息:ethtool eth0ethtool -i eth0 查看网卡驱动信息ethtool -S eth0 查看网卡状态统计信息Linux下可以通过IP别名(子接口)功能为一个物理网卡添加多个IP地址要使用IP别名(子接口)需要关闭NetworkManager服…

linux防火墙允许dns服务,Linux防火墙设置-DNS服务器篇

亲测可用,对于刚刚搭建了DNS服务器,需要开启防火墙但又不知道该怎么设置的朋友,可以参考下面的内容,或者直接使用我下面给出的脚本程序。如果服务器是作为DNS服务器使用的,针对绝大多数的情况,为了开启防火…

发布react项目到linux服务器,nginx上部署react项目的实例方法

测试项目:react-demo克隆你的react-demo项目到服务器上(默认使用Github管理我们的项目)如果需要,请安装项目环境,比如:node.js,yarn等进入项目目录,执行npm run build,开始构建项目构建成功之后…

linux取消线程的原理,浅析 Linux 进程与线程

简介进程与线程是所有的程序员都熟知的概念,简单来说进程是一个执行中的程序,而线程是进程中的一条执行路径。进程是操作系统中基本的抽象概念,本文介绍 Linux 中进程和线程的用法以及原理,包括创建、消亡等。进程创建与执行Linux…

linux查看注册表信息,linux下登录档及其查看方法

一、Linux 常见的登录档档名登录档可以帮助我们瞭解很多系统重要的事件,包括登入者的部分资讯,因此登录档的权限通常是设定为仅有 root 能够读取而已。 而由于登录档可以记载系统这麽多的详细资讯,所以啦,一个有经验的主机管理员会…

Linux系统openssl升级,在Linux系统上升级OpenSSL的方法

我是用的centos ,目前官方说受威胁的版本是1.0.1f, 1.0.1e, 1.0.1d, 1.0.1c, 1.0.1b, 1.0.1a, 1.0.1 。在openssl 1.0.1g版本中“ heartbleed”漏洞被修复。所有centos6.5的系统运行openssl 1.0.1e (openssl-1.0.1e-16.el6_5.4) 都会受到威胁,貌似只有6.…

linux系统建立文件系统,linux文件系统的建立

1根文件系统嵌入式Linux中都需要构建根文件系统,构建根文件系统的规则在FHS(Filesystem HierarchyStandard)文档中,下面是根文件系统顶层目录。目录内容bin存放所有用户都可以使用的、基本的命令。sbin存放的是基本的系统命令,它们用于启动系…

linux防火墙配置管理,Linux之Iptables防火墙管理与配置 -电脑资料

基本语法格式:iptables [ –t 表名 ] 命令选项 [ 链名 ] [ 条件匹配 ] [ –j 目标动作或跳转 ]Tip:若不指定表名,默认使用filter表,常用选项:-A:在指定链的末尾添加( –append )一条新规则。-D:…

linux双屏播放视频,Ubuntu Linux下双屏显示解决方案

Ubuntu从起后居然把Windows的设置给记住了。显示ok。我晕。以前倒是也有过这问题,在双系统情况下,外接键盘的灯会继承Windows的早就有心弄个显示器,把笔记本的外接上,倒不是说非要2个屏幕来工作如何如何?只是因为我的本…

d630 无线驱动 linux,fedora 8下DELL D630无线网卡驱动的安装

fedora 8下DELL D630无线网卡驱动的安装发布时间:2007-11-19 01:53:26来源:红联作者:Cantonese作者是dypang我的电脑是 DELL D630,无线网卡型号为 DELL wireless 1390 mini card。F8在 D630 上安装是很容易的,只是无线网卡的按照颇费了些周折。以下是我装…

鸟哥linux群,【鸟哥的linux私房菜-学习笔记】linux的帐号与群组

linux的帐号与群组使用者标识符: UID 与 GIDID 与账号的对应就在 /etc/passwd 当中;计算机只认得ID(即数字),并不能区别账号;每个登陆的使用者至少都会取得两个 ID ,一个是使用者 ID (User ID ,简称 UID)、…

linux网络编程 华清,Linux网络编程之套接字

一 :套接字属性套接字由域(domain),类型(type)和协议(protocol)三个属性确定其特性。1)套接字的域域指定套接字通信中使用的网络 介质,常见的套接字域是AF_INET,它指的是互联网络,许多LINUX局域网使用的都是该网络。服…