2015-03-19 2 views
1

У меня есть два изображения. Как я могу объединить этот образ, чтобы он выглядел как одно изображение. Я очень старался создать размытие и градиент в конце первого изображения и в начале второго изображения, хотя и не получал желаемого результата, как показано ниже.Как слить два изображения из краев, чтобы они выглядели как одно изображение в iOS?

Это нормальное изображение.

enter image description here

и это после слияния.

enter image description here

Как добиться такого результата? Пожалуйста, помогите мне. Спасибо заранее.

+0

Оба изображения должны быть размыта на краю. Изображения должны пересекаться. Одно из этих изображений должно иметь альфа-градиент в области перекрытия. – kelin

ответ

1

У меня есть ответ. Используйте ниже код и добавьте маску градиента к обоим изображениям на границе. Вы можете перенести некоторый пиксель второго кадра просмотра изображения на первое изображение, так что первая граница изображения и вторая граница изображения будут полностью слиты.

-(void)addGradientTo:(UIImageView*)imageView { 

CAGradientLayer *gradient = [CAGradientLayer layer]; 
gradient.frame = imageView.bounds; 

gradient.colors = [NSArray arrayWithObjects: 
          (id)[[UIColor colorWithWhite:0 alpha:0.2] CGColor], 
          (id)[[UIColor colorWithWhite:0 alpha:1] CGColor], 
          (id)[[UIColor colorWithWhite:0 alpha:1] CGColor], 
          (id)[[UIColor colorWithWhite:0 alpha:0.2] CGColor], nil]; 

gradient.locations = [NSArray arrayWithObjects: 
         [NSNumber numberWithFloat:0], 
         [NSNumber numberWithFloat:.1], 
         [NSNumber numberWithFloat:.9], 
         [NSNumber numberWithFloat:1], nil]; 

gradient.startPoint = CGPointMake(0,0.3); 
gradient.endPoint=CGPointMake(1,0.3); 
[imageView.layer setMask:gradient]; 

}

+0

Не могли бы вы рассказать мне, как вы объединили два изображения, как вы? –