当前位置:编程学习 > php >>

PHP根据图片色阶确定位置打水印

直接分享源码

  1. <?php    
  2.     function add_wm($nmw_water, $src_file, $output_file, $x, $y) {    
  3.         if(file_exists($output_file))    
  4.             return;    
  5.     
  6.         $w1 = MagickGetImageWidth($nmw_water);    
  7.         $h1 = MagickGetImageHeight($nmw_water);    
  8.     
  9.         $nmw =NewMagickWand();    
  10.         MagickReadImage($nmw, $src_file);    
  11.     
  12.         // 默认的加水印位置调整    
  13.         $lt_w = 50;    
  14.         $lt_h = 50;    
  15.     
  16.         if($x == 0){    
  17.             $w = MagickGetImageWidth($nmw);    
  18.             $h = MagickGetImageHeight($nmw);    
  19.     
  20.             $x = $w;    
  21.             $y = $h;    
  22.         }else{    
  23.             // 根据具体情况调整    
  24.             $lt_w = 30;    
  25.             $lt_h = 40;    
  26.         }    
  27.     
  28.         MagickCompositeImage($nmw, $nmw_water, MW_OverCompositeOp, $x - $w1 - $lt_w, $y - $h1 - $lt_h);    
  29.         MagickWriteImage($nmw, $output_file);    
  30.     
  31.         DestroyMagickWand($nmw);            
  32.     }    
  33.     
  34.     // 还是groovy的eachFileRecurse好用啊    
  35.     function add_wm_recurse($nmw_water, $to_dir, $output_dir, $arr) {    
  36.         $dp = dir($to_dir);    
  37.         while($file=$dp->read()){    
  38.             if($file != . && $file != ..){    
  39.                 if(is_dir($to_dir . / . $file)){    
  40.                     mkdir($output_dir . / . $file);    
  41.                     add_wm_recurse($nmw_water, $to_dir . / . 
补充:Web开发 , php ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,