Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Deprecated   Guides   Examples   Videos
New in version: 12.2   12.3   12.4   12.5   13.0   13.1   13.2   13.3   13.4   13.5    Statistic    FMM    Blog  

DynaPDF.SetMetadata

The function sets or replaces the XMP metadata stream of a specific object.

Component Version macOS Windows Linux Server iOS SDK
DynaPDF 5.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes
MBS( "DynaPDF.SetMetadata"; PDF; ObjType; Handle; XMP )   More

Parameters

Parameter Description Example
PDF The PDF reference returned from DynaPDF.New. $pdf
ObjType The object type. Can be Catalog, Font, Image, Page or Template. "Catalog"
Handle Object handle or -1 for the catalog object. -1
XMP The XMP metadata as text.

Result

Returns OK or error.

Description

The function sets or replaces the XMP metadata stream of a specific object.
The function deletes the XMP stream if no buffer will be provided.
If the global XMP stream of the Catalog object should be replaced then proceed as follows:

The above steps make sure that the XMP metadata and document info contain the same values. This is especially important for PDF standards like PDF/A or PDF/X. DynaPDF makes sure that the creation and modification date will not be changed when closing the file.

See also SetMetadata function in DynaPDF manual.

Examples

Read, change and write XMP metadata:

Set Variable [ $pdf ; Value: MBS("DynaPDF.New") ]
# Load PDF from container
Set Variable [ $r ; Value: MBS("DynaPDF.OpenPDFFromContainer"; $pdf; Merge PDFs::InputPDF) ]
Set Variable [ $r ; Value: MBS("DynaPDF.ImportPDFFile"; $pdf; 1) ]
#
# get current XMP
Set Variable [ $xmp ; Value: MBS("DynaPDF.GetMetadata"; $pdf; "catalog"; -1) ]
#
# delete XMP metadata
// Set Variable [ $r ; Value: MBS("DynaPDF.SetMetaData"; $pdf; "") ]
#
# or write new XMP metadata
Set Variable [ $r ; Value: MBS("DynaPDF.SetMetaData"; $pdf; "catalog"; -1; $XMP) ]
#
# save
Set Field [ Merge PDFs::FinalPDF ; MBS("DynaPDF.Save"; $pdf; "Merged.pdf") ]
Set Variable [ $r ; Value: MBS("DynaPDF.Release"; $pdf) ]

See also

Blog Entries

This function checks for a license.

Created 29th July 2015, last changed 16th December 2020


DynaPDF.SetMetaConvFlags - DynaPDF.SetMiterLimit

💬 Ask a question or report a problem