Foxit PDF SDK
 All Classes Namespaces Functions Enumerations Enumerator Properties Pages
foxit.pdf.AssociatedFiles Class Reference
Inheritance diagram for foxit.pdf.AssociatedFiles:
foxit.common.Base

Public Types

enum  Relationship {
  Relationship.e_RelationshipUnspecified = 0, Relationship.e_RelationshipSource = 1, Relationship.e_RelationshipData = 2, Relationship.e_RelationshipAlternative = 3,
  Relationship.e_RelationshipSupplement = 4, Relationship.e_RelationshipEncryptedPayload = 5, Relationship.e_RelationshipFormData = 6, Relationship.e_RelationshipSchema = 7
}
 Enumeration for the relationship between PDF document and the associated file. More...
 

Public Member Functions

 AssociatedFiles (AssociatedFiles other)
 Constructor, with another associated files object. More...
 
 AssociatedFiles (PDFDoc pdf_doc)
 Constructor, with a PDF document. More...
 
void AssociateFile (PDFObject pdf_object, FileSpec file_spec)
 Associate a file (represented by FileSpec ) with a PDF dictionary object which represents the dictionary of an annotation, a PDF page, or other object in PDF document. More...
 
void AssociateFile (GraphicsObject graphics_object, int mark_content_item_index, PDFObject current_resource, string property_name, FileSpec file_spec)
 Associate a file (represented by FileSpec ) with a marked content item of a specified graphics object. More...
 
void AssociateFile (PDFPage page, FileSpec file_spec)
 Associate a file (represented by FileSpec ) with a PDF page. More...
 
void AssociateFile (ImageObject image, FileSpec file_spec)
 Associate a file (represented by FileSpec ) with an image graphics object. More...
 
void AssociateFile (FormXObject form_xobject, FileSpec file_spec)
 Associate a file (represented by FileSpec ) with a form XObject graphics object. More...
 
void AssociateFile (Annot annot, FileSpec file_spec)
 Associate a file (represented by FileSpec ) with a PDF annotation. More...
 
FileSpec GetAssociatedFile (PDFObject pdf_object, int index)
 Get an associated file (represented by FileSpec ) in a specified PDF dictionary object, by index. More...
 
FileSpec GetAssociatedFile (GraphicsObject graphics_object, int index)
 Get an associated file a graphics object, by index. More...
 
int GetAssociatedFilesCount (PDFObject pdf_object)
 Get the count of associated files in a PDF dictionary object which represents the dictionary of an annotation, a PDF page, or other object in PDF document. More...
 
int GetAssociatedFilesCount (GraphicsObject graphics_object)
 Get the count of associated files in a graphics object. More...
 
bool IsEmpty ()
 Check whether current object is empty or not. More...
 
void RemoveAssociatedFile (PDFObject pdf_object, int index)
 Remove an associated file (represented by FileSpec ) in a specified PDF dictionary object, by index. More...
 
void RemoveAssociatedFile (GraphicsObject graphics_object, int index)
 Remove an associated file a graphics object, by index. More...
 

Detailed Description

In PDF 2.0, a new concept named "Associated files" is defined. Associated files provide a means to associate content in other formats with objects of a PDF file and identify the relationship between the content and the objects. Such associated files are designated using file specification dictionaries (known as file specification). Associated files could be linked to the PDF document's catalog, a page dictionary, graphics objects, structure elements, XObject, DParts, an annotation dictionary and so on. Specially, associated files with graphics objects means to be associated with the marked content item.
Class AssociatedFiles is the class for managing associate files. It offers the functions to count/get associate files in PDF dictionary or graphics object, to associate files (represented by FileSpec ) with catalog, PDF pages, graphics objects, form XObject objects, annotation objects and so on.
Specially, when construct an associated files object with a PDF document, the file version of the related PDF document will be set to 2.0.

Member Enumeration Documentation

Enumeration for the relationship between PDF document and the associated file.

Values of this enumeration should be used alone.

Enumerator
e_RelationshipUnspecified 

The relationship is not known or cannot be described by other values.

e_RelationshipSource 

The relationship is "Source" which means the file specification is the original source material for the associated content.

e_RelationshipData 

The relationship is "Data" which means the file specification represents information used to derive a visual presentation - such as for a table or a graph.

e_RelationshipAlternative 

The relationship is "Alternative" which means the file specification is an alternative representation of content, for example audio.

e_RelationshipSupplement 

The relationship is "Supplement" which means the file specification represents a supplemental representation of the original source or data that may be more easily consumable.

e_RelationshipEncryptedPayload 

The relationship is "Encrypted payload" which means the file specification is an encrypted payload document that should be displayed to the user if the PDF processor has the cryptographic filter needed to decrypt the document.

e_RelationshipFormData 

The relationship is "Form data" which means the file specification is the data associated with the "AcroForm" dictionary in the PDF file.

e_RelationshipSchema 

The relationship is "Schema" which means the file specification is a schema definition for the associated object.

Constructor & Destructor Documentation

foxit.pdf.AssociatedFiles.AssociatedFiles ( AssociatedFiles  other)
inline

Constructor, with another associated files object.

Parameters
[in]otherAnother associated files object.
foxit.pdf.AssociatedFiles.AssociatedFiles ( PDFDoc  pdf_doc)
inline

Constructor, with a PDF document.

When an associated files object is constructed by this constructor, the file version of input PDF document will be set to 2.0.

Parameters
[in]pdf_docA valid PDF document object.

Member Function Documentation

void foxit.pdf.AssociatedFiles.AssociateFile ( PDFObject  pdf_object,
FileSpec  file_spec 
)
inline

Associate a file (represented by FileSpec ) with a PDF dictionary object which represents the dictionary of an annotation, a PDF page, or other object in PDF document.

Parameters
[in]pdf_objectA valid PDF object. It should be either a PDF dictionary object or a PDF reference object that refers to a PDF dictionary object.
[in]file_specA file specification object to be associated with specified PDF dictionary. It should not be an empty string.
Returns
None.
void foxit.pdf.AssociatedFiles.AssociateFile ( GraphicsObject  graphics_object,
int  mark_content_item_index,
PDFObject  current_resource,
string  property_name,
FileSpec  file_spec 
)
inline

Associate a file (represented by FileSpec ) with a marked content item of a specified graphics object.

Parameters
[in]graphics_objectA valid graphics object.
[in]mark_content_item_indexThe index of marked content item in input graphic object to which the specified file specification object is to associated with. Valid range: from 0 to (count-1). count is returned by function graphics.MarkedContent.GetItemCount of the marked content related to input graphics object.
[in]current_resourceA resource dictionary of a PDF page to which input graphics object is related. This can also be a PDF reference object that refers to such a PDF dictionary.
[in]property_nameA property name used in "Properties" dictionary of input resource dictionary. It should not be an empty string.
[in]file_specA file specification object to be associated with specified marked content item of a specified graphics object. It should not be an empty string.
Returns
None.
Note
When this function succeeds, function GraphicsObjects.GenerateContent should be called. Please refer to function GraphicsObjects.GenerateContent for more details.
void foxit.pdf.AssociatedFiles.AssociateFile ( PDFPage  page,
FileSpec  file_spec 
)
inline

Associate a file (represented by FileSpec ) with a PDF page.

In fact, this function is equals to associate a file with a PDF page dictionary.

Parameters
[in]pageA valid PDF page.
[in]file_specA file specification object to be associated with specified PDF page. It should not be an empty string.
Returns
None.
void foxit.pdf.AssociatedFiles.AssociateFile ( ImageObject  image,
FileSpec  file_spec 
)
inline

Associate a file (represented by FileSpec ) with an image graphics object.

In fact, this function is equals to associate a file with a PDF dictionary of an image graphics object.

Parameters
[in]imageAn image graphics object. It should not be null.
[in]file_specA file specification object to be associated with specified image graphics object. It should not be an empty string.
Returns
None.
void foxit.pdf.AssociatedFiles.AssociateFile ( FormXObject  form_xobject,
FileSpec  file_spec 
)
inline

Associate a file (represented by FileSpec ) with a form XObject graphics object.

In fact, this function is equals to associate a file with a PDF dictionary of a form XObject graphics object.

Parameters
[in]form_xobjectA form XObject graphics object. It should not be null.
[in]file_specA file specification object to be associated with specified form XObject graphics object. It should not be an empty string.
Returns
None.
void foxit.pdf.AssociatedFiles.AssociateFile ( Annot  annot,
FileSpec  file_spec 
)
inline

Associate a file (represented by FileSpec ) with a PDF annotation.

In fact, this function is equals to associate a file with a PDF dictionary of a PDF annotation.

Parameters
[in]annotA valid PDF annotation.
[in]file_specA file specification object to be associated with specified PDF annotation object. It should not be an empty string.
Returns
None.
FileSpec foxit.pdf.AssociatedFiles.GetAssociatedFile ( PDFObject  pdf_object,
int  index 
)
inline

Get an associated file (represented by FileSpec ) in a specified PDF dictionary object, by index.

Parameters
[in]pdf_objectA valid PDF object. It should be either a PDF dictionary object or a PDF reference object that refers to a PDF dictionary object.
[in]indexThe index of an associated file in the specified PDF dictionary object. Valid range: from 0 to (count-1). count is returned by function AssociatedFiles.GetAssociatedFilesCount with same parameter object.
Returns
A file specification object that represents the expected associated file.
FileSpec foxit.pdf.AssociatedFiles.GetAssociatedFile ( GraphicsObject  graphics_object,
int  index 
)
inline

Get an associated file a graphics object, by index.

One or more files may be associated with sections of content in a content stream by enclosing those sections between the marked content. So, in fact, this function is to get an associated files (specified by index) in the marked content related to the graphics object.

Parameters
[in]graphics_objectA valid PDF graphics object.
[in]indexThe index of an associated file in the specified PDF graphics object. Valid range: from 0 to (count-1). count is returned by function AssociatedFiles.GetAssociatedFilesCount with same parameter graphics_object.
Returns
A file specification object that represents the expected associated file.
int foxit.pdf.AssociatedFiles.GetAssociatedFilesCount ( PDFObject  pdf_object)
inline

Get the count of associated files in a PDF dictionary object which represents the dictionary of an annotation, a PDF page, or other object in PDF document.

Parameters
[in]pdf_objectA valid PDF object. It should be either a PDF dictionary object or a PDF reference object that refers to a PDF dictionary object.
Returns
The count of associated files.
int foxit.pdf.AssociatedFiles.GetAssociatedFilesCount ( GraphicsObject  graphics_object)
inline

Get the count of associated files in a graphics object.

One or more files may be associated with sections of content in a content stream by enclosing those sections between the marked content. So, in fact, this function is to count associated files in the marked content related to the graphics object.

Parameters
[in]graphics_objectA valid PDF graphics object.
Returns
The count of associated files.
bool foxit.pdf.AssociatedFiles.IsEmpty ( )
inline

Check whether current object is empty or not.

When the current object is empty, that means current object is useless.

Returns
true means current object is empty, while false means not.
void foxit.pdf.AssociatedFiles.RemoveAssociatedFile ( PDFObject  pdf_object,
int  index 
)
inline

Remove an associated file (represented by FileSpec ) in a specified PDF dictionary object, by index.

Parameters
[in]pdf_objectA valid PDF object. It should be either a PDF dictionary object or a PDF reference object that refers to a PDF dictionary object.
[in]indexThe index of an associated file in the specified PDF dictionary object. Valid range: from 0 to (count-1). count is returned by function AssociatedFiles.GetAssociatedFilesCount with same parameter object.
Returns
None.
void foxit.pdf.AssociatedFiles.RemoveAssociatedFile ( GraphicsObject  graphics_object,
int  index 
)
inline

Remove an associated file a graphics object, by index.

One or more files may be associated with sections of content in a content stream by enclosing those sections between the marked content. So, in fact, this function is to count associated files in the marked content related to the graphics object.

Parameters
[in]graphics_objectA valid PDF graphics object.
[in]indexThe index of an associated file in the specified PDF graphics object. Valid range: from 0 to (count-1). count is returned by function AssociatedFiles.GetAssociatedFilesCount with same parameter graphics_object.
Returns
A file specification object that represents the expected associated file.