如何在Flex应用程序中编写弯曲文本。我的应用程序中有一个圆形组件,分为4个扇区。我的圆形组件是这样的,我有一个外圆和一个内圆,两个圆之间有一个小间隙。现在我想把弯曲的文字放在四个扇区的这个间隙中,与圆圈一起弯曲。我如何实现这个目标?
这是我的圈子组件:
package components
{
import mx.core.UIComponent;
public class MyCircle extends UIComponent
{
public var x1:int;
public var y1:int;
public var radius:int;
public var myText:String = "curve text test";
override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
{
graphics.beginFill(0xDDDDDD);
graphics.lineStyle(1, 0x000000);
graphics.drawCircle(x1, y1, radius);
graphics.beginFill(0xDDDDDD);
graphics.lineStyle(1, 0x000000);
graphics.drawCircle(x1, y1, radius-40);
graphics.beginFill(0xFFFFFF);
graphics.lineStyle(1, 0x000000);
graphics.drawCircle(x1, y1, radius-100);
}
}
}
在主mxml文件中,我使用以下代码创建圆圈:
<mx:VBox id="cle" label="Currents Quote" width="100%">
<comp:MyCircle x1="175" y1="150" radius="140"
mouseDown="handleMouseDown(event);"/>
<comp:MyLine x1="175" y1="104"/>
</mx:VBox>
文本“曲线文本测试”应该沿着圆圈的曲线写出。有人指导我..
答案 0 :(得分:1)
在网络上有很多great examples如何做到这一点。谷歌是你的朋友。
答案 1 :(得分:1)
如果您仍然感兴趣,我为此开发了一个小型flex组件。你可以在这里找到它:http://code11.com/lab/experiments/flex/text-on-circle-flex-component/ 扩展代码以实现您想要的功能应该非常容易。如果您需要更多帮助,我可以提供帮助。