最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php實現(xiàn)圖片局部打馬賽克的方法

 更新時間:2015年02月11日 10:45:40   作者:傲雪星楓  
這篇文章主要介紹了php實現(xiàn)圖片局部打馬賽克的方法,實例分析了php針對圖片操作的技巧,非常具有實用價值,需要的朋友可以參考下

本文實例講述了php實現(xiàn)圖片局部打馬賽克的方法。分享給大家供大家參考。具體分析如下:

原理:

對圖片中選定區(qū)域的每一像素,增加若干寬度及高度,生成矩型。而每一像素的矩型重疊在一起,就形成了馬賽克效果。
本例使用GD庫的imagecolorat獲取像素顏色,使用imagefilledrectangle畫矩型。

效果圖如下所示:

代碼如下:

復(fù)制代碼 代碼如下:
<?php 
/** 圖片局部打馬賽克
* @param  String  $source 原圖
* @param  Stirng  $dest   生成的圖片
* @param  int     $x1     起點橫坐標(biāo)
* @param  int     $y1     起點縱坐標(biāo)
* @param  int     $x2     終點橫坐標(biāo)
* @param  int     $y2     終點縱坐標(biāo)
* @param  int     $deep   深度,數(shù)字越大越模糊
* @return boolean
*/ 
function imageMosaics($source, $dest, $x1, $y1, $x2, $y2, $deep){ 
 
    // 判斷原圖是否存在 
    if(!file_exists($source)){ 
        return false; 
    } 
 
    // 獲取原圖信息 
    list($owidth, $oheight, $otype) = getimagesize($source); 
 
    // 判斷區(qū)域是否超出圖片 
    if($x1>$owidth || $x1<0 || $x2>$owidth || $x2<0 || $y1>$oheight || $y1<0 || $y2>$oheight || $y2<0){ 
        return false; 
    } 
 
    switch($otype){ 
        case 1: $source_img = imagecreatefromgif($source); break; 
        case 2: $source_img = imagecreatefromjpeg($source); break; 
        case 3: $source_img = imagecreatefrompng($source); break; 
        default: 
            return false; 
    } 
 
    // 打馬賽克 
    for($x=$x1; $x<$x2; $x=$x+$deep){ 
        for($y=$y1; $y<$y2; $y=$y+$deep){ 
            $color = imagecolorat($source_img, $x+round($deep/2), $y+round($deep/2)); 
            imagefilledrectangle($source_img, $x, $y, $x+$deep, $y+$deep, $color); 
        } 
    } 
 
    // 生成圖片 
    switch($otype){ 
        case 1: imagegif($source_img, $dest); break; 
        case 2: imagejpeg($source_img, $dest); break; 
        case 3: imagepng($source_img, $dest); break; 
    } 
 
    return is_file($dest)? true : false; 
 

 
$source = 'source.jpg'; 
$dest = 'dest.jpg'; 
 
$flag = imageMosaics($source, $dest, 176, 98, 273, 197, 4); 
echo '<img src="'.$source.'">'; 
echo '<img src="'.$dest.'">'; 
?>

完整實例代碼點擊此處本站下載。

希望本文所述對大家的php程序設(shè)計有所幫助。

相關(guān)文章

  • php基于DOMDocument操作頁面元素實例

    php基于DOMDocument操作頁面元素實例

    這篇文章主要介紹了php基于DOMDocument操作頁面元素,結(jié)合實例形式分析了php使用DOMDocument進(jìn)行頁面元素獲取與屬性修改的相關(guān)操作技巧,需要的朋友可以參考下
    2023-06-06
  • php繪制圓形的方法

    php繪制圓形的方法

    這篇文章主要介紹了php繪制圓形的方法,詳細(xì)分析了php繪制圖形的基本步驟與繪制圓形的實現(xiàn)方法,需要的朋友可以參考下
    2015-01-01
  • php常用字符函數(shù)實例小結(jié)

    php常用字符函數(shù)實例小結(jié)

    這篇文章主要介紹了php常用字符函數(shù),結(jié)合實例形式總結(jié)分析了php常用字符函數(shù)substr、preg_match、strpos、dirname及str_split功能、用法與相關(guān)注意事項,需要的朋友可以參考下
    2016-12-12
  • mayfish 數(shù)據(jù)入庫驗證代碼

    mayfish 數(shù)據(jù)入庫驗證代碼

    mayfish 可以靈活的自定義將要執(zhí)行寫入的數(shù)據(jù)內(nèi)容的校驗規(guī)則,以減少開發(fā)人員手動對每一個字段的數(shù)據(jù)進(jìn)行校驗的麻煩。
    2010-04-04
  • 詳解PHP中的狀態(tài)模式編程

    詳解PHP中的狀態(tài)模式編程

    這篇文章主要介紹了詳解PHP中的狀態(tài)模式編程,有利于團(tuán)隊協(xié)作編程,需要的朋友可以參考下
    2015-08-08
  • 淺談如何提高PHP代碼的質(zhì)量

    淺談如何提高PHP代碼的質(zhì)量

    說實話,在代碼質(zhì)量方面,PHP 的壓力非常大。通過閱讀本系列文章,您將了解如何提高 PHP 代碼的質(zhì)量。
    2021-05-05
  • php實現(xiàn)從上傳文件創(chuàng)建縮略圖的方法

    php實現(xiàn)從上傳文件創(chuàng)建縮略圖的方法

    這篇文章主要介紹了php實現(xiàn)從上傳文件創(chuàng)建縮略圖的方法,涉及php操作上傳文件及圖片操作的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-04-04
  • 詳解PHP對數(shù)組的定義以及數(shù)組的創(chuàng)建方法

    詳解PHP對數(shù)組的定義以及數(shù)組的創(chuàng)建方法

    這篇文章主要介紹了PHP對數(shù)組的定義以及數(shù)組的創(chuàng)建方法,PHP中具有傳統(tǒng)編譯型語言那樣的數(shù)組和多維數(shù)組,需要的朋友可以參考下
    2015-11-11
  • 如何解決php-fpm啟動不了問題

    如何解決php-fpm啟動不了問題

    在本篇文章里小編給大家整理的是一篇關(guān)于如何解決php-fpm啟動不了問題相關(guān)文章,有需要的朋友們可以跟著學(xué)習(xí)下。
    2021-11-11
  • PHP定界符php和html代碼混編方法實例詳解

    PHP定界符php和html代碼混編方法實例詳解

    這篇文章主要為大家介紹了PHP定界符php和html代碼混編方法實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01

最新評論

江城| 静安区| 麟游县| 漠河县| 漳平市| 河西区| 仪征市| 农安县| 金沙县| 乐昌市| 德格县| 上杭县| 塘沽区| 常山县| 武邑县| 永泰县| 台东县| 衡山县| 陕西省| 景宁| 甘南县| 双桥区| 汾阳市| 天长市| 石阡县| 九龙县| 灵丘县| 上林县| 澎湖县| 焦作市| 年辖:市辖区| 富锦市| 台中县| 崇明县| 三原县| 荔浦县| 绥芬河市| 都兰县| 庆城县| 资溪县| 神农架林区|