我遇到了屏幕截圖(以編程方式使用下面的代碼)與屏幕上實際顯示的圖像放大(在我的情況下很遠)並呈現最近鄰居時保留的不一致硬邊緣。我從這些論壇獲得了以下屏幕截圖代碼,但保存的內容是(雙線性?)渲染圖像而不是最近鄰居。programmatic screenshot misrepresenting nearest-neighbour
UIGraphicsBeginImageContextWithOptions([[UIScreen mainScreen] bounds].size, NO, 0.0);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *imageView = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(imageView, nil, nil, nil);
我做最近鄰居的方法是在viewDidLoad中以下行
automataView.layer.magnificationFilter = kCAFilterNearest;
(automataView是與它一個GIF文件一個UIImageView,它的添加爲一個子視圖到一個UIScrollView這處理變焦)
這裏有兩個圖像,第一個是屏幕上的內容,第二個是使用上述屏幕截圖代碼保存的內容。 (遺憾的鏈接 - 「爲防止垃圾郵件的機制,新用戶不得發表圖片」)
http://www.flickr.com/photos/[email protected]/8358662379/
http://www.flickr.com/photos/[email protected]/8358662715/
感謝您的幫助!
您是否找到任何解決方案? –