相信大家对Flex的Snapshot应用不会陌生,本实例是建立在这个功能的基础上的。为什么要用AS3加水印而不是用后台语言呢,主要是客户端处理效率高一点,而且我们还可以使用AS3丰富的图像API。那又为什么不直接加好了水印再快照呢?主要是因为主界面要求整洁,所以只好在输出字节流数据时才偷偷地加水印。
点击此处查看本实例的效果,点击此处下载本实例的源码。
在本实例中,我们先新建了一个Canvas容器,将容器的Image控件的Source指定为第一次快照获得的Bitmap,当按下Save Snapshot按钮时将一个Label控件添加到Canvas容器中,再快照Canvas容器,然后使用PNGEncoder图像编码器将BitmapData对象编码为PNG格式的ByteArray,最后将字节流数据传到后台生成PNG图片并下载保存到客户端。这个技巧不难,关键在于要客户端快照两次,记住Canvas只是一个临时放置字节流数据的容器。还有就是用了两次callLater,请好好体会。
我的博物馆故事 官方安卓版v1.61.2
我的博物馆故事是一款以消除为主题的经营养成类手游,在这里玩家
专业模拟飞行10 手机版v12.2.4
专业模拟飞行10安卓版是一款飞行休闲手游,顶尖的物理飞行引擎
动物起义战斗模拟器二琳同款 最新版v4.1.1
动物起义战斗模拟器是一个非常有趣的模拟类游戏,玩家可以召唤各
迷你世界七周年 安卓手机版v1.43.0
迷你世界7周年是一款由《迷你世界》官方推出的庆祝特别版本,在
劫后公司无限资源版 v1.0.5.1
劫后公司内置菜单版是游戏的破解版本,在该版本中为玩家提供了内