PHP 水印设置
一、图片水印
<?php /* 覆盖水印 */
$image = ImageCreateFromJPEG('memcached.jpg');
$stamp = ImageCreateFromPNG('php.png'); $margin = ['right'=>10, 'bottom'=>10]; // 距离边界的偏移量
$opacity = 50; // 不透明值 // @param 目标(图像)
// @param 源(水印)
// @param 水印 x 坐标:目标图像的宽度 - 水印的宽度 - 偏移量
// @param 水印 y 坐标:目标图像的高度 - 水印的高度 - 偏移量
// @param 后 4 个参数作为水印的大小
// @param 不透明度
ImageCopyMerge($image, $stamp, imagesx($image) - imagesx($stamp) - $margin['right'],
imagesy($image) - imagesy($stamp) - $margin['bottom'],
0, 0, imagesx($stamp), imagesy($stamp), $opacity
); header('Content-type: image/png');
ImageJpeg($image);
ImageDestroy($image);
ImageDestroy($stamp);
说明:
ImageCopyMerge() 函数允许将一个图像放置在另一个图像上面,它的最后一个参数用来设置不透明度(0 - 100 之间,越小水印越淡)
第 5、6、7、8 个参数表示水印的大小(0,0,ImageSX($stamp),ImageSY($stamp) 会复制整个水印图像)
为了避免在脚本中硬编码写入图像的大小,可以用 ImageSX() 和 ImageSY() 函数动态地计算图像大小
二、文字水印
<?php /* 覆盖水印 */
$image = ImageCreateFromJPEG('memcached.jpg');
$stamp = ImageCreateFromPNG('php.png'); $margin = ['right'=>10, 'bottom'=>10]; // 距离边界的偏移量
$opacity = 50; // 不透明值 // 文字水印
$w = 200;
$h = 100;
$stamp = ImageCreateTrueColor($w, $h);
ImageFilledRectangle($stamp, 0, 0, $w - 1, $h - 1, 0xFFFFFF); // 文本
$color = 0x000000;
ImageString($stamp, 4, 10, 10, 'I LOVE PHP', $color);
ImageString($stamp, 4, 10, 28, 'I LOVE DEVELOPING', $color);
ImageString($stamp, 4, 10, 46, 'I LOVE LIFE', $color); // @param 目标(图像)
// @param 源(水印)
// @param 水印 x 坐标:目标图像的宽度 - 水印的宽度 - 偏移量
// @param 水印 y 坐标:目标图像的高度 - 水印的高度 - 偏移量
// @param 后 4 个参数作为水印的大小
// @param 不透明度
ImageCopyMerge($image, $stamp, imagesx($image) - imagesx($stamp) - $margin['right'],
imagesy($image) - imagesy($stamp) - $margin['bottom'],
0, 0, imagesx($stamp), imagesy($stamp), $opacity
); header('Content-type: image/png');
ImageJpeg($image);
ImageDestroy($image);
ImageDestroy($stamp);
参考:
<PHP Cookbook>3'rd
PHP 水印设置的更多相关文章
- 逆天通用水印支持Winform,WPF,Web,WP,Win10。支持位置选择(9个位置 ==》[X])
常用技能:http://www.cnblogs.com/dunitian/p/4822808.html#skill 逆天博客:http://dnt.dkil.net 逆天通用水印扩展篇~新增剪贴板系列 ...
- 介绍 Visifire 常用属性的设置
转载自http://www.cnblogs.com/xinyus/p/3422198.html 主要介绍 Visifire 常用属性的设置,用来生成不同样式的图例 设置Chart的属 //设置titl ...
- JAVA实用案例之水印开发
写在最前面 上周零零碎碎花了一周的时间研究水印的开发,现在终于写了个入门级的Demo,做下笔记同时分享出来供大家参考. Demo是在我上次写的 JAVA实用案例之文件导入导出(POI方式) 框架基础上 ...
- JAVA实用案例之图片水印开发
写在最前面 上周零零碎碎花了一周的时间研究水印的开发,现在终于写了个入门级的Demo,做下笔记同时分享出来供大家参考. Demo是在我上次写的 JAVA实用案例之文件导入导出(POI方式) 框架基础上 ...
- 织梦dedecms dede plus文件作用介绍及安全设置
一.安装设置 1.默认的后台模块中心有很多模块. 这里除了"友情链接"模块其他都可以删掉.在后台可以先卸载再删除. 2.如果是一开始就不想要的话,安装版plus目录下进行如下操作. ...
- [原创]超强C#图片上传,加水印,自动生成缩略图源代码
<%@ Page Language=“C#“ AutoEventWireup=“true“ %> <%@ Import Namespace=“System“ %> <%@ ...
- PDF文件添加二维码水印教程
maven配置iText的jar,主要不是所有私服都有iText的jar,maven仓库没有的,可以去https://mvnrepository.com/artifact/com.itextpdf/i ...
- 使用Html5对图片加水印及多图合成
转载请注明原地址: ...
- 如何在PDF文档上加水印
当我们需要传输一些比较重要的文件时,往往会选择将文档转换为PDF文件,避免其他人复制.更改文档的内容. pdfFactory不仅可以为用户提供快速创建PDF的功能,同时还提供了添加水印的功能.有了水印 ...
随机推荐
- linux常用命令-文件搜索命令-locate,which,whereis,grep
locate 目录或文件名 -i 查找的时候不区分大小写 这个类似everything,速度比find快很多,因为这个命令搜索的是它维护的文件资料库,文件资料库是var/lib/mlocate/mlo ...
- [BZOJ1604][Usaco2008 Open]Cow Neighborhoods 奶牛的邻居
[BZOJ1604][Usaco2008 Open]Cow Neighborhoods 奶牛的邻居 试题描述 了解奶牛们的人都知道,奶牛喜欢成群结队.观察约翰的N(1≤N≤100000)只奶牛,你会发 ...
- 2016年11月24日--面向对象、C#小复习
面对对象就是:把数据及对数据的操作方法放在一起,作为一个相互依存的整体——对象.对同类对象抽象出其共性,形成类.类中的大多数数据,只能用本类的方法进行处理.类通过一个简单的外部接口与外界发生关系,对象 ...
- Proj.4坐标系统创建参数
Proj.4坐标系统创建参数 本文由乌合之众lym瞎编,欢迎转载blog.cnblogs.net/oloroso 本文原文地址(https://github.com/OSGeo/proj.4/wiki ...
- jquery手写实现单页滚动导航
效果说明:点击tab导航,页面滑动到下方相应板块.并且当页面通过鼠标滚动下去时,上方的tab也可以自动切换到当前位置的板块上. 代码说明:js中对两个动作分别写,一个是tab点击下滑到相应板块位置:一 ...
- sqlserver中分区函数 partition by的用法
partition by关键字是分析性函数的一部分,它和聚合函数(如group by)不同的地方在于它能返回一个分组中的多条记录,而聚合函数一般只有一条反映统计值的记录, partition by ...
- servlet 访问流程
- 我与A协
大学毕业以后发现离曾经的圈子越来越远,非常怀念原来在A协和大家一起奋斗的日子,在这里写一篇文章,献给有很多美好回忆的A协,也献给渐渐远离A协的我. 首先,回顾一下我为什么会参与到A协的建设工作中来.我 ...
- Spring Schedule 任务调度实现
我们都知道任务调度可以用Quartz,但对于简单的定时任务,可以直接用Spring内置的Schedule来实现.可以由两种方式,注释+XML配置 注解方式: 注解也要先在sping.xml配置文件中配 ...
- 使用 CoordinatorLayout 实现复杂联动效果
GitHub 地址已更新: unixzii / android-FancyBehaviorDemo CoordinatorLayout 是 Google 在 Design Support 包中提供的一 ...