我想用自己的图像替换标准的flex条形图条。这通过嵌入图像和设置为位图填充来工作。然而,即使我在嵌入时应用了9个切片缩放,这些图像也不能很好地缩放。
[Embed source="bar.png", scaleGridRight="721", scaleGridLeft="15", scaleGridTop="1",
scaleGridBottom="90")]
[Bindable]
public var bar:Class;
并在申请时
var x:BitmapFill = new BitmapFill();
x.source = bar;
series1.setStyle("fill", x);
忽略9个切片缩放选项。我不知道如何解决这个问题。
将同一嵌入图像应用于标准图像容器时需要注意的一点是,它遵循缩放选项。
答案 0 :(得分:2)
scale9Grid
方法中使用位图时, Graphics.beginBitmapFill()
不起作用。
其中一个解决方案是创建一个可以使用它的BitmapFill
子类。 Here is the FXP with solution以及它是如何运作的:
<s:Application ...>
<fx:Script>
<![CDATA[
[Bindable]
[Embed(source="sample.png", scaleGridTop="30", scaleGridLeft="7",
scaleGridRight="384", scaleGridBottom="206")]
private var sample:Class;
]]>
</fx:Script>
<s:Group left="0" right="0" top="0" bottom="0">
<s:Rect left="0" right="0" top="0" bottom="0">
<s:fill>
<local:BitmapFillScale9Grid source="{sample}"/>
</s:fill>
</s:Rect>
</s:Group>
</s:Application>
解决方案基于bent.googlecode.com。