繁体   English   中英

如何在旋转的UIView上进行抗锯齿(不是UIImageView)

[英]How to do antialiasing on a rotated UIView (NOT UIImageView)

我的问题基本上与此与相同。 我有一个UIView,当我旋转它使用CGAffineTransformMakeRotation时,其边缘没有被消除锯齿。

我尝试将视图添加为更大的UIView中的子视图,并在视图上使用透明边框,但是这些都不起作用。

上述文章的OP通过在Photoshop中制作具有透明边框的图像并改为使用UIImageView来解决了此问题,但是由于UIView的大小是在运行时确定的,因此我无法做到这一点。

有谁知道这个问题的解决方案吗?

请注意,这不是重复这个职位,因为我有兴趣使用一个UIView和NOT一个UIImageView。

尝试在App-info.plist中设置UIViewEdgeAntialiasing = YES

我通过在Photoshop中创建3x3 px图像解决了此问题。 图像的中心像素具有我希望背景具有的颜色,其余像素是透明的。 然后,我可以使用UIImageView的实例,并通过-stretchableImageWithLeftCapWidth:topCapHeight:方法在运行时定义帧大小。

当然,该解决方案仍然不适用于UIView,但是通过这种方式,您可以规避“可变大小”问题,而改用UIImageView。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM