Quantcast
Channel: Adobe Community : Popular Discussions - Text Layout Framework
Viewing all articles
Browse latest Browse all 46391

Preserving whitespace when importing an html String into a RichText

$
0
0

Brief situation overview:

     The program allows the user to edit RichTextEditors and other classes in order to create presentable documents. The program handles printing the document so when the user wants a print preview or to actually print they select that option from the program's menu. Calling a print preview requests the printable data from all the elements in the document and puts them into formats that look more presentable (without editing controls).

 

Problem:

     When the RichTextEditor's htmltext is retrieved it gets imported into an instance of RichText but the whitespace gets collapsed.

 

Example:

This (in RTE):

     Table

     Key     Value

     1         2

     3         4

 

     5         6

 

Becomes (in RT):

     Table

     Key Value

     1 2

     3 4

 

     5 6

 

Relevant code:

     if(data is String) {

          var curElem:RichText = new RichText();

          var importer:ITextImporter = TextConverter.getImporter(TextConverter.TEXT_FIELD_HTML_FORMAT);

          curElem.textFlow = importer.importToFlow(data);

 

          //Some curElem.textFlow leaf color and baselineShift changes

 

          addToPage(curElem);

     } else ...

 

What I've tried/noticed:

     I have tried putting in

          XML.ignoreProcessingInstructions = false;

          XML.ignoreWhitespace = false;

          XML.prettyPrinting = false;

     and

          curElem.textFlow.whiteSpaceCollapse = WhiteSpaceCollapse.PRESERVE;

     before the importer.importToFlow() function gets called but it hasn't changed the results at all. Although changing the textFlow.whiteSpaceCollapse value wouldn't have done anything since the importer just creates a new textFlow (I thought I'd mention that I tried it anyway). When I tracked the values for XML that I changed during this process I made sure that they weren't getting reset to true at some point. Having said that I didn't do a depth step through the whole importToFlow() call so if it reset the values and changed them back (I don't know why it would do that) I probably wouldn't have noticed.

 

Sorry if I'm unclear about anything, if you need any more information then please let me know.

 

-Devin


Viewing all articles
Browse latest Browse all 46391

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>