检测单色图像中最右边黑色像素的 x 值?

Detect x-value of right-most black pixel within a monochrome image?

我正在尝试编写一些脚本来从 Mac Plus 模拟器中转换一些历史字体。我在屏幕上单独捕获每个字形的地方得到了它,并且我已经预先计算了它的高度和左边距,这允许我大部分按照我需要的方式裁剪它。但是这些字体好像是成比例的,有几个字符比其余的都宽。

是否可以使用 shell 脚本工具确定最右侧黑色像素的 x 值?由于我已经在使用 Imagemagick,它可以自己完成吗?我原本打算将其作为一个快速而肮脏的项目,所以我想尽可能避免使用较重的脚本语言(perl,python)。

试试这个以获得 trim 框:

magick YOURIMAGE format %@ info:
6x10+1+5

您可以像这样将宽度、高度、x 偏移量和 y 偏移量读取到 bash 变量中:

IFS='[x+]' read w h x y < <(magick YOURIMAGE -format %@ info:)

您可以添加 wx

((right=w+x))

您可能想也可能不想从上面的答案中减去 1。


我不知道你到底想做什么,但你可能只想 trim 你的字母到他们最小的边界框:

magick YOURIMAGE -trim result.png