gpt4 book ai didi

php - 在 php 中去隔行扫描 png

转载 作者:搜寻专家 更新时间:2023-10-31 20:36:18 25 4
gpt4 key购买 nike

我尝试使用 php 函数去隔行扫描 png 图片。

我在某处找到了导致此解决方案的提示:

$img = imagecreatefrompng("interlaced.png");

imageinterlace($img, 0);
$black = imagecolorallocate($img, 0,0,0);
imagecolortransparent($img, $black);
imagepng($img, "deinterlaced.png");

不幸的是,这不仅会保留透明区域,还会在图片使用纯黑色的地方时扩展它们。

是否有另一种不使用 imagecolorallocate 去隔行扫描的可能性?

我已经尝试过使用 imagesavealpha,但是没有用,或者我用错了:

$img = imagecreatefrompng("interlaced.png");

imagealphablending($png, false);
imagesavealpha($png, true);

imageinterlace($img, 0);
imagepng($img, "deinterlaced.png");

这会导致所有透明区域都是黑色的(这可能是我当时在imagecolortransparent中选择rgb0,0,0的原因)

最佳答案

你的第二个代码块可以正常工作,但有一个小错误; imagealphablendingimagesavealpha 传递了不正确的资源,即 $png 而不是 $img

更正后的代码:

$img = imagecreatefrompng("interlaced.png");

imagealphablending($img, false);
imagesavealpha($img, true);

imageinterlace($img, 0);
imagepng($img, "deinterlaced.png");

关于php - 在 php 中去隔行扫描 png,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34272250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com