Wenas,

El otro día ya se lo comenté por mail a Hari, pero lo envío por aquí por si
a alguien le sirve. Es un artículo que escribí pero que no he hecho público
porque aún me fallan algunas cosas como que funcionen las fuentes en los
componentes v2 y alguna cosilla más. Lo que mola es que conseguí no tener
que utilizar 2 archivos por fuente, con lo que la precarga es real, aunque
con algún problema.

Joseba, lo que comentas del byteCode extraño es lo que hace que el gestor de
SharedFonts te funcione o no dependiendo de si pagaste la licencia.

http://zarate.tv/articulos/shared_fonts/

Pues espero que os sirva.

--
Juan V. Delgado


--------- Mensaje Original --------
De: [email protected]
Para: [email protected] <[email protected]>
Asunto: RE: [ASNativos] Shared Fonts o cómo importar una fue nta en tiempo
de ejecución
Fecha: 19/07/05 09:24

>
> No conozco esta tecnica, pero se ve raro el crear un MC en una profundidad
> negativa, creo que no se puede y que ese sea el origen de los problemas.
Por
> otra parte un mc creado/cargado en tiempo de ejecucion no puede
precargarse
> a si mismo, como ya has visto, se vacian. _root.textFieldLoaded nunca
> ejecutará. Aun asi creo que no se puede hacer eso de una forma obvia, hay
un
> tio por ahí que desarrollo una tecnica, creo que con un bytecode extraño,
y
> tiene una librería a la venta que hace eso. Se llama Shared Fonts, al
> principio creia que te referias a ella:
>
> http://www.sharedfonts.com/es/index.html
>
> Un saludo,
>
> Joseba Alonso
> www.5dms.com
> www.sidedev.net
>
> &gt; -----Mensaje original-----
> &gt; De: [EMAIL PROTECTED]
> &gt; [mailto:[EMAIL PROTECTED] En nombre de Hari Seldon
> &gt; Enviado el: lunes, 18 de julio de 2005 12:24
> &gt; Para: [email protected]
> &gt; Asunto: [ASNativos] Shared Fonts o cómo importar una fuenta
> &gt; en tiempo de ejecución
> &gt;
> &gt;  Hola lista;
> &gt;
> &gt;  Este fin de semana he estado probando unas cuántas
> &gt; cosillas nuevas que tenía &quot;pendientes&quot; con Flash, como
> &gt; utilizar FAME (una pasada, la verdad), y el tema que ahora me
> &gt; tiene un tanto desconcertado, usar shared fonts.
> &gt; Bueno, realmente lo que quiero es poder cargar las fuentes
> &gt; bajo demando, en tiempo de ejecución; y buscando en la red,
> &gt; lo que he visto es que recomiendan usar shared fonts....
> &gt; (igual hay otro método mejor...)
> &gt;
> &gt;  El caso es que tengo dos películas, una que es:
> &gt; FontStandard07_51.fla
> &gt;  Qué exporto a swf como
> &gt; FontStandard07_51.swf
> &gt;
> &gt;  Y que tiene en la biblioteca una fuente, exportada como:
> &gt; Font-standard07_51-8-normal
> &gt; (exportar para tiempo de ejecución, url: FontStandard07_51.swf)
> &gt;  Y un símbolo con esta fuente embebida, exportado como:
> &gt; mc_textfield_standard0751
> &gt;
> &gt;  Después tengo una película dónde cargo esta otra, así:
> &gt;
> &gt; &lt;code&gt;
> &gt; this.stop();
> &gt; var mcContainerTextField_mc:MovieClip;
> &gt; mcContainerTextField_mc =
> &gt; this.createEmptyMovieClip(&quot;insMCcontainerTextField&quot;,-100);
> &gt; mcContainerTextField_mc.onEnterFrame = function() {
> &gt;  var bytesLoaded_int:Number = this.getBytesLoaded();
> &gt;  var bytesTotal_int:Number = this.getBytesTotal();
> &gt;  trace(this.getBytesLoaded());
> &gt;  trace(this.getBytesTotal());
> &gt;  trace(&quot;bytesTotal_int: &quot; + bytesTotal_int);
> &gt;  if (bytesTotal_int &gt; 0) {
> &gt;          trace(&quot;bytesTotal_int &gt; 0 : &quot; + bytesTotal_int);
> &gt;          if (bytesLoaded_int == bytesTotal_int) {
> &gt;                  trace(&quot;cargado...&quot; + bytesTotal_int);
> &gt;                  //trace(bytesLoaded_int);
> &gt;                  _root.textFieldLoaded(this);
> &gt;                  this.onEnterFrame = undefined;
> &gt;          }
> &gt;  }
> &gt; };
> &gt; mcContainerTextField_mc.loadMovie(&quot;FontStandard07_51.swf&quot;);
> &gt; var newTextFormat_tf = new TextFormat(); function
> &gt; textFieldLoaded(rMC_mc:MovieClip){
> &gt;  rMC_mc.onEnterFrame = undefined;
> &gt;  newTextFormat_tf.font = 'Font-standard07_51-8-normal';
> &gt;  newTextFormat_tf.size = 8;
> &gt;  newTextFormat_tf.color = 0x000000;
> &gt;  trace(newTextFormat_tf);
> &gt;  var newText_txt = _root.createTextField(&quot;insNewText&quot;,
> &gt; 125, 10, 10, 100, 100);
> &gt;  _root.insNewText.text = &quot;Hello World!!!&quot;;
> &gt;  _root.insNewText.autoSize = 'left';
> &gt;  _root.insNewText.textColor = 0x000000;
> &gt;  _root.insNewText.setTextFormat(newTextFormat_tf);
> &gt;  _root.insNewText.embedFonts = true;
> &gt;  trace(_root.insNewText.getTextFormat());
> &gt;  trace(_root.insNewText.text);
> &gt;  trace(_root.attachMovie(&quot;mc_textfield_standard0751&quot;,
> &gt; &quot;insNewText2&quot;, 30)); } &lt;/code&gt;
> &gt;
> &gt;
> &gt; Lo primero que me sorprende es que el loader del
> &gt; mcContainerTextField_mc no funciona; eso puedo suponer que es
> &gt; porqué al cargar sobre él la película externa, &quot;machaca&quot; su
> &gt; evento onEnterFrame (tiene que hacerlo porque no me sigue
> &gt; trazando nada cuándo se carga la película); con lo cuál en la
> &gt; película que tiene la fuente, simplemente llamo a
> &gt; _root.textFieldLoaded(this); para parar el onEnterFrame (que
> &gt; en realidad ya está parado), y además ejecutar las acciones
> &gt; que me interesan cuándo se carga la fuente.
> &gt;
> &gt;  Como veis en la función, lo único que hago es crear un
> &gt; objeto TextFormat, y un objeto TextField; bien, pues la
> &gt; historia es que pasa absolutamente de mi.. No aparece nada en
> &gt; pantalla. Lo más curioso del caso es que si ejecuto este .fla
> &gt; en modo de depuración, tanto el objeto TextFormat como la
> &gt; nueva instancia textfield insNewText aparecen, con sus
> &gt; propiedades correctas, etc etc, pero NO aparecen en pantalla....
> &gt;
> &gt;  No se si es que no se usan así las librerías
> &gt; compartidas, o que para hacer lo que yo quiero (cargar una
> &gt; fuente externa, y después usarla en mi película principal),
> &gt; hay otra forma de hacerlo y así no se puede hacer....
> &gt;
> &gt;  Agradecería cualquier indicación :)
> &gt;
> &gt;  Un saludo.
> &gt;
> &gt;
> &gt; ----------------------------------
> &gt; Lista ASNativos:[email protected]
> &gt; http://www.5dms.com/listas
> &gt; ----------------------------------
>
> ----------------------------------
> Lista ASNativos:[email protected]
> http://www.5dms.com/listas
> ----------------------------------
>

----------------------------------
Lista ASNativos:[email protected]
http://www.5dms.com/listas
----------------------------------

Responder a