1

我有一个带有背景图像的 Flex 组件。图像在开始时很清晰,但每当我使用 scaleX 和 scaleY 缩放组件时就会出现锯齿状。如何使图像抗锯齿,使其缩放到 0.75,线条平滑,而不是锯齿状?

这是图像

这是缩放版本

和未缩放的(好)一个

4

2 回答 2

6

如果使用 Image 组件加载图像,则可以将组件的 content 属性强制转换为 Bitmap,然后将 Smoothing 设置为 true。不幸的是,图像组件没有开箱即用地提供此功能。但是,入侵相当容易。

这是一个向您展示如何创建这样一个组件的教程:http: //www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails &productId=2&postId=4001

但是,如果这是使用组件的 backgroundImage 样式设置的,那么除非您覆盖 updateDisplayList 并使用 Graphics.beginBitmapFill(它确实提供平滑支持)自己执行位图的绘制,否则您可能会不走运。

为什么在 Flex(以及随后的 Flash)中对图像的平滑没有更好的支持(例如不同的插值方法)让我大吃一惊。至少像素弯曲过滤器会帮助我们自己实现这些过滤器。

于 2009-06-07T13:38:06.107 回答
0

如果您的位图尺寸为 n^2 或 n^8,则 Flash 播放器将自动使用一种称为 mip-mapping 的技术,该技术将显着改善缩放位图图像的外观(和性能)。

于 2009-06-08T19:56:07.583 回答