代码拉取完成,页面将自动刷新
同步操作将从 代码库/梦幻西游was 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
class BufferedImage {
constructor(width, height,
imageType){
this.width=width;
this.height=height;
this.imageType=imageType;
this.debug_raster=[];
let body=document.getElementById("main");
let canvas=document.createElement("canvas");
canvas.width = this.width;
canvas.height = this.height;
body.appendChild(canvas);
this.image = canvas.getContext("2d");
}
drawInertBody(){
let body=document.getElementById("main");
let canvas=document.createElement("canvas");
body.appendChild(canvas);
let cxt2d=canvas.getContext("2d");
canvas.width = this.width;
canvas.height = this.height;
this.drawCanvas(cxt2d);
}
drawCanvas(canvas){
let pixels=this.debug_raster.concat();
for(let obj in pixels){
let imgData=canvas.createImageData(1,1);
for (let i=0;i<imgData.data.length;i+=4)
{
imgData.data[i+0]=pixels[obj].pixel[0];
imgData.data[i+1]=pixels[obj].pixel[1];
imgData.data[i+2]=pixels[obj].pixel[2];
imgData.data[i+3]=pixels[obj].pixel[3];
}
canvas.putImageData(imgData,pixels[obj].x,pixels[obj].y);
}
}
draw(x,y,pixels){
this.setPixel(x,y,pixels)
let imgData=this.image.createImageData(1,1);
for (let i=0;i<imgData.data.length;i+=4)
{
imgData.data[i+0]=pixels[0];
imgData.data[i+1]=pixels[1];
imgData.data[i+2]=pixels[2];
imgData.data[i+3]=pixels[3];
}
this.image.putImageData(imgData,x,y);
}
toDataURL() {
return this.image
}
getPixel () {
return this.debug_raster;
}
setPixel (x,y,pixels) {
this.debug_raster.push({'x': x, 'y': y,'pixel': pixels.concat()});
}
get TYPE_INT_ARGB(){
return 2;
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。