Я хочу сделать снимок экрана моего приложения из приложения для iPhone. У меня белый фоновый вид, и на этом я рисую линии на слое этого вида, используя этот метод.
- (void)draw {
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSaveGState(context);
if (self.fillColor) {
[self.fillColor setFill];
[self.path fill];
}
if (self.strokeColor) {
[self.strokeColor setStroke];
[self.path stroke];
}
CGContextRestoreGState(context);
}
- (void)drawRect:(CGRect)rect {
// Drawing code.
for (<Drawable> d in drawables) {
[d draw];
}
[delegate drawTemporary];
}
Я использую методы делегата для рисования линий на слое.
Это ссылка на проект, откуда я могу получить помощь.
https://github.com/search?q=dudel&type=Everything&repo=&langOverride=&start_value=1
Теперь, когда я использую следующие контекстные методы для сохранения только чертежа, я успешно сохраняю его без этого белого фона.
drawImage.image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
Но когда я использую следующий метод Безье Пате, я не могу сохранить рисунок без его белого фона, Он сохраняет весь экран, то есть этот рисунок и его фон.
UIGraphicsBeginImageContext(self.view.bounds.size);
[dudelView.layer renderInContext:UIGraphicsGetCurrentContext()];
//UIImage *finishedPic = UIGraphicsGetImageFromCurrentImageContext();
Так что кто-нибудь может мне помочь, как я могу сохранить рисунок только здесь, в этом приложении.