@Override public InputStream getData() { return file == null ? null : file.getData(COSStream.FilterFlags.DECODE); } }
@Override public ASInputStream getData() { return getData(FilterFlags.RAW_DATA); }
public InputStream getStream() { COSStream stream = getCOSStream(); if (stream != null) { return stream.getData(COSStream.FilterFlags.DECODE); } return null; } }
private void parseCMapFile() { String cMapName = parentStream.getStringKey(ASAtom.CMAPNAME); try (ASInputStream data = this.parentStream.getData(COSStream.FilterFlags.DECODE)) { cMap = CMapFactory.getCMap(cMapName == null ? "" : cMapName, data); } catch (IOException e) { LOGGER.log(Level.WARNING, "Exception while parsing cmap file", e); } } }
@Override public Boolean getisValidPDFA12() { if (this.stream == null) { return Boolean.TRUE; } boolean retVal = false; saveStaticContainersState(); try (InputStream unfilteredStream = stream.getData(COSStream.FilterFlags.DECODE)) { retVal = isValidPdfaStream(unfilteredStream, PDFAFlavour.PDFA_1_B); if (!retVal) { unfilteredStream.reset(); retVal = isValidPdfaStream(unfilteredStream, PDFAFlavour.PDFA_2_B); } } catch (VeraPDFException | IOException e) { LOGGER.log(Level.FINE, "Exception during validation of embedded file", e); } restoreSavedSCState(); return Boolean.valueOf(retVal); }
if (cidSet != null) { byte[] cidSetBytes; try (ASInputStream stream = cidSet.getData(COSStream.FilterFlags.DECODE)) { cidSetBytes = getCIDsFromCIDSet(stream);
public void visitFromStream(COSStream obj) { visitFromDictionary(obj); this.copy.assign(COSStream.construct((COSDictionary) this.copy.get(), obj.getData(), obj.getFilterFlags())); }
/** * Applies decryption filter to the stream so it can be read as unencrypted. * * @param stream is COSStream with encrypted data. * @param key is COSKey of this stream. */ public void decryptStream(COSStream stream, COSKey key) throws IOException, GeneralSecurityException { ASInputStream encStream = stream.getData(); ASInputStream filter; if (isRC4Decryption) { filter = new COSFilterRC4DecryptionDefault(encStream, key, this.encryptionKey); } else { filter = new COSFilterAESDecryptionDefault(encStream, key, this.encryptionKey, true, method); } document.addFileResource(new ASFileStreamCloser(filter)); stream.setData(filter, COSStream.FilterFlags.RAW_DATA); }
/** * This is an entry point for parsing xref stream and trailer. * * @throws IOException */ void parseStreamAndTrailer() throws IOException { try { xrefInputStream = xrefCOSStream.getData(COSStream.FilterFlags.DECODE); fieldSizes = (COSArray) xrefCOSStream.getKey(ASAtom.W).getDirectBase(); if (fieldSizes.size() != 3) { throw new IOException("W array in xref should have 3 elements."); } initializeIndex(); initializeObjIDs(); parseStream(); setTrailer(); } finally { xrefInputStream.close(); } }
this.fontProgram = StaticResources.getCachedFont(fontProgramID); if (fontProgram == null) { try (ASInputStream fontData = trueTypeFontFile.getData(COSStream.FilterFlags.DECODE)) { this.fontProgram = new TrueTypeFontProgram(fontData, isSymbolic, encoding); this.fontProgram = StaticResources.getCachedFont(fontProgramID); if (fontProgram == null) { try (ASInputStream fontData = trueTypeFontFile.getData(COSStream.FilterFlags.DECODE)) { this.fontProgram = new OpenTypeFontProgram(fontData, false, isSymbolic, encoding, null, isSubset);
objectStream.getData(COSStream.FilterFlags.DECODE), objectStream, new COSKey((int) -offset, 0), this.parser.getDocument());
public void setFilters(final COSFilters filters) throws IOException { try (ASInputStream decoded = this.getData(COSStream.FilterFlags.DECODE); SeekableInputStream unfilteredData = SeekableInputStream.getSeekableStream(decoded)) { InternalOutputStream fileWithData = InternalOutputStream.getInternalOutputStream(); setKey(ASAtom.FILTER, filters.getObject()); ASOutputStream encoder = filters.getOutputStream(fileWithData); encoder.write(unfilteredData); File encodedDataFile = fileWithData.getFile(); fileWithData.close(); this.setData(new InternalInputStream(encodedDataFile, true), FilterFlags.RAW_DATA); } }
this.fontProgram = StaticResources.getCachedFont(fontProgramID); if (fontProgram == null) { try (ASInputStream fontData = type1FontFile.getData(COSStream.FilterFlags.DECODE)) { this.fontProgram = new Type1FontProgram(fontData); StaticResources.cacheFontProgram(fontProgramID, this.fontProgram); this.fontProgram = StaticResources.getCachedFont(fontProgramID); if (fontProgram == null) { try (ASInputStream fontData = type1FontFile.getData(COSStream.FilterFlags.DECODE)) { this.fontProgram = new CFFFontProgram(fontData, null, isSubset); StaticResources.cacheFontProgram(fontProgramID, this.fontProgram); this.fontProgram = StaticResources.getCachedFont(fontProgramID); if (fontProgram == null) { try (ASInputStream fontData = type1FontFile.getData(COSStream.FilterFlags.DECODE)) { this.fontProgram = new OpenTypeFontProgram(fontData, true, isSymbolic, encoding, null, isSubset);
this.fontProgram = StaticResources.getCachedFont(fontProgramID); if (fontProgram == null) { try (ASInputStream fontData = trueTypeFontFile.getData(COSStream.FilterFlags.DECODE)) { this.fontProgram = new CIDFontType2Program( fontData, this.cMap, cidToGIDMap); this.fontProgram = StaticResources.getCachedFont(fontProgramID); if (fontProgram == null) { try (ASInputStream fontData = fontFile.getData(COSStream.FilterFlags.DECODE)) { this.fontProgram = new CFFFontProgram(fontData, this.cMap, isSubset); StaticResources.cacheFontProgram(fontProgramID, this.fontProgram); this.fontProgram = StaticResources.getCachedFont(fontProgramID); if (fontProgram == null) { try (ASInputStream fontData = fontFile.getData(COSStream.FilterFlags.DECODE)) { this.fontProgram = new OpenTypeFontProgram( fontData, isCFF, isSymbolic, encoding,
public void visitFromStream(COSStream obj) { long length; ASInputStream in = obj.getData();