在Imagemagick中创建空白图像

qub*_*dup 20 imagemagick

如何通过命令行在Imagemagick中创建一个空白的新图像?

使用-background不起作用:

$ convert -size 800x800 -background white x.png
convert: no images defined `x.png' @ error/convert.c/ConvertImageCommand/3257.
Run Code Online (Sandbox Code Playgroud)

qub*_*dup 35

白色背景

convert -size 800x800 xc:white white.png
Run Code Online (Sandbox Code Playgroud)

xc:曾经的意思是"X恒定图像",但现在只是一个简写canvas:.这意味着您还可以使用:

convert -size 800x800 canvas:white white.png
Run Code Online (Sandbox Code Playgroud)

并且因为如果没有提供颜色,"white"是默认值,您还可以使用:

convert -size 800x800 xc: white.png
convert -size 800x800 canvas: white.png
Run Code Online (Sandbox Code Playgroud)

透明背景

如果"空白"表示"透明",只需将该单词用作颜色:

convert -size 800x800 xc:transparent transparent.png
Run Code Online (Sandbox Code Playgroud)

ImageMagick v6的答案示例如何创建新图像?

  • @MarkSetchell 虽然从人类最终用户的角度来看,我会说这不那么简单。我一直使用`-size`。另外学习`canvas:green`是这两个选项之间新信息量最少的。 (6认同)
  • 实际上,你可以通过使用画布指定大小来简单地做到这一点......`convert xc:[800x800 \!] white.png`或`convert xc:lime [800x800 \!] lime.png`. (4认同)
  • 我如何在不为 PNG 分配灰度颜色配置文件的情况下做到这一点? (3认同)

cjo*_*asw 10

如果计划使用此画布对彩色图像进行分层,则需要提供 PNG24、PNG8 或 PNG32 前缀。如果没有它,它会创建一个灰色空间。我使用了 32,因为我需要“每个像素具有不同程度的透明度”(像素艺术)

convert -size 800x800 canvas:transparent PNG32:canvas.png

有关 PNG 类型的更多信息,请参阅此链接