php实现添加图片水印
实际运行时需要开启php 的gd2功能,运行环境php4.0以上(demo中的路径改为实际路径)
<?php
/*打开图片*/
//1.配置图片路径
$src="data:image/61.jpg"; //此处改为实际路径
//2.获取图片信息
$info=getimagesize($src);
//3.通过图片的编号获取获取图片的类型
$type=image_type_to_extension($info[2],false);
//4.在内存中创建一个和我们图像类型一样的图像
$fun="imagecreatefrom{$type}";
//5.把要操作的图片复制到内存中
$image=$fun($src);
/*操作图片*/
//1.设置水印路径
$image_Logo="image/logo/logo6.png"; //图片路径,此处改为实际路径
//2.获取水印图片的类型
$info_Logo=getimagesize($image_Logo);
//3.通过水印图片的编号获取水印图片的类型
$type_Logo=image_type_to_extension($info_Logo[2],false);
//4.在内存中创建一个和水印图片一样的图像
$fun1="imagecreatefrom{$type_Logo}";
//5.把水印图片复制到内存中
$logo=$fun1($image_Logo);
//6.给图片添加水印(合并图片)
/**
* imagecopymerge函数将两张图片拷贝到一起
*/
imagecopymerge($image, $logo, 280, 280, 0, 0, $info_Logo[0], $info_Logo[1],30);
//7.销毁水印图片
imagedestroy($logo);
/*输出图片*/
//1.在浏览器中输出图片
header("Content-Type:".$info['mime']);
$fun2="image{$type}";
$fun2($image);
//2.保存图片
$fun2($image,'image/61_1.jpg'); //第二个参数是图片的存储位置和名称
/*销毁图片*/
imagedestroy($image);
?>
php实现添加图片水印的更多相关文章
- Swift - 给图片添加图片水印(图片上绘制另一张图,并可设透明度)
我前面写了篇文章讲解如何给图片添加文字水印,而如果想要添加图片类型的水印也很简单,只要把原来代码里添加文字的部分改成图片即可. 1,效果图如下: (在图片左上角添加了一个半透明的logo图片) 2,为 ...
- javacpp-opencv图像处理之2:实时视频添加图片水印,实现不同大小图片叠加,图像透明度控制,文字和图片双水印
欢迎大家积极开心的加入讨论群 群号:371249677 (点击这里进群) javaCV图像处理系列: javaCV图像处理之1:实时视频添加文字水印并截取视频图像保存成图片,实现文字水印的字体.位置. ...
- python-批量添加图片水印
前言: 最近总是被无良公众号和培训机构拷贝文章,他们根本不会给你备注原文出处,这种行为真的让人不高兴,所以计划以后的文章都添加上自己的水印. 话不多说,直接上代码. 一.单张图片添加文字水印 # -* ...
- 利用iTextSharp组件给PDF文档添加图片水印,文字水印
最近在做关于PDF文档添加水印的功能,折腾了好久,终于好了.以下做个记录: 首先会用到iTextSharp组件,大家可以去官网下载,同时我也会在本文中附加进来. 代码中添加引用为: using S ...
- 利用canvas添加图片水印--直接上代码
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- php使用GD库实现图片水印和缩略图——给图片添加图片水印
今天呢,就来学习一下在php中使用PD库来实现对图片水印的文字水印方法,不需要PS哦! 首先,准备素材 (1)准备一张图片 (2)准备一张水印(最好是透明的,即背景是白色底) (3)准备一中字体(在电 ...
- asp .net 为图片添加图片水印 .
首先写好一个写入图片水印的类,先创建一个ImageWriter类库 (该类中有包含枚举类型和方法) using System; using System.Collections.Generic; ...
- 用imageMagick合成图片添加图片水印
用imageMagick合成图片的方式大致有三种, 使用convert命令加 +append或-append参数 使用convert命令加 -composite参数 直接使用composite命令来完 ...
- PHP给图片添加图片水印
涉及到的函数: 1.file_get_contents():用于将文件的内容读入到一个字符串中的首选方法.如果操作系统支持,还会使用内存映射技术来增强性能. 2.list():list() 函数用于在 ...
随机推荐
- Rails: No such file or directory - getcwd
这个的意思就是你从一个删除的目录里面运行实例:rails s
- 版本控制与vermagic
http://hychen.wuweig.org/blog/2009/10/09/rao-guo-linux-driver-vermagicjian-cha/ cd scripts grep 'dir ...
- 通过 Storyboard 快速搭建一系列连贯性的视图控制器
此例子只是一个简单的 Demo,这里没有过多介绍如何去实现,网上有很多关于 Storyboard 技术的介绍,请自行搜索. 效果如下: iPhone 5s iPhone 6 iPhone 6 ...
- IIS7/IIS7.5 二级域名伪静态设置方法
转载地址:http://www.admin5.com/article/20120107/402582.shtml
- 安卓开发笔记——探索EventBus
1.关于EventBus: 组件通讯在Android开发中是不可避免的,随着业务需求的复杂化,代码中需要我们去处理的业务逻辑难度也不断增大.例如多个Fragment之间的数据传递,Service与Ac ...
- 再说 c++11 内存模型
可见性与乱序 在说到内存模型相关的东西时,我们常常会说到两个名词:乱序与可见性,且两者经常交错着使用,容易给人错觉仿佛是两个不同的东西,其实不是这样,他们只是从不同的角度来描述一个事情,本质是相同的. ...
- [转]c#截取指定长度的字符串
/// <summary> /// 截取指定長度的字符串 /// </summary> /// <param name="s"></par ...
- JavaScript备忘录(1)——内置类型
JavaScript有一些内置类型,还有很多常用的内置的方法,本文稍作总结,以备查阅. 值类型 我的理解,值类型是分配在栈上的,而引用类型(当然也包括引用类型内部的值类型)是分配在堆上的.值类型是不可 ...
- 记一个dynamic的坑
创建一个控制台程序和一个类库, 在控制台创建一个匿名对象,然后再在类库中访问它,代码如下: namespace ConsoleApplication1 { class Program { static ...
- mount分区为读写属性
对于只读文件系统, 如果想要挂载为可读写的, 需要重新mount下, 如将config分区mount为读写的分区: mount -o remount,rw /config