PureBasic
PureBasic
Add XMP MetaData to JPG or TIFF
See more XMP Examples
Demonstrates how to add XMP metadata to a JPG or TIFF image that doesn't already have XMP metadata.Chilkat PureBasic Downloads
IncludeFile "CkXml.pb"
IncludeFile "CkXmp.pb"
Procedure ChilkatExample()
success.i = 0
; This example assumes the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
xmp.i = CkXmp::ckCreate()
If xmp.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
xml.i
; The first step is to create a new XMP document, which is nothing
; more than XML. The NewXmp method returns an XML document with
; the standard XMP boilerplate.
xml = CkXmp::ckNewXmp(xmp)
; Add some properties...
success = CkXmp::ckAddSimpleStr(xmp,xml,"Iptc4xmpCore:Chilkat","Blah blah")
; If you wish to view the XML, save it to a file and review it
; with a text editor:
success = CkXml::ckSaveXml(xml,"newXmp.xml")
If success <> 1
Debug CkXml::ckLastErrorText(xml)
CkXmp::ckDispose(xmp)
ProcedureReturn
EndIf
; To add the XMP to the JPG (or TIFF), simply load the JPG,
; append the XMP, and save:
success = CkXmp::ckLoadAppFile(xmp,"scream.jpg")
If success <> 1
Debug CkXmp::ckLastErrorText(xmp)
CkXmp::ckDispose(xmp)
ProcedureReturn
EndIf
success = CkXmp::ckAppend(xmp,xml)
If success <> 1
Debug CkXmp::ckLastErrorText(xmp)
CkXmp::ckDispose(xmp)
ProcedureReturn
EndIf
success = CkXmp::ckSaveAppFile(xmp,"screamOut.jpg")
If success <> 1
Debug CkXmp::ckLastErrorText(xmp)
CkXmp::ckDispose(xmp)
ProcedureReturn
EndIf
CkXmp::ckDispose(xmp)
ProcedureReturn
EndProcedure