1 Clazz.declarePackage ("swingjs");
2 Clazz.load (["java.awt.image.BufferedImage"], "swingjs.JSImage", ["JU.Base64", "swingjs.api.DOMNode"], function () {
3 c$ = Clazz.decorateAsClass (function () {
4 this.typeRequested = 0;
9 Clazz.instantialize (this, arguments);
10 }, swingjs, "JSImage", java.awt.image.BufferedImage);
11 Clazz.makeConstructor (c$,
12 function (argb, width, height) {
13 Clazz.superConstructor (this, swingjs.JSImage, [width, height, 2]);
18 Clazz.defineMethod (c$, "toIntARGB",
20 var n = Clazz.doubleToInt (imgData.length / 4);
21 var iData = Clazz.newIntArray (n, 0);
22 for (var i = 0, j = 0; i < n; j++) iData[i++] = (imgData[j++] << 16) | (imgData[j++] << 8) | imgData[j++] | 0xFF000000;
26 Clazz.defineMethod (c$, "getDOMImage",
28 var dataurl = "data:image/" + type + ";base64," + JU.Base64.getBase64 (b).toString ();
32 img = new Image(this.width, this.height);
33 //img.onLoad = function() { me.setDOMImage(img); };
35 }this.setDOMImage (img);
37 Clazz.defineMethod (c$, "setDOMImage",
39 var canvas = swingjs.api.DOMNode.createElement ("canvas", "JSImage");
46 var ctx = canvas.getContext("2d");
47 ctx.drawImage(img, 0, 0, w, h);
48 var data = ctx.getImageData(0, 0, w, h).data;
49 img._pbuf32 = this.toIntARGB(data);
50 }}, "swingjs.api.DOMNode");
51 Clazz.defineMethod (c$, "getHeight",
54 }, "java.awt.image.ImageObserver");
55 Clazz.defineMethod (c$, "getWidth",
58 }, "java.awt.image.ImageObserver");