iText 8.0.3 API
iText.Kernel.Pdf.PdfDocument Class Reference

Main enter point to work with PDF document. More...

Inheritance diagram for iText.Kernel.Pdf.PdfDocument:
iText.Kernel.Events.IEventDispatcher iText.Pdfa.PdfADocument iText.Pdfa.PdfAAgnosticPdfDocument

Public Member Functions

  PdfDocument (PdfReader reader)
  Open PDF document in reading mode. More...
 
  PdfDocument (PdfReader reader, DocumentProperties properties)
  Open PDF document in reading mode. More...
 
  PdfDocument (PdfWriter writer)
  Open PDF document in writing mode. More...
 
  PdfDocument (PdfWriter writer, DocumentProperties properties)
  Open PDF document in writing mode. More...
 
  PdfDocument (PdfReader reader, PdfWriter writer)
  Opens PDF document in the stamping mode. More...
 
  PdfDocument (PdfReader reader, PdfWriter writer, StampingProperties properties)
  Open PDF document in stamping mode. More...
 
virtual void  SetXmpMetadata (XMPMeta xmpMeta, SerializeOptions serializeOptions)
  Sets the XMP Metadata. More...
 
virtual void  SetXmpMetadata (XMPMeta xmpMeta)
  Sets the XMP Metadata. More...
 
virtual byte[]  GetXmpMetadata ()
  Gets XMPMetadata. More...
 
virtual byte[]  GetXmpMetadata (bool createNew)
  Gets XMPMetadata or create a new one. More...
 
virtual PdfObject  GetPdfObject (int objNum)
  Gets PdfObject by object number. More...
 
virtual int  GetNumberOfPdfObjects ()
  Get number of indirect objects in the document. More...
 
virtual PdfPage  GetPage (int pageNum)
  Gets the page by page number. More...
 
virtual PdfPage  GetPage (PdfDictionary pageDictionary)
  Gets the PdfPage instance by PdfDictionary. More...
 
virtual PdfPage  GetFirstPage ()
  Get the first page of the document. More...
 
virtual PdfPage  GetLastPage ()
  Gets the last page of the document. More...
 
virtual MemoryLimitsAwareHandler  GetMemoryLimitsAwareHandler ()
  Gets current memory limits handler More...
 
virtual void  MarkStreamAsEmbeddedFile (PdfStream stream)
  Marks PdfStream object as embedded file stream. More...
 
virtual PdfPage  AddNewPage ()
  Creates and adds new page to the end of document. More...
 
virtual PdfPage  AddNewPage (PageSize pageSize)
  Creates and adds new page with the specified page size. More...
 
virtual PdfPage  AddNewPage (int index)
  Creates and inserts new page to the document. More...
 
virtual PdfPage  AddNewPage (int index, PageSize pageSize)
  Creates and inserts new page to the document. More...
 
virtual PdfPage  AddPage (PdfPage page)
  Adds page to the end of document. More...
 
virtual PdfPage  AddPage (int index, PdfPage page)
  Inserts page to the document. More...
 
virtual int  GetNumberOfPages ()
  Gets number of pages of the document. More...
 
virtual int  GetPageNumber (PdfPage page)
  Gets page number by page. More...
 
virtual int  GetPageNumber (PdfDictionary pageDictionary)
  Gets page number by PdfDictionary. More...
 
virtual bool  MovePage (PdfPage page, int insertBefore)
  Moves page to new place in same document with all it tag structure More...
 
virtual void  MovePage (int pageNumber, int insertBefore)
  Moves page to new place in same document with all it tag structure More...
 
virtual bool  RemovePage (PdfPage page)
  Removes the first occurrence of the specified page from this document, if it is present. More...
 
virtual void  RemovePage (int pageNum)
  Removes page from the document by page number. More...
 
virtual DIContainer  GetDiContainer ()
  Gets the container containing all available dependencies. More...
 
virtual PdfDocumentInfo  GetDocumentInfo ()
  Gets document information dictionary. More...
 
virtual PdfString  GetOriginalDocumentId ()
  Gets original document id More...
 
virtual PdfString  GetModifiedDocumentId ()
  Gets modified document id More...
 
virtual PageSize  GetDefaultPageSize ()
  Gets default page size. More...
 
virtual void  SetDefaultPageSize (PageSize pageSize)
  Sets default page size. More...
 
virtual void  AddEventHandler (String type, iText.Kernel.Events.IEventHandler handler)
 
virtual void  DispatchEvent (Event @event)
  Dispatches an event. More...
 
virtual void  DispatchEvent (Event @event, bool delayed)
  Dispatches a delayed event. More...
 
virtual bool  HasEventHandler (String type)
  Checks if event dispatcher as an event handler assigned for a certain event type. More...
 
virtual void  RemoveEventHandler (String type, iText.Kernel.Events.IEventHandler handler)
 
virtual void  RemoveAllHandlers ()
  Remove all event handlers. More...
 
virtual PdfWriter  GetWriter ()
  Gets PdfWriter associated with the document. More...
 
virtual PdfReader  GetReader ()
  Gets PdfReader associated with the document. More...
 
virtual bool  IsAppendMode ()
  Returns true if the document is opened in append mode, and false otherwise. More...
 
virtual PdfIndirectReference  CreateNextIndirectReference ()
  Creates next available indirect reference. More...
 
virtual PdfVersion  GetPdfVersion ()
  Gets PDF version. More...
 
virtual PdfCatalog  GetCatalog ()
  Gets PDF catalog. More...
 
virtual void  Close ()
  Close PDF document. More...
 
virtual bool  IsClosed ()
  Gets close status of the document. More...
 
virtual bool  IsTagged ()
  Gets tagged status of the document. More...
 
virtual iText.Kernel.Pdf.PdfDocument  SetTagged ()
  Specifies that document shall contain tag structure. More...
 
virtual PdfStructTreeRoot  GetStructTreeRoot ()
  Gets iText.Kernel.Pdf.Tagging.PdfStructTreeRoot of tagged document. More...
 
virtual int  GetNextStructParentIndex ()
  Gets next parent index of tagged document. More...
 
virtual TagStructureContext  GetTagStructureContext ()
  Gets document TagStructureContext. More...
 
virtual IList< PdfPage CopyPagesTo (int pageFrom, int pageTo, iText.Kernel.Pdf.PdfDocument toDocument, int insertBeforePage)
  Copies a range of pages from current document to toDocument . More...
 
virtual IConformanceLevel  GetConformanceLevel ()
  Get the IConformanceLevel More...
 
virtual IList< PdfPage CopyPagesTo (int pageFrom, int pageTo, iText.Kernel.Pdf.PdfDocument toDocument, int insertBeforePage, IPdfPageExtraCopier copier)
  Copies a range of pages from current document to toDocument . More...
 
virtual IList< PdfPage CopyPagesTo (int pageFrom, int pageTo, iText.Kernel.Pdf.PdfDocument toDocument)
  Copies a range of pages from current document to toDocument appending copied pages to the end. More...
 
virtual IList< PdfPage CopyPagesTo (int pageFrom, int pageTo, iText.Kernel.Pdf.PdfDocument toDocument, IPdfPageExtraCopier copier)
  Copies a range of pages from current document to toDocument appending copied pages to the end. More...
 
virtual IList< PdfPage CopyPagesTo (IList< int > pagesToCopy, iText.Kernel.Pdf.PdfDocument toDocument, int insertBeforePage)
  Copies a range of pages from current document to toDocument . More...
 
virtual IList< PdfPage CopyPagesTo (IList< int > pagesToCopy, iText.Kernel.Pdf.PdfDocument toDocument, int insertBeforePage, IPdfPageExtraCopier copier)
  Copies a range of pages from current document to toDocument . More...
 
virtual IList< PdfPage CopyPagesTo (IList< int > pagesToCopy, iText.Kernel.Pdf.PdfDocument toDocument)
  Copies a range of pages from current document to toDocument appending copied pages to the end. More...
 
virtual IList< PdfPage CopyPagesTo (IList< int > pagesToCopy, iText.Kernel.Pdf.PdfDocument toDocument, IPdfPageExtraCopier copier)
  Copies a range of pages from current document to toDocument appending copied pages to the end. More...
 
virtual void  FlushCopiedObjects (iText.Kernel.Pdf.PdfDocument sourceDoc)
  Flush all copied objects and remove them from copied cache. More...
 
virtual bool  IsCloseReader ()
  Checks, whether Close() method will close associated PdfReader. More...
 
virtual void  SetCloseReader (bool closeReader)
  Sets, whether Close() method shall close associated PdfReader. More...
 
virtual bool  IsCloseWriter ()
  Checks, whether Close() method will close associated PdfWriter. More...
 
virtual void  SetCloseWriter (bool closeWriter)
  Sets, whether Close() method shall close associated PdfWriter. More...
 
virtual bool  IsFlushUnusedObjects ()
  Checks, whether Close() will flush unused objects, e.g. unreachable from PDF Catalog. More...
 
virtual void  SetFlushUnusedObjects (bool flushUnusedObjects)
  Sets, whether Close() shall flush unused objects, e.g. unreachable from PDF Catalog. More...
 
virtual PdfOutline  GetOutlines (bool updateOutlines)
  This method returns a complete outline tree of the whole document. More...
 
virtual void  InitializeOutlines ()
  This method initializes an outline tree of the document and sets outline mode to true. More...
 
virtual void  AddNamedDestination (String key, PdfObject value)
  This methods adds new name in the Dests NameTree. More...
 
virtual void  AddNamedDestination (PdfString key, PdfObject value)
  This methods adds new name in the Dests NameTree. More...
 
virtual IList< PdfIndirectReference ListIndirectReferences ()
  Gets static copy of cross reference table. More...
 
virtual PdfDictionary  GetTrailer ()
  Gets document trailer. More...
 
virtual void  AddOutputIntent (PdfOutputIntent outputIntent)
  Adds PdfOutputIntent that shall specify the colour characteristics of output devices on which the document might be rendered. More...
 
virtual void  CheckIsoConformance (Object obj, IsoKey key)
  Checks whether PDF document conforms a specific standard. More...
 
virtual void  CheckIsoConformance (Object obj, IsoKey key, PdfResources resources, PdfStream contentStream)
  Checks whether PDF document conforms a specific standard. More...
 
virtual void  CheckIsoConformance (Object obj, IsoKey key, PdfResources resources, PdfStream contentStream, Object extra)
  Checks whether PDF document conforms a specific standard. More...
 
virtual void  CheckShowTextIsoConformance (CanvasGraphicsState gState, PdfResources resources)
  Checks whether PDF document conforms a specific standard. More...
 
virtual void  AddFileAttachment (String key, PdfFileSpec fs)
  Adds file attachment at document level. More...
 
virtual void  AddAssociatedFile (String description, PdfFileSpec fs)
  Adds file associated with PDF document as a whole and identifies the relationship between them. More...
 
virtual PdfArray  GetAssociatedFiles ()
  Returns files associated with PDF document. More...
 
virtual PdfEncryptedPayloadDocument  GetEncryptedPayloadDocument ()
  Gets the encrypted payload of this document, or returns null if this document isn't an unencrypted wrapper document. More...
 
virtual void  SetEncryptedPayload (PdfFileSpec fs)
  Sets an encrypted payload, making this document an unencrypted wrapper document. More...
 
virtual String[]  GetPageLabels ()
  This method retrieves the page labels from a document as an array of String objects. More...
 
virtual bool  HasOutlines ()
  Indicates if the document has any outlines More...
 
virtual void  SetUserProperties (bool userProperties)
  Sets the flag indicating the presence of structure elements that contain user properties attributes. More...
 
virtual PdfFont  GetFont (PdfDictionary dictionary)
  Create a new instance of iText.Kernel.Font.PdfFont or load already created one. More...
 
virtual PdfFont  GetDefaultFont ()
  Gets default font for the document: Helvetica, WinAnsi. More...
 
virtual PdfFont  AddFont (PdfFont font)
  Adds a iText.Kernel.Font.PdfFont instance to this document so that this font is flushed automatically on document close. More...
 
virtual bool  RegisterProduct (ProductData productData)
  Registers a product for debugging purposes. More...
 
virtual FingerPrint  GetFingerPrint ()
  Returns the object containing the registered products. More...
 
virtual PdfFont  FindFont (String fontProgram, String encoding)
  Find iText.Kernel.Font.PdfFont from loaded fonts with corresponding fontProgram and encoding or CMAP. More...
 
virtual long  GetDocumentId ()
  Obtains numeric document id. More...
 
virtual SequenceId  GetDocumentIdWrapper ()
  Obtains document id as a iText.Commons.Actions.Sequence.SequenceId. More...
 
virtual SerializeOptions  GetSerializeOptions ()
  Gets a persistent XMP metadata serialization options. More...
 
virtual void  SetSerializeOptions (SerializeOptions serializeOptions)
  Sets a persistent XMP metadata serialization options. More...
 
- Public Member Functions inherited from iText.Kernel.Events.IEventDispatcher
void  AddEventHandler (String type, iText.Kernel.Events.IEventHandler handler)
  Adds new event handler. More...
 
void  RemoveEventHandler (String type, iText.Kernel.Events.IEventHandler handler)
  Removes event handler. More...
 

Detailed Description

Main enter point to work with PDF document.

Constructor & Destructor Documentation

◆ PdfDocument() [1/6]

iText.Kernel.Pdf.PdfDocument.PdfDocument ( PdfReader  reader )
inline

Open PDF document in reading mode.

Parameters
reader PDF reader.

◆ PdfDocument() [2/6]

iText.Kernel.Pdf.PdfDocument.PdfDocument ( PdfReader  reader,
DocumentProperties  properties 
)
inline

Open PDF document in reading mode.

Parameters
reader PDF reader.
properties document properties

◆ PdfDocument() [3/6]

iText.Kernel.Pdf.PdfDocument.PdfDocument ( PdfWriter  writer )
inline

Open PDF document in writing mode.

Open PDF document in writing mode. Document has no pages when initialized.

Parameters
writer PDF writer

◆ PdfDocument() [4/6]

iText.Kernel.Pdf.PdfDocument.PdfDocument ( PdfWriter  writer,
DocumentProperties  properties 
)
inline

Open PDF document in writing mode.

Open PDF document in writing mode. Document has no pages when initialized.

Parameters
writer PDF writer
properties document properties

◆ PdfDocument() [5/6]

iText.Kernel.Pdf.PdfDocument.PdfDocument ( PdfReader  reader,
PdfWriter  writer 
)
inline

Opens PDF document in the stamping mode.

Opens PDF document in the stamping mode.

Parameters
reader PDF reader.
writer PDF writer.

◆ PdfDocument() [6/6]

iText.Kernel.Pdf.PdfDocument.PdfDocument ( PdfReader  reader,
PdfWriter  writer,
StampingProperties  properties 
)
inline

Open PDF document in stamping mode.

Parameters
reader PDF reader.
writer PDF writer.
properties properties of the stamping process

Member Function Documentation

◆ AddAssociatedFile()

virtual void iText.Kernel.Pdf.PdfDocument.AddAssociatedFile ( String  description,
PdfFileSpec  fs 
)
inlinevirtual

Adds file associated with PDF document as a whole and identifies the relationship between them.

Adds file associated with PDF document as a whole and identifies the relationship between them.

Associated files may be used in Pdf/A-3 and Pdf 2.0 documents. The method is very similar to AddFileAttachment(System.String, iText.Kernel.Pdf.Filespec.PdfFileSpec). However, besides adding file description to Names tree, it adds file to array value of the AF key in the document catalog.

For associated files their associated file specification dictionaries shall include the AFRelationship key

Parameters
description the file description
fs file specification dictionary of associated file
See also
AddFileAttachment(System.String, iText.Kernel.Pdf.Filespec.PdfFileSpec)

◆ AddEventHandler()

virtual void iText.Kernel.Pdf.PdfDocument.AddEventHandler ( String  type,
iText.Kernel.Events.IEventHandler  handler 
)
inlinevirtual

◆ AddFileAttachment()

virtual void iText.Kernel.Pdf.PdfDocument.AddFileAttachment ( String  key,
PdfFileSpec  fs 
)
inlinevirtual

Adds file attachment at document level.

Parameters
key name of the destination.
fs

iText.Kernel.Pdf.Filespec.PdfFileSpec object.

◆ AddFont()

virtual PdfFont iText.Kernel.Pdf.PdfDocument.AddFont ( PdfFont  font )
inlinevirtual

Adds a iText.Kernel.Font.PdfFont instance to this document so that this font is flushed automatically on document close.

Adds a iText.Kernel.Font.PdfFont instance to this document so that this font is flushed automatically on document close. As a side effect, the underlying font dictionary is made indirect if it wasn't the case yet

Parameters
font a iText.Kernel.Font.PdfFont instance to add
Returns
the same PdfFont instance.

◆ AddNamedDestination() [1/2]

virtual void iText.Kernel.Pdf.PdfDocument.AddNamedDestination ( PdfString  key,
PdfObject  value 
)
inlinevirtual

This methods adds new name in the Dests NameTree.

This methods adds new name in the Dests NameTree. It throws an exception, if the name already exists.

Parameters
key Name of the destination.
value An object destination refers to. Must be an array or a dictionary with key /D and array. See ISO 32000-1 12.3.2.3 for more info.

◆ AddNamedDestination() [2/2]

virtual void iText.Kernel.Pdf.PdfDocument.AddNamedDestination ( String  key,
PdfObject  value 
)
inlinevirtual

This methods adds new name in the Dests NameTree.

This methods adds new name in the Dests NameTree. It throws an exception, if the name already exists.

Parameters
key Name of the destination.
value An object destination refers to. Must be an array or a dictionary with key /D and array. See ISO 32000-1 12.3.2.3 for more info.

◆ AddNewPage() [1/4]

virtual PdfPage iText.Kernel.Pdf.PdfDocument.AddNewPage ( )
inlinevirtual

Creates and adds new page to the end of document.

Returns
added page

◆ AddNewPage() [2/4]

virtual PdfPage iText.Kernel.Pdf.PdfDocument.AddNewPage ( int  index )
inlinevirtual

Creates and inserts new page to the document.

Parameters
index position to addPage page to
Returns
inserted page

◆ AddNewPage() [3/4]

virtual PdfPage iText.Kernel.Pdf.PdfDocument.AddNewPage ( int  index,
PageSize  pageSize 
)
inlinevirtual

Creates and inserts new page to the document.

Parameters
index position to addPage page to
pageSize page size of the new page
Returns
inserted page

◆ AddNewPage() [4/4]

virtual PdfPage iText.Kernel.Pdf.PdfDocument.AddNewPage ( PageSize  pageSize )
inlinevirtual

Creates and adds new page with the specified page size.

Parameters
pageSize page size of the new page
Returns
added page

◆ AddOutputIntent()

virtual void iText.Kernel.Pdf.PdfDocument.AddOutputIntent ( PdfOutputIntent  outputIntent )
inlinevirtual

Adds PdfOutputIntent that shall specify the colour characteristics of output devices on which the document might be rendered.

Parameters
outputIntent

PdfOutputIntent to add.

See also
PdfOutputIntent

Reimplemented in iText.Pdfa.PdfADocument.

◆ AddPage() [1/2]

virtual PdfPage iText.Kernel.Pdf.PdfDocument.AddPage ( int  index,
PdfPage  page 
)
inlinevirtual

Inserts page to the document.

Parameters
index position to addPage page to
page page to addPage
Returns
inserted page

◆ AddPage() [2/2]

virtual PdfPage iText.Kernel.Pdf.PdfDocument.AddPage ( PdfPage  page )
inlinevirtual

Adds page to the end of document.

Parameters
page page to add.
Returns
added page.

◆ CheckIsoConformance() [1/3]

virtual void iText.Kernel.Pdf.PdfDocument.CheckIsoConformance ( Object  obj,
IsoKey  key 
)
inlinevirtual

Checks whether PDF document conforms a specific standard.

Parameters
obj An object to conform.
key type of object to conform.

◆ CheckIsoConformance() [2/3]

virtual void iText.Kernel.Pdf.PdfDocument.CheckIsoConformance ( Object  obj,
IsoKey  key,
PdfResources  resources,
PdfStream  contentStream 
)
inlinevirtual

Checks whether PDF document conforms a specific standard.

Parameters
obj an object to conform.
key type of object to conform.
resources

PdfResources associated with an object to check.

Parameters
contentStream current content stream

◆ CheckIsoConformance() [3/3]

virtual void iText.Kernel.Pdf.PdfDocument.CheckIsoConformance ( Object  obj,
IsoKey  key,
PdfResources  resources,
PdfStream  contentStream,
Object  extra 
)
inlinevirtual

Checks whether PDF document conforms a specific standard.

Parameters
obj an object to conform.
key type of object to conform.
resources

PdfResources associated with an object to check.

Parameters
contentStream current content stream.
extra extra data required for the check.

Reimplemented in iText.Pdfa.PdfADocument.

◆ CheckShowTextIsoConformance()

virtual void iText.Kernel.Pdf.PdfDocument.CheckShowTextIsoConformance ( CanvasGraphicsState  gState,
PdfResources  resources 
)
inlinevirtual

Checks whether PDF document conforms a specific standard.

Checks whether PDF document conforms a specific standard. Shall be overridden.

Parameters
gState a iText.Kernel.Pdf.Canvas.CanvasGraphicsState object to conform.
resources

PdfResources associated with an object to check.

◆ Close()

virtual void iText.Kernel.Pdf.PdfDocument.Close ( )
inlinevirtual

Close PDF document.

◆ CopyPagesTo() [1/8]

virtual IList<PdfPage> iText.Kernel.Pdf.PdfDocument.CopyPagesTo ( IList< int >  pagesToCopy,
iText.Kernel.Pdf.PdfDocument  toDocument 
)
inlinevirtual

Copies a range of pages from current document to toDocument appending copied pages to the end.

Copies a range of pages from current document to toDocument appending copied pages to the end. Use this method if you want to copy pages across tagged documents. This will keep resultant PDF structure consistent.

If outlines destination names are the same in different documents, all such outlines will lead to a single location in the resultant document. In this case iText will log a warning. This can be avoided by renaming destinations names in the source document.

Parameters
pagesToCopy list of pages to be copied.
toDocument a document to copy pages to.
Returns
list of copied pages

◆ CopyPagesTo() [2/8]

virtual IList<PdfPage> iText.Kernel.Pdf.PdfDocument.CopyPagesTo ( IList< int >  pagesToCopy,
iText.Kernel.Pdf.PdfDocument  toDocument,
int  insertBeforePage 
)
inlinevirtual

Copies a range of pages from current document to toDocument .

Copies a range of pages from current document to toDocument . Use this method if you want to copy pages across tagged documents. This will keep resultant PDF structure consistent.

If outlines destination names are the same in different documents, all such outlines will lead to a single location in the resultant document. In this case iText will log a warning. This can be avoided by renaming destinations names in the source document.

Parameters
pagesToCopy list of pages to be copied.
toDocument a document to copy pages to.
insertBeforePage a position where to insert copied pages.
Returns
list of new copied pages

◆ CopyPagesTo() [3/8]

virtual IList<PdfPage> iText.Kernel.Pdf.PdfDocument.CopyPagesTo ( IList< int >  pagesToCopy,
iText.Kernel.Pdf.PdfDocument  toDocument,
int  insertBeforePage,
IPdfPageExtraCopier  copier 
)
inlinevirtual

Copies a range of pages from current document to toDocument .

Copies a range of pages from current document to toDocument . Use this method if you want to copy pages across tagged documents. This will keep resultant PDF structure consistent.

If outlines destination names are the same in different documents, all such outlines will lead to a single location in the resultant document. In this case iText will log a warning. This can be avoided by renaming destinations names in the source document.

Parameters
pagesToCopy list of pages to be copied.
toDocument a document to copy pages to.
insertBeforePage a position where to insert copied pages.
copier a copier which bears a special copy logic. May be null. It is recommended to use the same instance of IPdfPageExtraCopier for the same output document.
Returns
list of new copied pages

◆ CopyPagesTo() [4/8]

virtual IList<PdfPage> iText.Kernel.Pdf.PdfDocument.CopyPagesTo ( IList< int >  pagesToCopy,
iText.Kernel.Pdf.PdfDocument  toDocument,
IPdfPageExtraCopier  copier 
)
inlinevirtual

Copies a range of pages from current document to toDocument appending copied pages to the end.

Copies a range of pages from current document to toDocument appending copied pages to the end. Use this method if you want to copy pages across tagged documents. This will keep resultant PDF structure consistent.

If outlines destination names are the same in different documents, all such outlines will lead to a single location in the resultant document. In this case iText will log a warning. This can be avoided by renaming destinations names in the source document.

Parameters
pagesToCopy list of pages to be copied.
toDocument a document to copy pages to.
copier a copier which bears a special copy logic. May be null. It is recommended to use the same instance of IPdfPageExtraCopier for the same output document.
Returns
list of copied pages

◆ CopyPagesTo() [5/8]

virtual IList<PdfPage> iText.Kernel.Pdf.PdfDocument.CopyPagesTo ( int  pageFrom,
int  pageTo,
iText.Kernel.Pdf.PdfDocument  toDocument 
)
inlinevirtual

Copies a range of pages from current document to toDocument appending copied pages to the end.

Copies a range of pages from current document to toDocument appending copied pages to the end. This range is inclusive, both page and pageTo are included in list of copied pages. Use this method if you want to copy pages across tagged documents. This will keep resultant PDF structure consistent.

If outlines destination names are the same in different documents, all such outlines will lead to a single location in the resultant document. In this case iText will log a warning. This can be avoided by renaming destinations names in the source document.

Parameters
pageFrom 1-based start of the range of pages to be copied.
pageTo 1-based end (inclusive) of the range of pages to be copied. This page is included in list of copied pages.
toDocument a document to copy pages to.
Returns
list of new copied pages

◆ CopyPagesTo() [6/8]

virtual IList<PdfPage> iText.Kernel.Pdf.PdfDocument.CopyPagesTo ( int  pageFrom,
int  pageTo,
iText.Kernel.Pdf.PdfDocument  toDocument,
int  insertBeforePage 
)
inlinevirtual

Copies a range of pages from current document to toDocument .

Copies a range of pages from current document to toDocument . Use this method if you want to copy pages across tagged documents. This will keep resultant PDF structure consistent.

If outlines destination names are the same in different documents, all such outlines will lead to a single location in the resultant document. In this case iText will log a warning. This can be avoided by renaming destinations names in the source document.

Parameters
pageFrom start of the range of pages to be copied.
pageTo end of the range of pages to be copied.
toDocument a document to copy pages to.
insertBeforePage a position where to insert copied pages.
Returns
list of copied pages

◆ CopyPagesTo() [7/8]

virtual IList<PdfPage> iText.Kernel.Pdf.PdfDocument.CopyPagesTo ( int  pageFrom,
int  pageTo,
iText.Kernel.Pdf.PdfDocument  toDocument,
int  insertBeforePage,
IPdfPageExtraCopier  copier 
)
inlinevirtual

Copies a range of pages from current document to toDocument .

Copies a range of pages from current document to toDocument . This range is inclusive, both page and pageTo are included in list of copied pages. Use this method if you want to copy pages across tagged documents. This will keep resultant PDF structure consistent.

If outlines destination names are the same in different documents, all such outlines will lead to a single location in the resultant document. In this case iText will log a warning. This can be avoided by renaming destinations names in the source document.

Parameters
pageFrom 1-based start of the range of pages to be copied.
pageTo 1-based end (inclusive) of the range of pages to be copied. This page is included in list of copied pages.
toDocument a document to copy pages to.
insertBeforePage a position where to insert copied pages.
copier a copier which bears a special copy logic. May be null. It is recommended to use the same instance of IPdfPageExtraCopier for the same output document.
Returns
list of new copied pages

◆ CopyPagesTo() [8/8]

virtual IList<PdfPage> iText.Kernel.Pdf.PdfDocument.CopyPagesTo ( int  pageFrom,
int  pageTo,
iText.Kernel.Pdf.PdfDocument  toDocument,
IPdfPageExtraCopier  copier 
)
inlinevirtual

Copies a range of pages from current document to toDocument appending copied pages to the end.

Copies a range of pages from current document to toDocument appending copied pages to the end. This range is inclusive, both page and pageTo are included in list of copied pages. Use this method if you want to copy pages across tagged documents. This will keep resultant PDF structure consistent.

If outlines destination names are the same in different documents, all such outlines will lead to a single location in the resultant document. In this case iText will log a warning. This can be avoided by renaming destinations names in the source document.

Parameters
pageFrom 1-based start of the range of pages to be copied.
pageTo 1-based end (inclusive) of the range of pages to be copied. This page is included in list of copied pages.
toDocument a document to copy pages to.
copier a copier which bears a special copy logic. May be null. It is recommended to use the same instance of IPdfPageExtraCopier for the same output document.
Returns
list of new copied pages.

◆ CreateNextIndirectReference()

virtual PdfIndirectReference iText.Kernel.Pdf.PdfDocument.CreateNextIndirectReference ( )
inlinevirtual

Creates next available indirect reference.

Returns
created indirect reference.

◆ DispatchEvent() [1/2]

virtual void iText.Kernel.Pdf.PdfDocument.DispatchEvent ( Event event )
inlinevirtual

Dispatches an event.

Implements iText.Kernel.Events.IEventDispatcher.

◆ DispatchEvent() [2/2]

virtual void iText.Kernel.Pdf.PdfDocument.DispatchEvent ( Event event,
bool  delayed 
)
inlinevirtual

Dispatches a delayed event.

Implements iText.Kernel.Events.IEventDispatcher.

◆ FindFont()

virtual PdfFont iText.Kernel.Pdf.PdfDocument.FindFont ( String  fontProgram,
String  encoding 
)
inlinevirtual

Find iText.Kernel.Font.PdfFont from loaded fonts with corresponding fontProgram and encoding or CMAP.

Parameters
fontProgram a font name or path to a font program
encoding an encoding or CMAP
Returns
the font instance, or null if font wasn't found

◆ FlushCopiedObjects()

virtual void iText.Kernel.Pdf.PdfDocument.FlushCopiedObjects ( iText.Kernel.Pdf.PdfDocument  sourceDoc )
inlinevirtual

Flush all copied objects and remove them from copied cache.

Flush all copied objects and remove them from copied cache.

Note, if you will copy objects from the same document, duplicated objects will be created. That's why usually this method is meant to be used when all copying from source document is finished. For other cases one can also consider other flushing mechanisms, e.g. pages-based flushing.

Parameters
sourceDoc source document

◆ GetAssociatedFiles()

virtual PdfArray iText.Kernel.Pdf.PdfDocument.GetAssociatedFiles ( )
inlinevirtual

Returns files associated with PDF document.

Returns
associated files array.

◆ GetCatalog()

virtual PdfCatalog iText.Kernel.Pdf.PdfDocument.GetCatalog ( )
inlinevirtual

Gets PDF catalog.

Returns
PDF catalog.

◆ GetConformanceLevel()

virtual IConformanceLevel iText.Kernel.Pdf.PdfDocument.GetConformanceLevel ( )
inlinevirtual

Get the IConformanceLevel

Returns
the IConformanceLevel will be null if the document does not have a conformance level specified

Reimplemented in iText.Pdfa.PdfADocument.

◆ GetDefaultFont()

virtual PdfFont iText.Kernel.Pdf.PdfDocument.GetDefaultFont ( )
inlinevirtual

Gets default font for the document: Helvetica, WinAnsi.

Gets default font for the document: Helvetica, WinAnsi. One instance per document.

Returns
instance of iText.Kernel.Font.PdfFont or null on error.

Reimplemented in iText.Pdfa.PdfADocument.

◆ GetDefaultPageSize()

virtual PageSize iText.Kernel.Pdf.PdfDocument.GetDefaultPageSize ( )
inlinevirtual

Gets default page size.

Gets default page size. New pages by default are created with this size.

Returns
default page size

◆ GetDiContainer()

virtual DIContainer iText.Kernel.Pdf.PdfDocument.GetDiContainer ( )
inlinevirtual

Gets the container containing all available dependencies.

Returns
the container containing all available dependencies.

◆ GetDocumentId()

virtual long iText.Kernel.Pdf.PdfDocument.GetDocumentId ( )
inlinevirtual

Obtains numeric document id.

Returns
document id

◆ GetDocumentIdWrapper()

virtual SequenceId iText.Kernel.Pdf.PdfDocument.GetDocumentIdWrapper ( )
inlinevirtual

Obtains document id as a iText.Commons.Actions.Sequence.SequenceId.

Returns
document id

◆ GetDocumentInfo()

virtual PdfDocumentInfo iText.Kernel.Pdf.PdfDocument.GetDocumentInfo ( )
inlinevirtual

Gets document information dictionary.

Gets document information dictionary. info is lazy initialized. It will be initialized during the first call of this method.

Returns
document information dictionary.

◆ GetEncryptedPayloadDocument()

virtual PdfEncryptedPayloadDocument iText.Kernel.Pdf.PdfDocument.GetEncryptedPayloadDocument ( )
inlinevirtual

Gets the encrypted payload of this document, or returns null if this document isn't an unencrypted wrapper document.

Returns
encrypted payload of this document.

◆ GetFingerPrint()

virtual FingerPrint iText.Kernel.Pdf.PdfDocument.GetFingerPrint ( )
inlinevirtual

Returns the object containing the registered products.

Returns
fingerprint object

◆ GetFirstPage()

virtual PdfPage iText.Kernel.Pdf.PdfDocument.GetFirstPage ( )
inlinevirtual

Get the first page of the document.

Returns
first page of the document.

◆ GetFont()

virtual PdfFont iText.Kernel.Pdf.PdfDocument.GetFont ( PdfDictionary  dictionary )
inlinevirtual

Create a new instance of iText.Kernel.Font.PdfFont or load already created one.

Parameters
dictionary

PdfDictionary that presents iText.Kernel.Font.PdfFont.

Returns

instance of iText.Kernel.Font.PdfFont

Note, PdfFont which created with iText.Kernel.Font.PdfFontFactory.CreateFont(PdfDictionary) won't be cached until it will be added to iText.Kernel.Pdf.Canvas.PdfCanvas or PdfResources.

◆ GetLastPage()

virtual PdfPage iText.Kernel.Pdf.PdfDocument.GetLastPage ( )
inlinevirtual

Gets the last page of the document.

Returns
last page.

◆ GetMemoryLimitsAwareHandler()

virtual MemoryLimitsAwareHandler iText.Kernel.Pdf.PdfDocument.GetMemoryLimitsAwareHandler ( )
inlinevirtual

Gets current memory limits handler

Returns

MemoryLimitsAwareHandler instance

◆ GetModifiedDocumentId()

virtual PdfString iText.Kernel.Pdf.PdfDocument.GetModifiedDocumentId ( )
inlinevirtual

Gets modified document id

Gets modified document id

In order to set modifiedDocumentId WriterProperties.SetModifiedDocumentId(PdfString) should be used

Returns
modified document id

◆ GetNextStructParentIndex()

virtual int iText.Kernel.Pdf.PdfDocument.GetNextStructParentIndex ( )
inlinevirtual

Gets next parent index of tagged document.

Returns
-1 if document is not tagged, or >= 0 if tagged.
See also
IsTagged(), GetNextStructParentIndex()

◆ GetNumberOfPages()

virtual int iText.Kernel.Pdf.PdfDocument.GetNumberOfPages ( )
inlinevirtual

Gets number of pages of the document.

Returns
number of pages.

◆ GetNumberOfPdfObjects()

virtual int iText.Kernel.Pdf.PdfDocument.GetNumberOfPdfObjects ( )
inlinevirtual

Get number of indirect objects in the document.

Returns
number of indirect objects.

◆ GetOriginalDocumentId()

virtual PdfString iText.Kernel.Pdf.PdfDocument.GetOriginalDocumentId ( )
inlinevirtual

Gets original document id

Gets original document id

In order to set originalDocumentId WriterProperties.SetInitialDocumentId(PdfString) should be used

Returns
original dccument id

◆ GetOutlines()

virtual PdfOutline iText.Kernel.Pdf.PdfDocument.GetOutlines ( bool  updateOutlines )
inlinevirtual

This method returns a complete outline tree of the whole document.

Parameters
updateOutlines if the flag is true , the method reads the whole document and creates outline tree. If the flag is false , the method gets cached outline tree (if it was cached via calling getOutlines method before).
Returns
fully initialize PdfOutline object.

◆ GetPage() [1/2]

virtual PdfPage iText.Kernel.Pdf.PdfDocument.GetPage ( int  pageNum )
inlinevirtual

Gets the page by page number.

Parameters
pageNum page number.
Returns
page by page number.

◆ GetPage() [2/2]

virtual PdfPage iText.Kernel.Pdf.PdfDocument.GetPage ( PdfDictionary  pageDictionary )
inlinevirtual

Gets the PdfPage instance by PdfDictionary.

Parameters
pageDictionary

PdfDictionary that present page.

Returns
page by PdfDictionary.

◆ GetPageLabels()

virtual String [] iText.Kernel.Pdf.PdfDocument.GetPageLabels ( )
inlinevirtual

This method retrieves the page labels from a document as an array of String objects.

Returns

System.String list of page labels if they were found, or null otherwise

◆ GetPageNumber() [1/2]

virtual int iText.Kernel.Pdf.PdfDocument.GetPageNumber ( PdfDictionary  pageDictionary )
inlinevirtual

Gets page number by PdfDictionary.

Parameters
pageDictionary

PdfDictionary that present page.

Returns
page number by PdfDictionary.

◆ GetPageNumber() [2/2]

virtual int iText.Kernel.Pdf.PdfDocument.GetPageNumber ( PdfPage  page )
inlinevirtual

Gets page number by page.

Parameters
page the page.
Returns
page number.

◆ GetPdfObject()

virtual PdfObject iText.Kernel.Pdf.PdfDocument.GetPdfObject ( int  objNum )
inlinevirtual

Gets PdfObject by object number.

Parameters
objNum object number.
Returns

PdfObject or null , if object not found.

◆ GetPdfVersion()

virtual PdfVersion iText.Kernel.Pdf.PdfDocument.GetPdfVersion ( )
inlinevirtual

Gets PDF version.

Returns
PDF version.

◆ GetReader()

virtual PdfReader iText.Kernel.Pdf.PdfDocument.GetReader ( )
inlinevirtual

Gets PdfReader associated with the document.

Returns
PdfReader associated with the document.

◆ GetSerializeOptions()

virtual SerializeOptions iText.Kernel.Pdf.PdfDocument.GetSerializeOptions ( )
inlinevirtual

Gets a persistent XMP metadata serialization options.

Returns
serialize options

◆ GetStructTreeRoot()

virtual PdfStructTreeRoot iText.Kernel.Pdf.PdfDocument.GetStructTreeRoot ( )
inlinevirtual

Gets iText.Kernel.Pdf.Tagging.PdfStructTreeRoot of tagged document.

Returns

iText.Kernel.Pdf.Tagging.PdfStructTreeRoot in case document is tagged, otherwise it returns null.

See also
IsTagged(), GetNextStructParentIndex()

◆ GetTagStructureContext()

virtual TagStructureContext iText.Kernel.Pdf.PdfDocument.GetTagStructureContext ( )
inlinevirtual

Gets document TagStructureContext.

Gets document TagStructureContext. The document must be tagged, otherwise an exception will be thrown.

Returns
document TagStructureContext.

◆ GetTrailer()

virtual PdfDictionary iText.Kernel.Pdf.PdfDocument.GetTrailer ( )
inlinevirtual

Gets document trailer.

Returns
document trailer.

◆ GetWriter()

virtual PdfWriter iText.Kernel.Pdf.PdfDocument.GetWriter ( )
inlinevirtual

Gets PdfWriter associated with the document.

Returns
PdfWriter associated with the document.

◆ GetXmpMetadata() [1/2]

virtual byte [] iText.Kernel.Pdf.PdfDocument.GetXmpMetadata ( )
inlinevirtual

Gets XMPMetadata.

Returns
the XMPMetadata

◆ GetXmpMetadata() [2/2]

virtual byte [] iText.Kernel.Pdf.PdfDocument.GetXmpMetadata ( bool  createNew )
inlinevirtual

Gets XMPMetadata or create a new one.

Parameters
createNew if true, create a new empty XMPMetadata if it did not present.
Returns
existed or newly created XMPMetadata byte array.

◆ HasEventHandler()

virtual bool iText.Kernel.Pdf.PdfDocument.HasEventHandler ( String  type )
inlinevirtual

Checks if event dispatcher as an event handler assigned for a certain event type.

Implements iText.Kernel.Events.IEventDispatcher.

◆ HasOutlines()

virtual bool iText.Kernel.Pdf.PdfDocument.HasOutlines ( )
inlinevirtual

Indicates if the document has any outlines

Returns

true , if there are outlines and false otherwise.

◆ InitializeOutlines()

virtual void iText.Kernel.Pdf.PdfDocument.InitializeOutlines ( )
inlinevirtual

This method initializes an outline tree of the document and sets outline mode to true.

◆ IsAppendMode()

virtual bool iText.Kernel.Pdf.PdfDocument.IsAppendMode ( )
inlinevirtual

Returns true if the document is opened in append mode, and false otherwise.

Returns

true if the document is opened in append mode, and false otherwise.

◆ IsClosed()

virtual bool iText.Kernel.Pdf.PdfDocument.IsClosed ( )
inlinevirtual

Gets close status of the document.

Returns
true, if the document has already been closed, otherwise false.

◆ IsCloseReader()

virtual bool iText.Kernel.Pdf.PdfDocument.IsCloseReader ( )
inlinevirtual

Checks, whether Close() method will close associated PdfReader.

Returns
true, Close() method is going to close associated PdfReader, otherwise false.

◆ IsCloseWriter()

virtual bool iText.Kernel.Pdf.PdfDocument.IsCloseWriter ( )
inlinevirtual

Checks, whether Close() method will close associated PdfWriter.

Returns
true, Close() method is going to close associated PdfWriter, otherwise false.

◆ IsFlushUnusedObjects()

virtual bool iText.Kernel.Pdf.PdfDocument.IsFlushUnusedObjects ( )
inlinevirtual

Checks, whether Close() will flush unused objects, e.g. unreachable from PDF Catalog.

Checks, whether Close() will flush unused objects, e.g. unreachable from PDF Catalog. By default - false.

Returns
false, if Close() shall not flush unused objects, otherwise true.

◆ IsTagged()

virtual bool iText.Kernel.Pdf.PdfDocument.IsTagged ( )
inlinevirtual

Gets tagged status of the document.

Returns
true, if the document has tag structure, otherwise false.

◆ ListIndirectReferences()

virtual IList<PdfIndirectReference> iText.Kernel.Pdf.PdfDocument.ListIndirectReferences ( )
inlinevirtual

Gets static copy of cross reference table.

Returns
a static copy of cross reference table

◆ MarkStreamAsEmbeddedFile()

virtual void iText.Kernel.Pdf.PdfDocument.MarkStreamAsEmbeddedFile ( PdfStream  stream )
inlinevirtual

Marks PdfStream object as embedded file stream.

Marks PdfStream object as embedded file stream. Note that this method is for internal usage. To add an embedded file to the PDF document please use specialized API for file attachments. (e.g. AddFileAttachment(System.String, iText.Kernel.Pdf.Filespec.PdfFileSpec) , PdfPage.AddAnnotation(iText.Kernel.Pdf.Annot.PdfAnnotation) )

Parameters
stream to be marked as embedded file stream

◆ MovePage() [1/2]

virtual void iText.Kernel.Pdf.PdfDocument.MovePage ( int  pageNumber,
int  insertBefore 
)
inlinevirtual

Moves page to new place in same document with all it tag structure

Parameters
pageNumber number of Page that will be moved
insertBefore indicates before which page new one will be inserted to

◆ MovePage() [2/2]

virtual bool iText.Kernel.Pdf.PdfDocument.MovePage ( PdfPage  page,
int  insertBefore 
)
inlinevirtual

Moves page to new place in same document with all it tag structure

Parameters
page page to be moved in document if present
insertBefore indicates before which page new one will be inserted to
Returns
true if this document contained the specified page

◆ RegisterProduct()

virtual bool iText.Kernel.Pdf.PdfDocument.RegisterProduct ( ProductData  productData )
inlinevirtual

Registers a product for debugging purposes.

Parameters
productData product to be registered.
Returns
true if the product hadn't been registered before.

◆ RemoveAllHandlers()

virtual void iText.Kernel.Pdf.PdfDocument.RemoveAllHandlers ( )
inlinevirtual

Remove all event handlers.

Implements iText.Kernel.Events.IEventDispatcher.

◆ RemoveEventHandler()

virtual void iText.Kernel.Pdf.PdfDocument.RemoveEventHandler ( String  type,
iText.Kernel.Events.IEventHandler  handler 
)
inlinevirtual

◆ RemovePage() [1/2]

virtual void iText.Kernel.Pdf.PdfDocument.RemovePage ( int  pageNum )
inlinevirtual

Removes page from the document by page number.

Parameters
pageNum the one-based index of the PdfPage to be removed

◆ RemovePage() [2/2]

virtual bool iText.Kernel.Pdf.PdfDocument.RemovePage ( PdfPage  page )
inlinevirtual

Removes the first occurrence of the specified page from this document, if it is present.

Removes the first occurrence of the specified page from this document, if it is present. Returns true if this document contained the specified element (or equivalently, if this document changed as a result of the call).

Parameters
page page to be removed from this document, if present
Returns
true if this document contained the specified page

◆ SetCloseReader()

virtual void iText.Kernel.Pdf.PdfDocument.SetCloseReader ( bool  closeReader )
inlinevirtual

Sets, whether Close() method shall close associated PdfReader.

Parameters
closeReader true, Close() method shall close associated PdfReader, otherwise false.

◆ SetCloseWriter()

virtual void iText.Kernel.Pdf.PdfDocument.SetCloseWriter ( bool  closeWriter )
inlinevirtual

Sets, whether Close() method shall close associated PdfWriter.

Parameters
closeWriter true, Close() method shall close associated PdfWriter, otherwise false.

◆ SetDefaultPageSize()

virtual void iText.Kernel.Pdf.PdfDocument.SetDefaultPageSize ( PageSize  pageSize )
inlinevirtual

Sets default page size.

Sets default page size. New pages by default will be created with this size.

Parameters
pageSize page size to be set as default

◆ SetEncryptedPayload()

virtual void iText.Kernel.Pdf.PdfDocument.SetEncryptedPayload ( PdfFileSpec  fs )
inlinevirtual

Sets an encrypted payload, making this document an unencrypted wrapper document.

Sets an encrypted payload, making this document an unencrypted wrapper document. The file spec shall include the AFRelationship key with a value of EncryptedPayload, and shall include an encrypted payload dictionary.

Parameters
fs encrypted payload file spec. iText.Kernel.Pdf.Filespec.PdfEncryptedPayloadFileSpecFactory can produce one.

◆ SetFlushUnusedObjects()

virtual void iText.Kernel.Pdf.PdfDocument.SetFlushUnusedObjects ( bool  flushUnusedObjects )
inlinevirtual

Sets, whether Close() shall flush unused objects, e.g. unreachable from PDF Catalog.

Parameters
flushUnusedObjects false, if Close() shall not flush unused objects, otherwise true.

◆ SetSerializeOptions()

virtual void iText.Kernel.Pdf.PdfDocument.SetSerializeOptions ( SerializeOptions  serializeOptions )
inlinevirtual

Sets a persistent XMP metadata serialization options.

Parameters
serializeOptions serialize options

◆ SetTagged()

virtual iText.Kernel.Pdf.PdfDocument iText.Kernel.Pdf.PdfDocument.SetTagged ( )
inlinevirtual

Specifies that document shall contain tag structure.

Specifies that document shall contain tag structure. See ISO 32000-1, section 14.8 "Tagged PDF"

Returns
this PdfDocument instance

◆ SetUserProperties()

virtual void iText.Kernel.Pdf.PdfDocument.SetUserProperties ( bool  userProperties )
inlinevirtual

Sets the flag indicating the presence of structure elements that contain user properties attributes.

Parameters
userProperties the user properties flag

◆ SetXmpMetadata() [1/2]

virtual void iText.Kernel.Pdf.PdfDocument.SetXmpMetadata ( XMPMeta  xmpMeta )
inlinevirtual

Sets the XMP Metadata.

Parameters
xmpMeta the xmpMetadata to set

◆ SetXmpMetadata() [2/2]

virtual void iText.Kernel.Pdf.PdfDocument.SetXmpMetadata ( XMPMeta  xmpMeta,
SerializeOptions  serializeOptions 
)
inlinevirtual

Sets the XMP Metadata.

Parameters
xmpMeta the xmpMetadata to set
serializeOptions serialization options