Package eu.europa.esig.dss.pdf.openpdf
Class ITextDocumentReader
java.lang.Object
eu.europa.esig.dss.pdf.openpdf.ITextDocumentReader
- All Implemented Interfaces:
PdfDocumentReader
,Closeable
,AutoCloseable
public class ITextDocumentReader extends Object implements PdfDocumentReader
The IText (OpenPdf) implementation of
PdfDocumentReader
-
Constructor Summary
Constructors Constructor Description ITextDocumentReader(byte[] binaries, byte[] passwordProtection)
The OpenPDF implementation of the ReaderITextDocumentReader(com.lowagie.text.pdf.PdfReader pdfReader)
The constructor to directly instantiate theITextDocumentReader
ITextDocumentReader(DSSDocument dssDocument)
Default constructor of the OpenPDF implementation of the ReaderITextDocumentReader(DSSDocument dssDocument, byte[] passwordProtection)
The OpenPDF implementation of the Reader -
Method Summary
Modifier and Type Method Description void
close()
Map<PdfSignatureDictionary,List<String>>
extractSigDictionaries()
Extracts PdfSignatureDictionaries present in the signatureBufferedImage
generateImageScreenshot(int page)
Generates the image screenshot for the given page of the PDFBufferedImage
generateImageScreenshotWithoutAnnotations(int page, List<PdfAnnotation> annotations)
Generates the image screenshot by hiding the given list ofannotationBoxes
PdfDssDict
getDSSDictionary()
Loads the last DSS dictionary from the document if exists NOTE: can return null if DSS dictionary is not presentint
getNumberOfPages()
Returns an amount of pages found in the documentAnnotationBox
getPageBox(int page)
Returns a page box dimensionsList<PdfAnnotation>
getPdfAnnotations(int page)
Retrieves all annotations found in the documentboolean
isSignatureCoversWholeDocument(PdfSignatureDictionary signatureDictionary)
Checks if a signature for the given PDF Signature Dictionary covers the whole document
-
Constructor Details
-
ITextDocumentReader
Default constructor of the OpenPDF implementation of the Reader- Parameters:
dssDocument
-DSSDocument
to read- Throws:
IOException
- if an exception occursInvalidPasswordException
- if the password is not provided or invalid for a protected document
-
ITextDocumentReader
public ITextDocumentReader(DSSDocument dssDocument, byte[] passwordProtection) throws IOException, InvalidPasswordExceptionThe OpenPDF implementation of the Reader- Parameters:
dssDocument
-DSSDocument
to readpasswordProtection
- binaries of a password to open a protected document- Throws:
IOException
- if an exception occursInvalidPasswordException
- if the password is not provided or invalid for a protected document
-
ITextDocumentReader
public ITextDocumentReader(byte[] binaries, byte[] passwordProtection) throws IOException, InvalidPasswordExceptionThe OpenPDF implementation of the Reader- Parameters:
binaries
- a byte array of a PDF to readpasswordProtection
- binaries of a password to open a protected document- Throws:
IOException
- if an exception occursInvalidPasswordException
- if the password is not provided or invalid for a protected document
-
ITextDocumentReader
public ITextDocumentReader(com.lowagie.text.pdf.PdfReader pdfReader)The constructor to directly instantiate theITextDocumentReader
- Parameters:
pdfReader
-PdfReader
-
-
Method Details
-
getDSSDictionary
Description copied from interface:PdfDocumentReader
Loads the last DSS dictionary from the document if exists NOTE: can return null if DSS dictionary is not present- Specified by:
getDSSDictionary
in interfacePdfDocumentReader
- Returns:
PdfDssDict
-
extractSigDictionaries
Description copied from interface:PdfDocumentReader
Extracts PdfSignatureDictionaries present in the signature- Specified by:
extractSigDictionaries
in interfacePdfDocumentReader
- Returns:
- a map between
PdfSignatureDictionary
and related field names
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-
isSignatureCoversWholeDocument
Description copied from interface:PdfDocumentReader
Checks if a signature for the given PDF Signature Dictionary covers the whole document- Specified by:
isSignatureCoversWholeDocument
in interfacePdfDocumentReader
- Parameters:
signatureDictionary
-PdfSignatureDictionary
to check the result for- Returns:
- TRUE if the signature covers the whole document, false otherwise
-
getNumberOfPages
public int getNumberOfPages()Description copied from interface:PdfDocumentReader
Returns an amount of pages found in the document- Specified by:
getNumberOfPages
in interfacePdfDocumentReader
- Returns:
- number of pages
-
getPageBox
Description copied from interface:PdfDocumentReader
Returns a page box dimensions- Specified by:
getPageBox
in interfacePdfDocumentReader
- Parameters:
page
- number- Returns:
AnnotationBox
representing page dimensions
-
getPdfAnnotations
Description copied from interface:PdfDocumentReader
Retrieves all annotations found in the document- Specified by:
getPdfAnnotations
in interfacePdfDocumentReader
- Parameters:
page
- number- Returns:
- a list of
PdfAnnotation
s associated with the given page
-
generateImageScreenshot
Description copied from interface:PdfDocumentReader
Generates the image screenshot for the given page of the PDF- Specified by:
generateImageScreenshot
in interfacePdfDocumentReader
- Parameters:
page
- number to be generated- Returns:
BufferedImage
screenshot for the given page
-
generateImageScreenshotWithoutAnnotations
public BufferedImage generateImageScreenshotWithoutAnnotations(int page, List<PdfAnnotation> annotations) throws IOExceptionDescription copied from interface:PdfDocumentReader
Generates the image screenshot by hiding the given list ofannotationBoxes
- Specified by:
generateImageScreenshotWithoutAnnotations
in interfacePdfDocumentReader
- Parameters:
page
- number to be generatedannotations
- a list ofPdfAnnotation
s to be hidden- Returns:
BufferedImage
screenshot for the given page- Throws:
IOException
- if an exception occurs
-