结合 UIImageViews 产生 0 字节的空图像
Posted
技术标签:
【中文标题】结合 UIImageViews 产生 0 字节的空图像【英文标题】:Combining UIImageViews yields empty image with 0 bytes 【发布时间】:2014-01-21 04:12:58 【问题描述】:我正在尝试将两个UIImageView
s 合并为combinedView
。我遇到的问题是,在我将self.firstImageView
和self.secondImageView
作为子视图添加到我的combinedView
后,当我检查combinedView.image
的字节大小时得到的输出为0。我需要combinedView.image
最终在 JEPGRepresentation 中传递到我的后端,所以我不确定我还能如何将视图组合在一起,或者我目前做错了什么。
感谢您的帮助!
UIImageView *combinedView = [[UIImageView alloc] init];
[combinedView addSubview:self.firstImageView];
[combinedView sendSubviewToBack:self.firstImageView];
[combinedView addSubview:self.secondImageView];
[combinedView bringSubviewToFront:self.secondImageView];
NSData *firstPicData = UIImageJPEGRepresentation(self.firstImageView.image, 1.0);
NSLog(@"Size of first:%d",[firstPicData length]); //outputs a non-zero number
NSData *secondPicData = UIImageJPEGRepresentation(self.secondImageView.image, 1.0);
NSLog(@"Size of second:%d",[secondPicData length]); //also outputs a non-zero number
NSData *combinedPicData = UIImageJPEGRepresentation(combinedView.image, 1.0);
NSLog(@"Size of combined:%d",[combinedPicData length]); //! outputs 0 bytes
【问题讨论】:
【参考方案1】:您正在添加 self.firstImageView 和 self.secondImageView 作为组合视图的子视图,而且您没有将任何图像分配给组合视图。所以 [combinedPicData 长度] 总是只有 0。
请参阅以下链接以合并两个图像。
ios - Merging two images of different size
blend two uiimages based on alpha/transparency of top image
Merge Two Image on to one Image programmatically in iphone
How to merge two half images in ios app?
【讨论】:
谢谢,第一个链接特别有用。以上是关于结合 UIImageViews 产生 0 字节的空图像的主要内容,如果未能解决你的问题,请参考以下文章
使用校验和将字节数组转换为字符串。在 python 中重新迭代时获取额外的空字节