首页 > php图像处理 > php生成艺术字体图片水印代码

php生成艺术字体图片水印代码

//adv0.jpg就是背景图片,注意函数与图片格式对应    
	$im = imagecreatefromjpeg('/www/law/images/demo/adv0.jpg');     
	$font_color = imagecolorallocate ($im, 0, 250, 10); //这是文字颜色,绿色    
	   
	$text = "张三的博客";        //文字内容    
	   
	$font_file = "/www/font/hyi_xkj.ttf";     //字体的linux绝对路径    
	   
	//26:字体, 0 是角度, 10,36是坐标, $font_color是文字色, font是字体,  文本是填入的文字    
	imagettftext($im, 26,0, 10, 36, $font_color ,$font_file, $text);  往图片插入文字    
	   
	// output image    
	header ('content-type: image/png');     //即便是从jpg拷贝的图片,也能以png输出,    
	imagepng ($im);    
	// clean up    
	imagedestroy($im); 
	  
	//生成水印方法二,代码如下: 
	 
	public final class imageutils {  
	public imageutils() { 
	 
	} 
	 
	public final static string getpressimgpath(){  
	return applicationcontext.getrealpath("/template/data/util/shuiyin.gif");  
	} 
	 
	/**  
	* 把图片印刷到图片上  
	* @param pressimg -- 水印文件  
	* @param targetimg -- 目标文件  
	* @param x  
	* @param y  
	*/  
	public final static void pressimage(string pressimg, string targetimg, int x, int y) {  
	try {  
	file _file = new file(targetimg);  
	image src = imageio.read(_file);  
	int wideth = src.getwidth(null);  
	int height = src.getheight(null);  
	bufferedimage image = new bufferedimage(wideth, height,  
	bufferedimage.type_int_rgb);  
	graphics g = image.creategraphics();  
	g.drawimage(src, 0, 0, wideth, height, null); 
	 
	// 水印文件  
	file _filebiao = new file(pressimg);  
	image src_biao = imageio.read(_filebiao);  
	int wideth_biao = src_biao.getwidth(null);  
	int height_biao = src_biao.getheight(null);  
	g.drawimage(src_biao, wideth - wideth_biao - x, height - height_biao -y, wideth_biao,  
	height_biao, null);  
	// /  
	g.dispose();  
	fileoutputstream out = new fileoutputstream(targetimg);  
	jpegimageencoder encoder = jpegcodec.createjpegencoder(out);  
	encoder.encode(image);  
	out.close();  
	} catch (exception e) {  
	e.printstacktrace();  
	}  
	} 
	 
	/**  
	* 打印文字水印图片  
	* @param presstext --文字  
	* @param targetimg -- 目标图片  
	* @param fontname -- 字体名  
	* @param fontstyle -- 字体样式  
	* @param color -- 字体颜色  
	* @param fontsize -- 字体大小  
	* @param x -- 偏移量  
	* @param y  
	*/ 
	 
	public static void presstext(string presstext, string targetimg, string fontname,int fontstyle, int color, int fontsize, int x, int y) {  
	try {  
	file _file = new file(targetimg);  
	image src = imageio.read(_file);  
	int wideth = src.getwidth(null);  
	int height = src.getheight(null);  
	bufferedimage image = new bufferedimage(wideth, height,  
	bufferedimage.type_int_rgb);  
	graphics g = image.creategraphics();  
	g.drawimage(src, 0, 0, wideth, height, null);  
	// string s=www.111cn.net;  
	g.setcolor(color.red);  
	g.setfont(new font(fontname, fontstyle, fontsize)); 
	 
	 
	g.drawstring(presstext, wideth - fontsize - x, height - fontsize/2 - y);  
	g.dispose();  
	fileoutputstream out = new fileoutputstream(targetimg);  
	jpegimageencoder encoder = jpegcodec.createjpegencoder(out);  
	encoder.encode(image);  
	out.close();  
	} catch (exception e) {  
	system.out.println(e);  
	}  
	} 
	//开源代码phprm.com 
	public static void main(string[] args) {  
	pressimage("c:/shuiyin/shuiyin.gif", "c:/shuiyin/dsc02342.jpg", 20 ,20);  
	}  
	} 

永久链接:http://www.phprm.com/tuxiang/fs4475.html

转载随意!带上文章地址吧。

标签:php图片水印 php生成艺术字

相关文章

发表留言