Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   загрузчик картинок (http://www.flasher.ru/forum/showthread.php?t=164989)

NikolyA 20.08.2011 05:59

http://www.flexgraphix.com/Lab/BitmapLoader/Archive.zip ссылка на архив ниже есть, открывай и используй

processo 14.09.2011 18:29

syegorius, сам 2 дня искал как это сделать, и вот собрал по кусочкам
Код AS3:

private function _onDataLoaded(e:Event){
                        var tempFileRef:FileReference = FileReference(e.target) ;
                        _loader = new Loader();
                        _loader.contentLoaderInfo.addEventListener(Event.COMPLETE, _onImageLoaded) ;
                        _loader.loadBytes (tempFileRef.data) ;
                        trace ("onDataLoaded");
            pgUpload.visible = false;
                }
 
                private function _onImageLoaded(e:Event){
                        _bitmap = Bitmap(e.target.content);
                        _bitmap.smoothing = true;                       
 
                        var jpgEncoder:JPGEncoder = new JPGEncoder(85);
                        var jpgStream:ByteArray = jpgEncoder.encode(_resizeBitmap(_bitmap.bitmapData));                       
                        var header:URLRequestHeader = new URLRequestHeader("Content-type", "application/octet-stream");
                        var jpgURLRequest:URLRequest = new URLRequest("uploads.php?name=image.jpg&dir=1");//(path+"upload.php?name=image.jpg&dir="+grId);
 
                        jpgURLRequest.requestHeaders.push(header);
                        jpgURLRequest.method = URLRequestMethod.POST;
                        jpgURLRequest.data = jpgStream;
                        navigateToURL(jpgURLRequest, "_self");                       
                }
 
                private function _resizeBitmap(bitmapData:BitmapData):BitmapData{
 
                        if (bitmapData.width <= _MAX_WIDTH && bitmapData.height <= _MAX_HEIGHT){
                                return bitmapData.clone();
                        }
 
                        var myMatrix:Matrix = new Matrix();                                                                                                       
                        var coefW:Number = _MAX_WIDTH / bitmapData.width;                       
                        var coefH:Number = _MAX_HEIGHT / bitmapData.height;
                        var multiplier:Number;
                        if (coefW > coefH){
                                multiplier = coefH;
                        } else {
                                multiplier = coefW;
                        }               
 
                        myMatrix.createBox(multiplier, multiplier, 0, 0, 0);
 
                        var newBitmapData:BitmapData = new BitmapData(multiplier * bitmapData.width, multiplier * bitmapData.height, true, 0xFFFFFF);
 
                        newBitmapData.draw(bitmapData, myMatrix , null, null, null, true);
 
                        return newBitmapData;
                }

_onDataLoaded отправляется после выбора изображения
Код AS3:

private function selectPhotos(e:MouseEvent){
                        fileUp = new FileReference;
                        fileUp.addEventListener(Event.SELECT, selectHandler);
 
            fileUp.addEventListener(Event.CANCEL, cancelHandler);                       
 
                        fileUp.browse([imagesFilter]);
 
                }               
 
                public function selectHandler(event:Event){           
                        fileUp.load();
                        fileUp.addEventListener(Event.COMPLETE, _onDataLoaded) ;

Теперь ищу как средствами php сохранить всё это на сервере))


Часовой пояс GMT +4, время: 11:18.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.