Comunidad de diseño web y desarrollo en internet online

Máscaras, archivos externos y texto dinámico

Citar            
MensajeEscrito el 03 Ago 2007 01:57 pm
Hola a todos,
Intento hacer algo que parece sencillo, pero que se me resiste. Desde mi película principal cargo un .swf que, a su vez, toma texto de un .xml. Este swf lo cargo en un movieclip que, a su vez, quiero que esté enmascarado. El problema es que, si lo enmascaro en la línea de tiempo principal no se ve el texto. He leído que una solución es enmascararlo dinámicamente con MovieClip.setMask, pero no consigo que funcione; el swf ignora la máscara y se ve completo. Adjunto mi código, por si se me está colando alguna bobada...

swf_mc es el movieclip en el que quiero importar el swf.
notas.swf es el archivo externo que importo.
mascara_mc es el nombre de instancia movieclip que quiero usar como máscara.

Código :

this.createEmptyMovieClip("swf_mc", 10);
with (swf_mc){
   _x = 640;
   _y = 100;
}
swf_mc.setMask(mascara_mc);
loadMovie("notas.swf", swf_mc);


Importa y muestra la película bien, pero no sé por qué no se enmascara correctamente. ¿Alguna idea?
Gracias

Por El Tempranillo

1 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 03 Ago 2007 04:05 pm
hola que tal El Tempranillo!! en tu campo de texto hay un boton un poco insignificante en la parete derecha del cuadro de propiedades tiene una leyende "Embed" (en caso que no la tenga recuerda que es un boton pequeñito) con ese boton tu le dices cuales letras tiene que almacenar para evitar que se pierdan en las mascaras....

saludos!!!

Por andres_santos

236 de clabLevel



 

opera
Citar            
MensajeEscrito el 06 Ago 2007 08:43 am
Gracias por la sugerencia. La verdad es que ya había mirado algo por ahí, pero en este caso es bastante complicado:
1- En realidad, lo que enmascaro es la película swf que importo.
2- La película swf es la que importa y monta el texto. El campo de texto se crea mediante action script. He probado a incorporar las fuentes con embedFonts pero entonces no se muestran aunque no esté enmascarado. Sospecho que el problema es que el formato se carga desde una hoja de CSS y no sé cómo cómo afecta eso a la hora de embeber las fuentes en flash. Este es la código que ejecuta el swf:

Código :

estiloNota = new TextField.StyleSheet();
estiloNota.load("notas.css");

this["frame"+i].createTextField("texto_txt",i*37,1,1,94,16 * notas_puerto[i]);
      this["frame"+i].texto_txt.html = true;
      this["frame"+i].texto_txt.multiline = true;
      this["frame"+i].texto_txt.wordWrap = true;
      this["frame"+i].texto_txt.border = false;
      this["frame"+i].texto_txt.selectable = false;
      
      this["frame"+i].texto_txt.styleSheet = estailo;

Y este es el código del CSS:

Código :

.txt
{
   font-family: Arial, Helvetica, sans-serif;
   font-size: 9px;
   color: #156666
}


En fin, que me estoy complicando la vida por reciclar código. Agradeceré cualquier aportación, pero ya me voy haciendo a la idea de replantearme el diseño.
Gracias, de todos modos

Por El Tempranillo

1 de clabLevel



Genero:Masculino  

msie7
Citar            
MensajeEscrito el 06 Ago 2007 02:57 pm
hola que tal El Tempranillo!!! bueno entonces cuando crees el texto de forma dinamica dile que cargue las fuentes usando "embed" my_texto.embedFonts=true; si no te funciona todavía entonces agreaga la fuente a la libreria y ponle un "linkage" y con el mismo nombre del linkage le pones al texto que use esa fuente (usa el nombre del linkage)

saludos!!!

Por andres_santos

236 de clabLevel



 

opera
Citar            
MensajeEscrito el 08 Ago 2007 08:39 am
Perdona la tardanza, pero ando muy liado y casi no puedo dedicarle tiempo. En cuanto pueda, lo pruebo y comentaré el resultado.
Gracias por la ayuda.

Por El Tempranillo

1 de clabLevel



Genero:Masculino  

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.