我认为新的保存Xcode 9资产目录中的Vector复选标记最终会给我们调整矢量PDF图像的大小,但显然没有。这是我在预览中的两个缩放中看到的测试图像:


好的,尖锐的,大量的缩放,所以很明显,这是一个矢量图像。但是下面是我的应用程序中的两个图像视图:

我的矢量数据呢?这种渴望的功能在行动中还没有实现吗?它是否仍然只适用于自动生成的2x和3x图像?如果是这样的话,保存向量数据复选框给了我们哪些我们还没有的信息呢?
发布于 2017-08-10 20:33:46
它可以工作,但只有在您自己执行调整大小的情况下才能工作:

这是在代码中实现的,如下所示:
let im = UIImage(named:"Image")!
let r = UIGraphicsImageRenderer(size:self.iv2.bounds.size)
let im2 = r.image {
_ in
im.draw(in: self.iv2.bounds)
}
self.iv2.image = im2
self.iv2.contentMode = .center因此,UIImageView将在缩放(例如,方面匹配)时进行栅格化,但是在代码中绘制将保留矢量数据。
编辑新的Xcode 9测试版5,这现在工作的预期!在这个屏幕截图中,第二个图像视图只是做一个比例填充,不再.我们大幅调整尺寸!

编辑在玩Xcode 11时,我终于找到了一个始终有效的公式。这意味着在发射时,没有额外的代码,在图像视图或其他地方,基于矢量的图像在任何大小上都显得清晰。
在资产目录中,必须将Scales弹出菜单设置为单个Scales,并将基于向量的图像放到1x槽中。检查保存向量数据。好了。
发布于 2017-09-07 13:27:12
编辑:在Xcode 9 GM (9A235)中仍然保持着相同的buggy行为
从今天起(Xcode 9 beta 6 9M214v),只有当UIImageView至少有3个与间距相关的约束时,图像才会被正确地呈现(非模糊)。
例如:间距向左,间隔向右,间距到顶部,以及另一个约束,以定义UIImageView高度。

还请注意,完全禁用autolayout将使所有UIImageView呈现错误。
我为这个bug填写了rdar://34306192 (http://www.openradar.me/radar?id=4968083747766272)。
发布于 2018-12-18 10:14:19
我在新的Preserves Vector Data中多次遇到同样的问题。
对我非常有用的超级简单的解决方案:
UIImageView image属性,只需将其保留为空即可。image值。希望能帮上忙。
https://stackoverflow.com/questions/45622894
复制相似问题