Package com.itextpdf.kernel.utils
Class PdfMerger
java.lang.Object
com.itextpdf.kernel.utils.PdfMerger
-
Constructor Summary
ConstructorDescriptionPdfMerger
(PdfDocument pdfDocument) This class is used to merge a number of existing documents into one.PdfMerger
(PdfDocument pdfDocument, boolean mergeTags, boolean mergeOutlines) This class is used to merge a number of existing documents into one. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes the current document.merge
(PdfDocument from, int fromPage, int toPage) This method merges pages from the source document to the current one.merge
(PdfDocument from, List<Integer> pages) This method merges pages from the source document to the current one.setCloseSourceDocuments
(boolean closeSourceDocuments) If set to true then passed to thePdfMerger#merge
method source documents will be closed immediately after merging specified pages into current document.
-
Constructor Details
-
PdfMerger
This class is used to merge a number of existing documents into one. By default, if source document contains tags and outlines, they will be also copied to the destination document.- Parameters:
-
pdfDocument
- the document into which source documents will be merged
-
PdfMerger
This class is used to merge a number of existing documents into one.- Parameters:
-
pdfDocument
- the document into which source documents will be merged -
mergeTags
- if true, then tags from the source document are copied even if destination document is not set as tagged. Note, that if false, tag structure is still could be copied if the destination document is explicitly marked as tagged withPdfDocument.setTagged()
-
mergeOutlines
- if true, then outlines from the source document are copied even if in destination document outlines are not initialized. Note, that if false, outlines are still could be copied if the destination document outlines were explicitly initialized withPdfDocument.initializeOutlines()
-
-
Method Details
-
setCloseSourceDocuments
If set to true then passed to thePdfMerger#merge
method source documents will be closed immediately after merging specified pages into current document. If false - PdfDocuments are left open. Default value - false.- Parameters:
-
closeSourceDocuments
- should be true to close pdf documents in merge method - Returns:
-
this
PdfMerger
instance
-
merge
This method merges pages from the source document to the current one.If closeSourceDocuments flag is set to true (see
setCloseSourceDocuments(boolean)
), passedPdfDocument
will be closed after pages are merged.See also
PdfDocument.copyPagesTo(int, int, com.itextpdf.kernel.pdf.PdfDocument, int)
.- Parameters:
-
from
- - document, from which pages will be copied -
fromPage
- - start page in the range of pages to be copied -
toPage
- - end (inclusive) page in the range to be copied - Returns:
-
this
PdfMerger
instance
-
merge
This method merges pages from the source document to the current one.If closeSourceDocuments flag is set to true (see
setCloseSourceDocuments(boolean)
), passedPdfDocument
will be closed after pages are merged.See also
PdfDocument.copyPagesTo(int, int, com.itextpdf.kernel.pdf.PdfDocument, int)
.- Parameters:
-
from
- - document, from which pages will be copied -
pages
- - List of numbers of pages which will be copied - Returns:
-
this
PdfMerger
instance
-
close
public void close()Closes the current document.It is a complete equivalent of calling
PdfDocument#close
on the PdfDocument passed to the constructor of this PdfMerger instance. This means that it is enough to call close either on passed PdfDocument or on this PdfMerger instance, but there is no need to call them both.
-