mx.graphics
public dynamic class ImageSnapshot
继承ImageSnapshot Inheritance Object

一种帮助器类,用于捕获实现了 flash.display.IBitmapDrawable 的任何 Flash 组件(包括 Flex UIComponent)的快照。

可以通过 RemoteObject 将此类的实例发送到 Adobe 的 LiveCycle Data Services 中,以便生成客户端图像的 PDF 文件。如果您需要指定此图像的除 contentTypewidthheight 之外的其它属性,则应该对 properties 对象设置名称/值对。

在 Flex 的早期版本中,您可以对 ImageSnapshot 实例本身设置附加属性。此类仍然是动态的,以便设置附加属性,但在将来版本的 Flex 中,它可能不再是动态的。



公共属性
 属性定义方
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
  contentType : String
用于捕获此快照的图像编码格式的 MIME 内容类型。
ImageSnapshot
  data : ByteArray
表示图像快照的编码数据。
ImageSnapshot
  defaultEncoder : Class
[静态] 用于捕获图像的默认 mx.graphics.codec.IImageEncoder 实现。
ImageSnapshot
  height : int
图像高度(以像素为单位)。
ImageSnapshot
  properties : Object
一个 Object,包含指定图像附加属性的名称/值对。
ImageSnapshot
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
  width : int
图像宽度(以像素为单位)。
ImageSnapshot
公共方法
 方法定义方
  
ImageSnapshot(width:int = 0, height:int = 0, data:ByteArray = null, contentType:String = null)
构造函数。
ImageSnapshot
  
captureBitmapData(source:IBitmapDrawable, matrix:Matrix = null, colorTransform:ColorTransform = null, blendMode:String = null, clipRect:Rectangle = null, smoothing:Boolean = false):BitmapData
[静态] 用于获取 UI 组件的原始快照作为 BitmapData 的实用程序方法。
ImageSnapshot
  
captureImage(source:IBitmapDrawable, dpi:Number = 0, encoder:IImageEncoder = null, scaleLimited:Boolean = true):ImageSnapshot
[静态] 用于获取组件快照、将其缩放到特定分辨率(以 dpi 为单位)并编码为特定图像格式的实用程序方法。
ImageSnapshot
  
[静态] 一种实用程序方法,用于将 ImageSnapshot 转换为 Base-64 编码的 String,以便使用基于文本的序列化格式(如 XML)进行传输。
ImageSnapshot
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
返回指定对象的字符串表示形式。
Object
 Inherited
返回指定对象的原始值。
Object
公共常量
 常量定义方
  MAX_BITMAP_DIMENSION : int = 2880
[静态] Bitmap 的最大宽度和高度。
ImageSnapshot
属性详细信息
contentType属性
contentType:String  [读写]

用于捕获此快照的图像编码格式的 MIME 内容类型。对于 PNG 格式图像,MIME 类型为“image/png”。对于 JPG 或 JPEG 图像,MIME 类型为“image/jpeg”



实现
    public function get contentType():String
    public function set contentType(value:String):void
data属性 
data:ByteArray  [读写]

表示图像快照的编码数据。



实现
    public function get data():ByteArray
    public function set data(value:ByteArray):void
defaultEncoder属性 
public static var defaultEncoder:Class

用于捕获图像的默认 mx.graphics.codec.IImageEncoder 实现。两个实现包括 PNGEncoder 和 JPEGEncoder。默认编码器使用 PNG 格式。

height属性 
height:int  [读写]

图像高度(以像素为单位)。



实现
    public function get height():int
    public function set height(value:int):void
properties属性 
properties:Object  [读写]

一个 Object,包含指定图像附加属性的名称/值对。

通常只有在向 Adobe 的 LiveCycle Data Services 发送 ImageSnapshot 实例以生成 PDF 文件时,才需要提供此类信息。您可以设置整个对象,也可以对预先存在的空 Object 设置单个名称/值对。

默认值为 {}.



实现
    public function get properties():Object
    public function set properties(value:Object):void
width属性 
width:int  [读写]

图像宽度(以像素为单位)。



实现
    public function get width():int
    public function set width(value:int):void
构造函数详细信息
ImageSnapshot()构造函数
public function ImageSnapshot(width:int = 0, height:int = 0, data:ByteArray = null, contentType:String = null)

构造函数。

参数
width:int (default = 0) — 图像的宽度。
 
height:int (default = 0) — 图像的高度。
 
data:ByteArray (default = null) — 包含图像的字节数组。
 
contentType:String (default = null) — 图像的编码器格式类型:PNGEncoder 或 JPEGEncoder。
方法详细信息
captureBitmapData()方法
public static function captureBitmapData(source:IBitmapDrawable, matrix:Matrix = null, colorTransform:ColorTransform = null, blendMode:String = null, clipRect:Rectangle = null, smoothing:Boolean = false):BitmapData

用于获取 UI 组件的原始快照作为 BitmapData 的实用程序方法。

参数

source:IBitmapDrawable — 实现了 flash.display.IBitmapDrawable 接口的对象。
 
matrix:Matrix (default = null) — 一个 Matrix 对象,用于缩放、旋转捕获的位图或转换其坐标。如果不想将矩阵转换应用于图像,请将此参数设置为恒等矩阵(使用默认 new Matrix() 构造函数创建),或传递 null 值。
 
colorTransform:ColorTransform (default = null) — 一个 ColorTransform 对象,用于调整位图的颜色值。如果没有提供任何对象,则不会转换位图图像的颜色。如果必须传递此参数但又不想转换图像,请将此参数设置为使用默认 new ColorTransform() 构造函数创建的 ColorTransform 对象。
 
blendMode:String (default = null) — 来自 flash.display.BlendMode 类的一个字符串值,指定要应用于所生成位图的混合模式。
 
clipRect:Rectangle (default = null) — 一个 Rectangle 对象,定义要绘制的源对象的区域。如果不提供此值,则不会进行剪裁,并且将绘制整个源对象。
 
smoothing:Boolean (default = false) — 一个布尔值,确定缩放时是否要对 BitmapData 对象进行平滑处理。

返回
BitmapData — 表示捕获的快照的 BitmapData 对象。
captureImage()方法 
public static function captureImage(source:IBitmapDrawable, dpi:Number = 0, encoder:IImageEncoder = null, scaleLimited:Boolean = true):ImageSnapshot

用于获取组件快照、将其缩放到特定分辨率(以 dpi 为单位)并编码为特定图像格式的实用程序方法。

参数

source:IBitmapDrawable — 实现了 flash.display.IBitmapDrawable 接口的对象。
 
dpi:Number (default = 0) — 分辨率,以每英寸的点数表示。如果未提供分辨率,则默认情况下使用当前屏幕的分辨率。
 
encoder:IImageEncoder (default = null) — 用于对原始位图进行编码的图像格式。可以使用的两个编码器为 PNGEncoder 和 JPEGEncoder。如果未提供编码器,则默认为 PNGEncoder。
 
scaleLimited:Boolean (default = true) — Flash 中位图的最大宽度或高度为 2880 个像素,如果将 scaleLimited 设置为 true,则会相应减少分辨率以适合 2880 个像素,相反,如果将 scaleLimited 设置为 false,则将使用较小的快照窗口并缝合它们以捕获更大的图像。默认值为 true。

返回
ImageSnapshot — 一个 ImageSnapshot,用于容纳经过编码的捕获快照和关联图像元数据。
encodeImageAsBase64()方法 
public static function encodeImageAsBase64(snapshot:ImageSnapshot):String

一种实用程序方法,用于将 ImageSnapshot 转换为 Base-64 编码的 String,以便使用基于文本的序列化格式(如 XML)进行传输。

参数

snapshot:ImageSnapshot — 捕获为 mx.graphics.ImageSnapshot 的图像。

返回
String — 表示经过 base64 编码的快照的字符串。

另请参见

常量详细信息
MAX_BITMAP_DIMENSION常量
public static const MAX_BITMAP_DIMENSION:int = 2880

Bitmap 的最大宽度和高度。