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

Bash 检测单色图像中最右边黑色像素的x值?,bash,shell,imagemagick,Bash,Shell,Imagemagick,我正试图编写一些脚本来转换Mac Plus模拟器上的一些历史字体。我已经在屏幕上分别捕获了每个字形,并且我已经预先计算了它的高度和左边距,这让我可以按照我需要的方式来裁剪它。但这些字体似乎是成比例的,而且有几个字符比其他字符宽 是否可以使用shell脚本工具确定最右边黑色像素的x值?既然我已经在使用Imagemagick,它自己能做到吗?我本来打算让它成为一个快速而肮脏的项目,所以我希望尽可能避免使用更重的脚本语言(perl、python) 尝试以下操作以获得装饰框: magick YOURI

我正试图编写一些脚本来转换Mac Plus模拟器上的一些历史字体。我已经在屏幕上分别捕获了每个字形,并且我已经预先计算了它的高度和左边距,这让我可以按照我需要的方式来裁剪它。但这些字体似乎是成比例的,而且有几个字符比其他字符宽

是否可以使用shell脚本工具确定最右边黑色像素的x值?既然我已经在使用Imagemagick,它自己能做到吗?我本来打算让它成为一个快速而肮脏的项目,所以我希望尽可能避免使用更重的脚本语言(perl、python)


尝试以下操作以获得装饰框:

magick YOURIMAGE format %@ info:
6x10+1+5
您可以将宽度、高度、x偏移和y偏移读入
bash
变量,如下所示:

IFS='[x+]' read w h x y < <(magick YOURIMAGE -format %@ info:)
你可能想,也可能不想,从上面的答案中减去1


我不知道您实际上想做什么,但您可能只想将字母修剪到最小的边框:

magick YOURIMAGE -trim result.png

请展示几个示例图像。谢谢你。@MarkSetchell不知道为什么它应该重要,但编辑后包含了这些图像。MacWrite 1.0位图日内瓦,12pt粗体。更容易为您看到的问题提出解决方案。因此,对于第一张图像,您得到了
6x10+1+5
,这意味着
g
x=1
y=5
开始,宽6px,高10px。看起来我可以使用-trim本身来修剪右侧。。。我从来不知道它能做到这一点。我刚刚发现了fx表达式。。。我可以在一个模组内精确计算出我需要的宽度。非常感谢。你可以花半辈子的时间学习它的能力
magick YOURIMAGE -trim result.png