Я использую PhoneGap вместе с соответствующим плагином для снимков экрана для iOS. Сделать снимок экрана, который сохраняется в «Сохраненных фотографиях» на телефоне/симуляторе, несложно. Но я хотел бы иметь возможность сделать снимок экрана, а затем что-то сделать с сохраненным изображением, в частности, отправить его на сервер.
Кажется, что функция UIImageWriteToSavedPhotosAlbum
, используемая в плагине, не возвращает ничего полезного, поэтому я не знаю, как я могу изменить плагин, чтобы вернуть мне путь к изображению, который будет использоваться в плагине FileUploader.
Соответствующий код плагина ниже...
- (void)saveScreenshot:(NSArray*)arguments withDict:(NSDictionary*)options
{
CGRect screenRect = [[UIScreen mainScreen] bounds];
CGRect imageRect = CGRectMake(0, 0, CGRectGetWidth(screenRect), CGRectGetHeight(screenRect));
UIGraphicsBeginImageContext(imageRect.size);
CGContextRef ctx = UIGraphicsGetCurrentContext();
[[UIColor blackColor] set];
CGContextTranslateCTM(ctx, 0, 0);
CGContextFillRect(ctx, imageRect);
[webView.layer renderInContext:ctx];
UIImage *image1 = UIGraphicsGetImageFromCurrentImageContext();
UIImageWriteToSavedPhotosAlbum(image1, nil, nil, nil);
UIGraphicsEndImageContext();
UIAlertView *alert= [[UIAlertView alloc] initWithTitle:nil message:@"Image Saved" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil];
[alert show];
[alert release];
}