在flash(AS3)的动态文本框中对导入的旋转图像启用平滑

在flash(AS3)的动态文本框中对导入的旋转图像启用平滑,flash,actionscript-3,Flash,Actionscript 3,我在舞台上有一个旋转10°的电影剪辑,里面有一个动态文本框。我正在加载一些文本,其中嵌入了一个图像,因此: (现在使用第1帧AS3,最终将在类中使用。) “img.contentLoaderInfo…”行抛出此错误,但: 1119: Access of possibly undefined property content through a reference with static type flash.display:DisplayObject. 我会尝试对图像使用BitmapData

我在舞台上有一个旋转10°的电影剪辑,里面有一个动态文本框。我正在加载一些文本,其中嵌入了一个图像,因此:

(现在使用第1帧AS3,最终将在类中使用。)

“img.contentLoaderInfo…”行抛出此错误,但:

1119: Access of possibly undefined property content through 
a reference with static type flash.display:DisplayObject.

我会尝试对图像使用BitmapData类,并对其应用平滑处理。

我认为您的事件处理程序中缺少对
加载程序的强制转换:

Bitmap(Loader(event.target).content).smoothing = true;     
 Loader(img).contentLoaderInfo.addEventListener(Event.COMPLETE, onHtmlImageLoaded);
编辑:注册事件处理程序时执行相同操作:

Bitmap(Loader(event.target).content).smoothing = true;     
 Loader(img).contentLoaderInfo.addEventListener(Event.COMPLETE, onHtmlImageLoaded);
试试这个:

var img:Loader = Loader( tx.getImageReference('proceso') );
img.contentLoaderInfo.addEventListener(Event.COMPLETE, onHtmlImageLoaded);

function onHtmlImageLoaded(event:Event):void{
    event.target.removeEventListener(Event.COMPLETE, onHtmlImageLoaded);
    Bitmap(event.target.content).smoothing = true;      
}

这很有效。

我试过了,但我并不奇怪它不起作用——错误被抛出到设置事件处理程序的行上,所以它永远不会到达那行代码。@Sprugman,什么?!错误引用了不存在的方法/属性“content”,因此肯定是这一行“Bitmap(event.target.content).smoothing=true;”失败。事件的注册,只要它发送一个event:event,在任何情况下都可以正常工作。但是我参加聚会迟到了3个月,所以重要的是你已经把它解决了……)你能说得更具体一点吗?我没有显式地导入图像(如果可以避免,我也不想这样做)。我正试图深入到传入的html中,找到其中的任何图像,并对它们应用平滑处理。不知什么原因,我被导航到了这里,所以让我做一个看似无关的评论:你说“稍后我将使其成为一个类”,但这不是一个好的工作方式。谁在乎呢?好的,如果您先将其作为一个类,您的IDE(FlashDeveloper或FlexBuilder,是的,即使是100%的FlashIDE工作)将通过自动完成,让您知道(如果您执行了不必要的强制转换),该event.target.content行可以接受什么。请注意下面我对大卫回答的评论。。。不管怎样,我迟到了3个月,所以我就消失了:)