From 2e88d3779c73e5a94bdbf28d66f2390943ee3c91 Mon Sep 17 00:00:00 2001 From: Andreas Gal Date: Fri, 6 May 2011 12:12:57 -0700 Subject: [PATCH] skeleton for XRef support --- pdf.js | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/pdf.js b/pdf.js index 552d87b9a..e3e79896d 100644 --- a/pdf.js +++ b/pdf.js @@ -609,6 +609,16 @@ var Linearization = (function () { return constructor; })(); +var XRef = (function () { + function constructor(stream, startXRef, mainXRefEntriesOffset) { + } + + constructor.prototype = { + }; + + return constructor; +})(); + var PDFDoc = (function () { function constructor(stream) { this.stream = stream; @@ -660,6 +670,14 @@ var PDFDoc = (function () { // shadow the prototype getter with a data property return this.startXRef = startXRef; }, + get mainXRefEntriesOffset() { + var mainXRefEntriesOffset = 0; + var linearization = this.linearization; + if (linearization) + mainXRefEntriesOffset = linearization.mainXRefEntriesOffset; + // shadow the prototype getter with a data property + return this.mainXRefEntriesOffset = mainXRefEntriesOffset; + }, // Find the header, remove leading garbage and setup the stream // starting from the header. checkHeader: function() { @@ -675,7 +693,10 @@ var PDFDoc = (function () { }, setup: function(arrayBuffer, ownerPassword, userPassword) { this.checkHeader(arrayBuffer); - print(this.startXRef); + this.xref = new XRef(this.stream, + this.startXRef, + this.mainXRefEntriesOffset); + this.ok = this.xref.ok; } };