使用UIKit / Coregraphics渲染为PDF时的模糊图像

时间:2013-02-12 23:45:13

标签: ios pdf uikit core-graphics pdf-generation

一切看起来非常标准我下载PDF GENERATION SAMPLE并以正常分辨率使用我自己的资源,我的图像看起来有些偏差。

这是资产source

以下是应用enter image description here

中的内容

这就是PDF在100%缩放enter image description here

时的样子

drawImage函数中的代码非常简单

UIImage * demoImage = [UIImage imageNamed:@"icon_map_project.png"];
[demoImage drawInRect:CGRectMake( (pageSize.width - demoImage.size.width)/2,
                                 350,
                                 demoImage.size.width,
                                 demoImage.size.height)];

没什么好看的。我承认我对PDF工作,DPI以及类似事情的细节的熟悉程度已超出我的范围。

我看过LibHaru并认为它是一个很棒的系统,但我宁愿把它放在UIKit / CoreGraphics的范围内。

你会注意到右边有一个奇怪的锯齿状,即使将图像缩小50%也没什么帮助。

这是使用数字色度计的放大图像,PDF为100%,然后是应用enter image description here

正如您所看到的,图像无法正确呈现到PDF中,我很难找到解决方案。

感谢您的任何建议。

1 个答案:

答案 0 :(得分:2)

您可以在PDF中以与图像大小匹配的矩形绘制图像。这导致图像的72dpi。由于查看器应用程序使用96dpi或更高的值作为100%缩放的参考,因此当文件以100%显示时,您的图像将呈现100%* 96/72比例。如果使用成像工具以该比例放大位图,您将看到类似的锯齿状。解决方案是使用在37x36pt矩形中绘制的较大图像,以使得到的图像dpi更高 如果将PDF文件缩放到75%,页面上显示的图像大小应与应用程序中的图像大小相匹配(此假设基于96 dpi屏幕)。