Browse Source

PDF.js version 1.0.1074

Pdf Bot 10 years ago
parent
commit
a9429d8bde
5 changed files with 42 additions and 12 deletions
  1. 1 1
      bower.json
  2. 19 4
      build/pdf.combined.js
  3. 19 4
      build/pdf.js
  4. 2 2
      build/pdf.worker.js
  5. 1 1
      package.json

+ 1 - 1
bower.json

@@ -1,6 +1,6 @@
 {
 {
   "name": "pdfjs-dist",
   "name": "pdfjs-dist",
-  "version": "1.0.1072",
+  "version": "1.0.1074",
   "main": [
   "main": [
     "build/pdf.js",
     "build/pdf.js",
     "build/pdf.worker.js"
     "build/pdf.worker.js"

+ 19 - 4
build/pdf.combined.js

@@ -22,8 +22,8 @@ if (typeof PDFJS === 'undefined') {
   (typeof window !== 'undefined' ? window : this).PDFJS = {};
   (typeof window !== 'undefined' ? window : this).PDFJS = {};
 }
 }
 
 
-PDFJS.version = '1.0.1072';
-PDFJS.build = '36dd6c1';
+PDFJS.version = '1.0.1074';
+PDFJS.build = '95fcbc2';
 
 
 (function pdfjsWrapper() {
 (function pdfjsWrapper() {
   // Use strict in our context only - users might not want it
   // Use strict in our context only - users might not want it
@@ -1753,7 +1753,9 @@ PDFJS.maxCanvasPixels = (PDFJS.maxCanvasPixels === undefined ?
  *
  *
  * @typedef {Object} DocumentInitParameters
  * @typedef {Object} DocumentInitParameters
  * @property {string}     url   - The URL of the PDF.
  * @property {string}     url   - The URL of the PDF.
- * @property {TypedArray} data  - A typed array with PDF data.
+ * @property {TypedArray|Array|string} data - Binary PDF data. Use typed arrays
+ *   (Uint8Array) to improve the memory usage. If PDF data is BASE64-encoded,
+ *   use atob() to convert it to a binary string first.
  * @property {Object}     httpHeaders - Basic authentication headers.
  * @property {Object}     httpHeaders - Basic authentication headers.
  * @property {boolean}    withCredentials - Indicates whether or not cross-site
  * @property {boolean}    withCredentials - Indicates whether or not cross-site
  *   Access-Control requests should be made using credentials such as cookies
  *   Access-Control requests should be made using credentials such as cookies
@@ -1840,14 +1842,27 @@ PDFJS.getDocument = function getDocument(src,
     source = src;
     source = src;
   }
   }
 
 
-  // copy/use all keys as is except 'url' -- full path is required
   var params = {};
   var params = {};
   for (var key in source) {
   for (var key in source) {
     if (key === 'url' && typeof window !== 'undefined') {
     if (key === 'url' && typeof window !== 'undefined') {
+      // The full path is required in the 'url' field.
       params[key] = combineUrl(window.location.href, source[key]);
       params[key] = combineUrl(window.location.href, source[key]);
       continue;
       continue;
     } else if (key === 'range') {
     } else if (key === 'range') {
       continue;
       continue;
+    } else if (key === 'data' && !(source[key] instanceof Uint8Array)) {
+      // Converting string or array-like data to Uint8Array.
+      var pdfBytes = source[key];
+      if (typeof pdfBytes === 'string') {
+        params[key] = stringToBytes(pdfBytes);
+      } else if (typeof pdfBytes === 'object' && pdfBytes !== null &&
+                 !isNaN(pdfBytes.length)) {
+        params[key] = new Uint8Array(pdfBytes);
+      } else {
+        error('Invalid PDF binary data: either typed array, string or ' +
+              'array-like object is expected in the data property.');
+      }
+      continue;
     }
     }
     params[key] = source[key];
     params[key] = source[key];
   }
   }

+ 19 - 4
build/pdf.js

@@ -22,8 +22,8 @@ if (typeof PDFJS === 'undefined') {
   (typeof window !== 'undefined' ? window : this).PDFJS = {};
   (typeof window !== 'undefined' ? window : this).PDFJS = {};
 }
 }
 
 
-PDFJS.version = '1.0.1072';
-PDFJS.build = '36dd6c1';
+PDFJS.version = '1.0.1074';
+PDFJS.build = '95fcbc2';
 
 
 (function pdfjsWrapper() {
 (function pdfjsWrapper() {
   // Use strict in our context only - users might not want it
   // Use strict in our context only - users might not want it
@@ -1753,7 +1753,9 @@ PDFJS.maxCanvasPixels = (PDFJS.maxCanvasPixels === undefined ?
  *
  *
  * @typedef {Object} DocumentInitParameters
  * @typedef {Object} DocumentInitParameters
  * @property {string}     url   - The URL of the PDF.
  * @property {string}     url   - The URL of the PDF.
- * @property {TypedArray} data  - A typed array with PDF data.
+ * @property {TypedArray|Array|string} data - Binary PDF data. Use typed arrays
+ *   (Uint8Array) to improve the memory usage. If PDF data is BASE64-encoded,
+ *   use atob() to convert it to a binary string first.
  * @property {Object}     httpHeaders - Basic authentication headers.
  * @property {Object}     httpHeaders - Basic authentication headers.
  * @property {boolean}    withCredentials - Indicates whether or not cross-site
  * @property {boolean}    withCredentials - Indicates whether or not cross-site
  *   Access-Control requests should be made using credentials such as cookies
  *   Access-Control requests should be made using credentials such as cookies
@@ -1840,14 +1842,27 @@ PDFJS.getDocument = function getDocument(src,
     source = src;
     source = src;
   }
   }
 
 
-  // copy/use all keys as is except 'url' -- full path is required
   var params = {};
   var params = {};
   for (var key in source) {
   for (var key in source) {
     if (key === 'url' && typeof window !== 'undefined') {
     if (key === 'url' && typeof window !== 'undefined') {
+      // The full path is required in the 'url' field.
       params[key] = combineUrl(window.location.href, source[key]);
       params[key] = combineUrl(window.location.href, source[key]);
       continue;
       continue;
     } else if (key === 'range') {
     } else if (key === 'range') {
       continue;
       continue;
+    } else if (key === 'data' && !(source[key] instanceof Uint8Array)) {
+      // Converting string or array-like data to Uint8Array.
+      var pdfBytes = source[key];
+      if (typeof pdfBytes === 'string') {
+        params[key] = stringToBytes(pdfBytes);
+      } else if (typeof pdfBytes === 'object' && pdfBytes !== null &&
+                 !isNaN(pdfBytes.length)) {
+        params[key] = new Uint8Array(pdfBytes);
+      } else {
+        error('Invalid PDF binary data: either typed array, string or ' +
+              'array-like object is expected in the data property.');
+      }
+      continue;
     }
     }
     params[key] = source[key];
     params[key] = source[key];
   }
   }

+ 2 - 2
build/pdf.worker.js

@@ -22,8 +22,8 @@ if (typeof PDFJS === 'undefined') {
   (typeof window !== 'undefined' ? window : this).PDFJS = {};
   (typeof window !== 'undefined' ? window : this).PDFJS = {};
 }
 }
 
 
-PDFJS.version = '1.0.1072';
-PDFJS.build = '36dd6c1';
+PDFJS.version = '1.0.1074';
+PDFJS.build = '95fcbc2';
 
 
 (function pdfjsWrapper() {
 (function pdfjsWrapper() {
   // Use strict in our context only - users might not want it
   // Use strict in our context only - users might not want it

+ 1 - 1
package.json

@@ -1,6 +1,6 @@
 {
 {
   "name": "pdfjs-dist",
   "name": "pdfjs-dist",
-  "version": "1.0.1072",
+  "version": "1.0.1074",
   "description": "Generic build of Mozilla's PDF.js library.",
   "description": "Generic build of Mozilla's PDF.js library.",
   "keywords": [
   "keywords": [
     "Mozilla",
     "Mozilla",