检测单色图像中最右边黑色像素的 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:)
您可以添加 w
和 x
:
((right=w+x))
您可能想也可能不想从上面的答案中减去 1。
我不知道你到底想做什么,但你可能只想 trim 你的字母到他们最小的边界框:
magick YOURIMAGE -trim result.png
我正在尝试编写一些脚本来从 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:)
您可以添加 w
和 x
:
((right=w+x))
您可能想也可能不想从上面的答案中减去 1。
我不知道你到底想做什么,但你可能只想 trim 你的字母到他们最小的边界框:
magick YOURIMAGE -trim result.png