課程
/后端開發(fā)
/PHP
/GD庫實現(xiàn)圖片水印與縮略圖
用imagecopymerge();函數(shù)是混合模式的,將兩個圖片混合了,所以png圖片的透明效果就沒了
用imagecopy();函數(shù)直接合并,所有最后保留了透明效果。
2015-05-02
源自:GD庫實現(xiàn)圖片水印與縮略圖 3-2
正在回答
我的代碼都實驗過的,,同學,,我沒有實驗過,也不可能去回答的,,
<?php //這是整體代碼 $src='images/001.jpg'; $info=getimagesize($src); $type=image_type_to_extension($info[2],false); $fun="imagecreatefrom{$type}"; $image=$fun($src); /*操作水印圖片*/ //1.設(shè)置水印路徑 $imageMark='images/logo.png'; //2.獲取水印圖片基本信息 $info2=getimagesize($imageMark); //3.獲取水印圖片類型 $type2=image_type_to_extension($info2[2],false); //4.創(chuàng)建水印圖像類型 $fun2="imagecreatefrom{$type2}"; //5.把水印圖片復(fù)制到內(nèi)存中 $water=$fun2($imageMark); //6.合并圖片當最后一個參數(shù)設(shè)置為100時和imagecopy一樣 imagecopymerge($image,?$water,?20,?30,?0,?0,?$info2[0],?$info2[1],20); //imagecopy($image,?$water,?20,?30,?0,?0,?$info2[0],?$info2[1]); //7.銷毀水印圖片; imagedestroy($water); /*輸出圖片*/ header('Content-type:'.$info['mime']); $func="image{$type}"; $func($image); imagedestroy($image); ?>
imagecopymerge($image,?$water,?20,?30,?0,?0,?$info2[0],?$info2[1],20);?//最后一個參數(shù)為20時效果如下:
imagecopymerge($image,?$water,?20,?30,?0,?0,?$info2[0],?$info2[1],50);??//最后一個參數(shù)時50時的效果:
imagecopymerge($image,?$water,?20,?30,?0,?0,?$info2[0],?$info2[1],100);?//最后一個參數(shù)時100時的效果:
imagecopy($image,?$water,?20,?30,?0,?0,?$info2[0],?$info2[1]);??//使用imagecopy()的效果
所以:最后我得出的結(jié)論時:
imagecopymerge()最后一個參數(shù)是設(shè)置png圖片不透明部分復(fù)制到目標圖片時的透明度的吧,
當它的最后一個參數(shù)等于100時,和imagecopy()是一樣的,,
php官方手冊的說法是:
bool imagecopymerge ? ?( resource $dst_im ? , resource $src_im ? , int $dst_x ? , int $dst_y ? , int $src_x ? , int $src_y ? , int $src_w ? , int $src_h ? , int $pct ? )將 src_im 圖像中坐標從 ? ?src_x,src_y ?? ?開始,寬度為 src_w,高度為 src_h ? ?的一部分拷貝到 ? ?dst_im 圖像中坐標為 ? ?dst_x 和 dst_y ? ?的位置上。兩圖像將根據(jù) pct ? ?來決定合并程度,其值范圍從 0 到 100。當 pct = 0 ? ?時,實際上什么也沒做,當為 100 時對于調(diào)色板圖像本函數(shù)和 ? ?imagecopy() 完全一樣,它對真彩色圖像實現(xiàn)了 alpha 透明。?
bool imagecopymerge ? ?( resource $dst_im ? , resource $src_im ? , int $dst_x ? , int $dst_y ? , int $src_x ? , int $src_y ? , int $src_w ? , int $src_h ? , int $pct ? )
將 src_im 圖像中坐標從 ? ?src_x,src_y ?? ?開始,寬度為 src_w,高度為 src_h ? ?的一部分拷貝到 ? ?dst_im 圖像中坐標為 ? ?dst_x 和 dst_y ? ?的位置上。兩圖像將根據(jù) pct ? ?來決定合并程度,其值范圍從 0 到 100。當 pct = 0 ? ?時,實際上什么也沒做,當為 100 時對于調(diào)色板圖像本函數(shù)和 ? ?imagecopy() 完全一樣,它對真彩色圖像實現(xiàn)了 alpha 透明。?
最后:因為學習這個課程好久了,,如果有錯誤望指出,,大家一起學習,
小王子抓貓咪
王小仙 回復(fù) 小王子抓貓咪
舉報
帶你快速高效的完成圖片處理工作,還可以加深對面向?qū)ο蟮睦斫?/p> 進入課程
1 回答老師 非常感謝您的課程,有個問題我想了解
1 回答不報錯 老師給看看代碼有問題嗎?
2 回答為什么打開瀏覽器沒有老師說的那個圖片信息
4 回答Fatal error: Call to undefined function imagecreatefromjepg() 請問老師這是什么問題????
2 回答老師,怎么解決 imagettftext 中文亂碼的問題,網(wǎng)上的試了都沒用。
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學習伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2016-06-13
我的代碼都實驗過的,,同學,,我沒有實驗過,也不可能去回答的,,
所以:最后我得出的結(jié)論時:
imagecopymerge()最后一個參數(shù)是設(shè)置png圖片不透明部分復(fù)制到目標圖片時的透明度的吧,
當它的最后一個參數(shù)等于100時,和imagecopy()是一樣的,,
php官方手冊的說法是:
最后:因為學習這個課程好久了,,如果有錯誤望指出,,大家一起學習,
2015-11-09
imagecopymerge()最后一個參數(shù)是設(shè)置png圖片不透明部分復(fù)制到目標圖片時的透明度的吧,
當它的最后一個參數(shù)等于100時,和imagecopy()是一樣的,,
2015-05-02
用imagecopymerge();函數(shù)是混合模式的,將兩個圖片混合了,所以png圖片的透明效果就沒了
用imagecopy();函數(shù)直接合并,所有最后保留了透明效果。