2013-03-01 56 views
0

我正在使用Brett的Mr. PHP thumb caching script以及phpThumb创建我的拇指。它工作得非常好,除了一件事...我无法让它设置和处理UnSharpMask过滤器。脚本的相关部分看起来是这样的:phpThumb不设置参数 - fltr [] usm

// generate the thumbnail 
require('../phpthumb/phpthumb.class.php'); 
$phpThumb = new phpThumb(); 
$phpThumb->setSourceFilename($image); 
$phpThumb->setParameter('w',$width); 
$phpThumb->setParameter('h',$height); 
$phpThumb->setParameter('q','95'); // set the quality to 95% 
$phpThumb->setParameter('fltr[]','usm|80|0.5|3'); // <--- THIS SHOULD SET THE USM FILTER 
$phpThumb->setParameter('f',substr($thumb,-3,3)); // set the output file format 

if (!$phpThumb->GenerateThumbnail()) { 
    error('cannot generate thumbnail'); 
} 

我猜有一个与我的语法有问题,因为在外研社[]参数需要括号。我已经尝试像这样逃避方括号:'fltr []',但也没有工作。

我用良好的成功(缩放裁剪,最大高度,最大宽度等)一切似乎除了过滤器(包括USM - UnSharpMask)工作的其他几个可能的参数。

我没有收到任何错误。它整天吐出大拇指。他们只是没有磨尖。

仅供参考,下面的讨论所有可能的设置和过滤器的official phpThumb readme file

感谢您的期待。

回答

0

大量的试验,错误和恶化后好了,我终于发现了埋在附带phpThumb演示文件中的一个解决方案。

这是一个全部删除括号的问题。基本上改变这一行:

$phpThumb->setParameter('fltr[]','usm|80|0.5|3'); 

这样:

$phpThumb->setParameter('fltr','usm|80|0.5|3'); 

之后,这只是调整设置,以获得清晰的所需量的问题。