php为图片添加文字和图片水印

<?php

/*给图片加文字和图片水印的方法*/
$dst_path = './1.png'; //选用添加的原图
$dst = imagecreatefromstring(file_get_contents($dst_path));

//将背景图拷贝到原图上面
$src_image_1 = imagecreatefromstring(file_get_contents('./550x110.png'));
//获取图片的宽高
$src_image_width_1 = imagesx($src_image_1); //宽
$src_imageheight_1 = imagesy($src_image_1); //高

$src_image_2 = imagecreatefromstring(file_get_contents('./550x430.png'));
//获取图片的宽高
$src_image_width_2 = imagesx($src_image_2); //宽
$src_imageheight_2 = imagesy($src_image_2); //高
/**
* imagecopy 参数注释
* $dst 需要处理的原始图片资源
* $src_image_1 需要复制到图片上了另一资源图片
* 100 420 原始图片的x坐标开始复制 原始图片的y坐标开始复制
* 从0,0 目标图片的x,y坐标开始复制 到 src_image_width_1 src_imageheight_1 坐标结束
*/
imagecopy($dst, $src_image_1, 100, 420, 0, 0, $src_image_width_1, $src_imageheight_1);
imagecopy($dst, $src_image_2, 100, 540, 0, 0, $src_image_width_2, $src_imageheight_2);


/*imagecreatefromstring()--从字符串中的图像流新建一个图像,返回一个图像标示符,其表达了从给定字符串得来的图像
图像格式将自动监测,只要php支持jpeg,png,gif,wbmp,gd2.*/
$font = './3.ttf';
$black = imagecolorallocate($dst, 255, 255, 255);
imagefttext($dst, 60, 0, 170, 510, $black, $font, 'Angle Badud');
imagefttext($dst, 370, 0, 140, 950, $black, $font, '01');
/*
imagefttext($img,$size,$angle,$x,$y,$color,$fontfile,$text)
$img由图像创建函数返回的图像资源
size要使用的水印的字体大小
angle(角度)文字的倾斜角度,如果是0度代表文字从左往右,如果是90度代表从上往下
x,y水印文字的第一个文字的起始位置
color是水印文字的颜色
fontfile,你希望使用truetype字体的路径
http://www.manongjc.com/article/1302.html */
list($dst_w,$dst_h,$dst_type) = getimagesize($dst_path);
/*list(mixed $varname[,mixed $......])--把数组中的值赋给一些变量
像array()一样,这不是真正的函数,而是语言结构,List()用一步操作给一组变量进行赋值*/
/*getimagesize()能获取到什么信息?
getimagesize函数会返回图像的所有信息,包括大小,类型等等*/
switch($dst_type){
  case 1://GIF
    header("content-type:image/gif");
    imagegif($dst);
    // imagegif($dst,'11.gif');
    break;
  case 2://JPG
    header("content-type:image/jpeg");
    imagejpeg($dst);
    // imagejpeg($dst,'11.jpg');
    break;
  case 3://PNG
    header("content-type:image/png");
    imagepng($dst);
    // imagepng($dst,'11.png');
    break;
  default:
    break;
  /*imagepng--以PNG格式将图像输出到浏览器或文件
  imagepng()将GD图像流(image)以png格式输出到标注输出(通常为浏览器),或者如果用filename给出了文件名则将其输出到文件*/
}
imagedestroy($dst);
?>

  

猜你喜欢

转载自www.cnblogs.com/wanghjun/p/9167985.html