douleng3463 2015-12-31 21:30
浏览 103

使用Imagick重新调整大小的PNG是黑色的... PHP中缺少的步骤是什么?

When I use Imagick in PHP to resize PNG images, the output images are black. This is not the case when I resize JPGs; the PHP procedure (provided below) works perfectly for JPGs, so I suspect there's a missing step when processing PNG files.

I've first tested the conversion using ImageMagick on my local computer using this command:

convert x.png -resize 528 -filter Lanczos x-resized.png

...and it works; the resulting PNG file displays and is resized appropriately.

However, when I attempt to do the same on my server (both localhost and live), the result is a black image.

The PHP code I'm using is:

$source = "x.png" // I provide the complete path in my routine, etc.
$destination = "x-resized.png" // likewise.

$im = new Imagick();
$im->readImage($source);
$im->setImageFormat("png");
$im->resizeImage(528, null, Imagick::FILTER_LANCZOS, 1);
$im->writeImage($destination);
$im->clear();

What am I doing incorrectly?

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 python变量和列表之间的相互影响
    • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
    • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
    • ¥15 CSAPPattacklab
    • ¥15 一直显示正在等待HID—ISP
    • ¥15 Python turtle 画图
    • ¥15 关于大棚监测的pcb板设计
    • ¥15 stm32开发clion时遇到的编译问题
    • ¥15 lna设计 源简并电感型共源放大器
    • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)