Pregunta

Actualmente tengo dos problemas con Flex 3 htmlText.

1) Cuando me pongo de mi texto htmlText:

myText.htmlText =

Se calcula la altura de manera equivocada. En la mayoría de los casos, se añade una tonelada de relleno (o espacio en blanco) por encima y por debajo del texto. No estoy seguro de lo que sucede, pero calcula la forma más alta que textHeight normalmente.

2) Si pongo etiquetas en mi html, les elimina automáticamente (en lugar de simplemente ignorarlos). Estoy usando las etiquetas span ser capaz de encontrar dinámicamente ciertos pedazos de mi texto. Por ejemplo:

Estimado, [Nombre]

se introduce en mi htmlText, y los utilizan para analizar el saludo y la etiqueta de mis datos variables.

¿Alguien sabe de alguna solución para estos dos problemas? Cualquier ideas alternativas sobre cómo analizar trozos de HTML? Cualquier forma de mejorar htmlText? Cómo medir correctamente textHeight y / o material de relleno quitar?

Gracias!

¿Fue útil?

Solución

Básicamente, las necesidades de etiquetas anchura y altura establece explícitamente con el fin de flex para calcular la altura correcta de estos elementos. Además, se puede utilizar:

invalidateSize();
validateSize();

Para la validación tamaño de la fuerza que se produzca, lo que a veces ayuda!

Otros consejos

  1. Añadir estas dos líneas antes de usar cualquier XML:

    XML.ignoreWhitespace = true;
    XML.prettyPrinting = false;
    

    Esto debe hacerse cargo de las líneas añadidas por encima y por debajo del texto.

    ignoreWhitespace tiras espacio inicial y final de su los nodos de texto.
    prettyPrinting , cuando se establece en true, formatea la salida XML , sangría nodos y añadiendo caracteres de nueva línea para que sea más fácil de leer - sino que también afecta a la salida de texto. Por ejemplo, cuando se tiene una estructura como esta:

    <p><span class="test">This is a test.</span></p>
    

    Flash es la salida:

    <p>
        <span class="test">
            This is a test.
        </span>
    </p>
    

    Esto lleva a su campo de texto que muestran:

    (newline)
    (newline)
    This is a test.
    (newline)
    (newline)
    
  2. El lector Flash no eliminará ninguna etiqueta HTML, si la propiedad styleSheet no está ajustado correctamente. Así, en su caso, eliminará las etiquetas <span> y añadir sus propias etiquetas y <P> <FONT> lugar, de acuerdo con información de la fuente que ha especificado usando defaultTextFormat o setTextFormat (intenta trazar htmlText después de que haya establecido que - verá) . Usted tiene que establecer la propiedad styleSheet del campo de texto a una hoja de estilo actual, si quiere mantener sus propias etiquetas.

  3. de análisis de la información que necesita mediante el uso de etiquetas HTML es una forma válida para ir. Que suelen utilizar marcadores de posición numeradas como {0} y string.replace () para insertar valores dinámicos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top