PHP Imagick文字加阴影(外发光)
PHP Imagick文字加阴影(外发光)
<pre>
$canvas = new \Imagick();
        $canvas->newImage(500, 200, 'white');
        $canvas->setImageFormat('png');
$text = new \Imagick();
        $text->newImage(500, 200, 'none');
        $text->setImageFormat('png');
$draw = new \ImagickDraw();
        $draw->setFillColor(new \ImagickPixel('#f00'));
        $draw->setFontSize(50);
        $draw->annotation(100, 60, 'welcome');
        $text->drawImage($draw);
$draw->setFillColor(new \ImagickPixel('#fff'));
        $draw->setFontSize(50);
        $draw->annotation(100, 120, 'welcome');
        $text->drawImage($draw);
$shadow_layer = $text->clone();
        $shadow_layer->setImageBackgroundColor(new \ImagickPixel('#555'));
        $shadow_layer->shadowImage(80, 0.8, 0, 0);
        $shadow_layer->compositeImage($text, \Imagick::COMPOSITE_OVER, 0, 0);
        $canvas->compositeImage($shadow_layer, \imagick::COMPOSITE_DEFAULT, 0, 0);
        $canvas->writeImage("test_0.jpg"); //直接写入test_0.jpg文件
       header("Content-type: image/{$canvas->getImageFormat()}");
       echo $canvas->getImageBlob();
</pre>
ps:
drawImage $text->drawImage($draw); 这个$draw是文字对象  $text可以是图片可以是空白画布
setImageBackgroundColor 设置阴影颜色
shadowImage 第一个参数是透明度0~255   第二个参数就是值越大就是扩散越大  第三和第四就是x和y的阴影位移
compositeImage 这个是合并图片
$shadow_layer->compositeImage($text, Imagick::COMPOSITE_OVER, 0, 0 );   //$text合并到$shadow_layer
$canvas->compositeImage($shadow_layer, imagick::COMPOSITE_DEFAULT, 0, 0);  //$shadow_layer 合并到$canvas
PHP Imagick文字加阴影(外发光)的更多相关文章
- android 仿小米icon处理,加阴影和边框
		本人自己在做一个launcher,所以须要处理icon,加阴影和边框等.这仅仅是一种处理方法,其它的处理方法类似. 源码: https://github.com/com314159/LauncherI ... 
- 向输出到console的文字加样式
		Chrome 控制台新玩法-向输出到console的文字加样式 有兴趣的同学可以文章最后的代码复制贴到控制台玩玩. Go for Code 在正常模式下,一般只能向console 控制台输出简单的 ... 
- WPF控件加阴影模糊问题
		原文:WPF控件加阴影模糊问题 不能直接把阴影加在控件上 应该加在控件的同级兄弟节点上,覆盖在底下就不会模糊了 
- ios 动画的时候 如果加阴影 会卡顿的
		记录一下今天某群的聊天记录,一些算是经验吧,以后有用的.呵呵~ 动画的时候 如果加阴影 会卡顿的 A 10:59:13 _toView.layer.shadowColor ... 
- Chrome 控制台新玩法-向输出到console的文字加样式
		Chrome 控制台新玩法-向输出到console的文字加样式 有兴趣的同学可以文章最后的代码复制贴到控制台玩玩. Go for Code 在正常模式下,一般只能向console 控制台输出简单的文字 ... 
- Android5.0以后,materialDesign风格的加阴影和裁剪效果
		5.0以后,materialDesign风格,出现了立体这种概念,高光,阴影,也就是Z轴,凸显层次:同时,裁剪view也变得方便简单了很多. 1,先说说阴影的实现. 方案1:在xml中设置 xml中设 ... 
- css3-11 如何设置文字的阴影
		css3-11 如何设置文字的阴影 一.总结 一句话总结:text-shadow属性.text-shadow:3px 3px 3px #f0f; 1.text-shadow属性的参数依次是什么意思? ... 
- 给WPF文字加多条修饰线
		原文:给WPF文字加多条修饰线 这是上篇WPF中的文字修饰--上划线,中划线,基线与下划线 最后留给朋友思考的问题. 效果图: XAML代码:<Page xmlns="http://s ... 
- php imagick 文字居中的方法
		php imagick 文字居中的方法<pre> public function getwenzinfo($nickName) { $nickNamelen = mb_strlen($ni ... 
随机推荐
- Boggle Game
			Description Given a board which is a 2D matrix includes a-z and dictionary dict, find the largest co ... 
- 牛客网CSP-S提高组赛前集训营Round4
			牛客网CSP-S提高组赛前集训营 标签(空格分隔): 题解 算法 模拟赛 题目 描述 做法 \(BSOJ6377\) 求由\(n\)长度的数组复制\(k\)次的数组里每个连续子序列出现数字种类的和 对 ... 
- MySQL的简单概念及软件安装
			数据库的简介 一.数据库的基本概念:数据.数据库.数据库管理系统.数据库系统 数据:数据(Data)是用来记录信息的可识别符号,是信息的具体表现形式. 数据库:(1)数据库(Database,DB)是 ... 
- linux 下安装git的步骤方法
			①.获取github最新的Git安装包下载链接,进入Linux服务器,执行下载,命令为: wget https://github.com/git/git/archive/v2.17.0.tar.gz ... 
- Numpy | 12 数组操作
			Numpy 中包含了一些函数用于处理数组,大概可分为以下几类: 修改数组形状 翻转数组 修改数组维度 连接数组 分割数组 数组元素的添加与删除 一.修改数组形状 函数 描述 reshape 不改变数据 ... 
- 关于windows使用git警告LF will be replaced by CRLF
			由于windows平台的换行符是CRLF,但是我们引用别人的类库可能是在unix平台开发的,那么代码中的换行符是LF,而git默认会做这个转换,所以在用git提交这些代码时会有警告:LF will b ... 
- nginx location配置说明
			nginx location语法规则:location [=|~|~*|^~] /uri/ { … } nginx的location匹配的变量是$uri 规则优先级 = 高于 ^~ 高于 ~* ... 
- 轮播模仿臭美APP,vue,swiper
			介绍:轮播使用了swiper,重要用于移动端滑动,详情可查看官网 1.首先用npm安装 npm install swiper 2.main.js 中引入CSS import 's ... 
- GuavaCache简介(一)是轻量级的框架 少量数据,并且 过期时间相同 可以用 GuavaCache
			还有一篇文章是讲解redis 如何删除过期数据的,参考:Redis的内存回收策略和内存上限(阿里) 划重点:在GuavaCache中,并不存在任何线程!它实现机制是在写操作时顺带做少量的维护工作(如清 ... 
- Kali填坑
			Kali填坑 由于种种原因,又又又又又安了一遍虚拟机,增强功能时又又又遇到很多问题,在这里总结一下 使用apt-get install安装文件时,资源占用.描述为:E: 无法获得锁 /var/lib/ ... 
