flash 交互操作:裁剪位图
玩过截图的人都知道截图是怎样一回事,通过截取图片一个地方就能够获取到图片某一个片段。这一个部分在flash 里面可以利用位图的复制像素来实现。通过copyPixels 或者draw 能够获取像素。
现在我们讨论一个话题:在flash里面怎样实现这种截图? 带着这个问题,尝试制作一个demo出来。功能就是获取位图。
所需要的材料:第一就是flash绘图API ,第二就是位图像素操作。利用这两个我们就能够实现出这种交互效果。
设计的图案:
制作思路:首先知道怎样绘制一个矩形,可以上网搜索一下,或者查询一些flash绘图API 是如何操作的。借助绘制这股矩形,我们就能截取到我们所需要的片段。
接下来,为程序写一个基类:Item.as
定义一些常用的方法和属性。
例如绘制矩形。获取位图,定义线条的样式等,判断矩形是否有效
这些方法都是定义在这个基础类当中。
package org.summerTree
{
//选择类基本设置
import flash.display.Sprite;
import flash.geom.Rectangle;
import flash.events.EventDispatcher;
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.geom.Point;
public class Item extends EventDispatcher
{
public var LineColor:int=0x0000ff;//线条颜色
public var FillColor:int=0x0000ff;//填充的颜色
public var FillAlpha:Number=0.1;
public function Item()
{
}
//绘制矩形的基本方法
protected function DrawRect(shape:Sprite,rect:Rectangle):void
{
shape.graphics.clear();
shape.graphics.lineStyle(1,LineColor,1);
shape.graphics.beginFill(FillColor,FillAlpha);
shape.graphics.drawRect(rect.x,rect.y,rect.width,rect.height);
shape.graphics.endFill();
}
//判断rect是否有效
public function checkRect(rect:Rectangle):Boolean
{
return rect != null?true:false;
}
//定义样式
public function setStyle(lcolor:int,fcolor:int,aplha:Number):void
{
this.LineColor=lcolor;
this.FillColor=fcolor;
this.FillAlpha=aplha;
}
//获取位图
public function getImage(source:Bitmap,rect:Rectangle):Bitmap
{
var bitmapdata:BitmapData = source.bitmapData;
var Width:Number=Math.abs(rect.width);
相关文档:
ROM、RAM、DRAM、SRAM、FLASH的区别?
ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是Random Access Memory的缩写。
ROM在系统停止供电的时候仍然可以保持数据,而RAM通常都是在掉电之后就丢失数据,典型的RAM就是计算机的内存。
RAM有两大类:一种称为静态RAM(Static RAM/SRAM),SRAM速度非常快, ......
Ubuntu下装完Adobe的Flash插件后,浏览器里可以播放Flash动画了。但是还存在一个问题就是汉字无法正确显示,显示为方格
解决办法:
修改这个配置文件
/etc/fonts/conf.d/49-sansserif.conf
把其中所有的字体名替换为中文字体名即可,我这里用的是“微软雅黑”和“Consolas“。
<?xml version=" ......
ScrollPane加载图片:http://flash.9ria.com/viewthread.php?tid=37296&highlight=ScrollPane
SoundChannel控制声音:http://flash.9ria.com/viewthread.php?tid=25745&highlight=Sound
捕获窗体变化事件:http://flash.9ria.com/viewthread.php?tid=7203&highlight=%E6%9C%80%E5%A4%A7%E5%8C%96
加载和卸载 ......
圆在flash 当中的使用,是一种非常实用而且好玩的技术。它优点是简单,容易使用。对于一些不错的效果有很强的实用价值。例如,做一些圆周运动,旋转等都是很经常的做法。我们仅仅需要知道它的参数方程,和一般的方程就能够创造出一些不错的案例。
圆的标准方程式:(x-a)2+(y-b)2=R2
而它的参数方程 ......
在这里下载一个64位系统下的 flash 插件
http://download.macromedia.com/pub/labs/flashplayer10/libflashplayer-10.0.32.18.linux-x86_64.so.tar.gz
解压 #tar -xzf libflashplayer-10.0.32.18.linux-x86_64.so.tar.gz
拷贝libfla ......