iOS中的PDF矢量图像。为什么较小的图像会导致锯齿状边缘?

时间:2015-01-15 18:06:50

标签: ios uiimageview vector-graphics

我想在我的应用程序中使用pdf矢量图像,但我并不完全理解它是如何工作的。我知道PDF文件可以调整到任何大小,并保持质量。我有一个非常大的PDF图像(聊天应用程序的卡通/贴纸),它在屏幕上的中等大小看起来非常流畅。如果我开始变小,但说缩略图大小,黑色轮廓开始变得锯齿状。为什么会这样?我认为图像可以调整大小而不会丢失质量。任何帮助将不胜感激。

由于

1 个答案:

答案 0 :(得分:0)

在以编程方式更改UIImageView的centre时,我遇到了类似的问题。

此结果可能导致视图像素不对齐。即框架原点的x或y(或框架尺寸的宽度或高度)可能位于非整数值上,例如x = 10.5,如果x = 10,它将正确显示。

渲染视图将一小部分定位到一个完整的像素将导致锯齿状线条,我认为它与锯齿相关。

因此,使用CGRectIntegral()包装框架的CGRect,将框架的原点和大小值转换为整数。

示例(Swift):

imageView?.frame = CGRectIntegral(CGRectMake(10, 10, 100, 100))

请参阅Apple文档https://developer.apple.com/library/mac/documentation/GraphicsImaging/Reference/CGGeometry/#//apple_ref/c/func/CGRectIntegral