ImageMagick:这个convert-command在做什么?

时间:2010-10-15 12:05:23

标签: php ruby imagemagick

我正在尝试将PHP脚本移植到Ruby,直到现在我只使用ImageMagick从一种文件格式转换为另一种文件格式。含义:是的,我是一名ImageMagick新手。 ;-)

在PHP脚本内部的某处执行以下代码:

$output = array();
$returnValue = 0;
$cmd = 'convert '.$pngFile->path.' -resize 1x1 -alpha on -channel o -format "%[fx:u.a]" info:'
exec($cmd, $output, $returnValue);

使用ImageMagick documentation for convert我确定了以下选项:

  • -resize 1x1调整为1x1像素(对吗?)
  • -alpha on激活alpha-channel
  • -channel o将选项应用于不透明度图像通道

我的问题:

  1. -format "%[fx:u.a]"到底做了什么?我知道u序列中的第一张图片的符号,而a alpha 的符号。但是我不知道整个表达的真正含义。
  2. info:代表什么?
  3. 这个convert-command究竟做了什么?
  4. 非常感谢您的帮助。

    请注意:以下问题的接受答案对此问题有一个非常好的答案:

    Understanding ImageMagick's convert and translating to Ruby RMagick

1 个答案:

答案 0 :(得分:4)

好像它正在计算平均不透明度。 info格式是一种虚拟图像格式,它将以:格式指示将输出图像信息转换为stdout(%[fx:u.a]表示stdout)。调整大小为1x1可能是一种平均的方法。