0
這是我的第一個月,在Objective-C,我試圖繪製一個UIImage的(ImageA)上的另一個圖像(背景圖像)頂部Objective-c - 如何將圖像繪製爲四邊形?
ImageA四邊形
我已經試過到目前爲止是3D轉換含ImageA與 https://stackoverflow.com/a/18606029/864513
的幫助下的UIImageView再取轉化視圖的快照
- (UIImage *)snapshot:(UIView *)view
size:(CGSize)size
{
UIImage *viewImage = nil;
@autoreleasepool {
UIGraphicsBeginImageContext(size);
BOOL success = [view drawViewHierarchyInRect:(CGRect){CGPointZero, size} afterScreenUpdates:YES];
viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
if (!success || !viewImage) {
return nil;
}
}
return viewImage;
}
然後在圖像上下文中的矩形中繪製快照圖像以及背景圖片
CGRect offsetRect = CGRectMake(0, 0, fileSize.width, fileSize.height);
UIGraphicsBeginImageContext(fileSize);
[BackgroundImage drawInRect:offsetRect];
[ImageA drawInRect:offsetRect];
UIImage *endImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
這種方法效果很好,但在循環中使用時,創建GIF
。它導致很多內存泄漏和崩潰在低內存設備!
CGImageDestinationAddImage(destination, [endImage CGImage], (__bridge CFDictionaryRef)frameProperties);
在Android中有一個叫做drawBitmapMesh
的函數,它通過網格繪製位圖。有沒有什麼辦法可以通過objective-c中的網格來繪製。或者如果你知道一個更好的方法來解決我的問題,我會永遠感激。 謝謝
謝謝,我已經試過了,但結果是粗略的,而imageA沒有覆蓋整個區域的預期。 –
最後,讓它與Perspective Transform一起工作! –