Hilo/docs/api-en/code/view/Bitmap.js
2019-04-17 17:51:27 +08:00

71 lines
2.1 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* Hilo
* Copyright 2015 alibaba.com
* Licensed under the MIT License
*/
/**
* <iframe src='../../../examples/Bitmap.html?noHeader' width = '300' height = '200' scrolling='no'></iframe>
* <br/>
* Example:
* <pre>
* var bmp = new Hilo.Bitmap({image:imgElem, rect:[0, 0, 100, 100]});
* stage.addChild(bmp);
* </pre>
* @class Bitmap
* @augments View
* @param {Object} properties the options of create Instance.It can contains all writable property and Moreover
* <ul>
* <li><b>image</b> - the image of bitmap which contained, required.</li>
* <li><b>rect</b> - the range of bitmap in the image, option</li>
* <li><b>crossOrigin</b> - Whether cross-domain is needed, default is false</li>
* </ul>
* @module hilo/view/Bitmap
* @requires hilo/core/Hilo
* @requires hilo/core/Class
* @requires hilo/view/View
* @requires hilo/view/Drawable
*/
var Bitmap = Class.create(/** @lends Bitmap.prototype */{
Extends: View,
constructor: function(properties){
properties = properties || {};
this.id = this.id || properties.id || Hilo.getUid("Bitmap");
Bitmap.superclass.constructor.call(this, properties);
this.drawable = new Drawable(properties);
//init width and height
if(!this.width || !this.height){
var rect = this.drawable.rect;
if(rect){
this.width = rect[2];
this.height = rect[3];
}
}
},
/**
* set the image。
* @param {Image|String} Image Object or URL.
* @param {Array} rect the range of bitmap in the image, option.
* @param {Boolean} crossOrigin Whether cross-domain is needed, default is false.
* @returns {Bitmap} self。
*/
setImage: function(image, rect, crossOrigin){
this.drawable.init({image:image, rect:rect, crossOrigin:crossOrigin});
if(rect){
this.width = rect[2];
this.height = rect[3];
}
else if(!this.width && !this.height){
rect = this.drawable.rect;
if(rect){
this.width = rect[2];
this.height = rect[3];
}
}
return this;
}
});