Did you try this? 
http://blog.flexexamples.com/2009/08/26/setting-tab-stops-on-a-spark-richtext-control-in-flex-4/

From: Frank Delporte <[email protected]<mailto:[email protected]>>
Reply-To: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>, 
"[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Date: Tuesday, February 2, 2016 at 5:41 AM
To: "[email protected]<mailto:[email protected]>" 
<[email protected]<mailto:[email protected]>>
Subject: How to assign tabs to a Spark RichtText with TextLayoutFramework

Same question asked on 
http://stackoverflow.com/questions/35151142/flex-sdk-how-to-assign-tabs-to-a-spark-richttext-with-textlayoutframework

I'm experimenting with the TextLayoutFramework to try to use tabs. Based on 
some examples this should work, but doesn't...

Any ideas why the txt is shown as follows with spaces instead of linebreaks or 
tabs?

111111 222222 33333 44444 55555 66666 77777

This is the code used:

<fx:Script>
    <![CDATA[
        import flash.text.engine.TabAlignment;

        import flashx.textLayout.conversion.TextConverter;
        import flashx.textLayout.formats.TabStopFormat;
        import flashx.textLayout.formats.TextLayoutFormat;

        private function setText() : void
        {
            // Test content
            var txt : String = 
"<p><span>111111\n222222\t33333\t44444\t55555\n66666\t77777</span></p>";
            var xml : XML = new XML("<TextFlow 
xmlns='http://ns.adobe.com/textLayout/2008'>" + txt + "</TextFlow>");

            // Define three tab positions
            var tabStop1:TabStopFormat = new TabStopFormat();
            tabStop1.alignment = TabAlignment.START;
            tabStop1.position = 50;

            var tabStop2:TabStopFormat = new TabStopFormat();
            tabStop2.alignment = TabAlignment.CENTER;
            tabStop2.position = 150;

            var tabStop3:TabStopFormat = new TabStopFormat();
            tabStop3.alignment = TabAlignment.END;
            tabStop3.position = 250;

            // Define the formatter
            var format:TextLayoutFormat = new TextLayoutFormat();
            format.tabStops = new Array(tabStop1, tabStop2, tabStop3);

            // Put the text in the textbox
            txtBox.textFlow = TextConverter.importToFlow(xml, 
TextConverter.TEXT_LAYOUT_FORMAT);

            // Assign the formatter to the textbox
            txtBox.textFlow.format = format;
        }
    ]]></fx:Script><s:RichText id="txtBox" top="25" left="25" width="400" 
height="200" />

Reply via email to