php学习笔记15:GD应用之水印图

GD图像处理应用案例:水印图

水印图的实现

水印图:watermark,在某个图片上增加一个透明的印记(马赛克)

水印图用途:版权操作.

1.制作图片水印原理:

水印图制作原理:将一个带有明显标志的图片放到另外一张需要处理的图片之上.

a.获取原图资源

b.获取水印图资源

c.合并图片(把水印图合到目标图上)

d.保存输出

e.清空资源

2.实现固定位置的水印图:例如左上角

a.获取原图资源

b.获取水印图资源

c.合并图片(把水印图合到目标图上):使用imagecopymerge()函数.

imagecopymerge — 拷贝并合并图像的一部分

格式:

imagecopymerge ( 目标图像资源 , 源图像资源 , 目标图起始点x , 目标图起始点y , 源图起始点x , 源图起始点y , 源图宽 , 源图高 , 透明度百分比 ) : bool

将 src_im 图像中坐标从 src_xsrc_y 开始,宽度为 src_w,高度为 src_h 的一部分拷贝到 dst_im 图像中坐标为 dst_x 和 dst_y 的位置上。两图像将根据 pct 来决定合并程度,其值范围从 0 到 100。当 pct = 0 时,实际上什么也没做,当为 100 时对于调色板图像本函数和imagecopy() 完全一样,它对真彩色图像实现了 alpha 透明

d.保存输出

e.清空资源

3.实现可选9个位置的水印图:封装制作水印图的函数

a.创建一个制作水印图的函数结构:

制作水印图需要提供多少条件?源图资源,水印图资源.(可能产生的)错误信息,水印(9个)位置选择,透明度.

b.结果是希望产生加载水印的效果图:

成功则返回文件保存名字;失败则返回false.但是需要告知错误原因:通过引用传参告知调用者.

C.水印效果图前提:源图和水印都存在

d.判断保存路径是否存在

e.打开源图和水印资源

  • (1)想办法确定用什么函数来打开图片资源:需要通过图片MIME类型确定,获取图片信息

  • (2). 通过MIME类型得到想要打开图片的函数:先设定1个数组进行匹配,匹配成功自动构造创建函数(保存函数),失败则提示错误.

(3)匹配数据:

参考:MIME参考手册 

部分MIME图片类型参考:

image/bmpbmp
image/cis-codcod
image/gifgif
image/iefief
image/jpegjpe
image/jpegjpeg
image/jpegjpg
image/pipegjfif
image/svg+xmlsvg
image/tifftif
image/tifftiff

 

(4)组合函数名字:建立原图资源/建立水印资源/建立最终效果图资源

(5)打开图片资源

f.合并图片资源:

(1)产生水印-位置需要计算.

(2)合并图片资源

g.保存水印图片和销毁资源

h.测试:函数调用的时候,可以通过结果判断操作是否成功

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值