return new COSObject(); } else if(offset > 0) { if (header.getHeaderOffset() > 0) { offset += header.getHeaderOffset();
source.seek(currentOffset + document.getHeader().getHeaderOffset()); source.read(buffer); source.unread(buffer.length - 1); source.seek(currentOffset + document.getHeader().getHeaderOffset()); return source.getStreamLength(); this.isStreamEnd = true; source.seek(currentOffset + document.getHeader().getHeaderOffset()); return result;
generationNumber.getInteger().intValue()); long keyOffset = this.document.getOffset(key).longValue(); source.seek(keyOffset + document.getHeader().getHeaderOffset());
/** * Constructor using greenfield COSDocument * * @param cosDocument * greenfield COSDocument */ public GFCosDocument(COSDocument cosDocument) { super(cosDocument, COS_DOCUMENT_TYPE); this.catalog = this.getCatalog(); COSHeader cosHeader = cosDocument.getHeader(); this.indirectObjectCount = cosDocument.getObjects().size(); this.version = cosHeader.getVersion(); this.headerOffset = cosHeader.getHeaderOffset(); this.header = cosHeader.getHeader(); this.headerCommentByte1 = cosHeader.getHeaderCommentByte1(); this.headerCommentByte2 = cosHeader.getHeaderCommentByte2(); this.headerCommentByte3 = cosHeader.getHeaderCommentByte3(); this.headerCommentByte4 = cosHeader.getHeaderCommentByte4(); this.isOptionalContentPresent = parseOptionalContentPresent(); this.postEOFDataSize = cosDocument.getPostEOFDataSize(); this.isLinearised = cosDocument.getTrailer() != cosDocument.getLastTrailer() && cosDocument.isLinearized(); this.lastID = getTrailerID(cosDocument.getLastTrailer().getKey(ASAtom.ID)); this.firstPageID = getTrailerID(cosDocument.getFirstTrailer().getKey(ASAtom.ID)); PDFAFlavour.Specification specification = StaticContainers.getFlavour().getPart(); if (specification == PDFAFlavour.Specification.ISO_19005_3 || specification == PDFAFlavour.Specification.ISO_19005_4) { FileSpecificationKeysHelper.registerFileSpecificationKeys(cosDocument); } }