【发布时间】:2023-03-20 06:28:01
【问题描述】:
我有一个带有背景图像的 Flex 组件。图像一开始很清晰,但每当我使用 scaleX 和 scaleY 缩放组件时就会出现锯齿状。如何使图像抗锯齿,使其缩放到 0.75,线条平滑,而不是锯齿状?
【问题讨论】:
标签: apache-flex image antialiasing
我有一个带有背景图像的 Flex 组件。图像一开始很清晰,但每当我使用 scaleX 和 scaleY 缩放组件时就会出现锯齿状。如何使图像抗锯齿,使其缩放到 0.75,线条平滑,而不是锯齿状?
【问题讨论】:
标签: apache-flex image antialiasing
如果您使用 Image 组件加载图像,您可以将组件的内容属性转换为位图,然后将平滑设置为 true。不幸的是,图像组件没有开箱即用地提供此功能。但是,入侵相当容易。
这是一个向您展示如何创建这样一个组件的教程: http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=2&postId=4001
但是,如果这是使用组件的 backgroundImage 样式设置的,您可能会很不走运,除非您覆盖 updateDisplayList 并使用 Graphics.beginBitmapFill(提供平滑支持)自己执行位图的绘制。
为什么在 Flex(以及随后的 Flash)中没有更好的图像平滑支持(例如不同的插值方法)让我大吃一惊。让我们自己实现这样的过滤器,至少像素弯曲过滤器会有所帮助。
【讨论】:
如果您的位图尺寸为 n^2 或 n^8,则 Flash 播放器将自动使用一种称为 mip-mapping 的技术,该技术将显着改善缩放位图图像的外观(和性能)。
【讨论】: