Imagick накладывается на любой файл png

Я тестирую свою систему миниатюр с реализацией Imagick, и форматы jpg, webp работают нормально, но с png всегда вылетает:

Я пробовал переустановить imagick в системе с imei (https://github.com/SoftCreatR/imei/), но это не помогло.

Я использую PHP 8.3, и вот моя информация об imagick:

Я проверил свои файлы с помощью онлайн-проверок, и они посчитали их подходящими и не поврежденными (использовал https://onlinepngtools.com/verify-if-image-is-png).

Я загружаю и изменяю размер файла, используя этот code (одинаковый code для всех расширений):

improper image header `/tmp/magick-PZJ-3aRiFe47BDqi3TXcH9qfg9muXbnF' @ error/png.c/ReadPNGImage/4107
/etc/php/8.3/cli/conf.d/20-imagick.ini,
imagick
imagick module => enabled
imagick module version => 3.7.0
imagick classes => Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel
imagick.allow_zero_dimension_images => 0 => 0
imagick.locale_fix => 0 => 0
imagick.progress_monitor => 0 => 0
imagick.set_single_thread => 1 => 1
imagick.shutdown_sleep_count => 10 => 10
imagick.skip_version_check => 1 => 1
        $imagick = new \Imagick();
        $imagick->readImageFile($structure->getResource()); // Throw is coming from here

        $imagick->resizeImage(
            $width ?? $imagick->getImageWidth(),
            $height ?? $imagick->getImageHeight(),
            \Imagick::FILTER_CATROM,
            0,
            $config->autoResize,
        );
Евгений
Вопрос задан30 августа 2024 г.

1 Ответ

Ваш ответ

Загрузить файл.