},
paintJpegXObject: function canvasGraphicsPaintJpegXObject(objId, w, h) {
- var image = this.objs.get(objId);
- if (!image) {
+ var domImage = this.objs.get(objId);
+ if (!domImage) {
error('Dependent image isn\'t ready yet');
}
// scale the image to the unit square
ctx.scale(1 / w, -1 / h);
- var domImage = image.getImage();
ctx.drawImage(domImage, 0, 0, domImage.width, domImage.height,
0, -h, w, h);
switch (type) {
case 'JpegStream':
- var IR = data[2];
- new JpegImageLoader(id, IR, this.objs);
+ var imageData = data[2];
+
+ var src = 'data:image/jpeg;base64,' + window.btoa(imageData);
+ var img = new Image();
+ img.onload = (function jpegImageLoaderOnload() {
+ this.objs.resolve(id, img);
+ }).bind(this);
+ img.src = src;
+
break;
case 'Font':
var name = data[2];
var buf = new Uint8Array(width * height);
if (smask) {
- if (smask.image.getImage) {
+ if (smask.image.src) {
// smask is a DOM image
var tempCanvas = new ScratchCanvas(width, height);
var tempCtx = tempCanvas.getContext('2d');
- var domImage = smask.image.getImage();
+ var domImage = smask.image;
tempCtx.drawImage(domImage, 0, 0, domImage.width, domImage.height,
0, 0, width, height);
var data = tempCtx.getImageData(0, 0, width, height).data;
};
return constructor;
})();
-
-var JpegImageLoader = (function jpegImage() {
- function JpegImageLoader(objId, imageData, objs) {
- var src = 'data:image/jpeg;base64,' + window.btoa(imageData);
-
- var img = new Image();
- img.onload = (function jpegImageLoaderOnload() {
- this.loaded = true;
-
- objs.resolve(objId, this);
-
- if (this.onLoad)
- this.onLoad();
- }).bind(this);
- img.src = src;
- this.domImage = img;
- }
-
- JpegImageLoader.prototype = {
- getImage: function jpegImageLoaderGetImage() {
- return this.domImage;
- }
- };
-
- return JpegImageLoader;
-})();
-