在pc上打开资源管理器,并选择一张图片,最终转换成在creator里面显示的sprite
@ccclass
export default class NewClass extends cc.Component {
@property(cc.Sprite)
mPic: cc.Sprite = null;
start() {
}
//浏览图片
public onScanPicClick() {
this.loadMap();
}
private loadMap() {
var input = document.createElement('input');//创建一个选择框
document.body.appendChild(input);
let self = this;
//当选中文件
function openfile(event) {
var input = event.target;
var reader = new FileReader();
reader.onload = function () {
reader.abort();
let text: any = reader.result;//转换成的base64文件
document.body.removeChild(input);
//通过image转换成我们可以使用的cc.Texture2D
let image = new Image();
image.src = text;
image.onload = () => {
let pic: cc.Texture2D = new cc.Texture2D();
pic.initWithElement(image);//把base64文件赋值给图片
self.mPic.spriteFrame = new cc.SpriteFrame(pic)
console.log('宽高', pic.width, pic.height);
};
};
//转换成base64
reader.readAsDataURL(input.files[0]);
};
input.type = 'file';
input.accept = "image/*";//设置选择的文件类型,这里是图片
input.onchange = openfile;
input.click();
}
// update (dt) {}
}