我正在使用UIImageView,並且必須將多個圖像設置爲背景。通過在iOS中結合多個圖像創建單個圖像
所有的圖像都有透明的背景,並在其角落包含任何一個符號。根據條件保存圖像。也有可能會有多個圖像。
目前我正在設置圖像,但我只能查看最後一張圖像。所以我希望所有的圖像應該一起顯示。
請讓我知道,如果有任何其他方式可以通過我可以將多個圖像轉換爲單個圖像。
任何幫助將不勝感激提前
我正在使用UIImageView,並且必須將多個圖像設置爲背景。通過在iOS中結合多個圖像創建單個圖像
所有的圖像都有透明的背景,並在其角落包含任何一個符號。根據條件保存圖像。也有可能會有多個圖像。
目前我正在設置圖像,但我只能查看最後一張圖像。所以我希望所有的圖像應該一起顯示。
請讓我知道,如果有任何其他方式可以通過我可以將多個圖像轉換爲單個圖像。
任何幫助將不勝感激提前
謝謝你可以用混合模式繪製圖像。例如,如果您有UIImage
,則可以致電drawAtPoint:blendMode:alpha:
。在大多數情況下,您可能會想使用kCGBlendModeNormal
作爲混合模式。
謝謝。有效 –
您可以使用:
typedef enum _imageType{
image1,
image2,
...
imageN
}imageType;
和@interface
imageType imgType;
在.h文件中聲明。
而且在the.m文件
-(void)setImageType:(imageType)type{
imgType = type;
}
,然後你可以使用函數setImageType:設置你想要的任何圖像。
你應該將你的圖像合成爲一個 - 尤其是因爲它們具有alpha通道。
要做到這一點,你可以
UIGraphicsBeginImageContextWithOptions
到(現在的規模,而在屏幕上繪圖時相比,並選擇適當的不透明度)創建在目標尺寸的圖像CGContextDrawImage
UIGraphicsGetImageFromCurrentImageContext
以獲得結果作爲UIImage
,您將其設置爲圖像視圖的圖像。我已經創建了一個函數,它獲取圖像數組並返回單個圖像。我的代碼如下:
-(UIImage *)blendImages:(NSMutableArray *)array{
UIImage *img=[array objectAtIndex:0];
CGSize size = img.size;
UIGraphicsBeginImageContext(size);
for (int i=0; i<array.count; i++) {
UIImage* uiimage = [array objectAtIndex:i];
[uiimage drawAtPoint:CGPointZero blendMode:kCGBlendModeNormal alpha:1.0];
}
return UIGraphicsGetImageFromCurrentImageContext();
}
希望這對別人也有幫助。
你想用1個圖像與多個圖像? –