Categoría 'Flash'


Discreto 2,0 SWFObject

SWFObject SWFObject es un script de JavaScript se utiliza para insertar contenido Flash en las páginas Web Su función principal es eliminar la solicitud para activar el control por parte de Microsoft Internet Explorer (que, dicho sea de paso, está siendo descontinuado - ver aquí ) y, lo más interesante es la capacidad de comprobar automáticamente e instalar Flash Player, si es necesario. SWFObject puede ser considerado una buena alternativa para el kit para instalar / detectar suministrados por el mismo Flash de Adobe se genera dentro de la IDE (en todos los sus versiones). Con la versión 2.0 , SWFObject mejora su rendimiento y su uso. Como se indica en la documentación oficial , se trasladó a Google Code, nuevo en esta versión son tantos como para que sea NO es compatible con versiones anteriores. Esto se traduce prácticamente en una revisión completa del código para los que decide actualizar una versión anterior de SWFObject 2.0.

El guión está ahora alineado con los últimos estándares, tanto desde el punto de vista sintáctico que "no intrusiva". Es compatible con todas las características anteriores, tales como una rápida instalación del reproductor de Flash, con un código más claro y fácil de usar. El cambio de parámetros, por ejemplo, JavaScript a Flash Player (y por lo tanto a nuestra película) es ahora mucho más ligero y versátil. También se introdujeron dos modos principales: estático y dinámico, dependiendo del proceso de diseño de tipo y la página que estamos haciendo.

Bon y realmente me gustó porque es la herramienta en línea que genera un código de SWFObject nosotros.

LINK:

Continuación ...

Adobe AIR FAQ: Todo lo que usted necesita saber

Mediante la activación de varios blogs (gracias Frank) ya través de conversaciones con Julio , me di cuenta de que, además del gran interés en Adobe AIR , también hay mucha confusión, y con razón. Tanto a los desarrolladores y los usuarios siguen sin tener claro lo que es, lo que sirve y cómo los acontecimientos en Adobe AIR . Decidí, por tanto, para reunir los diversos hilos en este tipo de preguntas frecuentes para tratar de aclarar un poco "lo que realmente se esconde detrás de Adobe AIR.

Continuación ...

Todo lo que quería hacer con Actionscript 3

Una gran novedad introducida con ActionScript 3.0 consiste en ser capaz de enumerar todos los objetos (incluyendo forma dibujada en el momento) presentes en un recipiente ( DisplayObjectContainer ). De hecho, fue ahora que Adobe introdujo esta característica. Siempre me había quejado de la falta, sobre todo porque va a depurar el entorno de Flash fue capaz de llevar a cabo en silencio, pero se mantuvo fuera de nuestro alcance a partir del código!

Continuación ...

Flash CS3 Professional: código sin formato

Supongo que me pregunto por qué Adobe con una lista de errores cada vez mayor?. El error me pareció, en CS3 Professional en italiano, es muy molesto y peligroso. Ojo con el siguiente código:

1
2
3
getRandRange ( min : uint , max : uint ) : uint { getRandRange función privada (min: uint , max: uint ): uint {
uint ( Math . floor ( Math . random ( ) * ( max - min + 1 ) ) + min ) ) ; retorno ( uint ( Matemáticas piso (. Matemáticas random () * (max - min + 1)) + min).)
}

Después de que el formato automático:

1
2
3
getRandRange ( min : uint , max : uint ) : uint { getRandRange función privada (min: uint , max: uint ): uint {
( Math . floor ( Math . random ( ) * max - min + 1 ) + min ) ; volver uint ( Matemáticas piso (. Matemáticas random () * max - min + 1) + min.)
}

Se quitó los brackets en el cálculo de max-min+1 ! Que, por supuesto, ya no devuelve el valor correcto! . El soporte, de hecho, es de vital importancia ya que permite multiplicar Math.random() para todo el resultado de la (max-min+1) . e poi, al risultato di questa moltiplicazione, viene sottratto (min+1) !! En el segundo caso, después de que el código era "sformattato", Math.random() se multiplica por "sólo" en la max y luego, el resultado de esta multiplicación se sustrae (min+1) ! Le expliqué sólo por el bien de la integridad ... pero creo que fue claro para todos ...

Es evidente que en la casa Adobe realmente piensa que la matemática es una opinión?
Esto es un error de peligroso ... si el cuerpo de los códigos de formato "molesta" el código, se convierte en un problema serio va a poner todo en su lugar! Espero que Adobe puede proporcionar un parche tan pronto como sea posible! Así que ¡ADVERTENCIA! Déjame saber si lo hace a usted, a su versión ...

Continuación ...

UMAP Flash Component (v0.6 Beta)

imagen

Fue liberada la versión beta 0.6 de componentes UMAP para Flash CS3 (ActionScript 3.0) - también está presente en la versión del paquete de Flex. Entre las noticias que vemos a la adopción de OpenStreetMap como el proveedor predeterminado. También se añadió un marcador gerente de avanzada y una serie de optimizaciones varias.

Continuación ...

Adobe AIR 1.0, Adobe Flex 3.0 y la nueva fuente de Adobe Open

Adobe AIR Una gran noticia para los desarrolladores de AIR. Fue lanzado finalmente la versión 1.0 ! Fin de la beta, entonces! Nuevo SDK (vital para la construcción en áreas tales como Aptana Studio , Eclipse , etc ...) y actualizar las extensiones Dreamweawer y Flash CS3 Professional en italiano ! Hasta ayer, de hecho, no fue posible el desarrollo de una aplicación AIR con Flash CS3 profesión en italiano. Ahora, el nuevo menú para la creación de RIA AIR está disponible y funcionando! Usted puede encontrar todas las actualizaciones (parches de seguridad y extensiones) directamente en el sitio.

Adobe Open Source Otra novedad es el lanzamiento oficial de la Fuente de Adobe Open , un nuevo sitio web que hará un seguimiento de las últimas novedades en código abierto, no sólo en Adobe. Esto se convierte, entonces, el punto de referencia para los desarrolladores que atraer contribuciones con demostraciones de interés, código fuente y mucho más, como el apoyo a proyectos de código abierto Tamarin y BlazeDS .

Pronto veremos cómo desarrollar una aplicación AIR simple con Flash y Dreamweaver!

Continuación ...

Pintor: sencilla aplicación de dibujo en Flash Pro CS3

Esta es una demostración de lo fácil que es desarrollar aplicaciones en Flash CS3. Después de varios debates sobre el desarrollo de un "borrado", propongo una sencilla aplicación que implemente plenamente algunas de las cosas que se dicen en los mensajes anteriores. En este ejemplo he añadido una barra de herramientas "draggabile", la posibilidad de elegir el color del pincel y el fondo, la selección del instrumento de "borrar" y un ligero "desenfoque" en el diseño!

Cargando flash ...

Descargar el código fuente de Adobe Flash CS3 Professional

Continuación ...

Flash CS3: Un error de texto

Trabajo con texto estático cuorioso he descubierto un defecto en Adobe Flash CS3 Professional . Al colocar texto estático en una película y un ángulo (inclinación), los diferentes resultados se obtienen cuando se ejecuta la película, basada en el anti-aliasing:

Flash CS3 texto de errores

Entorno de autoría de Flash, sin embargo, la vista preliminar es el mismo para ambas opciones de anti-aliasing. En el ejemplo anterior he usado un tipo de letra Arial. Sin embargo, el problema ocurre con cualquier fuente, incluso los mapas de bits. El mismo defecto se produce por la introducción de texto estático dentro de un clip de película y la inclinación en lugar del texto actual. (?)

Continuación ...

Pintura Flash CS3: verdadera herramienta de borrar el tiempo

A partir de los códigos proporcionados en Flash CS3 Cree una pintura , y la realización de pequeñas modificaciones, puede mejorar el instrumento de "borrar". Cómo añadir una figura no está visible, se puede utilizar como un "plan" para ejecutar el draw() de modo de mezcla "borrar". Como se muestra en el ejemplo siguiente, después de dibujar algo, mantenga pulsada la tecla Ctrl y el efecto de la "anulación" está ahora en tiempo real.

Cargando flash ...

El código es el siguiente - Fuente :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
. MouseEvent ; flash.events de importación. MouseEvent ;
. BitmapData ; flash.display importación. BitmapData ;
. Bitmap ; flash.display importación. mapas de bits ;
. GradientType ; . flash.display importación GradientType ;
/ /
. Matrix ; importaciones flash.geom. Matrix ;
/ /
Boolean = false ; var md: Boolean = false;
/ /
Sprite = new Sprite ( ) ; var event_spr: Sprite = new Sprite ();
event_spr ) ; addChild (event_spr);
/ /
Number = event_spr . stage . stageWidth ; var area_width: Número = event_spr prácticas stageWidth,..
Number = event_spr . stage . stageHeight - 32 ; area_height var: Número .. = event_spr prácticas stageHeight - 32;
/ /
String = GradientType . LINEAR ; fillType var: cadena = GradientType . LINEAL;
: Array = [ 0xFF0000 , 0x00FF00 , 0x0000ff ] ; var colores: array = [0xFF0000, 0x00FF00, 0x0000FF];
: Array = [ 1 , 1 , 1 ] ; var alphas: array = [1, 1, 1];
: Array = [ 0 , 128 , 255 ] ; var ratios: matriz = [0, 128, 255];
String = SpreadMethod . PAD ; spreadMethod var: cadena = SpreadMethod PAD;.
: Matrix = new Matrix ( ) ; var matriz: Matrix = new Matrix ();
createGradientBox ( area_width , area_height , 1 , 0 , 0 ) ; . createGradientBox matriz (area_width, area_height, 1, 0, 0);
/ /
event_spr . graphics ) { con (event_spr. gráficos) {
fillType , colors , alphas , ratios , matrix , spreadMethod ) ; beginGradientFill (fillType, colores, alfas, las proporciones, la matriz, spreadMethod);
0 , 0 , area_width , area_height ) ; drawRect (0, 0, area_width, area_height);
; endFill ();
}
/ Evento / Pintura
( MouseEvent . MOUSE_DOWN , _onMouseDown ) ; . event_spr addEventListener ( MouseEvent MOUSE_DOWN, _onMouseDown.);
( MouseEvent . MOUSE_MOVE , _onMouseMove ) ; . event_spr addEventListener ( MouseEvent MOUSE_MOVE, _onMouseMove.);
( MouseEvent . MOUSE_UP , _onMouseUp ) ; . event_spr addEventListener ( MouseEvent MOUSE_UP, _onMouseUp.);
( MouseEvent . MOUSE_OUT , _onMouseUp ) ; . event_spr addEventListener ( MouseEvent MOUSE_OUT, _onMouseUp.);
/ /
BitmapData = new BitmapData ( event_spr . width , event_spr . height , true , 0 ) ; var bmpd: BitmapData = new BitmapData (ancho event_spr., event_spr altura, 0 verdad.)
Bitmap = new Bitmap ( bmpd ) ; var bmp: Bitmap = new Bitmap (bmpd);
bmp ) ; addChild (bmp);
/ /
/ / Forma temporal
Shape = new Shape ( ) ; draw_shape var: Forma = new forma ();
draw_shape ) ; addChild (draw_shape);
/ /
/ / Forma no es visible, utilizado para la "cancelación"
Shape = new Shape ( ) ; erase_shape var: Forma = new forma ();

/ /
e : MouseEvent ) : void { función _onMouseDown (e: MouseEvent ): void {
) ; depuración ("_onMouseDown");
. lineStyle ( 10 , 0xffffff , 1 ) ; .. draw_shape gráficos lineStyle (10, 0xffffff, 1);
. lineStyle ( 20 , 0xffffff , 1 ) ; .. erase_shape gráficos lineStyle (20, 0xffffff, 1);
. moveTo ( e . localX , e . localY ) ; .. draw_shape gráficos moveTo (and. localX y localY.);
. moveTo ( e . localX , e . localY ) ; .. erase_shape gráficos moveTo (and. localX y localY.);
md = true;
}
/ /
e : MouseEvent ) : void { _onMouseUp función (e: MouseEvent ): void {
md = false;
. draw ( draw_shape ) ; .. bmp bitmapData empate (draw_shape);
. clear ( ) ; . draw_shape gráficos claros ().;
. clear ( ) ; . erase_shape gráficos claros ().;
}
/ /
e : MouseEvent ) : void { _onMouseMove función (e: MouseEvent ): void {
) ; depuración ("_onMouseMove");
md && ! e . ctrlKey ) { if (md & &! y ctrlKey.) {
. lineTo ( e . localX , e . localY ) ; .. draw_shape gráficos lineTo (and. localX y localY.);
( md && e . ctrlKey ) { } Else if (md & & y. CtrlKey) {
. lineTo ( e . localX , e . localY ) ; .. erase_shape gráficos lineTo (and. localX y localY.);
. draw ( erase_shape , null , null , "erase" ) ; bmp bitmapData empate (erase_shape, null, null, "borrar")..;
}
}
/ /
v : String ) : void { depuración de la función (v: Cadena ): void {
: Date = new Date ( ) ; var d: Fecha = new Date ();
d . getMinutes ( ) + ":" + d . getSeconds ( ) + ":" + d . getMilliseconds ( ) + ": " + v ) ; trace (d. getMinutes () + "" + d. getSeconds () + "" + getMilliseconds d. () + "" + st);
}

): Hemos añadido una nueva forma, erase_shape no visible (no se llevó a cabo ninguna addChild() ):

1
2
3
...
/ / Forma no es visible, utilizado para la "cancelación"
Shape = new Shape ( ) ; erase_shape var: Forma = new forma ();

La pieza de código que se encarga de la elaboración se ha introducido para la tecla de control y, si se pulsa, se interesa precisamente la forma erase_shape y se copian en el mapa de bits:

1
2
3
....
. lineTo ( e . localX , e . localY ) ; .. erase_shape gráficos lineTo (and. localX y localY.);
. draw ( erase_shape , null , null , "erase" ) ; bmp bitmapData empate (erase_shape, null, null, "borrar")..;

Continuación ...

Pintura para crear una aplicación en Flash CS3

Como se explica en flash concurso Actionscript: herramienta de borrar no se puede "borrar" un área en particular de un Sprite, MovieClip o la forma en que las líneas o rectángulos se dibuja con el cursor gráfico. Hay, de hecho, el único método clear() , sin embargo, no tiene efecto sobre toda la superficie del objeto. La solución a este problema radica en la posibilidad de utilizar el mapa de bits y objetos BitmapData. Como veremos más adelante podemos acceder directamente y manipular los datos de mapa de bits con el fin de "borrar" golpes con un instrumento real "borrador".

Muestran dos formas diferentes de lograr la "puerta". per esempio. El primer "draw" (borrar) los datos directamente en el BitmapData, usando el método fillRect() - también se puede utilizar setPixel() por ejemplo. El segundo método, la que yo prefiero, utiliza los métodos de las fusiones (blendMode).

En primer lugar vamos a ver qué tipo de organización es el mínimo necesario para lograr un pintor de Flash simple. El esquema que se presenta a continuación se aplica tanto a las propuestas de la "puerta":

patrón de mapa de bits

He creado tres capas: la primera MovieClip o Sprite, los antecedentes y el trabajo del controlador de eventos (MouseDown, MouseMove y MouseUp). El segundo, el de mapa de bits es nuestro capas principales, una que realmente dibujado de gráficos se aplicarán y en el que la "puerta". , ecc…). La tercera y última capa, la forma, aborda dos cuestiones: la primera es que permite utilizar directamente las funciones proporcionadas por el cursor gráfico (como lineStyle , drawRect() , etc ...). También aumenta el rendimiento en el cuadro de seguimiento, como se explica en detalle a continuación.

Continuación ...