2010-12-07 104 views

回答

2

这没有api。

编辑:API是在iOS5中引入的。见凯林的答案。

您会希望获取图像的原始数据,计算颜色值并自己绘制直方图。

访问像素:How to get pixel data from a UIImage (Cocoa Touch) or CGImage (Core Graphics)?

使用CoreGraphics中绘制一个自定义UIView子类的直方图。

+0

我不同意你的声明,说没有api。看到我的答案。 – kelin 2015-09-25 08:59:17

+0

@kelin你是对的。这个API是在我回答1年后引入的。所以它并不是真的不同意,而是更新。我已经修改了我的答案,并赞扬了你的答案。 – tonklon 2015-11-03 10:08:24

2

您可以借助加速框架来计算柱状图。有功能vImageHistogramCalculation_ARGB8888()。 要调用此函数,您需要从UIImage创建vImage_Buffer。使用vImageBuffer_InitWithCGImage()函数。

欲了解更多信息,您可以将此框架添加到您的项目,并读取文档的头文件:

Accelerate.framework /框架/ vImage.framework /头/ vImage_Utilities.h Accelerate.framework /框架/ VIMAGE .framework/Headers/Histogram.h