中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用PHP在對圖片背景進行處理

發布時間:2020-12-14 15:39:47 來源:億速云 閱讀:196 作者:Leah 欄目:開發技術

今天就跟大家聊聊有關利用PHP在對圖片背景進行處理,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

使用imagecreate()和imageCreateTrueColor()兩個函數去創建畫布資源。但如果需要對自己已有的圖片進行處理,只要將這個圖片作為畫布資源即可,也就是我們所說的創建圖片背景。可以通過下面介紹的幾個函數,打開服務器或網絡文件中已經存在的GIF、JPEG和PNG圖像,返回一個圖像標識符,代表了從給定的文件名取得的圖像作為操作的背景資源。它們的原型如下所示,它們在失敗時都會返回一個空字符串,并且輸出一條錯誤信息。

代碼如下:

  resource  imagecreatefromjpeg(string $filename)           //從JPEG文件或URL新建一圖像
  resource  imagecreatefrompng(string $filename)             //從PNG文件或URL新建一圖像
  resource  imagecreatefromgif(string $filename)            //從GIF文件或URL新建一圖像

  不管使用哪個函數創建的圖像資源,用完以后都需要使用imagedestroy()函數進行銷毀。再有就是圖片格式對應的問題,任何一種方式打開的圖片資源都可以保存為同一種格式。例如,對于使用imagecreatefromjpeg()函數創建的圖片資源,可以使用imagepng()函數以PNG格式將圖像輸出到瀏覽器或文件。當然最好是打開的是哪種格式的圖片,就保存成對應的圖片格式。如果要做到這一點,我們還需要先認識一下getimagesize()函數,通過圖片名稱就可以獲取圖片的類型、寬度和高度等。該函數的原型如下所示:

 代碼如下:

  array  getimagesize(string filename[,array &imageinfo])             //獲取圖片的大小和類型

  如果不能訪問filename指定的圖像或者其不是有效圖像,該函數將返回FALSE并產生一條E_WARNING級的錯誤。如果不出錯,getimagesize()返回一個具有四個單元的數組,索引0包含圖像寬度的像素值,索引1包含圖像高度的索引值,索引2是圖像類型的標記:1=GIF,2=JPG,3=PNG,4=SWF等,索引3是文本字符串,內容為“height=”yyy”  width=”xxx””,可以直接用于<IMG>標記。如下所示:

<?php
list($width,$height,$type,$attr) = getimagesize("image/brophp.jpg");echo "<img src='image/brophp.jpg'".$attr.">";?>

  下面的例子聲明一個image()函數,可以打開GIF、JPG和PNG中任意格式的圖片,并在圖片的中間加上一個字符串后,保存成原來的格式(文字水印)。在以后的開發中,如果需要同樣的操作(打開的是哪種格式的圖片,也保存成對應格式的文件),可以參與本例的模式,代碼如下所示:

<?php
    //向不同格式的圖片中間畫一個字符串(也是文字水印)
    function image($filename,$string){
        //獲取圖片的屬性,第一個寬度,第二個高度,類型1=>gif,2=>jpeg,3=>png
        list($width,$height,$type) = getimagesize($filename);
        //可以處理的圖片類型
        $types = array(1=>"gif",2=>"jpeg",3=>"png",);
        //通過圖片類型去組合,可以創建對應圖片格式的,創建圖片資源的GD庫函數
        $createfrom = "imagecreatefrom".$types[$type];
        //通過“變量函數”去打對應的函數去創建圖片的資源
        $image = $createfrom($filename);
        //設置居中字體的X軸坐標位置
        $x = ($width-imagefontwidth(5)*strlen($string))/2;
        //設置居中字體的Y軸坐標位置
        $y = ($height-imagefontheight(5))/2;
        //設置字體的顏色為紅色
        $textcolor = imagecolorallocate($image, 255, 0, 0);
        //向圖片畫一個指定的字符串
        imagestring($image, 5, $x, $y, $string, $textcolor);
        //通過圖片類型去組合保存對應格式的圖片函數
        $output = "image".$types[$type];
        //通過變量函數去保存對應格式的圖片
        $output($image,$filename);
        imagedestroy($image);
    }
    image("brophp.gif","GIF");
    image("brophp.jpg", "JPEG");
    image("brophp.png", "PNG");
?>

看完上述內容,你們對利用PHP在對圖片背景進行處理有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

黔西县| 永泰县| 固镇县| 金昌市| 望奎县| 屯留县| 南木林县| 四会市| 电白县| 拜城县| 綦江县| 宁晋县| 和田县| 金溪县| 大关县| 曲靖市| 曲阳县| 绩溪县| 石景山区| 东安县| 永春县| 普宁市| 内丘县| 锡林浩特市| 普兰县| 海安县| 兴业县| 凯里市| 镇坪县| 汕头市| 安化县| 章丘市| 同德县| 宁远县| 汽车| 墨脱县| 黑山县| 澜沧| 莱州市| 鲁甸县| 涿州市|