大家能指教一下如何利用GD库为我的图片(挺多图片)添加(透明)水印??给点帮助我啦~~谢谢! 好像不行吧。。读取gif文件的时候系统会自动添加背影的。不晓得高手们有没有好主意?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 是这样的吗?那到底怎么才能为我N多的图片加个水印/签名呢?请指教!谢谢!不是GD库可以做的吗? <?php//读取目标文件$im = imageCreatefromjpeg("a.jpg");//设定混合模式imagealphablending($im, true);//读取水印$im2 = imagecreatefrompng("2.png");//下面是我写的字,可以不看$color = imagecolorallocate($im2, 0, 0, 0);imagestring($im2, 12, 1, 1, "i love u jingjing", $color);//字结束//拷贝水印到目标文件imagecopy($im, $im2, 5, 5, 0, 0, 250, 40);//输出,可以输出到文件里imagejpeg($im);imagedestroy($im);imagedestroy($im1);?>需要注意的是,水印应该是透明的,而且拷贝到目标文件的大小也不能超过它本来的大小(长和宽)。 ccterran(iwind) 是不是现在热恋中呵呵顶一下 如果图片很大,建议不要用GD,图片小的话用 ccterran(iwind) 的方法即可实现。水印也可以改成透明的gif。$im2 = imagecreatefromgif("2.gif");即可 研究好了楼主就贡献一个代码。原理就是读取一张图片,在里面用gd写入某些字经由gd生成的水印。不过楼上为什么还要读取第二张png图片? <?php//读取目标文件$im = imageCreatefromjpeg("a.jpg");//设定混合模式imagealphablending($im, true);//读取水印$im2 = imagecreatefrompng("2.png");//下面是我写的字,可以不看$color = imagecolorallocate($im2, 0, 0, 0);imagestring($im2, 12, 1, 1, "i love u jingjing", $color);//字结束//拷贝水印到目标文件imagecopy($im, $im2, 5, 5, 0, 0, 250, 40);//输出,可以输出到文件里imagejpeg($im);imagedestroy($im);imagedestroy($im1);?>需要注意的是,水印应该是透明的,而且拷贝到目标文件的大小也不能超过它本来的大小(长和宽)。这段代码没用啊。还是显示的我的1.jpg那张图片。 用imagettftext函数就可以用系统的ttf字库了,可以改观很多不过中文字体支持的不多 【求助】thinkphp2.1连MSSQL2000 问题 我是新手不知道这里哪个地方写错了。 adodb.inc.php连接MSSQL2000错误 小菜菜的问题,大家帮忙!!! 加 急 php问题 删除整个目录的函数问题!!急 上传文件curl_getinfo http_code 为0 问一下:在程序中加入什么语句 能查看数据库地址 紧急!如何从类似“2003-1-3 18:20:01”这样的字符串中,分离出年月日? php运算符问题 少取一条记录,为什么 为什么得不到文本框的值?
//读取目标文件
$im = imageCreatefromjpeg("a.jpg");
//设定混合模式
imagealphablending($im, true);
//读取水印
$im2 = imagecreatefrompng("2.png");
//下面是我写的字,可以不看
$color = imagecolorallocate($im2, 0, 0, 0);
imagestring($im2, 12, 1, 1, "i love u jingjing", $color);
//字结束
//拷贝水印到目标文件
imagecopy($im, $im2, 5, 5, 0, 0, 250, 40);
//输出,可以输出到文件里
imagejpeg($im);imagedestroy($im);
imagedestroy($im1);
?>
需要注意的是,水印应该是透明的,而且拷贝到目标文件的大小也不能超过它本来的大小(长和宽)。
顶一下
图片小的话用 ccterran(iwind) 的方法即可实现。
水印也可以改成透明的gif。$im2 = imagecreatefromgif("2.gif");即可
原理就是读取一张图片,在里面用gd写入某些字经由gd生成的水印。
不过楼上为什么还要读取第二张png图片?
//读取目标文件
$im = imageCreatefromjpeg("a.jpg");
//设定混合模式
imagealphablending($im, true);
//读取水印
$im2 = imagecreatefrompng("2.png");
//下面是我写的字,可以不看
$color = imagecolorallocate($im2, 0, 0, 0);
imagestring($im2, 12, 1, 1, "i love u jingjing", $color);
//字结束
//拷贝水印到目标文件
imagecopy($im, $im2, 5, 5, 0, 0, 250, 40);
//输出,可以输出到文件里
imagejpeg($im);imagedestroy($im);
imagedestroy($im1);
?>
需要注意的是,水印应该是透明的,而且拷贝到目标文件的大小也不能超过它本来的大小(长和宽)。
这段代码没用啊。还是显示的我的1.jpg那张图片。
不过中文字体支持的不多