欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

nginx如何通過(guò)PHP代理給圖片加水印

本篇內(nèi)容主要講解“nginx如何通過(guò)PHP代理給圖片加水印”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“nginx如何通過(guò)PHP代理給圖片加水印”吧!

創(chuàng)新互聯(lián)是一家專業(yè)提供周寧企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站制作、做網(wǎng)站H5頁(yè)面制作、小程序制作等業(yè)務(wù)。10年已為周寧眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。

nginx如何通過(guò)PHP代理給圖片加水印

nginx 配置代理

location ~ /image/.*\.(gif|jpg|jpeg|png)$ {
    proxy_pass http://127.0.0.1:8888/test/watermark?url=$request_uri;
}

/img/ 匹配要代理的目錄前綴,$request_uri 參數(shù)為訪問(wèn)的圖片路徑。

php 水印類

/** 水印類
 * Class Watermark
 * @package app\test
 */
class Watermark
{
    /** 合成圖片水印
     * @param string $dstImage 原圖片
     * @param string $waterImg 水印圖
     */
    public static function imageMarking($dstImage, $waterImg){
        //獲取圖片信息
        $dstInfo = getimagesize($dstImage);
        $waterInfo = getimagesize($waterImg);
        //創(chuàng)建圖像
        $dstImgObj = self::imageCreateFrom($dstImage, $dstInfo[2]);
        $waterImgObj = self::imageCreateFrom($waterImg, $waterInfo[2]);
        //合成水印
        imagecopyresized($dstImgObj,$waterImgObj,0, 0,0,0,$dstInfo[0], $dstInfo[1],$waterInfo[0],$waterInfo[1]);
        //輸出圖片
        self::imageOut($dstImgObj,$waterInfo[2]);
        //銷毀資源對(duì)象
        imagedestroy($dstImgObj);
        imagedestroy($waterImgObj);
    }
    /** 生成圖片對(duì)象
     * @param string $imgFile 圖片路徑
     * @param string $type 圖片類型
     * @return false|\GdImage|resource
     */
    private static function imageCreateFrom($imgFile, $type) {
        switch ($type) {
            case IMAGETYPE_GIF:
                return imagecreatefromgif($imgFile);
            case IMAGETYPE_JPEG:
                return imagecreatefromjpeg($imgFile);
            case IMAGETYPE_PNG:
                return imagecreatefrompng($imgFile);
            default :   //其他格式
        }
    }
    /** 輸出圖片
     * @param string $imageObj
     * @param string $type
     */
    private static function imageOut($imageObj,$type){
        switch ($type) {
            case 1:
                header("Content-Type: image/gif");
                imagegif($imageObj);
                break;
            case 2:
                header("Content-Type: image/jpeg");
                imagejpeg($imageObj);
                break;
            case 3:
                header("Content-Type: image/png");
                imagepng($imageObj);
                break;
            default: //其他格式
        }
    }
}

調(diào)用示例

public function watermark(){
    //圖片路徑前綴
    $image = '/data/img/' . input('url');
    self::imageMarking($image,'watermark.png');
    exit;
}

到此,相信大家對(duì)“nginx如何通過(guò)PHP代理給圖片加水印”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

網(wǎng)頁(yè)標(biāo)題:nginx如何通過(guò)PHP代理給圖片加水印
分享路徑:http://www.chinadenli.net/article38/gepcsp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作定制開(kāi)發(fā)ChatGPT網(wǎng)站內(nèi)鏈網(wǎng)站建設(shè)手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)