1

我正在使用 Symfony 2.3.*,当我使用 LiipImagineBundle 时,我的 app/logs/dev.log 中出现此错误。

request.CRITICAL: Uncaught PHP Exception Imagine\Exception\InvalidArgumentException: "png_compression_level option should be an integer from 0 to 9" at /vendor/imagine/imagine/lib/Imagine/Gd/Image.php line 535 {"exception":"[object] (Imagine\\Exception\\InvalidArgumentException: png_compression_level option should be an integer from 0 to 9 at /vendor/imagine/imagine/lib/Imagine/Gd/Image.php:535)"} []

有什么解决办法吗?谢谢

这是我的配置

liip_imagine:
    resolvers:
       default:
          web_path: ~
    filter_sets:
        cache: ~
        standard:
            quality: 200
            filters:
                thumbnail: { size: [400, 300], mode: outbound }
4

2 回答 2

6

如果您使用的是 SonataMediaBundle,请检查quality不超过 100。

于 2015-06-14T10:29:34.903 回答
1

我认为与质量设置有关。

在基本的Imagine捆绑包中,它具有..

// Preserve BC until version 1.0
    if (isset($options['quality']) 
        && !isset($options['png_compression_level'])) {
        $options['png_compression_level'] = 
            round((100 - $options['quality']) * 9 / 100);
    }

    // ...

    if ($format === 'png') {
        if (isset($options['png_compression_level'])) {
            if ($options['png_compression_level'] < 0 
                || $options['png_compression_level'] > 9) {
                throw new InvalidArgumentException(
                    'png_compression_level option should be an integer from 0 to 9'
                );
            }
            $args[] = $options['png_compression_level'];
        } else {
            $args[] = -1; // use default level
        }

        // ...
    }

你的过滤器设置是什么?

于 2014-07-18T09:54:30.657 回答