Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/06/2009, 18:23
Avatar de wolfmoon
wolfmoon
 
Fecha de Ingreso: octubre-2007
Mensajes: 189
Antigüedad: 16 años, 6 meses
Puntos: 2
Problemas al importar video

Buenas a todos, os cuento:

Mi flash se ajusta al tamaño del navegador. El problema viene cuando importo un video. Se descentra todo y se me sale de la pantalla, no entiendo porque.

El codigo para el ajuste es este:

Código:
// todos los clips ajustables deben tener su origen
// en su esquina superior inquierda
// ajustes iniciales -----------------
// no queremos que se cambie la escala de la película
Stage.scaleMode = "noScale";
// la peli se ajusta arriba a la izquierda
Stage.align = "TL";
// definimos el tamaño mínimo de la peli
ancho_minimo = 850;
alto_minimo = 500;
// en este array almaceno los clips que se tienen
// que ajustar al cambiar el tamaño de la pantalla
clips_ajustables = new Array();
// definimos el objeto que va a detectar el cambio de tamaño
myListener = new Object();
// asociamos el objeto al stage para detectar los cambios
// de tamaño del stage
Stage.addListener(myListener);
// ejecuto la función rec al cambiar el tamaño
myListener.onResize = rec;
function rec() {
	// definimos el alto y ancho que queda
	// después de reescalar, si no alcanza
	// los mínimos, asignamos éstos
	alto = Stage.height;
	if (alto<alto_minimo) {
		alto = alto_minimo;
	}
	ancho = Stage.width;
	if (ancho<ancho_minimo) {
		ancho = ancho_minimo;
	}
	for (var g = 0; clips_ajustables[g]; g++) {
		clips_ajustables[g].alinear();
	}
}
// resolución total
//altoTotal = System.capabilities.screenResolutionY;
//anchoTotal = System.capabilities.screenResolutionX;
//alto = stage.height;
//ancho = stage.width;
// con esta función implemento el método setTipo
// en todos los movieClip.
// Los valores para ajuste_x son "izquierda", "derecha" y "centrar"
// Los valores para ajuste_y son "arriba", "abajo" y "centrar"
// Los valores para ajuste_width son false y un número que
// indica el porcentaje de la anchura del clip respecto de la escena
// Los valores para ajuste_height son false y un número que
// indica el porcentaje de la altura del clip respecto de la escena
MovieClip.prototype.setAjuste = function(ajuste_x, ajuste_y, ajuste_width, ajuste_height) {
	// estos ajustes nos dicen como se tiene modificar el
	// el clip al redimensionar
	this.ajuste_x = ajuste_x;
	this.ajuste_y = ajuste_y;
	this.ajuste_width = ajuste_width;
	this.ajuste_height = ajuste_height;
	// almaceno la posición y el tamaño
	// iniciales de los clips ajustables
	this.x0 = this._x;
	this.y0 = this._y;
	this.w0 = this._width;
	this.h0 = this._height;
	this.ajustePersonalizado = false;
	// almaceno el clip en el array
	clips_ajustables.push(this);
	this.alinear();
};
// función para alinear los clips en funcion de su tipo
MovieClip.prototype.alinear = function() {
	// si se le ha pasado el parámetro ajuste_width en la función
	// setAjuste, significa que debo ajustar el ancho del clip
	// cuando reescalo la pantalla
	if (this.ajuste_width) {
		if (this.ajuste_width.indexOf("%") != -1) {
			// si el valor de this.ajuste_width es un porcentaje
			this._width = (_root.ancho*parseInt(this.ajuste_width))/100;
		} else {
			// si el valor de this.ajuste_width es un número de píxeles
			this._width = this.ajuste_width;
		}
	}
	// lo mismo con el ajuste del alto del clip
	if (this.ajuste_height) {
		if (this.ajuste_height.indexOf("%") != -1) {
			this._height = (_root.alto*parseInt(this.ajuste_height))/100;
		} else {
			this._height = this.ajuste_height;
		}
	}
	// ajustes de posicion de los clips
	if (this.ajuste_x == "izquierda") {
		this._x = this.x0;
	}
	if (this.ajuste_x == "derecha") {
		this._x = Math.round(this.x0+(_root.ancho-_root.ancho_minimo));
	}
	if (this.ajuste_x == "centrar") {
		this._x = Math.round((_root.ancho-this._width)*0.5);
	}
	if (this.ajuste_y == "arriba") {
		this._y = this.y0;
	}
	if (this.ajuste_y == "abajo") {
		this._y = Math.round(this.y0+(_root.alto-_root.alto_minimo));
	}
	if (this.ajuste_y == "centrar") {
		this._y = Math.round((_root.alto-this._height)*0.5);
	}
	// si el clip tiene un ajuste especial ejecuto su función ajustar
	// que hemos definido en el onClipEvent(load) del clip
	if (this.ajustePersonalizado) {
		this.ajustar();
	}
};
Cual puede ser el problema, porque si importo el video en la linea de tiempo me funciona perfectamente pero si lo importo con la opcion descarga progresiva desde web si que se me descentra todo.

Gracias