PHP開發(fā)圖片水印教程之輸出圖片
<?php /*打開圖片*/ //配置圖片路徑 $src = "https://img.php.cn/upload/course/000/000/004/581454f755fb1195.jpg"; //獲取圖片的基本信息 $info=getimagesize($src); //通過圖像的編號來獲取圖片的類型 $type=image_type_to_extension($info[2],false); //內(nèi)存中創(chuàng)建一個和我們圖像類型一致的圖像 $fun = "imagecreatefrom{$type}"; //把要操作的圖片復(fù)制到內(nèi)存中 $image=$fun($src); /*操作圖片*/ //設(shè)置水印路徑 $image_Mark = "https://img.php.cn/upload/course/000/000/004/5814594e3e7c9278.png"; //獲取水印的基本信息 $info2=getimagesize($image_Mark); //通過水印的圖像編號來獲取水印的圖片類型 $type2=image_type_to_extension($info2[2],false); //在內(nèi)存中創(chuàng)建一個和水印圖像一致的圖像類型 $fun2="imagecreatefrom{$type2}"; //把水印復(fù)制到內(nèi)存中 $water = $fun2($image_Mark); //合并圖片 imagecopymerge($image,$water,60,40,0,0,$info2[0],$info2[1],30); //銷毀水印圖片 imagedestroy($water); /*輸出圖片*/ header("Content-type:",$info['mime']); $funs = "image{$type}"; $funs($image); /*銷毀圖片*/ imagedestroy($image); ?>
header("Content-type:",$info['mime']); $funs = "image{$type}"; $funs($image); $funs($image,'FFFF.'.$type);
/*銷毀圖片*/ imagedestroy($image);
定義個變量$funcs輸出圖片然后再銷毀圖片
對圖片添加圖片水印完成。
$info['mime']的解釋
如果寫成header('content_type:image/jpeg') 這樣,就表示類型只能是圖片類型,而且只能是jpeg格式的。
而寫成header('content_type:'.$info['mime']),content_type是有上傳的文件決定的,是可變的(如果是png圖片就是image/png),更靈活!
print_r($info); Array ( [0] => 850 [1] => 511 [2] => 3 [3] => width="850" height="511" [bits] => 8 [mime] => image/png )
$info['mime'] 就是指那個image/png了就是文件的類型了