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

用PHP實現(xiàn)圖象銳化代碼

 更新時間:2007年06月14日 00:00:00   作者:  
<?  

//讀取圖像的類型  

  //1 = GIF, 2 = JPG, 3 = PNG, 4 = SWF, 5 = PSD, 6 = BMP, 7 = TIFF(intel byte order), 8 = TIFF(motorola byte order), 9 = JPC, 10 = JP2, 11 = JPX, 12 = JB2, 13 = SWC, 14 = IFF  

  function GetImageType($filename) {return (($imginfo=@getimagesize($filename))!=null ? $imginfo[2] : null);}     

  //圖像銳化  

  //$scr_im:圖像資源句柄,$degree:銳化度數(shù)  

  function Sharp(&$src_im, &$dst_im, $degree)  

  {  

   $src_x = imagesx($src_im);  

   $src_y = imagesy($src_im);  

   //$dst_im = imagecreate($src_x, $src_y);  

   //imagecopy($dst_im, $src_im, 0, 0, 0, 0, $src_x, $src_y);  

   $cnt = 0;  

   for ($x=1; $x<$src_x; $x++)  

   for ($y=1; $y<$src_y; $y++)  

   {  

   $src_clr1 = imagecolorsforindex($src_im, imagecolorat($src_im, $x-1, $y-1));  

   $src_clr2 = imagecolorsforindex($src_im, imagecolorat($src_im, $x, $y));  

   $r = intval($src_clr2["red"]+$degree*($src_clr2["red"]-$src_clr1["red"]));  

   $g = intval($src_clr2["green"]+$degree*($src_clr2["green"]-$src_clr1["green"]));  

   $b = intval($src_clr2["blue"]+$degree*($src_clr2["blue"]-$src_clr1["blue"]));  

   $r = min(255, max($r, 0));  

   $g = min(255, max($g, 0));  

   $b = min(255, max($b, 0));  

   //echo "r:$r, g:$g, b:$b<br/>";  

   if (($dst_clr=imagecolorexact($dst_im, $r, $g, $b))==-1)  

   $dst_clr = Imagecolorallocate($dst_im, $r, $g, $b);  

   $cnt++;  

   if ($dst_clr==-1) die("color allocate faile at $x, $y ($cnt).");  

   imagesetpixel($dst_im, $x, $y, $dst_clr);  

   }  

   return $dst_im;  

  }     

  $ImageFunctions = array("imagecreatefromwbmp", "imagecreatefromgif", "imagecreatefromjpeg", "imagecreatefrompng");   

  if (!empty($_POST["ImageName"]))  

  {   

   set_time_limit(10*60);  

   if (($ImageType=GetImageType($_POST["ImageName"]))==false)  

   die("指定文件不存在或不是有效的圖片或不支持類型!");  

   if ($ImageType==6) $ImageType = 0;  

   if ($ImageType>3) die("不支持的圖片類型!");  

   $im1 = $ImageFunctions[$ImageType]($_POST["ImageName"]);  

   $im2 = $ImageFunctions[$ImageType]($_POST["ImageName"]);  

   //print_r(imagecolorsforindex($im, imagecolorat($im, 10, 10)));  

   Sharp($im1, $im2, $_POST["Degree"]);  

   header("Content-type: image/png");  

   imagepng($im2);  

   imagedestroy($im1);  

   imagedestroy($im2);  

  }   

  ?>  

  <form name="FormName" action="" method="post">  

  請輸入圖片的本地路徑或URL:<br/>  

  <input name="ImageName" type="text" value="<?=$_POST["ImageName"]?>" size=32><br/>  

  銳化度數(shù)(例:0.6、3.0):<br/>  

  <input name="Degree" type="text" value="<?=$_POST["Degree"]?>"><br/>  

  <input type="submit" value="提交">  

  </form>   

   改了一下,省了一個$im:    

   function Sharp2(&$im, $degree)  

  {  

   $cnt = 0;  

   for ($x=imagesx($im)-1; $x>0; $x--)  

   for ($y=imagesy($im)-1; $y>0; $y--)  

   {  

   $clr1 = imagecolorsforindex($im, imagecolorat($im, $x-1, $y-1));  

   $clr2 = imagecolorsforindex($im, imagecolorat($im, $x, $y));  

   $r = intval($clr2["red"]+$degree*($clr2["red"]-$clr1["red"]));  

   $g = intval($clr2["green"]+$degree*($clr2["green"]-$clr1["green"]));  

   $b = intval($clr2["blue"]+$degree*($clr2["blue"]-$clr1["blue"]));  

   $r = min(255, max($r, 0));  

   $g = min(255, max($g, 0));  

   $b = min(255, max($b, 0));  

   //echo "r:$r, g:$g, b:$b<br>";  

   if (($new_clr=imagecolorexact($im, $r, $g, $b))==-1)  

   $new_clr = Imagecolorallocate($im, $r, $g, $b);  

   $cnt++;  

   if ($new_clr==-1) die("color allocate faile at $x, $y ($cnt).");  

   imagesetpixel($im, $x, $y, $new_clr);  

   }  

  }

相關(guān)文章

  • 如何用PHP導(dǎo)出PDF

    如何用PHP導(dǎo)出PDF

    實際工作中,我們要使用PHP動態(tài)的創(chuàng)建PDF文檔,目前有許多開源的PHP創(chuàng)建PDF的類庫,今天我給大家來介紹一款優(yōu)秀的PDF庫,它就是TCPDF,TCPDF是一個用于快速生成PDF文件的PHP5函數(shù)包。TCPDF基于FPDF進(jìn)行擴(kuò)展和改進(jìn),增強(qiáng)了實用功能。
    2021-05-05
  • 一個簡潔實用的PHP緩存類完整實例

    一個簡潔實用的PHP緩存類完整實例

    這篇文章主要介紹了一個簡潔實用的PHP緩存類完整實例,緩存的應(yīng)用對于php大型項目的開發(fā)來說至關(guān)重要,需要的朋友可以參考下
    2014-07-07
  • php中sort函數(shù)排序知識點總結(jié)

    php中sort函數(shù)排序知識點總結(jié)

    在本篇文章里小編給大家分享的是一篇關(guān)于php中sort函數(shù)排序知識點總結(jié)內(nèi)容,有興趣的朋友們可以參考下。
    2021-01-01
  • php靜態(tài)編譯swoole-cli并調(diào)用rust的動態(tài)鏈接庫

    php靜態(tài)編譯swoole-cli并調(diào)用rust的動態(tài)鏈接庫

    這篇文章主要為大家介紹了靜態(tài)編譯swoole-cli并調(diào)用rust的動態(tài)鏈接庫實現(xiàn)步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07
  • PHP高效獲取遠(yuǎn)程圖片尺寸和大小的實現(xiàn)方法

    PHP高效獲取遠(yuǎn)程圖片尺寸和大小的實現(xiàn)方法

    這篇文章主要介紹了 PHP高效獲取遠(yuǎn)程圖片尺寸和大小的實現(xiàn)方法的相關(guān)資料,希望通過本文大家能夠?qū)崿F(xiàn)這樣的功能,需要的朋友可以參考下
    2017-10-10
  • 詳解如何在PHP代碼里面調(diào)用Go程序

    詳解如何在PHP代碼里面調(diào)用Go程序

    PHP和Go都是廣泛使用的編程語言,但各自具有其獨特的優(yōu)勢和特性,那么如何在PHP代碼里面調(diào)用Go程序呢,下面小編就來為大家介紹一下常用的兩種方法
    2023-11-11
  • Ubuntu server 11.04安裝memcache及php使用memcache來存儲session的方法

    Ubuntu server 11.04安裝memcache及php使用memcache來存儲session的方法

    這篇文章主要介紹了Ubuntu server 11.04安裝memcache及php使用memcache來存儲session的方法,涉及memcache服務(wù)器的安裝及php操作memcache存儲session的相關(guān)技巧,需要的朋友可以參考下
    2016-05-05
  • PHP使用Reli分析性能,生成PHP性能火焰圖

    PHP使用Reli分析性能,生成PHP性能火焰圖

    Reli 是一個用PHP編寫的采樣分析器(或VM狀態(tài)檢查器),它可以從進(jìn)程外部讀取有關(guān)運行PHP腳本的信息,它是一個獨立的CLI工具,因此目標(biāo)程序不需要任何修改,檢測和可視化PHP腳本中的瓶頸,它不僅提供函數(shù)級的分析,而且還提供行級或操作碼級的解析
    2024-01-01
  • php實現(xiàn)圖片局部打馬賽克的方法

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

    這篇文章主要介紹了php實現(xiàn)圖片局部打馬賽克的方法,實例分析了php針對圖片操作的技巧,非常具有實用價值,需要的朋友可以參考下
    2015-02-02
  • PHP備份/還原MySQL數(shù)據(jù)庫的代碼

    PHP備份/還原MySQL數(shù)據(jù)庫的代碼

    之前是采用PHP讀取數(shù)據(jù)庫結(jié)構(gòu)和內(nèi)容,然后寫文件,這樣可能會導(dǎo)致導(dǎo)出的文件不一定能百分百導(dǎo)入到MySQL中去,想想之后采用MySQL自帶的導(dǎo)入導(dǎo)出命令最保險
    2011-01-01

最新評論

阜阳市| 泰兴市| 枣阳市| 蒲江县| 罗田县| 健康| 天台县| 鲁甸县| 深州市| 成武县| 镇坪县| 本溪市| 托克逊县| 德令哈市| 博客| 涞水县| 陕西省| 佛教| 枝江市| 三门峡市| 伊川县| 禄丰县| 普定县| 荥经县| 田林县| 鲁甸县| 聊城市| 全椒县| 宁河县| 紫阳县| 若尔盖县| 兴国县| 临汾市| 南木林县| 平武县| 通州市| 长沙市| 吐鲁番市| 辽宁省| 沙坪坝区| 新民市|