TLF 2.0 is not a drop-in replacement into Flex 4. To even get it running changes are needed to Flex 4.0.T wo files need to be replaced in Flex 4 and spark.swc needs to be rebuilt. The files, FTETextField.as and CSSTextLayoutFormat.as, are available for download here.
These changes were tested with Flex 4.0 SDK build 14159. I believe the same changes will work with Flex 4.1. To rebuild Flex with these changes:
1) From http://opensource.adobe.com/wiki/display/flexsdk/Download+Flex+4 download the “Open Source Flex SDK” you wish to modify.
2) replace the two files with the above modified versions.
3) run “ant -q main” in the frameworks directory
4) replace spark.swc with the one you just built.
There are other known issues. The biggest one is that TLF changed selection to permit inclusion of the final paragraph terminator in the selection from the selectAll API. This gives more consistent highlighting but caused some problems for Flex code. Fixes for this issue are not available for 4.0/4.1.
UPDATE For Flex 4.1
The changes for Flex 4.1 are to the same two files but the source files have changed in the Flex SDK. I posted 4.1 versions here: http://blogs.adobe.com/tlf/files/2010/08/FlexFixes41.zip
I’ve also seen the problem with building datavisualization. I solved by copying manifest_datavisualization.xml to manifest.xml in the frameworks/projects/datavisualization directory.

so you’re saying that tlf “2.0″ isn’t in the recent 4.1 release?these tlf hacks are a pain to propagate through a large team, please make it easier.
thanks!
Flex 4.1 includes the TLF 1.1 release.This is “in development” non-production code. Once various issues are resolved we will be posting each change indivdually into the sourceforge depot. The changes will have passed our automated testing but its still pre-release software.Sorry for the difficulty – these are changes necessary so that TLF can add new features.
ah, i see. i thought this was a full release. Sorry, i get excited when I see .0 releases.
Is there even a ‘hack’ to get the new floating Text (text around images) ?
hi,I do as what you said above,but it does’t work,when i run the application with float attrubite ,it alert that it does not have the attrubite,but there is no compile error.thanks.
when i do as the description above, (ant -q main) i got the error :
BUILD FAILED
D:\flex4\frameworks\build.xml:153:compc task failed.
what’s wrong?
Hi Anny,
Facing same problem from my side as well.
Did you able to solve it….!!
Thanks,
Yugandhar.
See this comment: http://blogs.adobe.com/tlf/2010/07/tlf-20-lists-markup.html#comment-204
If that’s not the problem I’ll need more information.
Hi, the links to those 2 files are dead! Does anyone have an updated link? Anny, perhaps you grabbed the files using “Save link as…” as I did.
Yes they are. I updated the blog post with this link, http://blogs.adobe.com/tlf/files/2010/08/FlexFixes.zip, to a zip file containing the two files.
Nice one Richard!
I’m having some trouble compiling though.
With 4.0.0, I’m getting the error: The definition of base class TextContainerManager was not found. This class is definitely in the new TLF 2.0 source.
With 4.1.0, I’m getting: Implicit coercion of a value of type mx.core:IFlexModuleFactory to an un
related type flashx.textLayout.compose:ISWFContext.
Any ideas?
With 4.1, I am also getting the same error as you Tim.
TextContainerManager is definitely not new. Flex’s RichTextEdit class in Flex 4.0 is built on top of it. I suspect you are compiling with 2.0 and then using the 1.1 or 1.0 RSL to run. Follow these instructions:
http://forums.adobe.com/message/3027703#3027703
Richard I don’t understand these instructions.
For step 4, I am not sure what spark.swc is to be replaced. In step 3, you instruct to run an ant build that overwrites the current spark.swc. So there is no spark.swc to be replaced since ant already did.
Also, when I do the build using Flex 4.0 SDK build 14159 with the 2 modified files in the correct directory, I get a failed build. It fails building the datavisualization SWC. Is this expected? Is the purpose of this build is to just grab the updated spark.swc and use it in another copy of Flex SDK?
The reason I am trying to use TLF 2.0 is to prevent InlineGraphicElements from disappearing when the content is scrolled. You mentioned (http://forums.adobe.com/message/2971076#2971076) the 2.0 fixed that bug. However if step 4 is indeed unnecessary then that bug is still alive.
If step 4 is needed, can you please clarify? Thanks again for your time.
I’m sorry these instructions are difficult.
1) The idea is that the Flex SDK you are building is in a different location from the one you are using in your projects. So there are two flex sdks – one being modified and built – and one in use in your projects. The copy step is from the one being built to the one in use in your projects. Of course feel free to just point your project to the one you built and skip the copy step.
2) I didn’t have problems with the build. Does the datavisualization swc build if you don’t make the TLF changes?
3) I’d recommend the workaround for that bug rather than switching to the in-development TLF 2.0. There is a lot of new code here and its not production ready at this point.
Firstly, thanks for all the effort you and your team are putting into TLF 2.0. The project we are working on we are migrating from flex 3 to 4 and the main reason is to use the new TLF. Unfortunately, a big part of the system is the use of Lists. Enter TLF 2.0!
We’ve built TLF 2.0 into our SDK and we can get it to run however we’ve also come across the issue with content disappearing when a TextArea is scrolled.
We followed the above steps and are running with
– Flex SDK : 4.1.0.16076
– TLF 2.0 : Revision 92
– New textlayout from source
– manifest_datavisualization renamed in manifest
– Framework linkage : :merged into code
Here is a really basic code sample of the issue. Do others experience the same issue?
Any guidance would be greatly appreciated!
Thanks,
Justin
test 1
test 2
test 3
test 4
test 5
test 5
test 6
test 7
My apologies, i forgot to escape the code
<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
width="500" height="200"
xmlns:ns="library://ns.adobe.com/flashx/textLayout">
<fx:Declarations>
<!– Place non-visual elements (e.g., services, value objects) here –>
</fx:Declarations>
<s:TextArea id="testScroll"
focusEnabled="false"
width="450" height="100">
<s:textFlow>
<s:TextFlow paragraphSpaceBefore="20" >
<ns:list paddingLeft="5" listStyleType="circle" listStylePosition="inside">
<s:li>test 1</s:li>
<s:li>test 2</s:li>
<s:li>test 3</s:li>
<s:li>test 4</s:li>
<s:li>test 5</s:li>
<s:li>test 5</s:li>
<s:li>test 6</s:li>
<s:li>test 7</s:li>
</ns:list>
</s:TextFlow>
</s:textFlow>
</s:TextArea>
</s:WindowedApplication>
I’m seeing a runtime error when I scroll the TextArea from the code above. I’ve logged a bug. Thanks!
Thank’s Alan,
Is there an ID that we can follow on Adobe’s JIRA?
Cheers,
Justin
This is all very confusing. Is there not a package SDK with this build that I can just download, I’m ok in development normally but I am confused here. My problem is that inline images are not showing, is this a known issue with TLF 1.0 ?
You don’t need 2.0 code to show basic images. 2.0 adds the floats feature, but based on your forum post you may not even need that. I’m trying to reply to your forum thread but it’s running very slowly for me today. The issue you’re running into is the difference between HTML markup for images that uses a “src” attribute and TLF markup that uses “source.”
sorry, i’m chinese .
I don’t know how to compile sdk,may you tell me step by step ?
thank you very much!!!
You could take a look at some of the Flex documentation on setting up your environment and building:
http://opensource.adobe.com/wiki/display/flexsdk/Setup
http://opensource.adobe.com/wiki/display/flexsdk/Build+and+Test
hey frnds,
i want to add video in tlf and want to show it,
tell me the way in flex 4
The easiest way to do this is have a separate swf with the video content you want, then add an image tag to your markup with that swf as the source.
Hi, I am using TLF and i have seen the MyContainerController.as to create context menu, i want to know how to scroll to a particular position of the text using the singleContainerView.mxml ?
I am using singleContainerView.mxml
Use the ContainerController’s scrollToRange method.
When is TLF2.0 scheduled for a proper, stable release?
TLF 2.0 will have an official release with the next version of the Creative Suite.
To anyone who is having a tough time getting this to work:
There are a couple of other things I had to do to get things to work.
- Copy textLayout.swc to the frameworks/libs directory.
- Change the linkage for textLayout in the project from RSLs (default) to Merged into code.
It’s a bummer that it has to be merged into code since it makes the SWF so big, but that’s the trade-off to get new functionality that’s not released yet.
I’m also having trouble getting a release build of my project exported. I’m getting an error “No signed digest found in catalog.xml of the library.” for a few different other swcs. Trying to figure that out now.
Hi all — I downloaded SDK4.1 and am attempting to get TLF2.0 working in it. I believe I have followed all instructions successfully. The ant step created new versions of several SWC files in frameworks/libs.
However, when I try to compile my mxml file (which works with the 4.0 release SDK), I get errors. I am using mxmlc with no command line options, and the out-of-the-box flex-config.xml, and I get the following for spark, sparkskins, framework and rpc SWCs:
Error: No signed digest found in catalog.xml of the library, …/flexsdk/frameworks/libs/spark.swc. Compile the library with -create-digest=true and try again.
-create-digest is not a valid parameter to compc, but compute-digest is. This is apparently in effect because when I look at catalog.xml inside spark.swc, I see an unsigned digest. Of course only adobe can sign a SWC.
Any idea why mxmlc is insisting on a signed SWC?
Thanks!
I believe you need to set the “Framework linkage” to “Merged into code”.
Hello,
downloaded 1.1.0.16076, replaced the two files, ran the “ant -q main” in the framework folder.
But from there the instructions are not clear.
You say tell to replace ‘spark.swc’ , but the one that’s created by the ant command is framework.swc in the frameworks.libs folder, and no other file!
Can you please write out some working instructions?
Also, I’m on OSX and the terminal immediately gives me this feedback when I run the cmd:
“Please set the environment variable ANT_OPTS to -Xmx256m”
Any help on that is welcome.
Thanks
Sorry ,
I downloaded offcourse 4.1.0.16076 in stead of 1.1…..
I can’t get it to build on mac either. Works fine on windows.
Richard
Is TLF2.0 included in Hero? If I don’t want the latest TLF2.0, can I just download the preview Hero and have it included, and have it run on both Mac and Windows?
Will
TLF 2.0 is included in Hero. I’m not quite sure what you’re asking. Do you want to use Flex 4.5 with TLF 1.1? That would work if your Flex code didn’t reference TLF (doesn’t use spark components). Then you could have 4.5 halo components, and a TLF 1.1 component of your own. But if the Flex app uses spark components, then you would have to backport the spark text components to TLF 1.1, because you can’t have more than one version of TLF 1.1. That shouldn’t be too hard, but there were some new TLF 2.0 that you’d have to strip out. Lastly, if you can have a Flex 4.5 app with spark components using TLF 2.0 that loads a second application with a custom TLF component using TLF 1.1.
I am interested in trying TLF 2.0, on Mac and Windows. I don’t need the latest 2.0, and, since Richard mentioned Mac isn’t working, I thought the easiest way would be to just get Burrito/Hero. Presumably later I can integrate TLF 2.0 into Flex 4.0 or 4.1 and the code that I wrote in Burrito could get ported easily (and I don’t use Hero specific things).
Hi Richard,
I am able to use the ListItemElement & ListElement when I use Hero SDK.
But when I use the mentioned steps I am not able to use them.
The build.xml does not have a rule to generate a modified textlayout.swc.
I want to use these two Items in Flex 4.0 sdk.
Thanks Dilawar
Try this (with the 4.1 SDK):
$ cp projects/datavisualization/manifest_datavisualization.xml \
> projects/datavisualization/manifest.xml
$ ant -q main
Replace textLayout.swc with the latest one from
http://sourceforge.net/projects/tlf.adobe/files/ .
Target Flash Player 10.1 .
When using inline TLF markup, try
TextFlow xmlns=”library://ns.adobe.com/flashx/textLayout”
instead of
TextFlow xmlns=”library://ns.adobe.com/flex/spark”
.
Tobi
I cannot get beyond the build stage. This is copied from command prompt in Windows 7:
C:\Users\Waj\Adobe Flash Builder 4\SDK builds\frameworks>ant -q main
[echo] Please set the environment variable ANT_OPTS to -Xmx256m
[echo] Compiling frameworks/locale/en_US/spark_rb.swc
BUILD FAILED
C:\Users\Waj\Adobe Flash Builder 4\SDK builds\frameworks\build.xml:153: compc task failed.
Total time: 1 minute 54 seconds
As far as I can tell I have followed the instructions perfectly. Any advice? Thanks
Best suggestion is to pick up the Flex hero builds which include TLF 2.0.
Thanks, runs fine. Presumably only TLF features added before the build (October) will be available, so I’ll start with the TLF 1.1 spec and work forwards. Shame that what I really wanted was the new feature that HtmlImporter has to preserve unrecognised elements…
Hi,
I’ve some issues with textAera displaying text and images within a textFlow. Inline images display is very strange when scrolling. My code is :
editor.textFlow = TextConverter.importToFlow(markupText, TextConverter.TEXT_LAYOUT_FORMAT);
There have been bugs fixed in this area. The pasted code doesn’t tell me much – you used the importer.
Hi Richard,
While building sdk using ant -q main , it getting ‘build.xml:153; compc task failed’ error.
Any idea why it is happened.
Thanks,
Yugandhar.
I have the same issue as Yugandar, I am trying to build the 4.1 sdk with the tlf updates for a project I am working on. I get the same:
ant -q main , it getting ‘build.xml:153; compc task failed’ error.
Please help! I really need to use the new tlf 2.0 stuff! Maybe someone can at least share a new 4.1 spark.swc that has been compiled with the tlf 2.0 updates that I could drop in, if that is possible?
It is really hard to find any information on tlf 2.0, let alone how to get it set up and working in the flex 4.1 sdk so I can use it.
I haven’t experienced this error. Is it a compile error on some specific line of code or an out of memory error? Something else? I do suggest the following:
1) The best way to get TLF 2.0 and Flex is to use the Flex 4.5 SDK from the Flex download page. It’s already all built.
2) Try building Flex without any changes. If you still get the error then I’d suggest asking on the Flex forum.
3) Some people have out of memory problems esp. on Mac platforms. There are many knowledgeable posts on the web describing how to increase the memory available to ant.
4) Note that the procedure here is to build Flex 4.1 ONLY. It does not build TLF. The TLF opensource site has instructions on how to do that.
Hope that helps.
<?xml version=”1.0″ encoding=”UTF-8″?>
<xs:schema xmlns:xs=”http://www.w3.org/2001/XMLSchema”>
<xs:annotation>
<xs:documentation>
The following are all of the types related to Adobe’s TLF 2.0. More (but still sketchy) details for this spec can be found at:
http://help.adobe.com/en_US/flex/using/WS02f7d8d4857b1677-165a04e1126951a2d98-7ff6.html
http://help.adobe.com/en_US/as3/dev/WSb2ba3b1aad8a27b0-1b8898a412218ad3df9-8000.html#WS19f279b149e7481c6944fe6612e01ed0f26-8000
http://blogs.adobe.com/tlf/files/tlf/Lists.pdf
http://opensource.adobe.com/wiki/display/flexsdk/FXG+2.0+Specification#FXG2.0Specification-FXGText
</xs:documentation>
</xs:annotation>
<!– Specify any reusable types –>
<xs:simpleType name=”hexColor”>
<xs:restriction base=”xs:string”>
<xs:pattern value=”#[0-9a-fA-F]{3}([0-9a-fA-F]{3})?”/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name=”listStyleTypes”>
<xs:restriction base=”xs:string”>
<xs:pattern value=”arabicIndic|bengali|box|check|circle|cjkEarthlyBranch|cjkEarthlyStem|decimal|decimalLeadingZero|devangari|diamond|disc|gujarati|gurmukhi|hangul|hangulConstant|hiragana|hiraganaIroha|hyphen|kannada|katakana|katakanaIroha|lowerAlpha|lowerGreek|lowerLatin|lowerRoman|none|persian|square|thai|upperAlpha|upperGreek|upperLatin|upperRoman|urdu”/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name=”paddingTypes”>
<xs:restriction base=”xs:string”>
<xs:pattern value=”[\d]+%?|auto|inherit”/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name=”widthOrHeight”>
<xs:restriction base=”xs:string”>
<xs:pattern value=”[\d]+%?|auto”/>
</xs:restriction>
</xs:simpleType>
<!– Specify several simple elements –>
<xs:element name=”a”>
<xs:complexType mixed=”true”>
<xs:choice minOccurs=”0″ maxOccurs=”unbounded”>
<xs:element ref=”br” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”img” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”linkActiveFormat” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”linkHoverFormat” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”linkNormalFormat” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”span” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”tab” minOccurs=”0″ maxOccurs=”unbounded”/>
</xs:choice>
<xs:attribute name=”href” type=”xs:anyURI”/>
<xs:attribute name=”target” default=”_blank”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”_self|_parent|_blank|_top”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name=”br”>
<xs:complexType>
<xs:complexContent>
<xs:restriction base=”xs:anyType”/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name=”div”>
<xs:complexType mixed=”true”>
<xs:choice minOccurs=”0″ maxOccurs=”unbounded”>
<xs:element ref=”a” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”br” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”div” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”img” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”linkActiveFormat” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”linkHoverFormat” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”linkNormalFormat” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”list” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”p” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”span” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”tab” minOccurs=”0″ maxOccurs=”unbounded”/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name=”img”>
<xs:complexType>
<xs:attribute name=”height” type=”widthOrHeight”/>
<xs:attribute name=”src” type=”xs:anyURI”/>
<xs:attribute name=”width” type=”widthOrHeight”/>
</xs:complexType>
</xs:element>
<xs:element name=”li”>
<xs:complexType mixed=”true”>
<xs:choice minOccurs=”0″ maxOccurs=”unbounded”>
<xs:element ref=”list” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”p” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”span” minOccurs=”0″ maxOccurs=”unbounded”/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name=”linkActiveFormat”>
<xs:complexType>
<xs:all>
<xs:element ref=”TextLayoutFormat”/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name=”linkHoverFormat”>
<xs:complexType>
<xs:all>
<xs:element ref=”TextLayoutFormat”/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name=”linkNormalFormat”>
<xs:complexType>
<xs:all>
<xs:element ref=”TextLayoutFormat”/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name=”list”>
<xs:complexType>
<xs:choice minOccurs=”1″ maxOccurs=”unbounded”>
<xs:element ref=”li” minOccurs=”1″ maxOccurs=”unbounded”/>
<xs:element ref=”listMarkerFormat” minOccurs=”0″ maxOccurs=”1″/>
</xs:choice>
<xs:attribute name=”listStylePosition”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”inside|outside”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name=”listStyleType” type=”listStyleTypes”>
</xs:attribute>
<xs:attribute name=”paddingLeft” type=”paddingTypes”/>
<xs:attribute name=”paddingRight” type=”paddingTypes”/>
<xs:attribute name=”tabStops”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”([SsEeCcDd][\d]+)( [SsEeCcDd][\d]+)*”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name=”listMarkerFormat”>
<xs:complexType>
<xs:all>
<xs:element ref=”ListMarkerFormat”/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name=”ListMarkerFormat”>
<xs:complexType>
<xs:attribute name=”afterContent” type=”xs:string”/>
<xs:attribute name=”beforeContent” type=”xs:string”/>
<xs:attribute name=”content” type=”xs:string”/>
<xs:attribute name=”color” type=”hexColor”/>
<xs:attribute name=”counterIncrement”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”ordered [\+-]?[\d]+”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name=”counterReset”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”ordered [\+-]?[\d]+”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name=”fontSize” type=”xs:unsignedShort”/>
<xs:attribute name=”paragraphEndIndent” type=”xs:unsignedShort”/>
<xs:attribute name=”suffix”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”auto|none”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name=”p”>
<xs:complexType mixed=”true”>
<xs:choice minOccurs=”0″ maxOccurs=”unbounded”>
<xs:element ref=”a” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”br” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”img” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”linkActiveFormat” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”linkHoverFormat” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”linkNormalFormat” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”span” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”tab” minOccurs=”0″ maxOccurs=”unbounded”/>
</xs:choice>
<xs:attribute name=”fontFamily” type=”xs:string”/>
<xs:attribute name=”fontSize” type=”xs:unsignedShort”/>
<xs:attribute name=”textAlign” default=”left”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”center|end|justify|left|right|start”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<!– many more possible attributes: ??? – Can’t find enough detail–>
</xs:complexType>
</xs:element>
<xs:element name=”span”>
<xs:complexType mixed=”true”>
<xs:choice minOccurs=”0″ maxOccurs=”unbounded”>
<xs:element ref=”br” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”tab” minOccurs=”0″ maxOccurs=”unbounded”/>
</xs:choice>
<xs:attribute name=”baselineShift” default=”0″>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”[\+-]?[\d]+|superscript|subscript”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name=”color” type=”hexColor”/>
<xs:attribute name=”fontSize” type=”xs:unsignedShort”/>
<xs:attribute name=”fontStyle”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”bold|boldItalic|italic|regular”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name=”fontWeight”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”bold|normal”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name=”lineThrough” type=”xs:boolean”/>
<xs:attribute name=”textDecoration”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”underline|none”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name=”tab”>
<xs:complexType>
<xs:complexContent>
<xs:restriction base=”xs:anyType”/>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name=”TextFlow”>
<xs:complexType mixed=”true”>
<xs:choice minOccurs=”0″ maxOccurs=”unbounded”>
<xs:element ref=”a” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”br” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”div” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”img” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”list” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”p” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”span” minOccurs=”0″ maxOccurs=”unbounded”/>
<xs:element ref=”tab” minOccurs=”0″ maxOccurs=”unbounded”/>
</xs:choice>
<xs:attribute name=”fontFamily” type=”xs:string”/>
<xs:attribute name=”fontSize” type=”xs:unsignedShort”/>
<xs:attribute name=”listAutoPadding” type=”xs:unsignedShort”/>
<xs:attribute name=”paddingTop” type=”paddingTypes”/>
<xs:attribute name=”paddingLeft” type=”paddingTypes”/>
<xs:attribute name=”textIndent” type=”xs:unsignedShort”/>
<xs:attribute name=”whiteSpaceCollapse”>
<xs:simpleType>
<xs:restriction base=”xs:string”>
<xs:pattern value=”collapse|preserve”/>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name=”version” type=”xs:string”/>
<!– Auto-generated stuff also lists xmlns=”http://ns.adobe.com/textLayout/2008″ as an attribute, but this breaks validation. We filter it out before we validate. –>
</xs:complexType>
</xs:element>
<xs:element name=”TextLayoutFormat”>
<xs:complexType>
<xs:attribute name=”color” type=”hexColor”/>
<!– many more possible attributes: see http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flashx/textLayout/formats/TextLayoutFormat.html –>
</xs:complexType>
</xs:element>
</xs:schema>
Can anyone tell me how to integrate the new TLF 3.0 into the flex 4.5.1 sdk?
Any information will be appreciated.
Thanks.
For best results please post your questions to the TLF forum:
http://forums.adobe.com/community/opensource/tlf
we also can not get the drag & drop property on TLF for images.. is there any way to resolve the probelm?
You need to implement drag & drop on your own. You can get the real image object by ILG.graphic.
We are facing some problem with TLF framework. We need to add component(any UI component) in selected textflow. But we cant do that. We need any UI element (just like inlinegraphicElement for images) for UI components. Please reply ASAP.
You can add Sprite or even SWF as inlinegraphic. So add your UI components onto a Sprite or a SWF.