Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PowerBuilder) XMP Array Property - Bag, Seq, or AltHow to insert or update an XMP array property (bag, seq, or alt).
integer li_rc oleobject loo_Xmp integer li_Success oleobject loo_Xml oleobject loo_Sa // This requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Xmp = create oleobject // Use "Chilkat_9_5_0.Xmp" for versions of Chilkat < 10.0.0 li_rc = loo_Xmp.ConnectToNewObject("Chilkat.Xmp") if li_rc < 0 then destroy loo_Xmp MessageBox("Error","Connecting to COM object failed") return end if // Load a JPG or TIF image file. // Sample JPG's with XMP metadata may be found at: // http://www.chilkatsoft.com/testData/xmp/sample1.jpg // http://www.chilkatsoft.com/testData/xmp/sample2.jpg // http://www.chilkatsoft.com/testData/xmp/sample3.jpg li_Success = loo_Xmp.LoadAppFile("sample1.jpg") if li_Success <> 1 then Write-Debug loo_Xmp.LastErrorText destroy loo_Xmp return end if Write-Debug "Num embedded XMP docs: " + string(loo_Xmp.NumEmbedded) // Assuming there is at least one, get the 1st. // (There is typically never more than one, but theoretically it's possible.) loo_Xml = loo_Xmp.GetEmbedded(0) if loo_Xmp.LastMethodSuccess = 1 then // Create an object to hold one or more string values. loo_Sa = create oleobject // Use "Chilkat_9_5_0.StringArray" for versions of Chilkat < 10.0.0 li_rc = loo_Sa.ConnectToNewObject("Chilkat.StringArray") li_Success = loo_Sa.Append("value_1") li_Success = loo_Sa.Append("value_2") // ... li_Success = loo_Xmp.AddArray(loo_Xml,"bag","Iptc4xmpCore:Chilkat",loo_Sa) if li_Success <> 1 then Write-Debug loo_Xmp.LastErrorText else // Save the JPG. li_Success = loo_Xmp.SaveAppFile("modified.jpg") if li_Success <> 1 then Write-Debug loo_Xmp.LastErrorText end if end if destroy loo_Xml else Write-Debug loo_Xmp.LastErrorText end if destroy loo_Xmp destroy loo_Sa |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.