2

我正在尝试在 Flash 中放大图像而不使其像素化,我知道通过放大会降低一些质量,但我并没有尝试将图像放大 6 倍之类的 :)

我尝试使用矩阵和比例,但质量很差......还有其他方法可以做到这一点吗?


所以这是我的代码,

var _bmpData:BitmapData = new BitmapData( stage.stageWidth, stage.stageHeight, true, 0x00000000 );
var _scale:Number = Math.max(stage.stageWidth/_imageLoad.contentAsBitmap.width, stage.stageHeight/_imageLoad.contentAsBitmap.height)
var _matrix:Matrix = new Matrix();
_matrix.scale(_scale, _scale);

_bmpData.draw( _imageLoad.contentAsBitmap, _matrix, null, null, null, true);

var _bmp:Bitmap = new Bitmap( _bmpData, 'always', true );

问题是,如果我不使用矩阵,一切都很好并且没有像素化,但是如果我使用矩阵进行缩放,它就会被像素化....有什么办法可以解决这个问题吗?谢谢

4

1 回答 1

4
var myBitmap : Bitmap = new Bitmap(myBitmapData);
myBitmap.smoothing = true;

也可以看看BitmapData类的draw方法,里面有一个smoothing参数。显然,这不会帮助解决图像压缩的固有问题,但它可能会稍微减轻它们。

于 2009-09-01T20:22:03.380 回答