Browse Source

skeleton for XRef support

Andreas Gal 14 years ago
parent
commit
2e88d3779c
  1. 23
      pdf.js

23
pdf.js

@ -609,6 +609,16 @@ var Linearization = (function () {
return constructor; return constructor;
})(); })();
var XRef = (function () {
function constructor(stream, startXRef, mainXRefEntriesOffset) {
}
constructor.prototype = {
};
return constructor;
})();
var PDFDoc = (function () { var PDFDoc = (function () {
function constructor(stream) { function constructor(stream) {
this.stream = stream; this.stream = stream;
@ -660,6 +670,14 @@ var PDFDoc = (function () {
// shadow the prototype getter with a data property // shadow the prototype getter with a data property
return this.startXRef = startXRef; 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 // Find the header, remove leading garbage and setup the stream
// starting from the header. // starting from the header.
checkHeader: function() { checkHeader: function() {
@ -675,7 +693,10 @@ var PDFDoc = (function () {
}, },
setup: function(arrayBuffer, ownerPassword, userPassword) { setup: function(arrayBuffer, ownerPassword, userPassword) {
this.checkHeader(arrayBuffer); this.checkHeader(arrayBuffer);
print(this.startXRef); this.xref = new XRef(this.stream,
this.startXRef,
this.mainXRefEntriesOffset);
this.ok = this.xref.ok;
} }
}; };

Loading…
Cancel
Save