Параметр png_compression_level должен быть целым числом от 0 до 9
Я использую Symfony 2.3.*, И я получил эту ошибку в своем app/logs/dev.log, когда использую LiipImagineBundle.
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 }
2 ответа
Решение
Я думаю, что это связано с качеством настройки.
В базовой комплектации 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
}
// ...
}
Каковы ваши настройки фильтра?
Если вы используете SonataMediaBundle, проверьте, что quality
не более 100.