Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
XMP Array Property - Bag, Seq, or AltHow to insert or update an XMP array property (bag, seq, or alt). Downloads: MS Windows Visual C/C++ Libraries Linux/CentOS C/C++ Libraries MAC OS X C/C++ Libraries Solaris C/C++ Libraries C++ Builder Libraries #include <CkXmp.h> #include <CkXml.h> #include <CkStringArray.h> void ChilkatSample(void) { CkXmp xmp; bool success; success = xmp.UnlockComponent("Anything for 30-day trial."); if (success != true) { printf("%s\n",xmp.lastErrorText()); return; } // 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 success = xmp.LoadAppFile("sample1.jpg"); if (success != true) { printf("%s\n",xmp.lastErrorText()); return; } printf("Num embedded XMP docs: %d\n",xmp.get_NumEmbedded()); // Assuming there is at least one, get the 1st. // (There is typically never more than one, but theoretically it's possible.) CkXml *xml = 0; xml = xmp.GetEmbedded(0); if (!(xml == 0 )) { // Create an object to hold one or more string values. CkStringArray sa; sa.Append("value_1"); sa.Append("value_2"); // ... success = xmp.AddArray(*xml,"bag","Iptc4xmpCore:Chilkat",sa); if (success != true) { printf("%s\n",xmp.lastErrorText()); } else { // Save the JPG. xmp.put_SaveAppFile(xmp.get_SaveAppFile() S ("modified.jpg")); } delete xml; } else { printf("%s\n",xmp.lastErrorText()); } } |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.