protected PdfIndirectObject add(final PdfObject object, final int refNumber, final int generation, final boolean inObjStm) throws IOException { if (inObjStm && object.canBeInObjStm() && writer.isFullCompression()) { PdfCrossReference pxref = addToObjStm(object, refNumber); PdfIndirectObject indirect = new PdfIndirectObject(refNumber, object, writer); if (!xrefs.add(pxref)) { xrefs.remove(pxref); xrefs.add(pxref); } return indirect; } else { PdfIndirectObject indirect; if (writer.isFullCompression()) { indirect = new PdfIndirectObject(refNumber, object, writer); write(indirect, refNumber); } else { indirect = new PdfIndirectObject(refNumber, generation, object, writer); write(indirect, refNumber, generation); } return indirect; } }
protected PdfIndirectObject add(final PdfObject object, final int refNumber, final int generation, final boolean inObjStm) throws IOException { if (inObjStm && object.canBeInObjStm() && writer.isFullCompression()) { PdfCrossReference pxref = addToObjStm(object, refNumber); PdfIndirectObject indirect = new PdfIndirectObject(refNumber, object, writer); if (!xrefs.add(pxref)) { xrefs.remove(pxref); xrefs.add(pxref); } return indirect; } else { PdfIndirectObject indirect; if (writer.isFullCompression()) { indirect = new PdfIndirectObject(refNumber, object, writer); write(indirect, refNumber); } else { indirect = new PdfIndirectObject(refNumber, generation, object, writer); write(indirect, refNumber, generation); } return indirect; } }