中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      php對圖像的各種處理函數代碼總結

      時間:2024-07-03 23:11:37 PHP 我要投稿
      • 相關推薦

      php對圖像的各種處理函數代碼總結

        一、創建圖片資源

        imagecreatetruecolor(width,height);

      php對圖像的各種處理函數代碼總結

        imagecreatefromgif(圖片名稱);

        imagecreatefrompng(圖片名稱);

        imagecreatefromjpeg(圖片名稱);畫出各種圖像 imagegif(圖片資源,保存路徑);

        imagepng()

        imagejpeg();

        二、獲取圖片屬性

        imagesx(res//寬度

        imagesy(res//高度

        getimagesize(文件路徑)

        返回一個具有四個單元的數組。索引 0 包含圖像寬度的像素值,索引 1 包含圖像高度的像素值。索引 2 是圖像類型的.標記: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,15 = WBMP,16 = XBM。這些標記與 PHP 4.3.0 新加的 IMAGETYPE 常量對應。索引 3 是文本字符串,內容為“height="yyy" width="xxx"”,可直接用于 IMG 標記。

        銷毀圖像資源

        imagedestroy(圖片資源);

        三、透明處理

        PNG、jpeg透明色都正常,只有gif不正常

        imagecolortransparent(resource image [,int color])//將某個顏色設置成透明色

        imagecolorstotal()

        imagecolorforindex();

        四、圖片的裁剪

        imagecopyresized()

        imagecopyresampled();

        五、加水印(文字、圖片)

        字符串編碼轉換string iconv ( string $in_charset , string $out_charset , string $str )

        六、圖片旋轉

        imagerotate();//制定角度的圖片翻轉

        七、圖片的翻轉

        沿X軸 沿Y軸翻轉

        八、銳化

        imagecolorsforindex()

        imagecolorat()

        在圖片上畫圖形 $img=imagecreatefromgif("./images/map.gif");

        復制代碼 代碼如下:

        $red= imagecolorallocate($img, 255, 0, 0);

        imageline($img, 0, 0, 100, 100, $red);

        imageellipse($img, 200, 100, 100, 100, $red);

        imagegif($img, "./images/map2.gif");

        imagedestroy($img);

        圖片普通縮放

        復制代碼 代碼如下:

        $filename="./images/hee.jpg";

        $per=0.3;

        list($width, $height)=getimagesize($filename);

        $n_w=$width*$per;

        $n_h=$width*$per;

        $new=imagecreatetruecolor($n_w, $n_h);

        $img=imagecreatefromjpeg($filename);

        //拷貝部分圖像并調整

        imagecopyresized($new, $img,0, 0,0, 0,$n_w, $n_h, $width, $height);

        //圖像輸出新圖片、另存為

        imagejpeg($new, "./images/hee2.jpg");

        imagedestroy($new);

        imagedestroy($img);

        圖片等比例縮放、沒處理透明色

        復制代碼 代碼如下:

        function thumn($background, $width, $height, $newfile) {

        list($s_w, $s_h)=getimagesize($background);//獲取原圖片高度、寬度

        if ($width && ($s_w < $s_h)) {

        $width = ($height / $s_h) * $s_w;

        } else {

        $height = ($width / $s_w) * $s_h;

        }

        $new=imagecreatetruecolor($width, $height);

        $img=imagecreatefromjpeg($background);

        imagecopyresampled($new, $img, 0, 0, 0, 0, $width, $height, $s_w, $s_h);

        imagejpeg($new, $newfile);

        imagedestroy($new);

        imagedestroy($img);

        }

        thumn("images/hee.jpg", 200, 200, "./images/hee3.jpg");

        gif透明色處理

        復制代碼 代碼如下:

        function thumn($background, $width, $height, $newfile) {

        list($s_w, $s_h)=getimagesize($background);

        if ($width && ($s_w < $s_h)) {

        $width = ($height / $s_h) * $s_w;

        } else {

        $height = ($width / $s_w) * $s_h;

        }

        $new=imagecreatetruecolor($width, $height);

        $img=imagecreatefromgif($background);

        $otsc=imagecolortransparent($img);

        if($otsc >=0 && $otst < imagecolorstotal($img)){//判斷索引色

        $tran=imagecolorsforindex($img, $otsc);//索引顏色值

        $newt=imagecolorallocate($new, $tran["red"], $tran["green"], $tran["blue"]);

        imagefill($new, 0, 0, $newt);

        imagecolortransparent($new, $newt);

        }

        imagecopyresized($new, $img, 0, 0, 0, 0, $width, $height, $s_w, $s_h);

        imagegif($new, $newfile);

        imagedestroy($new);

        imagedestroy($img);

        }

        thumn("images/map.gif", 200, 200, "./images/map3.gif");

        圖片裁剪

        復制代碼 代碼如下:

        function cut($background, $cut_x, $cut_y, $cut_width, $cut_height, $location){

        $back=imagecreatefromjpeg($background);

        $new=imagecreatetruecolor($cut_width, $cut_height);

        imagecopyresampled($new, $back, 0, 0, $cut_x, $cut_y, $cut_width, $cut_height,$cut_width,$cut_height);

        imagejpeg($new, $location);

        imagedestroy($new);

        imagedestroy($back);

        }

        cut("./images/hee.jpg", 440, 140, 117, 112, "./images/hee5.jpg");

        圖片加水印

        文字水印

        復制代碼 代碼如下:

        function mark_text($background, $text, $x, $y){

        $back=imagecreatefromjpeg($background);

        $color=imagecolorallocate($back, 0, 255, 0);

        imagettftext($back, 20, 0, $x, $y, $color, "simkai.ttf", $text);

        imagejpeg($back, "./images/hee7.jpg");

        imagedestroy($back);

        }

        mark_text("./images/hee.jpg", "細說PHP", 150, 250);

        //圖片水印

        function mark_pic($background, $waterpic, $x, $y){

        $back=imagecreatefromjpeg($background);

        $water=imagecreatefromgif($waterpic);

        $w_w=imagesx($water);

        $w_h=imagesy($water);

        imagecopy($back, $water, $x, $y, 0, 0, $w_w, $w_h);

        imagejpeg($back,"./images/hee8.jpg");

        imagedestroy($back);

        imagedestroy($water);

        }

        mark_pic("./images/hee.jpg", "./images/gaolf.gif", 50, 200);

        圖片旋轉

        復制代碼 代碼如下:

        $back=imagecreatefromjpeg("./images/hee.jpg");

        $new=imagerotate($back, 45, 0);

        imagejpeg($new, "./images/hee9.jpg");

        圖片水平翻轉垂直翻轉

        復制代碼 代碼如下:

        function turn_y($background, $newfile){

        $back=imagecreatefromjpeg($background);

        $width=imagesx($back);

        $height=imagesy($back);

        $new=imagecreatetruecolor($width, $height);

        for($x=0; $x < $width; $x++){

        imagecopy($new, $back, $width-$x-1, 0, $x, 0, 1, $height);

        }

        imagejpeg($new, $newfile);

        imagedestroy($back);

        imagedestroy($new);

        }

        function turn_x($background, $newfile){

        $back=imagecreatefromjpeg($background);

        $width=imagesx($back);

        $height=imagesy($back);

        $new=imagecreatetruecolor($width, $height);

        for($y=0; $y < $height; $y++){

        imagecopy($new, $back,0, $height-$y-1, 0, $y, $width, 1);

        }

        imagejpeg($new, $newfile);

        imagedestroy($back);

        imagedestroy($new);

        }

        turn_y("./images/hee.jpg", "./images/hee11.jpg");

        turn_x("./images/hee.jpg", "./images/hee12.jpg");

        圖片銳化

        復制代碼 代碼如下:

        function sharp($background, $degree, $save){

        $back=imagecreatefromjpeg($background);

        $b_x=imagesx($back);

        $b_y=imagesy($back);

        $dst=imagecreatefromjpeg($background);

        for($i=0; $i<$b_x; $i++){

        for($j=0; $j<$b_y; $j++){

        $b_clr1=imagecolorsforindex($back, imagecolorat($back, $i-1, $j-1));前一個像素顏色數組

        $b_clr2=imagecolorsforindex($back, imagecolorat($back, $i, $j));取出當前顏色數組

        $r=intval($b_clr2["red"]+$degree*($b_clr2["red"]-$b_clr1["red"]));加深

        $g=intval($b_clr2["green"]+$degree*($b_clr2["green"]-$b_clr1["green"]));

        $b=intval($b_clr2["blue"]+$degree*($b_clr2["blue"]-$b_clr1["blue"]));

        $r=min(255, max($r, 0));//限制r范圍在0-255之間

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

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

        if(($d_clr=imagecolorexact($dst, $r, $g, $b))==-1){//等于1不在顏色范圍內

        $d_clr=Imagecolorallocate($dst, $r, $g, $b);//創建一個顏色

        }

        imagesetpixel($dst, $i, $j, $d_clr);

        }

        }

        imagejpeg($dst, $save);

        imagedestroy($back);

        imagedestroy($dst);

        }

        sharp("./images/hee.jpg", 20, "./images/hee13.jpg");

      【php對圖像的各種處理函數代碼總結】相關文章:

      PHP url 加密解密函數代碼方法03-31

      php字符串處理函數大全03-20

      php數組函數序列之array-combine() - 數組合并函數的代碼03-31

      關于PHP var-dump遍歷對象屬性的函數與應用代碼03-31

      PHP的壓縮函數03-31

      PHP中date函數常用時間處理方法03-31

      淺析php函數的實例04-01

      php如何過濾危險html代碼03-30

      將php實現過濾UBB代碼04-01

      主站蜘蛛池模板: 亚洲性69影视| 一区二区三区午夜视频在线观看| 亚洲大尺度动作在线观看一区| 婷婷国产亚洲性色av网站| 久久99国产亚洲高清观看首页| 精品少妇后入一区二区三区| 青青草视频在线观看视频网站 | 亚洲国产字幕| 国产精品欧美成人片| 欧美国产伦久久久久久久| 色综合999| 综合午夜福利中文字幕人妻| 岛国av网站在线播放| av一区二区精品在线| 土默特左旗| 亚洲精品中文有码字幕| 兴山县| 泌阳县| 大石桥市| 亚洲国产成人精品激情| 灯塔市| 精品人妻一区二区久久| 中文字幕一区二区三区久久蜜桃| 吃下面吃胸在线看无码| 新民市| 九九在线精品视频xxx| 亚洲一区二区三区在线视频观看| 曲沃县| 中文精品久久久久中文| 网友自拍人妻一区二区三区三州 | 国产av一区二区三区国产精品| 中文字幕人妻一区二区三区四区| japanese色国产在线看视频| 亚洲AV秘 无码一区二区在线| 国内少妇高潮嗷嗷叫在线观看| 国产亚洲成人精品一区| 国产91一区二这在线播放| 精选二区在线观看视频| 亚洲成人精品一区免费| 91国产超碰在线观看| 久久人妻av一区二区三区|