2 Replies Latest reply on May 23, 2013 12:20 PM by James22s22

    "Render text as HTML" feature broken in Flash CS6

    James22s22 Level 1

      ******BUG******

      Concise problem statement:

      Classic text field set to render in html mode does not display the left margin correctly for the 2nd and subsequent paragraphs once you exit edit mode on the text field.  Instead, all paragraphs render as though they have the same left margin as the first paragraph.  It displays incorrectly at runtime as well.

       

       

      Steps to reproduce bug:

      1. Create a "classic text" mode text field as dynamic text with "render as html" button checked and set to multiline.

      2. Enter a title line, press enter, then create a second paragraph, press enter, then create a 3rd paragraph.

      3. Select the 2nd paragraph and increase the left margin.

      4. Select the 3rd paragraph and set the left margin to something different than the 1st or 2nd paragraph.

      5. Deselect the text field to finish editing.

       

       

      Results:

      While editing the text field, the left margins on the second and third paragraphs are displayed correctly with independent values, but once you finish editing it and deselect the text field, the entire text field displays as though all paragraphs have the same margin as the first paragraph.  If you resume editing, the indentation re-appears, so it's not lost, but it's not being displayed correctly unless you're in edit mode for the text field.  It also displays incorrectly at runtime in the final SWF.

       

       

      Expected results:

      The indentation should be visible regardless of whether I'm in edit mode for the text field.

       

       

      This feature (html mode display of text) is unusable at design time or runtime, because the text field does not display correctly unless you're actively editing it.

       

      FYI: Things like different colors, fonts, etc. seem to be preserved, but anything related to paragraph formatting is lost.  If I trace the htmlText at runtime, it's clear that none of the unique paragraph formatting was preserved from the editor, because all paragraphs seem to have taken on the same textformat attributes as the first paragraph.

        • 1. Re: "Render text as HTML" feature broken in Flash CS6
          kglad Adobe Community Professional & MVP

          work-around:  use actionscript to format your textfield(s); either stylesheet (easier) or textformat (more laborious).

          1 person found this helpful
          • 2. Re: "Render text as HTML" feature broken in Flash CS6
            James22s22 Level 1

            If I was going to do everything in ActionScript, I wouldn't have bought Flash Professional, I'd have just compiled with the flex compiler for free.  99% of my stuff is pure AS3 anyway, with a lot of drawing commands and even embedded objects like pixel shader binaries.  It's just annoying that I can't use the Flash Professional visual designer as intended to perform WYSIWYG layout, because paragraph formatting is broken.  It's not copying the values from the UI into the final HTML for the text field.  I find like 3 new serious bugs every single day I use Flash, and for the amount of time I spend debugging the IDE and filing bug reports, Adobe should be paying me to use their product, not the other way around.

             

            The only real "workaround" to perform proper paragraph formatting in the visual editor is to use the TLF, which should have been integrated into the Flash Player to begin with instead of existing as an RSL that has to be specially referenced by any project that uses it, cluttering the external library reference list.  Someone needs to build a Flash IDE inside Flash that specifically generates classes for library symbols with all the necessary code in the constructor to build the symbol, so it runs online and is truely WYSIWYG (perhaps something like Gliffy: http://www.gliffy.com/gliffy/#templateId=blank&signup=1 (this link bypasses login)

             

            I still can't get a static text field to look the same as the dynamic one.  The closest I can get it match is by setting render as HTML on and setting the field to multiline, but characters still shift slightly.  TLF text, on the other hand, has perfect consistancy, and edit mode lines up perfectly with non-edit mode, which is exactly how it should have operated from the beginning (like back in MX days).

             

            Then of course there is this problem: http://www.stevensacks.net/2010/05/28/flash-cs5-tlf-engine-causes-errors-with-loaded-swfs/