PHP 图片打水印

时间:2023-11-22 17:56:44

<?php

/*-----------------------------------------------------------------------------------
 *函数名称:Watermark
 *函数功能:给图片打水印;
 *参数数量:  9个
 *函数参数说明:$path_image:需要打水印的图片,$font_family:字体类型 ,$font_size字体大小
 *$intx,$inty :字体的位置 $str :文字的内容,$rgb1,$rgb2,$rgb3:配置文字的颜色;
 *使用说明:Watermark("1.jpg","STXINGKA.TTF",12,20,20,"坚持下去会找到你想要的东西",0,0,0);
 *$font_family:需要在文件的同目录下。

by:subtract
----------------------------------------------------------------------------------*/

function Watermark($path_image,$font_family,$font_size,$intx,$inty,$str,$rgb1,$rgb2,$rgb3)
 {
    $img= GetImageSize($path_image);
    switch($img[2])
    {
        case 1: $bgim=@ImageCreateFromGIF($path_image);
      break;
        case 2: $bgim=@ImageCreateFromJPEG($path_image);
        break;
        case 3: $bgim=@ImageCreateFromPNG($path_image);
        break;
    }
    $bgcolor=imagecolorallocate($bgim,$rgb1,$rgb2,$rgb3);
    $str=iconv("gbk","UTF-8",$str);
    imagettftext($bgim,$font_size,0,$intx,$inty,$bgcolor,"simkai.ttf",$str);
    header('Content-Type: image/jpeg');
    imagejpeg($bgim);
//  释放内存
    imagedestroy($bgim);
}

?>