com.lowagie.text.pdf

Class PdfCopyForms

public class PdfCopyForms extends Object implements PdfViewerPreferences, PdfEncryptionSettings

Allows you to add one (or more) existing PDF document(s) to create a new PDF and add the form of another PDF document to this new PDF.

Since: 2.1.5

Field Summary
PdfCopyFormsImpfc
The class with the actual implementations.
Constructor Summary
PdfCopyForms(OutputStream os)
Creates a new instance.
Method Summary
voidaddDocument(PdfReader reader)
Concatenates a PDF document.
voidaddDocument(PdfReader reader, List pagesToKeep)
Concatenates a PDF document selecting the pages to keep.
voidaddDocument(PdfReader reader, String ranges)
Concatenates a PDF document selecting the pages to keep.
voidaddJavaScript(String js)
Adds JavaScript to the global document
voidaddViewerPreference(PdfName key, PdfObject value)
voidclose()
Closes the output document.
voidcopyDocumentFields(PdfReader reader)
Copies the form fields of this PDFDocument onto the PDF-Document which was added
PdfWritergetWriter()
Gets the underlying PdfWriter.
booleanisFullCompression()
Gets the 1.5 compression status.
voidopen()
Opens the document.
voidsetEncryption(byte[] userPassword, byte[] ownerPassword, int permissions, boolean strength128Bits)
Sets the encryption options for this document.
voidsetEncryption(boolean strength, String userPassword, String ownerPassword, int permissions)
Sets the encryption options for this document.
voidsetEncryption(byte[] userPassword, byte[] ownerPassword, int permissions, int encryptionType)
voidsetEncryption(Certificate[] certs, int[] permissions, int encryptionType)
voidsetFullCompression()
Sets the document's compression to the new 1.5 mode with object streams and xref streams.
voidsetOutlines(List outlines)
Sets the bookmarks.
voidsetViewerPreferences(int preferences)

Field Detail

fc

private PdfCopyFormsImp fc
The class with the actual implementations.

Constructor Detail

PdfCopyForms

public PdfCopyForms(OutputStream os)
Creates a new instance.

Parameters: os the output stream

Throws: DocumentException on error

Method Detail

addDocument

public void addDocument(PdfReader reader)
Concatenates a PDF document.

Parameters: reader the PDF document

Throws: DocumentException on error

addDocument

public void addDocument(PdfReader reader, List pagesToKeep)
Concatenates a PDF document selecting the pages to keep. The pages are described as a List of Integer. The page ordering can be changed but no page repetitions are allowed.

Parameters: reader the PDF document pagesToKeep the pages to keep

Throws: DocumentException on error

addDocument

public void addDocument(PdfReader reader, String ranges)
Concatenates a PDF document selecting the pages to keep. The pages are described as ranges. The page ordering can be changed but no page repetitions are allowed.

Parameters: reader the PDF document ranges the comma separated ranges as described in SequenceList

Throws: DocumentException on error

addJavaScript

public void addJavaScript(String js)
Adds JavaScript to the global document

Parameters: js the JavaScript

addViewerPreference

public void addViewerPreference(PdfName key, PdfObject value)

See Also: PdfViewerPreferences

close

public void close()
Closes the output document.

copyDocumentFields

public void copyDocumentFields(PdfReader reader)
Copies the form fields of this PDFDocument onto the PDF-Document which was added

Parameters: reader the PDF document

Throws: DocumentException on error

getWriter

public PdfWriter getWriter()
Gets the underlying PdfWriter.

Returns: the underlying PdfWriter

isFullCompression

public boolean isFullCompression()
Gets the 1.5 compression status.

Returns: true if the 1.5 compression is on

open

public void open()
Opens the document. This is usually not needed as addDocument() will do it automatically.

setEncryption

public void setEncryption(byte[] userPassword, byte[] ownerPassword, int permissions, boolean strength128Bits)
Sets the encryption options for this document. The userPassword and the ownerPassword can be null or have zero length. In this case the ownerPassword is replaced by a random string. The open permissions for the document can be AllowPrinting, AllowModifyContents, AllowCopy, AllowModifyAnnotations, AllowFillIn, AllowScreenReaders, AllowAssembly and AllowDegradedPrinting. The permissions can be combined by ORing them.

Parameters: userPassword the user password. Can be null or empty ownerPassword the owner password. Can be null or empty permissions the user permissions strength128Bits true for 128 bit key length, false for 40 bit key length

Throws: DocumentException if the document is already open

setEncryption

public void setEncryption(boolean strength, String userPassword, String ownerPassword, int permissions)
Sets the encryption options for this document. The userPassword and the ownerPassword can be null or have zero length. In this case the ownerPassword is replaced by a random string. The open permissions for the document can be AllowPrinting, AllowModifyContents, AllowCopy, AllowModifyAnnotations, AllowFillIn, AllowScreenReaders, AllowAssembly and AllowDegradedPrinting. The permissions can be combined by ORing them.

Parameters: strength true for 128 bit key length. false for 40 bit key length userPassword the user password. Can be null or empty ownerPassword the owner password. Can be null or empty permissions the user permissions

Throws: DocumentException if the document is already open

setEncryption

public void setEncryption(byte[] userPassword, byte[] ownerPassword, int permissions, int encryptionType)

See Also: (byte[], byte[], int, int)

setEncryption

public void setEncryption(Certificate[] certs, int[] permissions, int encryptionType)

See Also: (java.security.cert.Certificate[], int[], int)

setFullCompression

public void setFullCompression()
Sets the document's compression to the new 1.5 mode with object streams and xref streams. It can be set at any time but once set it can't be unset.

If set before opening the document it will also set the pdf version to 1.5.

setOutlines

public void setOutlines(List outlines)
Sets the bookmarks. The list structure is defined in SimpleBookmark#.

Parameters: outlines the bookmarks or null to remove any

setViewerPreferences

public void setViewerPreferences(int preferences)

See Also: PdfViewerPreferences