Durante bastante tiempo he visto que este es un problema recurrente a la hora de visualizar campos dinámicos, y aunque busque y busque…. Nunca encuentro la solución. Ciertamente en ocasiones funciona, pero a la que pasa un tiempo y ciertas actualizaciones, todo deja de funcionar correctamente (en este aspecto en concreto).
Si bien en flas cs3 me funcionaba, un buen día dejó de funcionar hasta que… otro día volvió a funcionar. Así que no entiendo nada.
Actualmente estoy con CS4 y mi duda es la siguiente:
¿Cómo ver Negritas, Cursivas, Normales y subrayados mediante html (o css) externos en un campo dinámico creado de forma dinámica?
Os explico que tengo hecho hasta ahora (que no es más que la ayuda que me ofrece flash). Este ejemplo no carga txts, htmls o css externos como veréis, pero el resultado es el mismo cargue o no información externa:
Código ActionScript :
//Creamos la caja de texto this.createTextField("my_txt",this.getNextHighestDepth(),0,0,560,600); my_txt.type = "dynamic"; my_txt.border = false; my_txt.background = false; my_txt.password = false; my_txt.multiline = true; my_txt.selectable = true; my_txt.wordWrap = true; my_txt.mouseWheelEnabled = false; my_txt.condenseWhite = false; my_txt.html = true; my_txt.variable = null; my_txt.embedFonts = true; my_txt.antiAliasType = "advanced"; my_txt.styleSheet = undefined; //Definimos el Formato var my_fmt:TextFormat = new TextFormat(); my_fmt.font = "ContenidoWebRegular"; my_fmt.size = 14; my_fmt.color = 0x666666; my_fmt.bold = null; my_fmt.italic = null; my_fmt.underline = null; my_fmt.align = "justify"; my_fmt.leftMargin = 0; my_fmt.rightMargin = 0; my_fmt.indent = 0;//sangría my_fmt.leading = 5;//interlineado my_fmt.bullet = false;//listar o enumerar con puntos my_fmt.kerning = true; my_txt.htmlText = "<b>This is my first</b> test field object text."; my_txt.setTextFormat(my_fmt);
En la Biblioteca he creado una fuente nueva llamada ContenidoWebRegular:
El resultado es que no existen negritas ni nada (únicamente me hace subrayados, es sí me lo respeta)
La ayuda de Flash me dice lo siguiente:
TextFormat Ayuda
y destaco esto:
Flash Ayuda escribió:
Cosa que no termino de comprender
¿Qué he hecho hasta ahora?
1. He hecho lo que pone en es Script que os paso y no funciona.
2. Además del Script, he añadido otra fuente nueva, esta vez en negrita (modificando los parámetros de “Estilo”. Pero teniendo dos fuentes no sé como vincularlas al mismo campo de texto.
3. Si le cambio el parámetro embedFonts a false, me aparecen negritas, cursivas y demás. Pero aparece un tipografía muy fea (una variante de la times imagino)
4. He intentado cargar el formato de forma externa mediante CSS. En esta ocasión me ha medio funcionado, pero no usa la fuente incorporada de Flash (he llegado a la conclusión de que no sé hacerlo porqué no me funciona, sólo me pilla las fuentes que le pido desde CSS y obviamente tengo en mi ordenador) y el interlineado tampoco me lo hace.
Me interesa crear el campo de texto mediante ActionScript 2. Parece ser que la solución más recomendada (aunque ignoro si funciona) es mediante AS3, pero necesito usar AS2. Agradezco encarecidamente la ayuda que puedan aportarme.
Nota: Por otro lado, al comprobar cómo esta sencillez tipográfica se vuelve tan y tan complicada (para mí y bastantes usuarios), me pregunto otra cosa: A pesar de que en la ayuda de Flash nos cuentan que podemos cargar imágenes (y el texto se adapta al contorno de la imagen)…. ¿Es eso cierto? Solo recurrí a eso en una ocasión donde la imagen se cargaba correctamente en un componente TextArea. Pero recuerdo que volví a tener problemas con el texto dinámico. En ese entonces usaba Macromedia FlashMX 2004… así que ignoro si ofrecer nuevas versiones a empeorado o mejorado ese detalle.
Muchísimas gracias y disculpen las molestias que pueda ocasionar si es el caso.