Come si può vedere nel mio codice, prendo uno screenshot e lo salva nell'album fotografico.Acquisire a livello di programmazione un'area specifica
//for retina displays
if ([[UIScreen mainScreen] respondsToSelector:@selector(scale)]) {
UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, NO, [UIScreen mainScreen].scale);
} else {
UIGraphicsBeginImageContext(self.view.bounds.size);
}
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);
All'inizio ho usato webview.size
invece di self.view.bounds.size
e stava funzionando correttamente perché la vista è stato localizzato a 0/0
. Ma ora ho centrato la WebView ma le immagini iniziano a 0/0
per le dimensioni indicate.
Come posso configurare che lo screenshot inizia in un altro location
(ad esempio 300/150
) per la dimensione data?
Oppure c'è un altro modo per scattare una foto di UIWebView
?
Funziona su OSX desktop o solo su iphone? – Noitidart