PDA

Просмотр полной версии : как изменить линейные размеры jpg


greegreeman
19.04.2010, 20:57
получаю несколько фото из xml в формате jpg. все фото разного линейного размера. для каждого фото у меня есть контейнер - мувиклип. мувики одинакового размера. я бы хотел, чтобы фото занимало весь размер мувика независимо от размеров фото. подскажите, плиз, как это сделать.

TanaTiX
19.04.2010, 21:05
При загрузке определить размер мувика, сравнить с размером контейнера и в зависимости от результатов - присвоить нужные значения.
Вообще размер мувика - понятие в прямом смысле растяжимое - поэтому сравнивать лучше с некоторым значением.

greegreeman
19.04.2010, 21:20
может я не так выразил свой вопрос. мне нужно размеры линейные именно jpg картинки поменять.

other.one
19.04.2010, 21:30
Примерно так (((=


var _loader:Loader = new Loader();
_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, tracer);
_loader.load(new URLRequest("someImage.jpg"));

private function tracer(evt:Event):void{
trace(_loader.width);
trace(_loader.height);
}

greegreeman
20.04.2010, 01:07
всем спасибо. все получилось )

dimarik
20.04.2010, 01:18
получаю несколько фото из xml в формате jpg.

Вы получаете фото из хмл в формате jpg? Научите меня тоже этой магии. Максимум на что я способен - получить фото из XML в виде Base64.

other.one
20.04.2010, 14:57
2 dimarik:

хммм а в чем проблема? (((=

XML файл

<image>
<image>image/full/1.jpg</image>
<image>image/full/2.jpg</image>
<image>image/full/3.jpg</image>
<image>image/full/4.jpg</image>
<image>image/full/5.jpg</image>
</image>


Класс загрузки данных:

package{

import flash.net.*;
import flash.events.*;

public class XMLLoaderClass{

var _xmlIm:XML;

public var _imageList:XMLList; //массив ссылок на картинки

var _xmlLoader:URLLoader = new URLLoader();

var _loadFlag:Boolean = false; //флаг который детектирует окончание загрузки XML данных

public function XMLLoaderClass():void{
_xmlLoader.addEventListener(Event.COMPLETE, xmlLoad);
_xmlLoader.load(new URLRequest("data/ImageList.xml"));
}

private function xmlLoad1(evt:Event):void{
_xmlIm = XML(evt.target.data);
_imageList = _xmlIm.children(); //получаете массив ссылок на картинки
_loadFlag:Boolean = true;
}

}
}


Класс загрузки изображений:

package{

import flash.display.*;
import flash.events.*;
import flash.utils.*;
import flash.net.*;

import XMLLoaderClass;

public class ImageLoadClass{

var _imageLoader:Loader = new Loader();

var _picture:Sprite = new Sprite();

var _requestUrl:String;

var _index:int;

var _detectXMLLoad:Timer;

var _xmlLoaderClass:XMLLoaderClass;

public function ImageLoadClass(){
_xmlLoaderClass = new XMLLoaderClass();

_detectXMLLoad = new Timer(250);
_detectXMLLoad.addEventListener(TimerEvent.TIMER, detector);
_detectXMLLoad.start();
}

//детектируем загрузку XMLLoaderClass
private function detector(evt:TimerEvent):void{
if(_xmlLoaderClass._loadFlag){
_xmlLoaderClass._loadFlag = false;
_detectXMLLoad.stop();
_index = _xmlLoaderClass._imageList.length()/2; //загружаем среднюю картинку
loadImage(_xmlLoaderClass._imageList[_index]);
}
}

public function loadImage(url):void{

_requestUrl = url;

_imageLoader.load(new URLRequest(_requestUrl));
_imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageLoaded);

}

private function imageLoaded(evt:Event):void{
_picture.addChild(_imageLoader);
}


}
}


Может не самый оптимальный вариант, зато простой и работает (((=

dimarik
22.04.2010, 01:28
2 dimarik:

хммм а в чем проблема? (((=



У Вас проблема с терминологией. Не jpg у Вас в xml, но ссылки на файлы. Которые могут быть в формате jpg. Это огромная разница. Будьте грамотны.

other.one
22.04.2010, 02:05
Поясните тогда что значит jpg в xml, и зачем оно нужно? Буду признателен

СлаваRa
22.04.2010, 02:55
Если интересно что такое jpeg, то вам сюда (http://ru.wikipedia.org/wiki/JPG), то про что Вы написали, это xml с ссылками на изображения, то про что сказал dimarik, а именно
фото из XML в виде Base64.
это совсем из другой оперы и к вашему вопросу отношения не имеет.

пс
вся проблема в формулировке вопроса.

dimarik
22.04.2010, 03:03
Поясняю. Вы отписали, что якобы у вас есть "несколько фото из xml в формате jpg". На самом деле лучше сказать, что у Вас есть xml-файл, в котором содержатся ссылки на файлы предположительно в формате jpg. Файл хмл - просто текст. Ссылка на "фото" и само фото - сильно разные понятия.