1. 首頁
  2. »
  3. 網頁開發
  4. »
  5. Flex
  6. »
  7. Flex教學-FlashPlayer支援中文字型和開啟與儲存本機檔案

Flex教學-FlashPlayer支援中文字型和開啟與儲存本機檔案

2009/03/21

  FlashPlayer10終於有了重大的改變了,聽到這個好消息,令梅干心情興奮不已,這幾天就將先前正在開發的影像人先丟一邊,把目前FlashPlayer10支援的部分作個總整理,FlashPlayer10支援本機開啟圖檔與儲存,同時還可呈現出中文的字型,這總算解決了先前將文字先載入,檔案大到嚇死人,因此今天花了一點時間,作了一個小範例,將開啟本機圖檔、儲存以及讀入本機字形作個總整,有興趣的朋友們不坊看一看吧!ps.另外感謝好友鬼佑所拍攝的照片,喜歡鬼佑的朋友們,可到他的部落格去喔!有更多好圖。

[我要前往]


save2Disk.mxml



[Bindable] private var arr:Array=new Array(); private var file:FileReference = new FileReference(); private function init():void{ //讀取本機端字型 arr=Font.enumerateFonts(true); arr.sortOn("fontName", Array.CASEINSENSITIVE); var arrFont:Array=new Array; for(var i:int=0; i < arr.length; i++) { arrFont.push(arr[i].fontName); } arr=arrFont; } //瀏覽本機圖檔 private function openFileClick():void{ //支援瀏覽的副檔名 var imagesFilter:FileFilter = new FileFilter("Images", "*.jpg;*.gif;*.png"); this.fr.browse([imagesFilter]); } //選擇圖檔 private function selectHandler(event:Event):void{ this.fr.load(); } //開啟後將圖檔載入到image中 private function completeHandler(event:Event):void{ image.source = this.fr.data; } //儲存檔案 private function savePic():void{ if(fileNameTxt.text.length > 0){ var bitmapData:BitmapData = new BitmapData(pic.width, pic.height); bitmapData.draw(pic,new Matrix()); var bitmap : Bitmap = new Bitmap(bitmapData); bitmap.smoothing=true; var jpg:JPEGEncoder = new JPEGEncoder(100); var ba:ByteArray = jpg.encode(bitmapData); file.save(ba,fileNameTxt.text + &#8216;.jpg&#8217;); } else { Alert.show(&#8220;請輸入檔名&#8221;,&#8221;錯誤XD~&#8221;); } } private function fontFamily():void { T.setStyle(&#8220;fontFamily&#8221;,this.myfonts.selectedLabel); } ]]><br /> </mx:Script><br /> <net:FileReference id="fr" select="selectHandler(event)" complete="completeHandler(event)"/><br /> <mx:Button label="開啟本機圖檔" click="openFileClick();"/></p>















範例預覽


[範例下載]


推薦文章