DataFlex
DataFlex
Update a String Property in XMP
See more XMP Examples
Demonstrates how to open a JPG or TIF image file, access the XMP metadata, and update the value of a string property. (If the string property does not already exist, it is created.)Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoXmp
Variant vXml
Handle hoXml
String sTemp1
Integer iTemp1
Move False To iSuccess
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatXmp)) To hoXmp
If (Not(IsComObjectCreated(hoXmp))) Begin
Send CreateComObject of hoXmp
End
// Load a JPG or TIF image file.
Get ComLoadAppFile Of hoXmp "qa_data/xmp/AJ_123642_1511.tif" To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoXmp To sTemp1
Showln sTemp1
Procedure_Return
End
Get ComNumEmbedded Of hoXmp To iTemp1
Showln "Num embedded XMP docs: " iTemp1
// This example assumes that XMP metadata is already present in the image file.
Get ComNumEmbedded Of hoXmp To iTemp1
If (iTemp1 = 0) Begin
Showln "No XMP metadata already exists.."
Procedure_Return
End
// Get the XMP metadata.
Get ComGetEmbedded Of hoXmp 0 To vXml
If (IsComObject(vXml)) Begin
Get Create (RefClass(cComChilkatXml)) To hoXml
Set pvComObject Of hoXml To vXml
End
// Show the XML:
Get ComGetXml Of hoXml To sTemp1
Showln sTemp1
// Update (overwrite) a string property.
Get ComAddSimpleStr Of hoXmp vXml "NumberofTimes" "123" To iSuccess
Get ComSaveAppFile Of hoXmp "qa_output/updated.tif" To iSuccess
If (iSuccess <> True) Begin
Get ComLastErrorText Of hoXmp To sTemp1
Showln sTemp1
Procedure_Return
End
Showln "Success."
End_Procedure