1. 程式人生 > >iOS有關圖片處理的總結 (二)------圖片的混合模式

iOS有關圖片處理的總結 (二)------圖片的混合模式

上一篇我們看了圖片的載入方式,接下來我們看看圖片一下常用的混合模式,我覺得這個最好是先自己玩一玩photoshop,上面有很多混合模式可以自己試驗,這裡我們用程式碼進行嘗試修改圖片的混合模式,這樣可以看到不同的圖片效果。

這裡我們就必須用到繪圖。常用的方法是:

[image drawInRect:CGRectMake(0,0,newSize.width,newSize.height) blendMode:blendMode alpha:alpha];

先讓大家看看這個程式碼:

- (UIImage *)drawPiucureFrontImage:(UIImage *)personImage backImage:(UIImage *)hatImage blendMode:(CGBlendMode)blendMode alpha:(CGFloat)alpha
{
    CGSize newSize =[personImage size];
    UIGraphicsBeginImageContext(newSize);
    [personImage drawInRect:CGRectMake(0,0,newSize.width,newSize.height) blendMode:kCGBlendModeNormal alpha:1];
    [hatImage drawInRect:CGRectMake(0,0,newSize.width,newSize.height) blendMode:blendMode alpha:alpha];
    UIImage*newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    _imageV.image = newImage;
    num++;
    return newImage;
}

kCGBlendModeNormal
這個是混合模式的效果  在ps中是正常,以下是常用的模式

     kCGBlendModeNormal --ok  正常,
     kCGBlendModeMultiply,    正片疊底
     kCGBlendModeScreen,      濾色
     kCGBlendModeOverlay,     疊加
     kCGBlendModeDarken,      變暗
     kCGBlendModeLighten,     變亮
     kCGBlendModeColorDodge,  顏色減淡
     kCGBlendModeColorBurn,   顏色加深
     kCGBlendModeSoftLight,   柔光
     kCGBlendModeHardLight,   強光
     kCGBlendModeDifference,  差值
     kCGBlendModeExclusion,   排除
     kCGBlendModeHue,         色相
     kCGBlendModeSaturation,  保護度
     kCGBlendModeColor,       顏色
     kCGBlendModeLuminosity   明度,

這幾個可以試試,每一種圖片的模式都不一樣。其中正片疊底 和疊加應該是我經常用到的混合模式。