PHP圖片處理之使用imagecopy函數(shù)添加圖片水印實(shí)例
為圖片添加水印也是圖片處理中常見(jiàn)的功能。因?yàn)橹灰陧?yè)面中見(jiàn)到的圖片都可以很輕松地拿到,你辛辛苦苦編輯的圖片不想被別人不費(fèi)吹灰之力拿走就用,所以為圖片添加水印以確定版權(quán),防止圖片被盜用。制作水印可以使用文字(公司名稱加網(wǎng)址),也可以使用圖片(公司LOGO),圖片水印效果更好一些,因?yàn)榭梢酝ㄟ^(guò)一些做圖片軟件進(jìn)行美化。使用文字做水印,只需要在圖片上畫一些文字即可。如果制作圖片水印,就需要先了解一下GD庫(kù)中的imagecopy()函數(shù),能復(fù)制圖片的一部分。該函數(shù)的原型如下所示:
bool imagecopy(resource dst_im,resource src_im,int dst_x,int dst_y,int src_x,int src_y,int src_w,int src_h)
該函數(shù)的作用是將src_im圖像中坐標(biāo)從src_x,src_y開(kāi)始,寬度為src_w,高度為src_h的一部分復(fù)制到dst_im圖像中坐標(biāo)為dst_x和dst_y的位置上。以JPEG格式的圖片為例,編寫一個(gè)為圖片添加水印的函數(shù)watermark(),代碼如下所示:
<?php
//為背景圖片添加圖片水?。ㄎ恢秒S機(jī)),背景圖片格式為jpeg,水印圖片格式為gif
function watermark($filename,$water){
//獲取背景圖片的寬度和高度
list($b_w,$b_h) = getimagesize($filename);
//獲取水印圖片的寬度和高度
list($w_w,$w_h) = getimagesize($water);
//在背景圖片中放水印圖片的位置隨機(jī)起始位置
$posX = rand(0, ($b_w-$w_w));
$posY = rand(0, ($b_h-$w_h));
//創(chuàng)建背景圖片的資源
$back = imagecreatefromjpeg($filename);
//創(chuàng)建水印圖片的資源
$water = imagecreatefromgif($water);
//使用imagecopy()函數(shù)將水印圖片復(fù)制到背景圖片指定的位置中
imagecopy($back, $water, $posX, $posY, 0, 0, $w_w, $w_h);
//保存帶有水印圖片的背景圖片
imagejpeg($back,$filename);
imagedestroy($back);
imagedestroy($water);
}
watermark("brophp.jpg", "logo.gif");
?>
相關(guān)文章
php+dojo 的數(shù)據(jù)庫(kù)保存拖動(dòng)布局的一個(gè)方法dojo 這里下載
php+dojo 的數(shù)據(jù)庫(kù)保存拖動(dòng)布局的一個(gè)方法dojo 這里下載...2007-03-03詳解WordPress中調(diào)用評(píng)論模板和循環(huán)輸出評(píng)論的PHP函數(shù)
這篇文章主要介紹了WordPress中調(diào)用評(píng)論模板和循環(huán)輸出評(píng)論的PHP函數(shù),分別是comments_template函數(shù)與wp_list_comments函數(shù)的使用,需要的朋友可以參考下2016-01-01PHP實(shí)現(xiàn)實(shí)時(shí)生成并下載超大數(shù)據(jù)量的EXCEL文件詳解
EXCEL文件的處理是我們?cè)谌粘9ぷ髦薪?jīng)常會(huì)遇到的,這篇文章主要給大家介紹了關(guān)于利用PHP如何實(shí)現(xiàn)實(shí)時(shí)生成并下載超大數(shù)據(jù)量的EXCEL文件,通過(guò)文中介紹的這個(gè)方法對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-10-10利用PHPExcel讀取Excel的數(shù)據(jù)和導(dǎo)出數(shù)據(jù)到Excel
本篇文章主要介紹了利用PHPExcel讀取Excel的數(shù)據(jù)和導(dǎo)出數(shù)據(jù)到Excel的相關(guān)知識(shí),具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧2017-05-05php成功操作redis cluster集群的實(shí)例教程
這篇文章主要給大家介紹了關(guān)于php成功操作redis cluster集群的實(shí)例教程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01PHP的HTTP客戶端Guzzle簡(jiǎn)單使用方法分析
這篇文章主要介紹了PHP的HTTP客戶端Guzzle簡(jiǎn)單使用方法,結(jié)合實(shí)例形式分析了Guzzle的功能、請(qǐng)求、cookie操作等相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2019-10-10