У меня есть два изображения, содержащие два разных изображения. У моего firstImageview
есть основное изображение, затем я добавил еще одно изображение в качестве подпредставления firstImageview
, например [firstImageview addSubView:secondImageview]
. Мне нужно, чтобы это было в одном изображении.
Я использую следующий код (он работает гладко):
- (UIImage*)imageByCombiningImage:(UIImage*)firstImage withImage:(UIImage*)secondImage {
UIImage *image = nil;
CGSize newImageSize = CGSizeMake(MAX(firstImage.size.width, secondImage.size.width), MAX(firstImage.size.height, secondImage.size.height));
if (UIGraphicsBeginImageContextWithOptions != NULL) {
UIGraphicsBeginImageContextWithOptions(newImageSize, NO, [[UIScreen mainScreen] scale]);
} else {
// UIGraphicsBeginImageContext(newImageSize);
}
[firstImage drawAtPoint:CGPointMake(roundf((newImageSize.width-firstImage.size.width)/2),
roundf((newImageSize.height-firstImage.size.height)/2))];
[secondImage drawAtPoint:CGPointMake(roundf((newImageSize.width-secondImage.size.width)/2),
roundf((newImageSize.height-secondImage.size.height)/2))];
image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
Но в моем полученном изображении topImage secondImageview.image
становится больше.
Мой вид выглядит так (до слияния):
Мое полученное изображение после слияния (верхнее изображение становится больше):
Как я могу объединить эти изображения, чтобы secondImageview
не стало больше?