0

ビットマップをスケーリングしながら、BitmapImageタグをそのコンテナと同じ幅にしようとしています。私はこのコードを使用してそれを達成しました。

<s:BitmapImage id='image' width='100%' source='assets/eyes.jpg' scaleMode="letterbox"/>

私が抱えている問題は、コンテナの幅と画像サイズの特定の組み合わせでは、ビットマップがまったく表示されないことです。問題を減らして、BitmapImageの高さを(たとえばタイマーを使用して)切り上げる(または下げる)と、完全に表示されることを発見しました。したがって、問題は高さが奇妙な10進数であることに関係していると思います(ただし、一部の非整数の高さでは機能します)。

誰かが同じ問題を見つけましたか?必要に応じて再現するコードがあります。

4

2 に答える 2

0
  <s:controlBarContent>
    <mx:Form id="fid">
        <mx:FormItem id="fiid" label="cornerRadius:">
            <s:HSlider id="sl"
                       minimum="0"
                       maximum="{bmpImg.height/2}" />
        </mx:FormItem>
    </mx:Form>
</s:controlBarContent>
<s:Group id="grp" width="50%" height="50%" horizontalCenter="0" verticalCenter="0" color="RED" >




<s:BitmapImage id="bmpImg" depth="100" width="{grp.width}" height="{grp.height}"
               source="@Embed('assets/image1.jpg')"
               horizontalCenter="0" verticalCenter="0">
    <s:mask>
        <s:BorderContainer id="bmpMask"
                           cornerRadius="{sl.value}"
                           width="{bmpImg.width}" height="{bmpImg.height}" />
    </s:mask>
</s:BitmapImage>
</s:Group>
于 2013-01-29T06:25:29.130 に答える
0
 <s:Group id="grp" width="50%" height="50%" horizontalCenter="0" verticalCenter="0" color="RED" >




<s:BitmapImage id="bmpImg" depth="100" width="{grp.width - 20}" height="{grp.height - 30}"
               source="@Embed('assets/image1.jpg')"
               horizontalCenter="0" verticalCenter="0">
    <s:mask>
        <s:BorderContainer id="bmpMask"
                           cornerRadius="{sl.value}"
                           width="{bmpImg.width}" height="{bmpImg.height}" />
    </s:mask>
</s:BitmapImage>
</s:Group>
于 2013-01-29T06:20:44.060 に答える