浅析PHP水印技术

yipeiwu_com6年前PHP代码库
一直以来对PHP对象处理不是很熟悉,以前都是在用的时候才找手册的。今天有人在phpchina论坛上问到水印的相关问题,恰好我也想学习下,于是研究了下PHP实现图片水印的实现。

  查找手册,发现PHP的GD库真的功能很强大很容易实现水印功能。水印其实就是在合并两个图片。对于水印文字同样可以实现。

  我提供简单的学习实例,很简单,主要为了了解原理。

  两张图片:1、photo.jpg被加水印的图片
            点击在新窗口中浏览此图片
            2、source.gif水印图片
            点击在新窗口中浏览此图片

   下面代码主要实现水印功能。
 

header("Content-type: image/jpeg");
$filename='../src/images/photo.jpg';
$im=imagecreatefromjpeg($filename);
$s=imagecreatefromgif('../src/images/source.gif');
imagecopymerge($im,$s,0,0,0,0,132,27,60);
imagejpeg($im);
   

   水印结果如下:
点击在新窗口中浏览此图片

   呵呵,详细的功能你可以自己去实现啦。

相关文章

学习php设计模式 php实现门面模式(Facade)

学习php设计模式 php实现门面模式(Facade)

一、意图 为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层次的接口,使得子系统更加容易使用【GOF95】 外部与子系统的通信是通过一个门面(Facade)对象进行。...

php实现的简易扫雷游戏实例

本文实例讲述了php实现的简易扫雷游戏。分享给大家供大家参考。具体如下: <?php $init = $_POST["init"];//game restart $...

php修改文件上传限制方法汇总

PHP默认的上传限定是最大2M,想上传超过此设定的文件,需要调整PHP、apache等的一些参数。下面,我们简要介绍一下PHP文件上传涉及到的一些参数: file_uploads :是否...

PHP Swoole异步Redis客户端实现方法示例

PHP Swoole异步Redis客户端实现方法示例

本文实例讲述了PHP Swoole异步Redis客户端实现方法。分享给大家供大家参考,具体如下: 使用版本:1.8.0及以上 使用条件: 1.开启async-redis php --...

PHP 杂谈《重构-改善既有代码的设计》之二 对象之间搬移特性

PHP 杂谈《重构-改善既有代码的设计》之二 对象之间搬移特性

思维导图 索引: Ø Move Method(搬移函数) Ø Move Field (搬移值域) Ø Extract Class...