swift获取图片像素颜色值

Posted brave-sailor

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了swift获取图片像素颜色值相关的知识,希望对你有一定的参考价值。

extension UIImage{

    /**
    获取图片中的像素颜色值

    - parameter pos: 图片中的位置

    - returns: 颜色值
    */
    func getPixelColor(pos:CGPoint)->(alpha: CGFloat, red: CGFloat, green: CGFloat,blue:CGFloat){
        let pixelData=CGDataProviderCopyData(CGImageGetDataProvider(self.CGImage))
        let data:UnsafePointer<UInt8> = CFDataGetBytePtr(pixelData)
        let pixelInfo: Int = ((Int(self.size.width) * Int(pos.y)) + Int(pos.x)) * 4

        let r = CGFloat(data[pixelInfo]) / CGFloat(255.0)
        let g = CGFloat(data[pixelInfo+1]) / CGFloat(255.0)
        let b = CGFloat(data[pixelInfo+2]) / CGFloat(255.0)
        let a = CGFloat(data[pixelInfo+3]) / CGFloat(255.0)

        return (a,r,g,b)
    }

}

以上是关于swift获取图片像素颜色值的主要内容,如果未能解决你的问题,请参考以下文章

获取图片的每一个像素颜色值

如何获取PNG图片某点像素的rgba值

如何使用 Swift 获取 UIImage 中像素的颜色?

C#中 怎么获得某一个控件中图片的某一点像素的颜色值啊?

在 SKScene、iOS、Swift 中获取/设置像素颜色

请问delphi 7 如何读取JPG图片的像素颜色值?