久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

一定搞得懂PHP中如何添加圖片水印

在之前的文章中給大家?guī)砹恕禤HP中怎樣完成圖像的縮放和裁剪?(實例詳解)》,其中通過實例給大家介紹了在PHP中應(yīng)該怎樣去進行圖形的縮放和裁剪,本篇文章繼續(xù)來看一看PHP中圖形處理的知識,我們應(yīng)該怎樣給圖片增加水印。希望對大家有幫助!

一定搞得懂PHP中如何添加圖片水印

在我們的日常生活中,為了不希望自己的圖片被盜用,經(jīng)常能夠看到在一些圖片上添加水印,比如我們網(wǎng)站上,輸入圖片文件的話會自動在右下角加上一個水印,那么這種水印效果是怎么實現(xiàn)的呢?通過PHP就可以實現(xiàn)為圖片增加水印的效果。

在之前文章中對圖片進行裁剪放到目標圖上的操作和添加水印有些類似,為了實現(xiàn)添加水印,需要通過 imagecopymerge函數(shù)。

imagecopymerge函數(shù)

imagecopymerge函數(shù)的語法格式如下:

imagecopymerge($目標圖片,$來源圖片,$目標開始的x ,$目標開始的y,$來源的x ,$來源的y ,$來源的寬 ,$來源的高 ,$透明度)

其中透明度的值是0-100的整數(shù),透明度的值越大,水印越不透明。

接下來我們通過實例來看一下應(yīng)該怎樣給圖片增加水印:

首先準備了一個名為test.png的圖片和一個名為logo.png的水印圖片放到了我們的根目錄里

一定搞得懂PHP中如何添加圖片水印

注意上面這個是示例圖片,下面的水印并不是我添加的,是網(wǎng)站自動添加的,為了區(qū)分,實例的水印是下面這樣的

一定搞得懂PHP中如何添加圖片水印一定搞得懂PHP中如何添加圖片水印

那接下來,操作如下:

<?php //打開目標圖片 $dst = imagecreatefrompng('test.png'); //打開Logo來源圖片 $src = imagecreatefrompng('logo.png'); //得到目標圖片的寬高 $dst_info = getimagesize('test.png'); //得到logo圖片的寬高 $src_info = getimagesize('logo.png'); //放到最右下腳可得出圖片水印圖片需要開始的位置即: //x點位置:需要大圖的寬 - 小圖的寬; //y點位置:放大圖的高 - 小圖的高 $dst_x = $dst_info[0] - $src_info[0]; $dst_y = $dst_info[1] - $src_info[1]; //要將圖片加在右下腳 imagecopymerge($dst, $src, $dst_x, $dst_y, 0, 0, $src_info[0], $src_info[1], 50); header('Content-type:image/png'); imagepng($dst); imagedestroy($dst); imagedestroy($src); ?>

輸出結(jié)果:

一定搞得懂PHP中如何添加圖片水印

由上述結(jié)果可以看出,通過imagecopymerge函數(shù)添加了一個透明度為50的水印。

拓展知識imagecopy函數(shù)

不止使用imagecopymerge函數(shù)一種方法添加水印,也能夠通過 imagecopy() 函數(shù),它能夠復制函數(shù)的一部分,它的語法格式如下:

imagecopy($目標圖片, $來源圖片,$目標圖片x,$目標圖片y,$來源圖片x,$來源圖片y,$來源圖片寬,$來源圖片高)

它的含義是,在來源圖片的(x,y)的地方選取寬為w,高為h的矩形區(qū)域到目標圖片的(x,y)上。

使用 PHP 中的 imagesx()、imagesy() 兩個函數(shù)來分別獲取圖片的寬度和高度。它們的語法格式如下:

imagesx(resource $image) imagesy(resource $image)

實例如下:

<?php     function watermark($img, $watermark, $district = 0,$watermarkquality = 95){         $imginfo = @getimagesize($img);         $watermarkinfo = @getimagesize($watermark);         $img_w = $imginfo[0];         $img_h = $imginfo[1];         $watermark_w = $watermarkinfo[0];         $watermark_h = $watermarkinfo[1];         if($district == 0) $district = rand(1,9);         if(!is_int($district) OR 1 > $district OR $district > 9) $district = 9;         switch($district){             case 1:                 $x = +5;                 $y = +5;                 break;             case 2:                 $x = ($img_w - $watermark_w) / 2;                 $y = +5;                 break;             case 3:                 $x = $img_w - $watermark_w - 5;                 $y = +5;                 break;             case 4:                 $x = +5;                 $y = ($img_h - $watermark_h) / 2;                 break;             case 5:                 $x = ($img_w - $watermark_w) / 2;                 $y = ($img_h - $watermark_h) / 2;                 break;             case 6:                 $x = $img_w - $watermark_w;                 $y = ($img_h - $watermark_h) / 2;                 break;             case 7:                 $x = +5;                 $y = $img_h - $watermark_h - 5;                 break;             case 8:                 $x = ($img_w - $watermark_w) / 2;                 $y = $img_h - $watermark_h - 5;                 break;             case 9:                 $x = $img_w - $watermark_w - 5;                 $y = $img_h - $watermark_h - 5;                 break;         }         switch ($imginfo[2]) {             case 1:                 $im = @imagecreatefromgif($img);                 break;             case 2:                 $im = @imagecreatefromjpeg($img);                 break;             case 3:                 $im = @imagecreatefrompng($img);                 break;         }         switch ($watermarkinfo[2]) {             case 1:                 $watermark_logo = @imagecreatefromgif($watermark);                 break;             case 2:                 $watermark_logo = @imagecreatefromjpeg($watermark);                 break;             case 3:                 $watermark_logo = @imagecreatefrompng($watermark);                 break;         }         if(!$im or !$watermark_logo) return false;         $dim = @imagecreatetruecolor($img_w, $img_h);         if(@imagecopy($dim, $im, 0, 0, 0, 0,$img_w,$img_h )){             imagecopy($dim, $watermark_logo, $x, $y, 0, 0, $watermark_w, $watermark_h);         }         $file = dirname($img) . '/w' . basename($img);         $result = imagejpeg ($dim,$file,$watermarkquality);         imagedestroy($watermark_logo);         imagedestroy($dim);         imagedestroy($im);         if($result){             echo $img.' 水印添加成功';             return;         }         else {             return false;         }     }     $file = 'test.png';   //待加水印的圖片地址     $water = 'logo.png';  //水印圖片的地址     watermark($file, $water); ?>

輸出結(jié)果:

一定搞得懂PHP中如何添加圖片水印

效果如下:

一定搞得懂PHP中如何添加圖片水印

推薦學習:《PHP視頻教程》

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
久久夜色精品| 亚洲精品.com| 欧美日韩国产综合网| 午夜电影亚洲| 亚洲精品综合| 午夜电影一区| 国产日本精品| 卡一卡二国产精品| 日本蜜桃在线观看视频| 99热精品久久| 视频在线观看一区二区三区| 亚洲精品在线a| 久久三级毛片| 久久精品国产大片免费观看| 黄色国产精品| 91久久精品无嫩草影院| 国内自拍视频一区二区三区| 免费视频国产一区| 亚洲精品一级二级三级| 精品伊人久久| 精品日韩毛片| 97精品久久| 国产96在线亚洲| 狠狠久久婷婷| 美女免费视频一区| 午夜久久tv| 久久国产麻豆精品| 欧美13videosex性极品| 热久久久久久久| 黄色网一区二区| 久久午夜视频| 98精品久久久久久久| 亚洲永久精品唐人导航网址| 国产精品毛片久久| 美国欧美日韩国产在线播放| 欧美aⅴ一区二区三区视频| 香蕉久久99| 美女高潮久久久| 免费人成黄页网站在线一区二区| 麻豆精品久久| 蜜桃久久久久久久| 中文字幕人成乱码在线观看| 日韩中文字幕在线一区| 日韩精品久久理论片| 久久午夜精品| 久久久久免费| 免费美女久久99| 日韩欧美在线中字| 国产日产一区| 国产一级久久| 韩国女主播一区二区三区| 久久成人亚洲| 正在播放日韩精品| 国产欧美日本| 蜜桃av一区二区在线观看| 色吊丝一区二区| 久久亚洲人体| 亚洲va久久| 美女久久久久| 欧美激情国产在线| 国产精品免费不| 综合激情一区| 午夜精品网站| 久久精品免费一区二区三区| 国产精品毛片视频| 免费观看日韩电影| 日韩免费一区| 日韩伦理福利| 精品五月天堂| 欧美三级第一页| av不卡在线| 91精品国产调教在线观看| 欧美精品97| 日韩av不卡在线观看| 中文欧美日韩| 欧美+亚洲+精品+三区| 日韩国产一区| 日韩综合一区| 国产专区精品| 国产一区二区精品福利地址| 亚洲精品女人| 久久亚洲图片| 免费在线欧美视频| 伊人久久成人| 亚洲欧美伊人| 激情91久久| 99精品99| 一区免费视频| 日韩视频一区二区三区在线播放免费观看 | 国产91精品对白在线播放| 极品av在线| 国产a久久精品一区二区三区| 久久精品资源| 亚洲欧美日本日韩| 欧美精品中文| 欧美日韩91| 欧美日韩a区| 欧美日韩一区二区高清| 日本91福利区| 国产精品一区二区av日韩在线| 97精品国产99久久久久久免费| 青草综合视频| 国产免费播放一区二区| 国产精品天堂蜜av在线播放| 国产日韩欧美一区二区三区| 国产欧美视频在线| 麻豆精品视频在线观看免费| 麻豆视频久久| 免费在线观看一区| 不卡专区在线| 欧美日韩国产一区精品一区| 三级在线观看一区二区| 日韩动漫一区| 激情综合婷婷| 久久精品青草| 麻豆9191精品国产| 欧美一级全黄| 精品久久亚洲| 精品一区在线| 日本在线不卡视频一二三区| 国产极品久久久久久久久波多结野| 亚洲在线电影| 久久久久免费| av中文字幕在线观看第一页| 日韩不卡免费高清视频| 午夜视频精品| 亚洲精品福利| 美女免费视频一区| 久久久久.com| 久热综合在线亚洲精品| 青草av.久久免费一区| 丁香婷婷久久| 尹人成人综合网| 欧美精品国产白浆久久久久| 亚洲精品88| 亚洲一区久久| 欧美国产日韩电影| 激情欧美一区二区三区| 久久高清免费观看| 国产视频一区二区在线播放| 91九色精品| 在线视频免费在线观看一区二区| 视频一区在线视频| 久久精品国产久精国产爱| 国产一区二区中文| 91精品尤物| 亚洲午夜av| 国产欧美日韩精品一区二区免费| 99久久婷婷这里只有精品| 亚洲欧洲日韩精品在线| 91亚洲一区| 亚洲开心激情| 精品日韩视频| 亚洲午夜免费| 92国产精品| 青草av.久久免费一区| 久久免费黄色| 国产日韩欧美一区在线| 黄色亚洲精品| 国产伦久视频在线观看| 日本成人手机在线| 亚洲成人av观看| 在线看片一区| 久久美女性网| 卡一卡二国产精品| 亚洲一区二区免费看| 日本精品黄色| 日韩福利视频网| 欧美亚洲国产激情| 国产精品啊啊啊| 蜜臀va亚洲va欧美va天堂| 精品三级久久| 成人在线黄色| 午夜久久av | 日韩av不卡一区二区| 亚洲午夜久久久久久尤物| 美女视频黄久久| 亚洲精品自拍| 丝袜美腿亚洲一区二区图片| 人在线成免费视频| 麻豆成人在线观看| 日韩视频1区| 日韩欧美自拍| 91亚洲国产成人久久精品| 国产欧美日韩在线一区二区 | 日韩动漫一区| 久久成人亚洲| 日韩一级网站| 五月天综合网站| 99精品综合| 日韩大片在线播放| 精品久久久网| 久久国产婷婷国产香蕉| 一区二区三区四区日韩| 图片区亚洲欧美小说区| 日韩中文影院| 国产精品xx| 免费在线观看成人| 99久久99视频只有精品| 日韩成人精品一区二区|