Каркас Objective-C BJImageCropper Угол границы
Я хочу изменить дизайн пограничного угла BJImageCropper, например, этот пример изображения. Может ли кто-нибудь помочь мне в этом?
В настоящее время я использую этот код для инициализации BJImageCropper:
self.imageCropper = [[BJImageCropper alloc] initWithImage:self.image andMaxSize:CGSizeMake(750,350)];
self.imageCropper.center = self.cropView.center;
self.imageCropper.imageView.layer.shadowColor = [[UIColor blackColor] CGColor];
self.imageCropper.imageView.layer.shadowRadius = 3.0f;
self.imageCropper.imageView.layer.shadowOpacity = 0.8f;
self.imageCropper.imageView.layer.shadowOffset = CGSizeMake(1, 1);
[self.imageCropper addObserver:self forKeyPath:@"crop" options:NSKeyValueObservingOptionNew context:nil];
Если есть какая-либо другая структура для обрезки изображения, которая имеет угол границы, как образец изображения, это также может помочь.
1 ответ
Решение
Я использовал BFCropInterface, который на самом деле является модифицированной версией BJImageCropper. Вы получите все методы делегирования BJImageCropper в BFCropInterface.
Заменена ниже часть в BFCropInterface.m
UIImage *nodeImage = [UIImage imageNamed:@"node.png"];
tlnode = [[UIImageView alloc]initWithImage:nodeImage];
trnode = [[UIImageView alloc]initWithImage:nodeImage];
blnode = [[UIImageView alloc]initWithImage:nodeImage];
brnode = [[UIImageView alloc]initWithImage:nodeImage];
С этим:
tlnode = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"top-left.png"]];
trnode = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"top-right.png"]];
blnode = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"bottom-left.png"]];
brnode = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"bottom-right.png"]];
И реализовали структуру в моем коде, используя:
[[BFCropInterface alloc]initWithFrame:self.cropView.bounds andImage:original nodeRadius:50];
увеличить стоимость nodeRadius
увеличить размер углового изображения.