PHP图像处理 imagestring添加图片水印与文字水印操作示例


Posted in PHP onFebruary 06, 2020

本文实例讲述了PHP图像处理 imagestring添加图片水印与文字水印操作。分享给大家供大家参考,具体如下:

imagestring添加图片水印

<?php
header("Content-Type: text/html;charset=utf-8");
//指定图片路径
$src = '001.png';
//获取图片信息
$info = getimagesize($src);
//获取图片扩展名
$type = image_type_to_extension($info[2],false);
//动态的把图片导入内存中
$fun = "imagecreatefrom{$type}";
$image = $fun('001.png');
//指定字体颜色
$col = imagecolorallocatealpha($image,0,0,0,0); //R,G,B,透明度
//指定字体内容
$content = 'zhangsan';
//给图片添加文字
imagestring($image,5,190,255,$content,$col);
//指定字体内容
$content = '123456789';
//给图片添加文字
imagestring($image,5,190,285,$content,$col);
//指定字体内容
$content = '98.6';
//给图片添加文字
imagestring($image,5,190,320,$content,$col);
//指定输入类型
header('Content-type:'.$info['mime']);
//动态的输出图片到浏览器中
$func = "image{$type}";
$func($image);
//销毁图片
imagedestroy($image);
?>

这里我们使用了imagestring方法来添加文字,但是imagestring并不支持中文字符,添加中文可以使用imagettftext来添加。

效果图:

PHP图像处理 imagestring添加图片水印与文字水印操作示例

imagettftext添加中文水印

前面写了PHP图像处理 imagestring添加图片水印,但是imagestring方法不能添加中文,所以现在使用imagettftext这个方法来添加中文。相比imagestring,imagettftext需要指定字体文件。

<?php
//1. 打开要加水印的图片
$image = imagecreatefromjpeg("001.jpg");
//2. 在画布中绘制图像
$bai = imagecolorallocate($image, 255, 255, 255);
//3. 设置水印文字
$text = 'abc我是水印123,。、
 !@#dasdasda1231';
//使用指定的字体文件绘制文字
//参数2:字体大小
//参数3:字体倾斜的角度
//参数4、5:文字的x、y坐标
//参数6:文字的颜色
//参数7:字体文件
//参数8:绘制的文字
imagettftext($image, 50, 0, 280, 1000, $bai, 'STXINGKA.TTF', $text);
//4. 在浏览器直接输出图像资源
header("Content-Type:image/jpeg");
imagejpeg($image);
//5. 销毁图像资源
imagedestroy($image);
?>

效果图:

PHP图像处理 imagestring添加图片水印与文字水印操作示例

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
如何使用PHP中的字符串函数
Nov 24 PHP
PHP 字符串加密函数(在指定时间内加密还原字符串,超时无法还原)
Apr 28 PHP
php启用zlib压缩文件的配置方法
Jun 12 PHP
PHP实现邮件群发的源码
Jun 18 PHP
php中生成随机密码的自定义函数代码
Oct 21 PHP
PHP常用函数和常见疑难问题解答
Mar 05 PHP
PHP判断浏览器、判断语言代码分享
Mar 05 PHP
php通过获取头信息判断图片类型的方法
Jun 26 PHP
CI分页类首页、尾页不显示的解决方法
Mar 28 PHP
PHP函数nl2br()与自定义函数nl2p()换行用法分析
Apr 02 PHP
[原创]PHP实现SQL语句格式化功能的方法
Jul 28 PHP
Laravel框架集合用法实例浅析
May 14 PHP
PHP实现常用排序算法的方法
Feb 05 #PHP
PHP ElasticSearch做搜索实例讲解
Feb 05 #PHP
PHP实现新型冠状病毒疫情实时图的实例
Feb 04 #PHP
php post换行的方法
Feb 03 #PHP
PHP中mysqli_get_server_version()的实例用法
Feb 03 #PHP
php把文件设置为插件的技巧方法
Feb 03 #PHP
PHP如何使用JWT做Api接口身份认证的实现
Feb 03 #PHP
You might like
使用php语句将数据库*.sql文件导入数据库
2014/05/05 PHP
WebQQ最新登陆协议的用法
2014/12/22 PHP
php返回字符串中所有单词的方法
2015/03/09 PHP
Symfony2实现在doctrine中内置数据的方法
2016/02/05 PHP
PHP二维数组排序简单实现方法
2016/02/14 PHP
thinkphp框架类库扩展操作示例
2019/11/26 PHP
JavaScript中使用正则匹配多条,且获取每条中的分组数据
2010/11/30 Javascript
jQuery Tab插件 用于在Tab中显示iframe,附源码和详细说明
2011/06/27 Javascript
js实现仿爱微网两级导航菜单效果代码
2015/08/31 Javascript
JS实现仿Windows7风格的网页右键菜单效果代码
2015/09/11 Javascript
javascript事件委托的用法及其好处简析
2016/04/04 Javascript
浅谈vue-cli加载不到dev-server.js的解决办法
2017/11/24 Javascript
Angularjs Promise实例详解
2018/03/15 Javascript
使用js实现将后台传入的json数据放在前台显示
2018/08/06 Javascript
使用Nuxt.js改造已有项目的方法
2018/08/07 Javascript
基于javascript的拖拽类封装详解
2019/04/19 Javascript
vue+element项目中过滤输入框特殊字符小结
2019/08/07 Javascript
基于Vue CSR的微前端实现方案实践
2020/05/27 Javascript
openlayers实现地图测距测面
2020/09/25 Javascript
[01:02:25]2014 DOTA2华西杯精英邀请赛5 24 NewBee VS VG
2014/05/25 DOTA
[26:21]浴火之凤-TI4世界冠军Newbee战队纪录片
2014/08/07 DOTA
Python实现动态加载模块、类、函数的方法分析
2017/07/18 Python
Win10下python 2.7.13 安装配置方法图文教程
2018/09/18 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
2019/08/15 Python
Python3将jpg转为pdf文件的方法示例
2019/12/13 Python
django实现HttpResponse返回json数据为中文
2020/03/27 Python
解决Python spyder显示不全df列和行的问题
2020/04/20 Python
Python控制鼠标键盘代码实例
2020/12/08 Python
CSS3圆角边框和边界图片效果实例
2016/07/01 HTML / CSS
令人啧啧称赞的经理推荐信
2013/11/07 职场文书
护理专业自荐书
2014/06/04 职场文书
布达拉宫导游词
2015/02/02 职场文书
请病假条范文
2015/08/17 职场文书
2016大学生社会实践心得体会范文
2016/01/14 职场文书
导游词之唐山景点
2019/12/18 职场文书
JavaScript实现栈结构详细过程
2021/12/06 Javascript