我正在尝试做一个隐写应用程序,从现在起我已经设法从实际图像获取像素字节并修改它们。但我没有设法以适当的方式重建图像(我从图像中获取字节,重建图像,再次获取字节,它们不一样)。经过一些调试后我得出结论。我不是以正确的方式构建图像。由于所有其他变量都是非常标准的(参见下面的代码),唯一的变量我不知道它做了什么,我认为我使用它是错误的是bitMapInfo。有人可以帮我解决一下我需要什么吗?
let bitsPerComponent = 8
let bytesPerPixel = 4
let bytesPerRow = Int(image.size.width) * bytesPerPixel
let colorSpace = CGColorSpaceCreateDeviceRGB()
var bitmapInfo: UInt32 = CGBitmapInfo.ByteOrder32Big.rawValue
bitmapInfo |= CGImageAlphaInfo.PremultipliedLast.rawValue & CGBitmapInfo.AlphaInfoMask.rawValue
let imageContext = CGBitmapContextCreateWithData(imageData,
Int(image.size.width),
Int(image.size.height),
bitsPerComponent,
bytesPerRow,
colorSpace,
bitmapInfo,
nil,
nil)
let cgImage = CGBitmapContextCreateImage(imageContext)
let newImage = UIImage(CGImage: cgImage!)