【问题标题】:save an image with two UIImageView which has two images - ios [duplicate]用两个 UIImageView 保存一个图像,该图像有两个图像 - ios [重复]
【发布时间】:2013-03-20 07:08:17
【问题描述】:

在我的应用程序中,我有两个UIImageViews,一个覆盖另一个。即)UIImageView-2 放置在UIImageView-1 上。 UIImageView-2 中的图像是透明的,所以现在我的图像覆盖了另一个图像。现在我需要将这两个保存为单个图像。在ios中可以吗?请指教..

示例视图如下:红色标记是网球图像视图中的图像。

【问题讨论】:

标签: iphone ios objective-c xcode uiimageview


【解决方案1】:

希望以下方法对您有所帮助。

-(CGImageRef )mergedImageFromImageOne:(UIImage *)imageOne andImageTwo:(UIImage *)imageTwo
{
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    CGSize imageSize = imageOne.size;

    UIGraphicsBeginImageContext(sizeVideo);

    [imageOne drawInRect:CGRectMake(0,0,imageSize.width,imageSize.height)];

    [imageTwo drawInRect:CGRectMake(0,0,imageSize.width,imageSize.height) alpha:1];

    CGImageRef imageRefNew =  CGImageCreateWithImageInRect(UIGraphicsGetImageFromCurrentImageContext().CGImage, CGRectMake(0,0,imageOne.width,imageOne.height));

    UIGraphicsEndImageContext();

    [pool release];

    return imageRefNew;
}

【讨论】:

    【解决方案2】:

    我拍摄了一张徽标图片,它设置在主图片上作为应用程序参考。

    所以你可以参考这个,试试你的图片。

    根据您的图像设置宽度(w)和高度(h)。

    试试这个 ::

    UIImage *img_Logo = [UIImage imageNamed:@"Img_Logo.png"];
    
    CGSize newSize = CGSizeMake(w, h);
    UIGraphicsBeginImageContext(newSize);
    
    // Use existing opacity as is
    [main_image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
    
    // Apply supplied opacity
    [img_Logo drawInRect:CGRectMake(0,0,newSize.width,newSize.height) blendMode:kCGBlendModeNormal alpha:0.8];
    
    main_image = UIGraphicsGetImageFromCurrentImageContext();
    
    UIGraphicsEndImageContext();
    
    imgView.image = main_image;
    

    希望,这会对你有所帮助。

    谢谢。

    【讨论】:

      【解决方案3】:

      为什么你不只为那部分截屏?

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-04-15
        • 2012-01-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-10-13
        相关资源
        最近更新 更多