如何在 image magick 命令行用法的上下文中定义冒号运算符

How is the colon operator defined in the context of image magick command line usage

我找不到这方面的任何文档。

我在 image magick documentation 中找到了使用冒号但没有明确说明如何解释冒号的示例。

示例令人困惑;

magick -size 640x480 pattern:checkerboard checkerboard.png

建议它将左侧的属性(模式)设置为右侧的值(棋盘格)

然后

magick -size 640x480 -depth 8 rgb:image image.png

建议它将图像的文件类型(右边的东西)设置为它的左边

编辑

这完全是我脑子放的屁;我在想(出于各种原因)"image" 是 made/assigned rgb 的东西,这是没有意义的(因为 "image" 是文件名/输入参数)。

明智的解释显然是将 rgb 作为一种事物(rgb 类型的图像)分配给文件 "image" 中的信息。

所以至少从这两个例子来看,冒号似乎只是 assigns/applies 右手操作数到左手操作数,正如您所期望的那样。

冒号有多种用法。

一些创建自己的 canvas 的选项有一个冒号,例如:

  • xc: 创建一个 canvas
  • gradient:colourA-colourB 创建从 colourA 到 colourB 的渐变
  • tile: 创建重复图块
  • radial-gradient: 创建径向渐变
  • rose: 创建 built-in 玫瑰图像
  • pattern: 如您所见built-in 模式
  • logo: 用于 ImageMagick 徽标
  • label: 用于文本标签
  • caption: 用于文字说明

然后冒号有时会在文件名前加上前缀,以告诉 ImageMagick 里面有什么。这是您的 rgb: 用例,它是必需的,因为文件名恰好没有以 .rgb 结尾。其他例子是:

  • gray: 当灰度输入文件不以 .gray
  • 结尾时
  • tif:fd:5 从文件描述符 5
  • 读取一个 TIFF

或者告诉它写入文件的特定变体,例如:

  • PNG8: 写一个调色板 PNG
  • PNG24: 写一个 RGB888 PNG
  • PNG32: 用 alpha 写一个 RGBA8888 PNG
  • PTIF:写一个金字塔TIFF
  • BMP3: 编写 Microsoft BMP 版本 3 文件
  • fd:3 在文件描述符 3 上写入输出
  • gif:fd:4 在文件描述符 4 上以 GIF 格式写入输出

有一些文档 here