/** * This method will search the list of objects for types of ObjStm. If it finds * them then it will parse out all of the objects from the stream that is contains. * * @throws IOException If there is an error parsing the stream. */ public void dereferenceObjectStreams() throws IOException { for( COSObject objStream : getObjectsByType( COSName.OBJ_STM ) ) { COSStream stream = (COSStream)objStream.getObject(); PDFObjectStreamParser parser = new PDFObjectStreamParser(stream, this); parser.parse(); for (COSObject next : parser.getObjects()) { COSObjectKey key = new COSObjectKey(next); if (objectPool.get(key) == null || objectPool.get(key).getObject() == null // xrefTable stores negated objNr of objStream for objects in objStreams || (xrefTable.containsKey(key) && xrefTable.get(key) == -objStream.getObjectNumber())) { COSObject obj = getObjectFromPool(key); obj.setObject(next.getObject()); } } } }
parser.parse();
sp.parse(); for(COSObject next : sp.getObjects())
parser.parse();
/** * This method will search the list of objects for types of ObjStm. If it finds * them then it will parse out all of the objects from the stream that is contains. * * @throws IOException If there is an error parsing the stream. */ public void dereferenceObjectStreams() throws IOException { for( COSObject objStream : getObjectsByType( COSName.OBJ_STM ) ) { COSStream stream = (COSStream)objStream.getObject(); PDFObjectStreamParser parser = new PDFObjectStreamParser(stream, this); parser.parse(); for (COSObject next : parser.getObjects()) { COSObjectKey key = new COSObjectKey(next); if (objectPool.get(key) == null || objectPool.get(key).getObject() == null // xrefTable stores negated objNr of objStream for objects in objStreams || (xrefTable.containsKey(key) && xrefTable.get(key) == -objStream.getObjectNumber())) { COSObject obj = getObjectFromPool(key); obj.setObject(next.getObject()); } } } }
/** * This method will search the list of objects for types of ObjStm. If it finds * them then it will parse out all of the objects from the stream that is contains. * * @throws IOException If there is an error parsing the stream. */ public void dereferenceObjectStreams() throws IOException { for( COSObject objStream : getObjectsByType( COSName.OBJ_STM ) ) { COSStream stream = (COSStream)objStream.getObject(); PDFObjectStreamParser parser = new PDFObjectStreamParser(stream, this); parser.parse(); for (COSObject next : parser.getObjects()) { COSObjectKey key = new COSObjectKey(next); if (objectPool.get(key) == null || objectPool.get(key).getObject() == null // xrefTable stores negated objNr of objStream for objects in objStreams || (xrefTable.containsKey(key) && xrefTable.get(key) == -objStream.getObjectNumber())) { COSObject obj = getObjectFromPool(key); obj.setObject(next.getObject()); } } } }
parser.parse();
sp.parse(); for(COSObject next : sp.getObjects())
parser.parse();