Browse Source

水印第一步,改方法

lizhen_gitee 1 year ago
parent
commit
778cc3c63f
1 changed files with 17 additions and 10 deletions
  1. 17 10
      application/common.php

+ 17 - 10
application/common.php

@@ -512,14 +512,18 @@ function info_domain_image($data,$field,$extend = []){
     foreach($data as $key => $val){
         if(in_array($key,$field)){
             $more = strpos($key,'images');
-            $data[$key] = one_domain_image($val,$more,$extend);
+            $water_icon = false;
+            if($field == 'image' || $field == 'images'){
+                $water_icon = true;
+            }
+            $data[$key] = one_domain_image($val,$more,$extend,$water_icon);
         }
     }
     return $data;
 }
 //支持单个字段,需要增加domain_cdnurl
 //支持image,images
-function one_domain_image($one,$more = false,$extend = []){
+function one_domain_image($one,$more = false,$extend = [],$water_icon = false){
     if(!$one){
         return $one;
     }
@@ -527,32 +531,35 @@ function one_domain_image($one,$more = false,$extend = []){
         //逗号隔开的多个图片
         $one = explode(',',$one);
         foreach($one as $k => $v){
-            $one[$k] = localpath_to_netpath($v,$extend);
+            $one[$k] = localpath_to_netpath($v,$extend,$water_icon);
         }
         $one = implode(',',$one);
     }else{
-        $one = localpath_to_netpath($one,$extend);
+        $one = localpath_to_netpath($one,$extend,$water_icon);
     }
     return $one;
 }
 //本地地址转换为网络地址
-function localpath_to_netpath($path,$extend = [])
+function localpath_to_netpath($path,$extend = [],$water_icon = false)
 {
     //水印参数
-    $username = isset($extend['username']) ? $extend['username'] : 'Tken';
-    $water_icon = water_icon($username);
+    $water_param = '';
+    if($water_icon == true){
+        $username = isset($extend['username']) ? $extend['username'] : 'Tken';
+        $water_param = water_param($username);
+    }
 
     //
     if (empty($path)) {
         return '';
     } elseif (strrpos($path, 'http') !== false) {
         if(strrpos($path, 'https://oss.tken.vip') !== false) {
-            return $path.$water_icon;  //oss的才加水印参数
+            return $path.$water_param;  //oss的才加水印参数
         }else{
             return $path;
         }
     } else {
-        return config('domain_cdnurl') . str_replace("\\", "/", $path).$water_icon; //加水印
+        return config('domain_cdnurl') . str_replace("\\", "/", $path).$water_param; //加水印
     }
 }
 
@@ -868,7 +875,7 @@ if (!function_exists('httpurllocal')) {
  * 传入用户展示id
  * https://developer.qiniu.com/dora/1316/image-watermarking-processing-watermark
  */
-function water_icon($username){
+function water_param($username){
     $shuiyin_img = 'kodo://tken'.config('site.shuiyin') ?: 'kodo://tken/logo.png';
     $username    = !empty($username) ? $username : 'Tken';
     $param_str = '?watermark/3/image/'.base64_encode($shuiyin_img).'/dissolve/50/ws/0.1/wst/0/text/'.base64_encode('@'.$username).'/fontsize/300/dissolve/80/gravity/SouthWest/dx/20/dy/20/fill/'.base64_encode('#FFFFFF');