जैसा कि आप मेरे कोड में देख सकते हैं, मैं एक स्क्रीनशॉट लेता हूं और इसे फोटो एलबम में सहेजता हूं।प्रोग्रामेटिक रूप से विशिष्ट क्षेत्र का स्क्रीनशॉट लें
//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);
शुरुआत में मैं self.view.bounds.size
के बजाय webview.size
का इस्तेमाल किया और यह ठीक से काम कर रहा था क्योंकि दृश्य 0/0
पर स्थित था। लेकिन अब मैंने वेब व्यू को केंद्रित किया है लेकिन चित्र दिए गए आकार के लिए 0/0
पर शुरू होते हैं।
मैं कैसे कॉन्फ़िगर कर सकता हूं कि दिए गए आकार के लिए स्क्रीनशॉट किसी अन्य location
(उदा। 300/150
) से शुरू होता है?
या UIWebView
की तस्वीर लेने का कोई और तरीका है?
क्या यह डेस्कटॉप ओएसएक्स या सिर्फ आईफोन पर काम करता है? – Noitidart