免費論壇 繁體 | 簡體
Sclub交友聊天~加入聊天室當版主
分享
Board logo

标题: 【求助】as3 保存图片 [打印本页]

作者: bbb7691    时间: 2016-5-25 15:43     标题: 【求助】as3 保存图片

as3 如何保存图片,我百度了几个试过都不行滴。
我想实现:

先用鼠标画个图
画图代码:

createEmptyMovieClip("terrain",1);

terrain.lineStyle(10,0xff00ff, 100);

imdrawing = false;

onMouseDown =function () {

    if (imdrawing == false) {

        terrain.moveTo(_xmouse, _ymouse);

        imdrawing = true;

    }

    if (imdrawing == true) {

        onEnterFrame = function () {

            terrain.lineTo(_xmouse, _ymouse);

        };

    }

};

onMouseUp =function () {

    onEnterFrame = function () {

        imdrawing = false;

    };

};


有个按钮,按了之后把刚画的图保存jpg到本地磁盘。

这个能实现么?


作者: flashroad    时间: 2016-5-25 16:55

楼主的代码明显是AS2的   怎么标题是AS3?
我被弄晕了
作者: flashroad    时间: 2016-5-25 17:29

[flash]http://flashroad.joinbbs.net/attachment.php?aid=NDE5fDM1OTZhNDBjfDE3NTMwMTIyNDF8ZmJkZGo3c25kMVZQeHFZVkVZT3UvMlVRVEFyT2k1YURCa0pjVGJ6TEFGd2tEcXM%3D&request=yes&_f=.swf[/flash]
作者: flashroad    时间: 2016-5-25 17:36

  1. import com.adobe.images.JPGEncoder;
  2. baocun_btn.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler);
  3. function fl_MouseClickHandler(event:MouseEvent):void{
  4. var _fileRef:FileReference=new FileReference();//用于保存文件
  5. var _encoder:JPGEncoder = new JPGEncoder(80);//用于编码位图
  6. var bitmapData:BitmapData = new BitmapData(stage.stageWidth,stage.stageHeight);
  7. bitmapData.draw(this);//得到位图;
  8. var ba:ByteArray = _encoder.encode(bitmapData);//编码成JPG图片,质量为80
  9. _fileRef.save(ba, "a.jpg");
  10. //保存到磁盘,会出现一个系统保存对话框;
  11. ba.clear();
  12. }
复制

作者: flashroad    时间: 2016-5-25 17:37

所需外部类:
[attach]420[/attach]
作者: bbb7691    时间: 2016-5-26 09:20

不好意思~我举个例子而已啊,都是百度的
作者: bbb7691    时间: 2016-5-26 09:22

回复 4# flashroad


   怎么找不到JPGEncoder?我是flash cs6 了
作者: bbb7691    时间: 2016-5-26 09:27

代码索引那jpeg开头的只找到  JPEGLoaderContext(),
作者: bbb7691    时间: 2016-5-26 09:34

怎么回事?

[attach]422[/attach]
[attach]421[/attach]
作者: flashroad    时间: 2016-5-26 10:01

回复 9# bbb7691


    5楼给出的附件  就是所需的类

将附件解压,得到一个名为com的文件夹,将该文件夹和fla文件放入同一个目录内:
[attach]423[/attach]
然后 就可以了。
作者: flashroad    时间: 2016-5-26 10:05

楼上的截图中  共有三个文件夹
另外两个文件夹与本例无关【乃是我机器上的自定义外部类库】
作者: bbb7691    时间: 2016-5-26 11:39

回复 11# flashroad

[attach]424[/attach]
  高手~~ 请问这是咋回事?
作者: flashroad    时间: 2016-5-26 12:16

回复 12# bbb7691


    那是按钮的实例名
作者: bbb7691    时间: 2016-5-26 14:17

可以了,谢谢!as3要好好研究学习:dizzy:




欢迎光临 flash之路-flash技术交流 (http://flashroad.joinbbs.net/) Powered by Discuz! 7.2