7
我通過拍攝UIView的屏幕截圖來創建一個PDF,目前這款軟件在iPad3上的視網膜顯示效果很好,但是當在具有較低分辨率屏幕的其他設備上測試時,文本解析問題。在視網膜和非視網膜設備上的renderInContext
這裏是我的代碼:
//start a new page with default size and info
//this can be changed later to include extra info.
UIGraphicsBeginPDFPage();
//render the view's layer into an image context
//the last option specifies scale. If 0, it uses the devices scale.
UIGraphicsBeginImageContextWithOptions(view.bounds.size, view.opaque, 2.0);
CGContextRef context = UIGraphicsGetCurrentContext();
[view.layer renderInContext:context];
UIImage *screenShot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
//render the screenshot into the pdf page CGContext
[screenShot drawInRect:view.bounds];
//close the pdf context (saves the pdf to the NSData object)
UIGraphicsEndPDFContext();
我也試圖給UIGraphicsBeginImageContextWithOptions
比例設置爲2.0,但是這給沒有變化。如何強制iPad2上的視圖以2倍分辨率呈現?
預期輸出:
實際輸出:
你有什麼問題?將'UIGraphicsBeginImageContextWithOptions'中的比例設置爲2應該強制它以2x分辨率呈現。顯示正確和錯誤輸出的圖像。 –
更新我的問題 – danielbeard
是PDF的截圖嗎?這兩幅圖像大小不同,但其中一幅不是另一幅的兩倍。人們看起來也不像其他人的解決方案的兩倍。嘗試將每個實際的'UIImage'保存到文件中,例如'[UIImagePNGRepresentation(screenShot)writeToFile:@「/ tmp/image.png」原子:NO]'。在模擬器上執行並在每次運行後將映像從'/ tmp'中複製出來。 –