Maison  >  Article  >  développement back-end  >  生成艺术字体图片水印代码_PHP教程

生成艺术字体图片水印代码_PHP教程

WBOY
WBOYoriginal
2016-07-13 10:45:341568parcourir

//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.bKjia.c0m;
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);
}
}

public static void main(string[] args) {
pressimage("c:/shuiyin/shuiyin.gif", "c:/shuiyin/dsc02342.jpg", 20 ,20);
}
}

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/633027.htmlTechArticle//adv0.jpg就是背景图片,注意函数与图片格式对应 $im = imagecreatefromjpeg('/www/law/images/demo/adv0.jpg'); $font_color = imagecolorallocate ($im, 0, 250, 10); //这是...
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn