2013-05-03 101 views
3

我想使用GPUImage旋转一个较大的UIImage,因为它至少在iOS设备上比核心图形快得多。使用GPUImage旋转UIImage的正确方法

下面是我在做什么:

GPUImagePicture *src = [GPUImagePicture alloc] initWithImage:image]; 
GPUImageFilter *rotationFilter = [[GPUImageFilter alloc] init]; 
[rotationFilter setInputRotation:gpuRotationMode atIndex:0]; 
[src addTarget:rotationFilter]; 
[src processImage] 
[rotationFilter imageFromCurrentlyProcessedOutputWithOrientation:UIImageOrientationUp]; 

唯一的问题是,我得到的白色像素带的一端(黑带都没有图像的一部分):

gpuimage orientation rotation http://www.kevinharringtonphoto.com/photos/i-HNHM8dj/0/L/i-HNHM8dj-L.png

我该如何摆脱那个白色条纹?

注意:我在旋转滤镜上使用了其他滤镜。也许有与其他过滤器结合的问题。

+0

什么是输入图像的像素尺寸? – 2013-05-03 21:16:15

回答

0

问题是您正在使用的其中一个图层的大小。太小了。你是否通过图像优化软件传递图像?这也会导致这类问题。