JPG - > PNG发布外部背景

时间:2016-03-09 13:38:47

标签: php image imagemagick

我确实有一些文章图片,这里以镜子为例。当然可以有其他几何形状,如瓶子,椅子。

图片均为JPEG格式。我想将这些文件转换为PNG格式。但我想摆脱外部的白色背景。

有没有办法通过php或者ImageMagick中的脚本来完成?

enter image description here

2 个答案:

答案 0 :(得分:2)

您可以使用ImageMagick的-draw来隔离颜色,并将其“填充”为透明。

 convert input.jpg \
         -fill transparent \
         -fuzz 20% \
         -draw 'color 15,15 floodfill' \
         out.png

有关其他很好的示例,请参阅Color Fill Primitives

对于PHP的Imagick库,你会做类似......

的事情
$img = new Imagick('input.jpg');

$draw = new ImagickDraw();
$draw->setFillColor('transparent');
$draw->color(15,15, Imagick::PAINT_FLOODFILL);

$img->drawImage($draw);
$img->writeImage('out.png');

答案 1 :(得分:2)

你可以这样做:

convert frame.jpg -fuzz 10% -fill none -draw 'color 10,10 floodfill' result.png

我在这里用红色绘制了效果,所以你可以看到它。

enter image description here