2018.09.03
.
.
只有一個(gè)文件枚钓,代碼如下:
<?php
//用戶上傳的圖片
$dest = 'test.jpg';
//公司的logo
$src = 'logo.jpg';
$op = 50;
$pos = 4;
water($dest, $src, $pos, $op);
/**
*@param1 dest string 用戶圖片
*@param2 src string 公司logo
**@param3 int logo的位置 1:左上角绒北,2:右上角,3:左下角弃理,4:右下角,5:中間
**@param4 op int 透明度
*/
function water($dest, $src, $pos=3, $op=60){
$info_dest = getimagesize($dest);
$info_src = getimagesize($src);
//把已有的圖片讀取到畫(huà)布中
$img_dest = create_from($dest);
$img_src = create_from($src);
switch($pos){
case 1:
$d_x = 0;
$d_y = 0;
break;
case 2:
$d_x = $info_dest[0]-$info_src[0];
$d_y = 0;
break;
case 3:
$d_x = 0;
$d_y = $info_dest[1]-$info_src[1];
break;
case 4:
$d_x = $info_dest[0]-$info_src[0];
$d_y = $info_dest[1]-$info_src[1];
break;
case 5:
$d_x = ($info_dest[0]-$info_src[0])/2;
$d_y = ($info_dest[1]-$info_src[1])/2;
break;
}
//制作水印 imagecopymerge(dst_im, src_im, dst_x, dst_y, src_x, src_y, src_w, src_h, pct)
imagecopymerge($img_dest, $img_src, $d_x, $d_y, 0, 0, $info_src[0], $info_src[1], $op);
header('Content-Type:image/jpeg');
imagejpeg($img_dest);
}
function create_from($file){
$info = getimagesize($file); //獲取文件信息
switch($info['mime']){
case 'image/jpeg':
$img = imagecreatefromjpeg($file);
break;
case 'image/png':
$img = imagecreatefrompng($file);
break;
case 'image/gif':
$img = imagecreatefromgif($file);
break;
}
return $img;
}