2010-09-29 228 views
2

我想以编程方式更改图像。特别是iPhone,但一般的答案可以帮助。例如,我怎样才能以编程方式添加滤镜效果,例如Photoshop中提供的滤镜效果。以编程方式更改图像

很明显,这可以通过像Fat Booth这样的应用程序来举例说明。这是什么起点?将图像加载为NSData并学习如何对PNG进行编码并使用该算法?可能?更简单的解决方案

感谢您的帮助!

+0

我很肯定这是一个有点复杂的一个问题。我会尝试为iPhone重新创建效果,然后询问是怎么回事。我认为你正在寻找的图书馆也是CGGeometry。 (我认为......或者我知道OpenGL ES应该也可以)。 – 2010-09-29 02:31:10

回答

1

iPhone SDK Development的第21章举例说明了如何显示和操作照片,这很容易遵循。更复杂的效果需要更复杂的代码,但这是一开始。

1

首先获取原始格式的图像(原始像原始字节为每个像素[rgb] [rgb]),然后操纵像素并从原始格式转换回图像。

在这里你可以找到信息如何UIImage的转换和从原始像素数据,例如:

原料到的UIImage:Creating UIImage from raw RGBA data

的UIImage为RAW:Can I edit the pixels of the UIImage's property CGImage

如果你需要的几何变换您可以使用坐标或opengl的映射,并将图像用作某个网格上的纹理,操纵网格(以几何为单位)并将场景渲染回图像。

您不需要知道图像是如何编码成PNG或JPG的,系统可以为您完成。你只需要知道你想达到什么,然后建立你自己的算法。

玩得开心!

相关问题