]> git.parisson.com Git - pdf.js.git/commitdiff
Inline JpegImageLoader to remove new JpegImageLoader call
authorJulian Viereck <julian.viereck@gmail.com>
Mon, 5 Dec 2011 16:59:03 +0000 (17:59 +0100)
committerJulian Viereck <julian.viereck@gmail.com>
Mon, 5 Dec 2011 16:59:03 +0000 (17:59 +0100)
src/canvas.js
src/core.js
src/image.js
src/obj.js

index 0913b582aa020828de635f4014a5284b0a89bc01..bba584be10e404156529648c775b71922e33fd15 100644 (file)
@@ -969,8 +969,8 @@ var CanvasGraphics = (function canvasGraphics() {
     },
 
     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');
       }
 
@@ -980,7 +980,6 @@ var CanvasGraphics = (function canvasGraphics() {
       // 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);
 
index 284b3cb4021af57e1c5a56e3fbc467e1c9f34c19..a52f2bdd05c68e89a242445d58b5c055546e87b5 100644 (file)
@@ -560,8 +560,15 @@ var PDFDoc = (function pdfDoc() {
 
         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];
index 17ef7b06d822e69dfbb6877b112be44ae43f40cc..5392202c7c5dcdce90f8641c48e7a458e8396880 100644 (file)
@@ -130,11 +130,11 @@ var PDFImage = (function pdfImage() {
       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;
@@ -228,30 +228,3 @@ var PDFImage = (function pdfImage() {
   };
   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;
-})();
-
index 7aebb732ad2af81010471addd1efeaa4cba991c6..e00e54b91a8be2e8c7ddc82373aed5e85bab6458 100644 (file)
@@ -589,7 +589,7 @@ var XRef = (function xRefXRef() {
           e = parser.getObj();
         }
         // Don't cache streams since they are mutable (except images).
-        if (!isStream(e) || e.getImage)
+        if (!isStream(e) || e.src)
           this.cache[num] = e;
         return e;
       }