使用 ImageMagick 处理 9-Patch 图像
Posted
技术标签:
【中文标题】使用 ImageMagick 处理 9-Patch 图像【英文标题】:Process 9-Patch Image with ImageMagick 【发布时间】:2016-02-02 11:39:05 【问题描述】:如何?
为了简化,我需要对从左上角(1, 1)
到右下角(width - 2, height - 2)
结束的矩形应用任何 ImageMagick 操作。该操作不得触及图像的 1 像素边框。
例如,我想替换上述矩形中的颜色。我该怎么做?
【问题讨论】:
可能类似于-region +1+1 -gravity SouthEast -region -1-1 ...
?
-region 应该可以工作,但像 -crop 你需要一个大小和偏移量,所以它会像 -region 100x200+1+1 -colorspace gray
【参考方案1】:
有几种方法可以做到这一点。这有点取决于你想在中间做什么:-)
一种方法,是克隆图像,并一直剃掉一个 1 像素的边框,对 “稍微小一点”的图像进行操作,然后将结果合成回原始图像.
convert -gravity center image.png \
\( +clone -shave 1x1 -fill blue -colorize 100% \) \
-composite result.png
所以,我从一个红色矩形开始,复制并剃须,用蓝色填充,然后粘贴。
【讨论】:
这行得通。谢谢! (虽然有点慢。)以上是关于使用 ImageMagick 处理 9-Patch 图像的主要内容,如果未能解决你的问题,请参考以下文章
Android:在 MapView 上为 ItemizedOverlay 使用 9-patch 和文本