【发布时间】:2013-11-18 20:10:13
【问题描述】:
这是我要修剪的图像示例。我想去掉图像周围的边框(在这种情况下是顶部和底部的黑条)。
我在 Github 上找到了一个库:CKImageAdditions,但它似乎不起作用。当我传入 UIColor(带有 RGB 颜色)时,它只会返回相同的图像。
我可以找到很多示例和类别类,它们可以修剪带有任何透明像素作为边框的 UIImage,但在这种情况下,我需要修剪黑色。我已经对图像中的颜色进行了采样,它们的颜色值确实是 255,但它似乎与上述库正在寻找的不匹配。
是否有人有他们使用过的库或任何见解?我已经搜索和搜索,CKImageAdditions 是我能找到的唯一一个广告用颜色修剪的东西(尽管不幸的是在我的情况下不起作用)。
【问题讨论】:
-
您知道新修剪的图像的尺寸,还是应该是动态的并尝试您指定的任何颜色?
-
@PeterFoti 我不在乎尺寸。我把它放在 UIImageView 中,
UIViewContentModeScaleAspectFill作为UIContentMode。而且我只想修剪黑色边框,我不在乎其他颜色。谢谢。 -
但是这些边框是烘焙到图像中的,还是在您将其添加到视图后添加的?
-
@PeterFoti 这就是给我图像的方式,所以边框就在那里,我想在将它们显示在
UIImageView之前将它们去掉 -
您可以通过逐像素(逐行)扫描图像并在像素行平均颜色不是黑色时搜索来手动完成。如果你找到它 - 停止你的算法,因为你找到了第一个边界。对图像的每一侧重复此算法(对于左侧和右侧,您应该逐列迭代像素,而不是顶部和底部的行)。您可以使用此答案中的像素扫描方法:stackoverflow.com/questions/2342327/…
标签: ios objective-c c uiimage cgimage