imagecreatefromgd ---- 从GD文件或URL新建一图像
imagecreatefromgd2 ----从GD2文件或URL新建一图像
imagecreatefromgif ----由文件或URL创建一个新图像
图片加水印
1.将图片文件读取出来,存入到一个变量中
<?php
//加载图片
$imgfile = "xxb.jpg";
$str = file_get_contents("$imgfile");
2.创建图像
$img = imagecreatefromstring($str);
if($img === false){
die('创建图像失败');
}
3.输出图像
header('content-type:image/png');
imagepng($img);
imagedestroy($img);
输出的图片如下:
4.加水印(即在图像上输出字符)引入字体库
$font = "STCAIYUN.TTF";
if(!file_exists($font)){
die('字体库文件不存在');
}
$text = "XXX版权所有";
$color = imagecolorallocate($img, 255, 255, 255);
imagettftext($img,18,0,25,25,$color,$font,$text);
// header('content-type:image/png');
imagepng($img,'new'.$imgfile);
imagedestroy($img);
echo '生成图像文件成功';
5.生成一个新图像(在文件夹下)会在名字前面加new
输出加水印的图片如下:
整体代码如下:
<?php
//加载图片
$imgfile = "xxb.jpg";
//将图片文件读取出来,存入到一个变量中
$str = file_get_contents("$imgfile");
//字符串编码gb2312->utf8
// $str = iconv('gb2312','utf-8',$str);
// $str = mb_convert_encoding($str,'utf-8','gb2312');
// $str = nl2br($str);//将换行符转换成br标签进行输出
//创建图像
$img = imagecreatefromstring($str);
if($img === false){
die('创建图像失败');
}
//加水印(即在图像上输出字符)
$font = "STCAIYUN.TTF";
if(!file_exists($font)){
die('字体库文件不存在');
}
$text = "XXX版权所有";
$color = imagecolorallocate($img, 255, 255, 255);
imagettftext($img,18,0,25,25,$color,$font,$text);
// header('content-type:image/png');
imagepng($img,'new'.$imgfile);
imagedestroy($img);
echo '生成图像文件成功';