php下图片文字混合水印与缩略图实现代码


Posted in PHP onDecember 11, 2009

一 imageCreateFrom* 图片载入函数
//针对不同的后缀名图片
imagecreatefromgif
imagecreatefromjpeg
imagecreatefrompng
imagecreatefromwbmp
imagecreatefromstring
使用格式:imagecreatefromgif("jjj.gif");
二 imagecopy 图片合并函数
imagecopy(destimage,simage,int x,int y,int src_x,int src_y,int src_w,int src_h);
destimage ---原始图片(大图片)
simage ---logo图片(小图片)
x ---原始图片的坐标
y ---
src_x ---logo图片的坐标
src_y ---
src_w ---logo图片的宽度
src_h ---logo图片的高度

三 imagecopyresized图片剪切函数
imagecopyresized(resource dst_image,resource src_image,int dst_x,int dst_y,int src_x,int src_y,int dst_w,int dst_h,int src_w,int src_h);
dst_image ---原始真彩图片
src_image ---原始图片
dst_x ---从什么位置起 一般为0
dst_y ---一般为0
src_x ---从什么地方开始剪切 一般为0
src_y ---一般为0
dst_w ---新建图片的宽度与高度
dst_h ---
src_w ---原始图片的宽度与高度
src_h ---

例题:
image.php

<?php 
/* 
* 这个php文件实现图片的水印与生成缩略图功能 
* 
*/ 
//这个没写上传功能,首先把图片放到项目的根目录 
//导入与解析图片 
$image = "img.jpg"; 
$img=GetImageSize($image); 
//判断图片的后缀名 
switch($img[2]){ 
case 1: 
$im=ImageCreateFromGIF($image); 
break; 
case 2: 
$im=ImageCreateFromJPEG($image); 
break; 
case 3: 
$im=ImageCreateFromPNG($image); 
break; 
} 
//解析图片 
$logo = "pic.jpg"; 
$pic=GetImageSize($logo); 
switch($pic[2]){ 
case 1: 
$im_pic=ImageCreateFromGIF($logo); 
break; 
case 2: 
$im_pic=ImageCreateFromJPEG($logo); 
break; 
case 3: 
$im_pic=ImageCreateFromPNG($logo); 
break; 
} 
//图片合成,也是制作水印 
imagecopy($im,$im_pic,0,500,0,0,100,75); 
//设置颜色 
$fc=imagecolorallocate($im,255,255,255); 
//首先要将文字转换成utf-8格式 
//$str=iconv("gb2312","utf-8","呵呵呵"); 
//加入中文水印 
imagettftext($im,12,0,20,20,$fc,"simkai.ttf","我的QQ:260954520"); 
//建一个原始真彩图片 
$new_img=imagecreatetruecolor(50,40); 
//剪切图片 
imagecopyresized($new_img,$im,0,0,0,0,50,40,$img[0],$img[1]); 
//输出图片 
header("Content-type:image/jpeg"); 
//剪切后的小图,可以像下面一个用判断生成小图 
imagejpeg($new_img); 
//生成一个加水印的图片 
/* 
if(imagejpeg($im,"新的图片.jpg")){ 
echo "水印成功"; 
} 
*/ 
?>
PHP 相关文章推荐
使用PHP模拟HTTP认证
Oct 09 PHP
优化php效率,提高php性能的一些方法
Mar 24 PHP
PHP 删除文件与文件夹操作 unlink()与rmdir()这两个函数的使用
Jul 17 PHP
php sybase_fetch_array使用方法
Apr 15 PHP
PHP获取windows登录用户名的方法
Jun 24 PHP
PHP编写RESTful接口
Feb 23 PHP
YII Framework框架教程之国际化实现方法
Mar 14 PHP
PHP生成可点击刷新的验证码简单示例
May 13 PHP
php检测mysql表是否存在的方法小结
Jul 20 PHP
PHP+Redis 消息队列 实现高并发下注册人数统计的实例
Jan 29 PHP
thinkPHP中U方法加密传递参数功能示例
May 29 PHP
php实现数字补零的方法总结
Sep 12 PHP
一个比较简单的PHP 分页分组类
Dec 10 #PHP
PHP 采集程序中常用的函数
Dec 09 #PHP
Php 构造函数construct的前下划线是双的_
Dec 08 #PHP
PHP 读取文件内容代码(txt,js等)
Dec 06 #PHP
PHP 用数组降低程序的时间复杂度
Dec 04 #PHP
PHP 柱状图实现代码
Dec 04 #PHP
Ajax+PHP边学边练 之五 图片处理
Dec 03 #PHP
You might like
使用ThinkPHP自带的Http类下载远程图片到本地的实现代码
2011/08/02 PHP
php set_time_limit()函数的使用详解
2013/06/05 PHP
如何用C语言编写PHP扩展的详解
2013/06/13 PHP
table标签的结构与合并单元格的实现方法
2013/07/24 PHP
PHP中strlen()和mb_strlen()的区别浅析
2014/06/19 PHP
分享10段PHP常用代码
2015/11/11 PHP
利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解
2017/08/30 PHP
js动态改变select选择变更option的index值示例
2014/07/10 Javascript
IE10中flexigrid无法显示数据的解决方法
2015/07/26 Javascript
js简单倒计时实现代码
2016/04/30 Javascript
node.js版本管理工具n无效的原理和解决方法
2016/11/24 Javascript
js判断一个字符串是以某个字符串开头的简单实例
2016/12/27 Javascript
angularjs指令之绑定策略(@、=、&amp;)
2017/04/13 Javascript
EasyUI中的dataGrid的行内编辑
2017/06/22 Javascript
vue2 router 动态传参,多个参数的实例
2017/11/10 Javascript
vue scroller返回页面记住滚动位置的实例代码
2018/01/29 Javascript
Python中用Descriptor实现类级属性(Property)详解
2014/09/18 Python
详解Tensorflow数据读取有三种方式(next_batch)
2018/02/01 Python
Python实现快速傅里叶变换的方法(FFT)
2018/07/21 Python
Python字典的核心底层原理讲解
2019/01/24 Python
Python弹出输入框并获取输入值的实例
2019/06/18 Python
安装docker-compose的两种最简方法
2019/07/30 Python
Python利用 utf-8-sig 编码格式解决写入 csv 文件乱码问题
2020/02/21 Python
Python Merge函数原理及用法解析
2020/09/16 Python
领先的英国注册在线药房 :Simply Meds Online
2019/03/28 全球购物
在使用非全零作为空指针内部表达的机器上, NULL是如何定义
2014/11/09 面试题
大学班级干部的自我评价分享
2014/02/10 职场文书
知识竞赛主持词
2014/03/26 职场文书
安全生产大检查方案
2014/05/07 职场文书
企业管理标语
2014/06/10 职场文书
汉语言文学专业求职信
2014/06/19 职场文书
自强自立美德少年事迹材料
2014/08/16 职场文书
冬季作息时间调整通知
2015/04/24 职场文书
公司新员工欢迎词
2015/09/30 职场文书
《中彩那天》教学反思
2016/02/24 职场文书
Java Kafka 消费积压监控的示例代码
2021/07/01 Java/Android