GPUImage:如何混合两个不同大小的图像,同时保持两个图像的原始宽高比?

时间:2013-11-15 13:55:49

标签: ios gpuimage

我使用以下代码混合两个图像。它可以工作,但topImage会调整大小以匹配baseImage的宽高比。如何保持baseImage和topImage的原始大小和宽高比?

 GPUImageMultiplyBlendFilter *overlayBlendFilter = [[GPUImageMultiplyBlendFilter alloc] init];
    GPUImagePicture *pic1 = [[GPUImagePicture alloc] initWithImage:baseImage];
    GPUImagePicture *pic2 = [[GPUImagePicture alloc] initWithImage:topImage];

    [pic1 addTarget:overlayBlendFilter];
    [pic1 processImage];
    [pic2 addTarget:overlayBlendFilter];
    [pic2 processImage];

    UIImage *blendedImage = [overlayBlendFilter imageByFilteringImage:topImage];

    [imageView setImage:blendedImage];

1 个答案:

答案 0 :(得分:0)

我设法解决了这个问题。我不知道这是否是最佳解决方案,但我所做的是在混合发生之前调整topimage,方法是为其添加透明空间,以获得与baseimage具有相同纵横比的尺寸。