Discuz!官方免费开源建站系统

 找回密码
 立即注册
搜索

上传图片加水印后质量超级低啊!!

[复制链接]
manchumuq 发表于 2008-12-14 00:26:53 | 显示全部楼层 |阅读模式
请问UcHome后台有设定生成图片质量的选项么?我没有找到。。。
就是类似与Discuz的那种,现在的默认图片质量太差了啊,惨不忍睹,根本没法开水印的功能了。。。
而且对于图片在什么尺寸范围加水印与否的设置也没有。。。全听程序自己的。。。很囧啊!!
回复

使用道具 举报

 楼主| manchumuq 发表于 2008-12-14 01:50:41 | 显示全部楼层
自己顶一下啊!!!
回复

使用道具 举报

 楼主| manchumuq 发表于 2008-12-16 15:02:07 | 显示全部楼层
再頂一下啊,難道都沒有其他人有同感麼?
回复

使用道具 举报

gaoqi125 发表于 2008-12-16 15:49:49 | 显示全部楼层
非常有同感!!!给官方反应没一点声音!
回复

使用道具 举报

maoqoo 发表于 2008-12-16 15:59:44 | 显示全部楼层
我把DZ和UCH和到一块了
回复

使用道具 举报

 楼主| manchumuq 发表于 2008-12-16 17:06:23 | 显示全部楼层
請問怎麼實現“和到一塊”?能擁有像Discuz!那樣完善的附件上傳功能麼?
回复

使用道具 举报

bg1fmo 发表于 2008-12-22 00:40:43 | 显示全部楼层
我们也被用户抱怨了( http://17salsa.net
以为是 GD 库的水印叠加算法问题,于是换了 ImageMagick,修改附后。

可是更换为 ImageMagic 后发现同样有图片质量下降严重的问题。
(即便是把质量提高到 92,缺省是72)

希望官方能够尽快给一个解决方案,否则水印功能对用户照片影响太严重了。

使用ImageMagick的代码(也许有办法能让他提高质量?)

在 /home/source/function_image.php 中的 121 行 makewatermark($srcfile) 函数中:

最开始处增加判断:
    if ( function_exists('NewMagickWand') )
    {   
        makewatermark_imagemagic($srcfile);
//        error_log("makewaatermark TESTING");
        return;
    }


然后在文件最末尾增加新函数 makewatermark_imagemagic($srcfile) :

function makewatermark_imagemagic($srcfile) {
    global $_SGLOBAL;
            
    include_once(S_ROOT.'./data/data_setting.php');
        
    //??¨®?¨ª???
    $watermarkfile = empty($_SGLOBAL['setting']['watermarkfile'])?S_ROOT.'./image/watermark.png'_SGLOBAL['setting']['watermarkfile'];
    if(!file_exists($watermarkfile) || !$water_info = getimagesize($watermarkfile)) {
        return '';
    }
   
    $water_w = $water_info[0];
    $water_h = $water_info[1];
    $water_im = NewMagickWand();
    @MagickReadImage($water_im, $watermarkfile);
   
    if(empty($water_im)) {
        return '';
    }      
            
    //?-¨ª?  
    if(!file_exists($srcfile) || !$src_info = getimagesize($srcfile)) {
        return '';
    }      
    $src_w = $src_info[0];
    $src_h = $src_info[1];¡Á¨®
    $src_im = NewMagickWand();
    switch($src_info[2]) {
        case 1:
            //?D??¨º?¡¤??a?¡¥?-
            $fp = fopen($srcfile, 'rb');
            $filecontent = fread($fp, filesize($srcfile));
            fclose($fp);
            if(strpos($filecontent, 'NETSCAPE2.0') === FALSE) {//?¡¥?-¨ª?2??¨®??¨®?
                @MagickReadImage($src_im, $srcfile);
            }
            break;
        default:
            @MagickReadImage($src_im, $srcfile);
            break;
    }
    if(empty($src_im)) {¨º???t
        return '';
    }   
        
    //?¨®??¨®?¦Ì?¨ª???¦Ì?3¡è?¨¨?¨°?¨ª?¨¨¡À¨¨??¨®?D?150px
    if(($src_w < $water_w + 150) || ($src_h < $water_h + 150)) {
        return '';
    }
   
    //????
    switch($_SGLOBAL['setting']['watermarkpos']) {
        case 1://?&#163;¤???¨&#174;&#161;&#193;¨&#174;
            $posx = 0;
            $posy = 0;
            break;
        case 2://?&#163;¤???¨&#174;¨&#174;¨°
            $posx = $src_w - $water_w;
            $posy = 0;
            break;
        case 3://&#166;&#204;&#161;&#193;???¨&#174;&#161;&#193;¨&#174;
            $posx = 0;
            $posy = $src_h - $water_h;
            break;
        case 4://&#166;&#204;&#161;&#193;???¨&#174;¨&#174;¨°
            $posx = $src_w - $water_w;
            $posy = $src_h - $water_h;
            break;
        default://???¨&#178;
            $posx = mt_rand(0, ($src_w - $water_w));
            $posy = mt_rand(0, ($src_h - $water_h));
            break;
    }

    @MagickCompositeImage($src_im, $water_im, MW_AtopCompositeOp, $posx, $posy );
    MagickSetImageCompressionQuality($src_im, 92);
    if( !MagickWriteImage($src_im, $srcfile) )
    {   
        error_log("MagickWriteImage failed!");
    }

    DestroyMagickWand($src_im);
    DestroyMagickWand($water_im);
}
回复

使用道具 举报

J16988 发表于 2008-12-23 00:19:32 | 显示全部楼层
非常有同感!!!给官方反应没一点声音!
加了水印,图片自动缩小了,质量下降了.
回复

使用道具 举报

xiongrui888 发表于 2008-12-25 13:48:13 | 显示全部楼层
我的也是,希望官方重视
回复

使用道具 举报

Discuz8.0 发表于 2009-3-25 16:03:49 | 显示全部楼层
质量超级低啊!质量超级低啊!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-9-14 16:53 , Processed in 0.103105 second(s), 14 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表