<li id="rm1re"><acronym id="rm1re"><cite id="rm1re"></cite></acronym></li>
    <rp id="rm1re"><object id="rm1re"></object></rp>

  1. <dd id="rm1re"><track id="rm1re"></track></dd><em id="rm1re"><acronym id="rm1re"></acronym></em>

    K9 通用版 博客版 主題版 地方門戶版 企業版 |   企業(ASP) 分類 使用 分享 疑問 模板 建議 幫助 錯誤 其他
    +新建主題 [Ajax]
    填寫帳號密碼即可完成注冊
    +新建話題 最新回復排序 最新主題排序 精華帖子

    KINGCMS PHP 支持添加水印

    1234Next >

    tx1860 發表于:12-09-13 13:45 [添加收藏] 樓主 [回復] #Top#
    tx1860 人氣:187 積分:352 金幣:2675
    KC元老

    1.打開system/lib/func.php

    查找

    if(kc_f_put_contents($path,$img)){//寫文件成功

    下面添加 

    $markImg = ROOT."images/watermark.png";
    if(is_file($markImg)){//確定文件存在
    setWater(ROOT.$path,$markImg,'','',9,'','img');

    }

    2.尾部添加水印函數,代碼見附件

    點擊打開鏈接

    3.上傳水印到images目錄,水印命名為watermark.png



    tx1860 發表于:12-09-13 13:45 沙發 [回復] #Top#
    tx1860 人氣:187 積分:352 金幣:2675
    KC元老
    支持 png 和GIF 兩種水印格式
    ww715519816 發表于:12-09-13 20:58 板凳 [回復] #Top#
    ww715519816 人氣:0 積分:36 金幣:40
    哈哈 學習了 不錯哦
    dbwlw 發表于:12-09-14 17:32 4樓 [回復] #Top#
    dbwlw 人氣:0 積分:43 金幣:20
    這是真的嗎,
    szhualv 發表于:12-09-14 22:30 5樓 [回復] #Top#
    szhualv 人氣:0 積分:132 金幣:20
    這個真是不錯。
    tx1860 發表于:12-09-15 11:54 6樓 [回復] #Top#
    tx1860 人氣:187 積分:352 金幣:2675
    KC元老
    = = 絕對真的
    b6281564 發表于:12-09-15 23:17 7樓 [回復] #Top#
    b6281564 人氣:15 積分:17 金幣:255
    高級的方法
    mycj 發表于:12-09-17 17:18 9樓 [回復] #Top#
    mycj 人氣:9 積分:35 金幣:268
    2.尾部添加水印函數,代碼見附件

    下載后是空的記事本呢?
    tx1860 發表于:12-09-17 19:53 10樓 [回復] #Top#
    tx1860 人氣:187 積分:352 金幣:2675
    KC元老
    我暈沒保存就傳上去了

    函數這個 


    function setWater($imgSrc,$markImg,$markText,$TextColor,$markPos,$fontType,$markType)
    {


             $srcInfo = @getimagesize($imgSrc);
             $srcImg_w = $srcInfo[0];
             $srcImg_h = $srcInfo[1];
                    
             switch ($srcInfo[2]) 
             { 
                    case 1: 
                         $srcim =imagecreatefromgif($imgSrc); 
                         break; 
                    case 2: 
                         $srcim =imagecreatefromjpeg($imgSrc); 
                         break; 
                    case 3: 
                         $srcim =imagecreatefrompng($imgSrc); 
                         break; 
                    default: 
                         die("不支持的圖片文件類型"); 
                         exit; 
             }
                    
             if(!strcmp($markType,"img"))
             {
                    if(!file_exists($markImg) || empty($markImg))
                    {
                         return;
                    }
                         
                    $markImgInfo = @getimagesize($markImg);
                    $markImg_w = $markImgInfo[0];
                    $markImg_h = $markImgInfo[1];
                         
                    if($srcImg_w < $markImg_w || $srcImg_h < $markImg_h)
                    {
                         return;
                    }
                         
                    switch ($markImgInfo[2]) 
                    { 
                         case 1: 
                         $markim =imagecreatefromgif($markImg); 
                         break; 
                         case 2: 
                         $markim =imagecreatefromjpeg($markImg); 
                         break; 
                         case 3: 
                         $markim =imagecreatefrompng($markImg); 
                         break; 
                         default: 
                         die("不支持的水印圖片文件類型"); 
                         exit; 
                    }
                         
                    $logow = $markImg_w;
                    $logoh = $markImg_h;
             }
                    
             if(!strcmp($markType,"text"))
             {
                    $fontSize = 16;
                    if(!empty($markText))
                    {
                         if(!file_exists($fontType))
                         {
                         return;
                         }
                    }
                    else {
                         return;
                    }
                         
                    $box = @imagettfbbox($fontSize, 0, $fontType,$markText);
                    $logow = max($box[2], $box[4]) - min($box[0], $box[6]);
                    $logoh = max($box[1], $box[3]) - min($box[5], $box[7]);
             }
                    
             if($markPos == 0)
             {
                    $markPos = rand(1, 9);
             }
                    
             switch($markPos)
             {
                    case 1:
                         $x = +5;
                         $y = +5;
                         break;
                    case 2:
                         $x = ($srcImg_w - $logow) / 2;
                         $y = +5;
                         break;
                    case 3:
                         $x = $srcImg_w - $logow - 5;
                         $y = +15;
                         break;
                    case 4:
                         $x = +5;
                         $y = ($srcImg_h - $logoh) / 2;
                         break;
                    case 5:
                         $x = ($srcImg_w - $logow) / 2;
                         $y = ($srcImg_h - $logoh) / 2;
                         break;
                    case 6:
                         $x = $srcImg_w - $logow - 5;
                         $y = ($srcImg_h - $logoh) / 2;
                         break;
                    case 7:
                         $x = +5;
                         $y = $srcImg_h - $logoh - 5;
                         break;
                    case 8:
                         $x = ($srcImg_w - $logow) / 2;
                         $y = $srcImg_h - $logoh - 5;
                         break;
                    case 9:
                         $x = $srcImg_w - $logow - 5;
                         $y = $srcImg_h - $logoh -5;
                         break;
                    default: 
                         die("此位置不支持"); 
                         exit;
             }
                    
             $dst_img = @imagecreatetruecolor($srcImg_w, $srcImg_h);
                    
             imagecopy ( $dst_img, $srcim, 0, 0, 0, 0, $srcImg_w, $srcImg_h);
                    
             if(!strcmp($markType,"img"))
             {
                    imagecopy($dst_img, $markim, $x, $y, 0, 0, $logow, $logoh);
                    imagedestroy($markim);
             }
                    
             if(!strcmp($markType,"text"))
             {
                    $rgb = explode(',', $TextColor);
                         
                    $color = imagecolorallocate($dst_img, $rgb[0], $rgb[1], $rgb[2]);
                    imagettftext($dst_img, $fontSize, 0, $x, $y, $color, $fontType,$markText);
             }
                    
             switch ($srcInfo[2]) 
             { 
                    case 1:
                         imagegif($dst_img, $imgSrc); 
                         break; 
                    case 2: 
                         imagejpeg($dst_img, $imgSrc); 
                         break; 
                    case 3: 
                         imagepng($dst_img, $imgSrc); 
                         break;
                    default: 
                         die("不支持的水印圖片文件類型"); 
                         exit; 
             }
                    
             imagedestroy($dst_img);
             imagedestroy($srcim);
    }
    mycj 發表于:12-09-18 15:55 11樓 [回復] #Top#
    mycj 人氣:9 積分:35 金幣:268
    1.把第一步中的代碼放進去后如下:
    if(kc_f_put_contents($path,$img)){//寫文件成功
    $markImg = ROOT."images/watermark.png";
    if(is_file($markImg)){//確定文件存在
    setWater(ROOT.$path,$markImg,'','',9,'','img');

    }
    return $path;
    }else{
    return $imgpath;
    }
    ……

    2.在system/lib/func.php尾部添加水印函數,我是直接將代碼放到?>前的

    3.水印圖片目錄:根目錄/images/watermark.png

    勞駕高手幫我看看,是哪步不對么?怎么我上傳的圖片沒有打水印呢?頁面也沒有報什么錯

    1234Next >

    發表回復

    帳號 匿名發布 審核后可見 [加載完整在線編輯器]
    內容
    驗證碼
    KingCMS 內容管理系統

    關于我們 聯系我們 廣告報價 付款方式 站點導航

    Copyright © 2004-2015 Focuznet All rights reserved.

    廣州唯眾網絡科技有限公司 粵ICP備08008106號

    国产精品视频一区二区在线
      <li id="rm1re"><acronym id="rm1re"><cite id="rm1re"></cite></acronym></li>
      <rp id="rm1re"><object id="rm1re"></object></rp>

    1. <dd id="rm1re"><track id="rm1re"></track></dd><em id="rm1re"><acronym id="rm1re"></acronym></em>