GraphicksMagic:白色 - >透明

时间:2015-12-10 22:15:59

标签: imagemagick image-manipulation graphicsmagick node-imagemagick

我发现了许多关于此的论坛帖子,但我发现的任何内容都没有为我解决:

我需要使用GraphicsMagick(或ImageMagick)将图像的白色背景转换为透明的图像。但是,当我运行以下任何命令时,背景变为黑色而不是透明。

在GraphicsMagick中我尝试过:

List<Order> FilterOrders(string filterText)
{
  return _orders.Where(order =>
    new[] {
    order.OrderIdFullOrderNumber,
    order.Name,
    order.Status,
    order.TimeRemaining,
    order.Address,
    order.City,
    order.State,
    order.PostalCode,
    }.Any(str => str != null
    && str.IndexOf(filterText, StringComparison.OrdinalIgnoreCase) >= 0)
    ).ToList();
}

enter image description here

我的应用程序在nodeJS中,因此使用GM包的nodeJS解决方案会更好;

gm convert input.png -opaque white output.png
gm convert input.png -fill transparent -opaque white output.png
gm convert input.png -background transparent -opaque white output.png
gm convert input.png -background transparent -fill transparent -opaque white output.png

2 个答案:

答案 0 :(得分:2)

这应该更简单:

gm convert wave.png -transparent white result.png

答案 1 :(得分:1)

图片还没有Alpha通道,因此请使用-matte

gm convert input.png -matte -fill transparent -opaque white output.png