Visual C++ Examples

ChilkatHOMEASPVisual BasicVB.NETC#Visual C++CMFCDelphiFoxProJavaPerlPHPPythonRubySQL ServerVBScript



Visual C++ Examples

CkString
Byte Array
Bounced Mail
Character Encoding
Digital Certificates
Digital Signatures
Email
Encryption
FTP
HTML-to-XML
HTTP
IMAP
MHT / HTML Email
RSA Encryption
S/MIME
Socket
Spider
Tar
Upload
XML
XMP
Zip Compression


More Examples...
Email Object
POP3
SMTP
RSS
Atom
Self-Extractor

Unreleased...
Service
PPMD
Deflate
Bzip2
LZW
Bz2
DH Key Exchange
DSA
Icon

 

 

 

 

 

 

 

 

Add String XMP Property

C++ sample program to add string properties to an existing XMP embedded in a JPG or TIF image file.

void XmpAddSimpleStr(void)
    {
    // Adds a simple XMP string property to XMP metadata embedded
    // in a JPG or TIF.
    CkXmp xmp;
    xmp.UnlockComponent("anything for 30-day trial");

    bool success = xmp.LoadAppFile("AgencyPhotographer-Example.jpg");
    if (!success)
	{
	xmp.SaveLastError("lastError.txt");
	return;
	}

    // Get the 1st XMP metadata document contained within the JPG.
    // (It is unusual to have more than a single XMP embedded in a JPG or TIFF)
    CkXml *xml = xmp.GetEmbedded(0);
    if (!xml)
	{
	printf("XMP not found!\n");
	return;
	}

    CkString str;

    // AddSimpleStr adds the string property under the correct 
    // rdf:Description subtree.
    //
    // If the string property already exists, it is replaced,
    // otherwise it is added.
    // 
    // If the rdf:Description subtree does not yet exist for the namespace,
    // it is automatically created.  The Chilkat XMP component automatically
    // recognizes standard namespaces such as "Iptc4xmpCore" and others
    // and will use the correct URI in the rdf:Description node.

    xmp.AddSimpleStr(*xml,"Iptc4xmpCore:Location","Wheaton");
    xmp.AddSimpleStr(*xml,"Iptc4xmpCore:CountryCode","US");
    xmp.AddSimpleStr(*xml,"Iptc4xmpCore:AbcXyz","Junk");

    // To use a non-standard namespace, add a namespace mapping:
    xmp.AddNsMapping("Chilkat","http://www.chilkatsoft.com/");

    // Chilkat XMP creates an rdf:Description node automatically for the
    // "Chilkat" namespace, and the URI used is from our mapping (above).
    xmp.AddSimpleStr(*xml,"Chilkat:AbcXyz","Junk");

    // Save the JPG with its updated XMP metadata.
    xmp.SaveAppFile("out.jpg");

    // Save the XMP to an XML file so we can review the changes in a text editor
    xml->SaveXml("newXmp.xml");

    delete xml;
    

    return;
    }

 

 

 

Need a specific example? Send a request to support@chilkatsoft.com

© 2000-2008 Chilkat Software, Inc. All Rights Reserved.

Mail Component · .NET Mail Component · XML Parser