图像添加logo水印函数
<?php
//图像添加水印函数
/**
*为一张图片添加上一个logo水印(以保存新图片的方式实现)
*@param string $picname 被缩放的处理图片源
*@param int $logo 水印图片
*@param string $pre 缩放后图片的前缀名
*@return $string 返回后的图片名称() 如a.jpg->n.jpg
*
**/
function imageUpdateLogo($picname,$logo,$pre="n_"){
$picnameinfo=getimageSize($picname);//获取图片源的基本信息
$logoinfo=getimageSize($logo);//获取logo图片源的基本信息 //根据图片类型创建出对应的图片源
switch($picnameinfo[2]){
case 1://gif
$im=imagecreatefromgif($picname);
break;
case 2://jpg
$im=imagecreatefromjpeg($picname);
break;
case 3://png
$im=imagecreatefrompng($picname);
break;
default:
die("图像类型错误");
} //根据logo图片类型创建对应的图片源
switch($logoinfo[2]){
case 1://gif
$logoim=imagecreatefromgif($logo);
break;
case 2://jpg
$logoim=imagecreatefromjpeg($logo);
break;
case 3://png
$logoim=imagecreatefrompng($logo);
break;
default:
die("图像类型错误");
}
//执行图片水印处理
imagecopyresampled($im,$logoim,$picnaeinfo[0]=$logoinfo[0],$picnaeinfo[1]=$logoinfo[1],0,0,$logoinfo[0],$logoinfo[1],$logoinfo[0],$logoinfo[1]);
//输出图像(根据源图像的类型,输出为对应的类型)
$picinfo=pathinfo($picname);//解析源图像的名字和路径信息
$newpicname=$picinfo["dirname"]."/".$pre.$picinfo["basename"];
switch($picnameinfo[2]){
case 1:
imagegif($im,$newpicname);
break;
case 2:
imagejpeg($im,$newpicname);
break;
case 3:
imagepng($im,$newpicname);
break;
}
//释放图片资源
imagedestroy($im);
imagedestroy($logoim);
//返回结果
return $newpicname;
}
// 测试成功
echo imageUpdateLogo("images/8.14.jpg","images/bg_00.jpg"); // 返回的结果为 images/n_8.14.jpg
?>
图像添加logo水印函数的更多相关文章
- PHP图片等比缩放,并添加Logo水印特定代码和盯
<? php //PHP图片等比缩放,并添加Logo水印 --->百度 "美日汇" /** * 等比缩放函数(以保存的方式实现) * @param string $pi ...
- 给图像添加logo
#include <opencv2\opencv.hpp>#include"ProcessPixels.h"using namespace cv;using names ...
- javacpp-opencv图像处理之2:实时视频添加图片水印,实现不同大小图片叠加,图像透明度控制,文字和图片双水印
欢迎大家积极开心的加入讨论群 群号:371249677 (点击这里进群) javaCV图像处理系列: javaCV图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体.位置. ...
- php基础之gd图像生成、缩放、logo水印和简单验证码实现
gd库是php最常用的图片处理库之一(另外一个是imagemagick),可以生成图片.验证码.水印.缩略图等等.要使用gd库首先需要开启gd库扩展,windows系统下需要在php.ini中将ext ...
- javacpp-opencv图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体、位置、大小、粗度、翻转、平滑等操作
欢迎大家积极开心的加入讨论群 群号:371249677 (点击这里进群) javaCV图像处理系列: javaCV图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体.位置. ...
- 给pdf文件添加防伪水印logo(附工程源码下载)
pdf添加水印logo这种需求场景确实很少,有些时候一些销售单据生成pdf添加一个水印logo,做一个简单的防伪效果,虽然实际上并没有太大作用,但是产品经理说要,巴拉巴拉--省略一万字. 下面将源码分 ...
- 【PHP】使用GD库实现 图像生成、缩放、logo水印和简单验证码
gd库是php最常用的图片处理库之一(另外一个是imagemagick),可以生成图片.验证码.水印.缩略图等等.要使用gd库首先需要开启gd库扩展, windows系统下需要在php.ini中将ex ...
- php基础 gd图像生成、缩放、logo水印和验证码
gd库是php最常用的图片处理库之一(另外一个是imagemagick),可以生成图片.验证码.水印.缩略图等等. 图像生成 <?php /* 用windows画图板画图 1.新建空白画布(指定 ...
- 图片的等比缩放和Logo水印
/** * 等比缩放函数(以保存的方式实现) * @param string $picname 被缩放的处理图片源 * @param int $maxx 缩放后图片的最大宽度 * @param int ...
随机推荐
- 【BZOJ1901】Zju2112 Dynamic Rankings 主席树+树状数组
[BZOJ1901]Zju2112 Dynamic Rankings Description 给定一个含有n个数的序列a[1],a[2],a[3]……a[n],程序必须回答这样的询问:对于给定的i,j ...
- Activity工作流入门之HelloWorld
Activity的在线安装地址为:http://www.activiti.org/designer/update/ 打开Eclipse -> Help -> Install New Sof ...
- 线段树(成段更新,区间求和lazy操作 )
hdu1556 Color the ball Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/O ...
- Linux 搭建Nginx并添加配置 SSL 证书
1. 安装准备 1.1 gcc安装 安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装: [root@nginx ~]# yum -y i ...
- Morris InOrder Traverse Binary Tree 无需使用递归和栈
今天在切leetcode的时候看到一个Morris算法,用来中序遍历二叉树,非递归,O(1)空间.觉得很强大.记录一下. 基本思想是利用了Threaded Binary Tree. 步骤如下: cur ...
- jquery插件方式实现table查询功能
1.写插件部分,如下: ;(function($){ $.fn.plugin = function(options){ var defaults = { //各种属性,各种参数 } var optio ...
- JSP教程
http://www.runoob.com/jsp/jsp-tutorial.html
- windows 文件查找 大小:>250M
win7怎么快速查找大文件_百度经验 https://jingyan.baidu.com/article/acf728fd299ffff8e510a333.html
- PHP的线性安全和非线性安全的区别
从2000年10月20日发布的第一个Windows版的PHP3.0.17开始的都是线程安全的版本,这是由于与Linux/Unix系统是采用多进程的工作方式不同的是Windows系统是采用多线程的工作方 ...
- uchome 缓存生成
一.uchome的缓存目录 ---------data此目录要有777权限 (1)模板文件缓存机制 1:在要显示的页面通过include template($name) 语句来包含被编译后的模板文件 ...