Flex中如何利用encodeImageAsBase64()事件将一个ImageSnapshot对象转化为Base-64编码字符串的例子
By Minidxer | December 30, 2008
接下来的例子演示了Flex中如何利用encodeImageAsBase64()事件,将一个ImageSnapshot对象转化为Base-64编码字符串。
让我们先来看一下Demo(可以右键View Source或点击这里察看源代码):
下面是完整代码(或点击这里察看):
Download: main.mxml
- <?xml version="1.0" encoding="utf-8"?>
- <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
- layout="vertical"
- verticalAlign="middle"
- backgroundColor="white">
- <mx:Script>
- <![CDATA[
- import flash.events.FocusEvent;
- import flash.system.System;
- import mx.graphics.ImageSnapshot;
- private function button_click(evt:MouseEvent):void {
- var ohSnap:ImageSnapshot = ImageSnapshot.captureImage(img);
- textArea.text = ImageSnapshot.encodeImageAsBase64(ohSnap);
- }
- private function textArea_focusIn(evt:FocusEvent):void {
- textArea.setSelection(0, textArea.text.length);
- }
- ]]>
- </mx:Script>
- <mx:ApplicationControlBar dock="true">
- <mx:Button label="Capture and encode"
- click="button_click(event);" />
- </mx:ApplicationControlBar>
- <mx:Form>
- <mx:FormItem label="source:">
- <mx:Image id="img"
- source="@Embed('images/flex_logo.jpg')" />
- </mx:FormItem>
- <mx:FormItem label="Base64:">
- <mx:TextArea id="textArea"
- editable="false"
- showScrollTips="true"
- width="320"
- height="160"
- focusIn="textArea_focusIn(event);" />
- </mx:FormItem>
- <mx:FormItem>
- <mx:Button label="Copy to clipboard"
- enabled="{textArea.text.length > 0}"
- click="System.setClipboard(textArea.text);" />
- </mx:FormItem>
- </mx:Form>
- </mx:Application>
代码:Peter deHaan 翻译/整理/编译:中文Flex例子
Topics:
Other |
1 Comment » |
205 views
Tags: captureImage(), encodeImageAsBase64(), ImageSnapshot, setClipboard, setSelection
Trackbacks