2015-09-28 117 views
1
NSURL *imgURL = [NSURL URLWithString:@"stackoverflow.com"]; 
NSData *imgData = [NSData dataWithContentsOfURL:imgURL]; 
UIImage *img = [[UIImage alloc] initWithData:imgData]; 

使用這些代碼,是否可以從網站的URL創建UIImage?對不起,如果問題不明確,我的意思是截圖整個網頁生成一個UIImage。我可以用這些嗎?從網站的網址創建UIImage

+0

你的意思是網站的 「截圖」?不,你不能做到這一點,使用WKWebView來呈現網站,然後你可以從該呈現圖像。 – Igor

+0

你不能從url創建圖像,是的,但你可以從url加載圖像,如果你有圖像的網址(不是網站)。 –

+0

@Igor是的,我正在使用WKWebView,我嘗試使用'renderInContext:'和'drawViewHierarchyInRect:afterScreenUpdates:'渲染它,但我沒有得到我想要的圖像。 –

回答

0

從這個鏈接。是的你可以。

NSURL *imgURL = [NSURL URLWithString:@"http://www.gettyimages.in/gi-resources/images/Homepage/Hero/UK/CMS_Creative_164657191_Kingfisher.jpg 
"]; 
NSData *imgData = [NSData dataWithContentsOfURL:imgURL]; 
UIImage *img = [[UIImage alloc] initWithData:imgData]; 

如果妳需要加載圖像,而凍結的應用程序,並且還實現縮略圖緩存,

嘗試SDWebImage框架

https://github.com/rs/SDWebImage

示例代碼

[imageView sd_setImageWithURL:[NSURL URLWithString:@"Get each url from array and set it here using indexpath.row"] 
        placeholderImage:[UIImage imageNamed:@"placeholder.png"]]; 

截圖

UIGraphicsBeginImageContextWithOptions(self.view.bounds.size, self.view.opaque, 0.0); 
[self.myView.layer renderInContext:UIGraphicsGetCurrentContext()]; 
UIImage *imageView = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 

NSData *imageData = UIImageJPEGRepresentation(imageView, 1.0); //you can use PNG too 
+0

我認爲所以他要求製作URL的縮略圖。不下載圖片 – Mukesh

+0

提問者要求創建拇指圖片的網址兄弟,請更新/自定義您的答案 –

+0

@DHEERAJ我試過了你的截圖解決方案,但我沒有得到我想要的圖像。它只給我空白/白色圖像。 –