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

标签 ios uiimageview vector-graphics

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

谢谢

最佳答案

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

这样做的结果可能会导致 View 的像素未对齐。 IE。框架原点的 x 或 y(或框架大小的宽度或高度)可能位于非整数值上,例如 x = 10.5,如果 x = 10,它将正确显示。

将分数定位到完整像素的渲染 View 会产生锯齿线,我认为这与锯齿有关。

因此,用 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

关于ios - iOS 中的 PDF 矢量图像。为什么较小的图像会导致锯齿状边缘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27970089/

相关文章:

objective-c - 从 super View 中删除存储在数组中的 UIView

ios - 如何在 Swift 中将多个重叠的 UIImage 合并为一个 UIImage?

圆角为圆弧的 SVG 路径

ios - 核心数据类的重新声明无效

ios - 使用 getThumbnailBatch 获取保管箱缩略图

ios - iOS 上的 sysctl 调用获取后台进程列表是私有(private)调用吗?

ios - UIScrolView 中的 UIImageView。如何在 iphone 6 和 6 plus 中按比例缩放 UIImageView

android - iPhone 和 Android 上的 Facebook 应用内浏览器不会在网站上提交表单

ios - 将UIImage着色为其他颜色,或者从矢量生成UIImage

raphael - 在 raphael js 中绘制中心弧