<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Robert A. Wlodarczyk's Blog (MSFT) : WPF</title><link>http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx</link><description>Tags: WPF</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>A few updates and links</title><link>http://blogs.msdn.com/rwlodarc/archive/2009/11/02/a-few-updates-and-links.aspx</link><pubDate>Mon, 02 Nov 2009 19:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:9916323</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/9916323.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=9916323</wfw:commentRss><description>&lt;P&gt;Some folks have been inquiring about the sampel code that I had on my blog. Since my web host was changed and the content was lost, I've moved the code to CodePlex. I've pruned the samples, and &lt;A href="http://rwlodarcmsdnblog.codeplex.com/" mce_href="http://rwlodarcmsdnblog.codeplex.com/"&gt;made them availabled here&lt;/A&gt;. What's included:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Converting WPF BitmapSource &amp;lt;-&amp;gt; GDI+ Bitmap&lt;/LI&gt;
&lt;LI&gt;Metadata Walker&lt;/LI&gt;
&lt;LI&gt;Using WPF InPlaceBitmapMetadataWriter&lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;Also, the code for WICExplorer and WICCop are available from MSDN. &lt;A href="http://code.msdn.microsoft.com/wictools" mce_href="http://code.msdn.microsoft.com/wictools"&gt;They are available here&lt;/A&gt;. What's included:&lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;WICExplorer: Base bones metadata and image viewer built using WIC&lt;/LI&gt;
&lt;LI&gt;WICCop: Tool used to verify that the WIC CODEC Guidelines have been properly implemented. Also includes C# COM Interop interface definitions for WIC.&lt;/LI&gt;&lt;/UL&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9916323" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+7/default.aspx">Windows 7</category></item><item><title>Using WPF's InPlaceBitmapMetadataWriter</title><link>http://blogs.msdn.com/rwlodarc/archive/2007/07/18/using-wpf-s-inplacebitmapmetadatawriter.aspx</link><pubDate>Thu, 19 Jul 2007 04:39:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:3949758</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/3949758.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=3949758</wfw:commentRss><description>&lt;P&gt;Many folks have tried to use the WPF Imaging InPlaceBitmapMetadataWriter class without much success. Unfortunately the SDK sample provided only shows how to use this with PNG files... and this is less than ideal since folks are mainly interested in metadata on their JPEGs and TIFFs. The InPlaceBitmapMetadataWriter is a way to invoke WIC's IWICFastMetadataEncoder, or as we call it "the FME". Basically this is a way to add metadata to a file very quickly without re-encoding the file. However, this only works if the file has metadata padding in it. Padding is extra space that the metadata handler sets aside in the file for writing out metadata in the future. Say I want to change an author form "Robert Wlodarczyk" to "Robert A. Wlodarczyk". Since the length of the new string is longer, without padding the metadata handler can't squish this data in to the file without moving what's after the metadata. As shipped in Windows Vista and WPF 3.0, padding is only supported in IFD, EXIF, and XMP metadata formats. Generally cameras do not produce files with padding in it, so this must be added initially. So, you need to re-encode the file initially. Luckily the WIC JPEG CODEC is able to do this in a manner which does not cause the image to lose any quality. Since IFD, EXIF, and XMP live only in TIFFs, JPEGs, and HD Photo&amp;nbsp;(or at least as was shipped), should only use the InPlaceBitmapMetadataWriter with TIFFs, JPEGs, HD Photo. tExT is also supported by the InPlaceBitmapMetadataWriter... and this is for PNGs. Within the Windows Vista, the property dialog and Photo Gallery both use the FME to write out metadata quickly. Upon the first metadata edit, padding is added so that each subsequent metadata update is faster than the first. Note, the sample only covers JPEG, but it can easily be adapted to TIFF or HD Photo.&lt;/P&gt;
&lt;P&gt;If you've struggled with the InPlaceBitmapMetadataWriter and want to get the sample... &lt;A title="Using InPlaceBitmapMetadataWriter" href="http://rwlodarcmsdnblog.codeplex.com/" mce_href="http://rwlodarcmsdnblog.codeplex.com/"&gt;grab it from here&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3949758" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category></item><item><title>DJ Tiësto &amp; Windows Vista</title><link>http://blogs.msdn.com/rwlodarc/archive/2007/03/04/dj-ti-sto-windows-vista.aspx</link><pubDate>Mon, 05 Mar 2007 03:17:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1806381</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/1806381.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=1806381</wfw:commentRss><description>&lt;P&gt;Some of you who know me better know that I'm a huge DJ Tiësto fan... even before he was vote #1 DJ in the world. Having been a bad fan lately and not checking out the &lt;A class="" title="DJ Tiësto" href="http://www.tiesto.com/" mce_href="http://www.tiesto.com"&gt;fan website&lt;/A&gt; recently, I figured I'd check it today. To my surprise there's now a Windows Vista Sidebar gadget as well as a very cool application (which looks like it was developed in WPF!). The sidebar gadget tells you about upcoming events, some news, and lets you stream music from the website. The application lets you play some more music (streamed from the website), video some videos, and read more about Tiësto. If you're into Trance or just want to check out these apps, &lt;A class="" title="DJ Tiësto &amp;amp; Windows Vista" href="http://www.tiesto.com/vista/default.asp" mce_href="http://www.tiesto.com/vista/default.asp"&gt;here's the direct link&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1806381" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Music/default.aspx">Music</category></item><item><title>WPF BitmapSource and GDI+ Bitmap Interop</title><link>http://blogs.msdn.com/rwlodarc/archive/2007/01/03/wpf-bitmapsource-and-gdi-bitmap-interop.aspx</link><pubDate>Wed, 03 Jan 2007 20:34:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1406809</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/1406809.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=1406809</wfw:commentRss><description>&lt;P&gt;Many folks in the forums (&lt;A href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1052190&amp;amp;SiteID=1" mce_href="http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1052190&amp;amp;SiteID=1"&gt;most recent post&lt;/A&gt;) have been asking how to interop BitmapSources (from WPF) with the Bitmap object that was known in .NET 1.0, 1.1, and 2.0. Being that this has come up in the forums many times, I figured I'd put together a small sample. The sample a WinForm app utilizing the ElementHost from the WinFormsIntegration to host the WPF Image element.&lt;/P&gt;
&lt;P&gt;I've put the &lt;A title="BitmapSource &lt;-&gt; Bitmap Sample" href="http://rwlodarcmsdnblog.codeplex.com/" mce_href="http://rwlodarcmsdnblog.codeplex.com/"&gt;code here&lt;/A&gt;. Enjoy!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1406809" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category></item><item><title>.NET Fx 3.0 RTM is out!</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/11/08/net-fx-3-0-rtm-is-out.aspx</link><pubDate>Wed, 08 Nov 2006 21:35:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:1038734</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/1038734.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=1038734</wfw:commentRss><description>&lt;P&gt;.NET Framework 3.0 RTM'd! Go &lt;A class="" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=10CC340B-F857-4A14-83F5-25634C3BF043&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=10CC340B-F857-4A14-83F5-25634C3BF043&amp;amp;displaylang=en"&gt;download it&lt;/A&gt;! If you want the SDK, &lt;A class="" href="http://www.microsoft.com/downloads/details.aspx?FamilyId=C2B1E300-F358-4523-B479-F53D234CDCCF&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyId=C2B1E300-F358-4523-B479-F53D234CDCCF&amp;amp;displaylang=en"&gt;here it is&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1038734" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category></item><item><title>So you wrote a WIC enabled CODEC... Does it work?</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/10/27/so-you-wrote-a-wic-enabled-codec-does-it-work.aspx</link><pubDate>Sat, 28 Oct 2006 00:36:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:884714</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/884714.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=884714</wfw:commentRss><description>&lt;P&gt;After reading this blog, &lt;A class="" href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnlong/html/wiccodec.asp" target=_blank mce_href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnlong/html/wiccodec.asp"&gt;Peggi's whitepaper&lt;/A&gt;, and the &lt;A class="" href="http://windowssdk.msdn.microsoft.com/en-us/library/ms735422.aspx" target=_blank mce_href="http://windowssdk.msdn.microsoft.com/en-us/library/ms735422.aspx"&gt;MSDN Documentation&lt;/A&gt;, you decided to write a CODEC for an image file type. The CODEC was even tested in &lt;A class="" href="http://blogs.msdn.com/rwlodarc/archive/2005/09/21/472338.aspx" target=_blank mce_href="http://blogs.msdn.com/rwlodarc/archive/2005/09/21/472338.aspx"&gt;WICExplorer&lt;/A&gt;. Great! Now you hope that the CODEC is fully functional... meaning that you can use it from the Windows Vista shell, Windows Vista Photo Gallery, and any WPF application that's written. Wouldn't it be simpler to have&amp;nbsp;a tool to check the registry settings and run a set of important tests to assist in the verification?&lt;/P&gt;
&lt;P&gt;My team has given some serious thought to this. In order to help facilitate in this task, we've come up with a tool called WICGrinder. To use the tool, you:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;create a new script&lt;/LI&gt;
&lt;LI&gt;enter in your CODEC's GUIDs for the container format, decoder, and encoder (if supported)&lt;/LI&gt;
&lt;LI&gt;provide sample images for your CODEC&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;After this you run the script and a verbose output of your CODEC's capabilities is outputted. Tests that are included are those that specifically check for items pointed out in &lt;A class="" href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnlong/html/wiccodec.asp" mce_href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnlong/html/wiccodec.asp"&gt;Peggi's whitepaper&lt;/A&gt;. If WICGrinder crashes, you may run it under a debugger with a debug build of your CODEC to determine what caused it to crash. A complete readme is included in the zip download.&lt;/P&gt;
&lt;P&gt;In order to run this, you should have the latest Windows Vista build installed (RC1 or greater). If you have any questions about the tool, please email &lt;A href="mailto:wictools@microsoft.com"&gt;wictools@microsoft.com&lt;/A&gt;. Also, if you have any questions about WIC in general, please email &lt;A href="mailto:wiccodec@microsoft.com"&gt;wiccodec@microsoft.com&lt;/A&gt;. &lt;/P&gt;
&lt;P&gt;Download it today: WICGrinder&amp;nbsp;[Update 2006.11.10... please use the updated version: &lt;A class="" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=a6d6ec6a-e4f2-405e-842d-7c3bcb5b1390&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=a6d6ec6a-e4f2-405e-842d-7c3bcb5b1390&amp;amp;displaylang=en"&gt;WICGrinder (x86)&lt;/A&gt;; &lt;A class="" href="http://www.microsoft.com/downloads/details.aspx?FamilyID=a6d6ec6a-e4f2-405e-842d-7c3bcb5b1390&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyID=a6d6ec6a-e4f2-405e-842d-7c3bcb5b1390&amp;amp;displaylang=en"&gt;WICGrinder (x64)&lt;/A&gt;]&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;(Disclaimer: Though WICGrinder covers a variety of tests, running WICGrinder alone is not a replacement for other testing that you should do for your CODEC (comprehensive test coverage, stability, reliability, security, fuzzing, etc). WICGrinder is meant as a supplement to your own testing. Running WICGrinder does not make any guarantees what-so-ever.)&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=884714" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category></item><item><title>MSDN Article on how to write a WIC CODEC</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/09/27/774741.aspx</link><pubDate>Thu, 28 Sep 2006 04:58:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:774741</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/774741.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=774741</wfw:commentRss><description>&lt;P&gt;Peggi, Lead PM on WIC, put together a most excellent write up for all of the things that go into writing a CODEC for WIC. It covers everything from the required interfaces that need to be implemented to which registry keys are required. The article is now up on MSDN. &lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnlong/html/wiccodec.asp"&gt;Check it out here!&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;If anyone has anyone has feedback on the whitepaper, please send mail to &lt;A href="mailto:codecs@microsoft.com"&gt;codecs@microsoft.com&lt;/A&gt;.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=774741" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category></item><item><title>Cool Traffic Map Demo</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/06/23/644644.aspx</link><pubDate>Fri, 23 Jun 2006 21:58:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:644644</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/644644.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=644644</wfw:commentRss><description>Lorin on the WPF SDK team put together a really nice sample for the Seattle area traffic map. You can see it &lt;A href="http://blogs.msdn.com/wpfsdk/archive/2006/06/23/Animating_Traffic_Map_Image_Data.aspx"&gt;here&lt;/A&gt;.&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=644644" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category></item><item><title>Can't view images with WinFx Beta 2?</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/05/25/607131.aspx</link><pubDate>Thu, 25 May 2006 17:34:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:607131</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>5</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/607131.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=607131</wfw:commentRss><description>&lt;P&gt;Some folks are hitting an issue where they cannot view images after installing WinFx Beta 2 on Windows XP. We're currently investigating this issue further, however a work around is available. If you happen to be hitting this problem, please follow these steps:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Uninstall WinFx Beta 2. 
&lt;LI&gt;Uninstall the WIC redistributable package by running: %windir%\$NtUninstallWIC$\spuninst\spuninst.exe 
&lt;LI&gt;Reinstall WinFx Beta 2. 
&lt;LI&gt;(optional) Verify that WindowsCodecs.dll and WindowsCodecsExt.dll are in %windir%\system32.&lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Thank you everyone who's reported this issue to us, and who have helped in the investigation of the problem.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=607131" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category></item><item><title>Updated WICExplorer, AIT CODEC, RGB Effect...</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/05/25/updated-wicexplorer-ait-codec-rgb-effect.aspx</link><pubDate>Thu, 25 May 2006 16:52:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:607272</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/607272.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=607272</wfw:commentRss><description>&lt;P&gt;&lt;FONT size=3&gt;WICExplorer, AIT CODEC, and RGB Effect are now updated for Beta 2.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;AIT CODEC Code (Beta 2):&lt;/STRONG&gt; &lt;A href="http://code.msdn.microsoft.com/wictools" mce_href="http://code.msdn.microsoft.com/wictools"&gt;AITCodec_code.zip&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;AIT CODEC Compiled (Beta 2):&lt;/STRONG&gt; &lt;A href="http://code.msdn.microsoft.com/wictools" mce_href="http://code.msdn.microsoft.com/wictools"&gt;AITCodec_compiled.zip&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;AIT CODEC Code (Beta 2): &lt;/STRONG&gt;Code is also found in C:\Program Files\Microsoft SDKs\Windows\v1.0\samples\WPFSamples.zip in the Imaging folder.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;&lt;FONT size=4&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;WICExplorer Code (Beta 2):&lt;/STRONG&gt; &lt;A href="http://code.msdn.microsoft.com/wictools" mce_href="http://code.msdn.microsoft.com/wictools"&gt;WICExplorer_code.zip&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;WICExplorer Compiled (Beta 2):&lt;/STRONG&gt; &lt;A href="http://code.msdn.microsoft.com/wictools" mce_href="http://code.msdn.microsoft.com/wictools"&gt;WICExplorer_compiled.zip&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;WICExplorer Compiled (Beta 2): &lt;/STRONG&gt;Compiled version is also found in C:\Program Files\Microsoft SDKs\Windows\v1.0\Bin.&lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;RGB Adjustor BitmapEffect Code (Beta 2):&lt;/STRONG&gt; Code found in C:\Program Files\Microsoft SDKs\Windows\v1.0\samples\WPFSamples.zip in the Imaging folder.&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=607272" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Effects/default.aspx">Effects</category></item><item><title>Updated AIT CODEC</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/05/02/updated-ait-codec.aspx</link><pubDate>Wed, 03 May 2006 01:30:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:588836</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/588836.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=588836</wfw:commentRss><description>&lt;P&gt;We've noticed that there was a bug in the AIT CODEC around ColorContexts. When trying to view AIT files through WPF APIs, this bug will maifest itself as not being able to open the image, though WICExplorer was able to display it.&lt;/P&gt;
&lt;P&gt;The fix is relatively simple for now... just commenting out the support for ColorContexts. In the next release we do, there will be a full fix here.&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;AIT CODEC Code (February CTP):&lt;/STRONG&gt; &lt;A href="http://code.msdn.microsoft.com/wictools" mce_href="http://code.msdn.microsoft.com/wictools"&gt;AITCodec_code.zip&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;AIT CODEC Compiled (February CTP):&lt;/STRONG&gt; &lt;A href="http://code.msdn.microsoft.com/wictools" mce_href="http://code.msdn.microsoft.com/wictools"&gt;AITCodec_compiled.zip&lt;/A&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=588836" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category></item><item><title>First Sample BitmapEffect</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/04/14/first-sample-bitmapeffect.aspx</link><pubDate>Fri, 14 Apr 2006 21:02:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:576654</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>1</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/576654.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=576654</wfw:commentRss><description>&lt;P&gt;We've announced a while ago that the BitmapEffects pipeline within WinFx (particularly in Windows Presentation Foundation) would be extensible. However, no samples were provided. Today I'm posting the first sample that we've created for test purposes. It demonstrates how to build a simple BitmapEffect.&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;RGB Adjustor BitmapEffect (February CTP):&lt;/STRONG&gt; RGBFilterEffect_code.zip (code no longer available)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;RGB Adjustor BitmapEffect (February CTP):&lt;/STRONG&gt; RGBFilterEffect_compiled.zip (code no longer available)&lt;/FONT&gt;&lt;/P&gt;(please note: When building this sample you will hit a build error (Error result 1 returned from 'C:\WINNT\system32\cmd.exe'.). Unfortunately this is expected at this time and this is being worked on so it's addressed in a future update. Also, in order to build the sample, you should follow section 6.2 in the Windows SDK readme.) &lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=576654" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Effects/default.aspx">Effects</category></item><item><title>Official MSDN Documentation (for WIC and BitmapEffects)</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/04/11/573385.aspx</link><pubDate>Tue, 11 Apr 2006 18:04:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:573385</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/573385.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=573385</wfw:commentRss><description>&lt;P&gt;Some folks have asked where the official documentation is for WindowsCodecs. It's there in MSDN, but it's not with the rest of the WinFx Documentation (mainly because the WIC APIs are unmanaged). The official MSDN Documentation for WIC is here: &lt;A href="http://windowssdk.msdn.microsoft.com/library/default.asp?url=/library/en-us/wic/wiclh/wiclh.asp"&gt;http://windowssdk.msdn.microsoft.com/library/default.asp?url=/library/en-us/wic/wiclh/wiclh.asp&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Further, as has been mentioned previously at the PDC and other forums, the BitmapEffects infrastructure is also extensible. We have a cool sample coming soon... but until then the official MSDN Documentation for writing your own BitmapEffect is here: &lt;A href="http://windowssdk.msdn.microsoft.com/library/default.asp?url=/library/en-us/wibe/wibelh/wibelh.asp"&gt;http://windowssdk.msdn.microsoft.com/library/default.asp?url=/library/en-us/wibe/wibelh/wibelh.asp&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=573385" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Effects/default.aspx">Effects</category></item><item><title>Background on Metadata Query Language</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/03/30/background-on-metadata-query-language.aspx</link><pubDate>Thu, 30 Mar 2006 17:52:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:565138</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/565138.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=565138</wfw:commentRss><description>&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;During the design phase of WIC (Windows Imaging Component), we took a holistic view of the issues the issues that plagued our predecessor GDI+. Many of the items that came up from customers, newsgroups, and internal discussions revolved around building a stable and robust set of CODECs, providing what we now call the extensibility system for CODECs/Metadata Handlers/PixelFormats, and a robust handling of metadata formats. By far, the largest issue was around providing an extensible and robust mechanism for metadata to be handled.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;If you take a look closely at the &lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdicpp/GDIPlus/usingGDIPlus/usingimagesbitmapsandmetafiles/readingandwritingmetadata.asp" mce_href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdicpp/GDIPlus/usingGDIPlus/usingimagesbitmapsandmetafiles/readingandwritingmetadata.asp"&gt;GDI+ API set for metadata&lt;/A&gt;, there is a &lt;A href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdicpp/GDIPlus/GDIPlusreference/constants/imagepropertytagconstants.asp" mce_href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdicpp/GDIPlus/GDIPlusreference/constants/imagepropertytagconstants.asp"&gt;hard coded list&lt;/A&gt; of metadata items that can be read or written to the file. One of the problems with such a list is that this binds the implementation to a specific version of a metadata handler. So if a new tag in EXIF is introduced, you cannot get to it. Another problem is that such a hard coded list imposes a “policy” as to what the enum value actually binds to. For example, the enum lists “PropertyTagArtist”, but does this map to (in JPEGs and TIFFs) IPTC writer or contact information, or the artist information stored in the IFD? The only way to find out is to experiment. Lastly, with the introduction of new metadata formats, like XMP, the approach of using such an enum just falls over.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;Within WIC, such issues have been resolved. You’ll notice that the hard coded list is gone. So what replaces this? This brings us to the topic at hand… The metadata query language is what replaces this hard coded list. How does the metadata query language solve the previous problems?&lt;/P&gt;
&lt;UL style="MARGIN-TOP: 0in" type=disc&gt;
&lt;LI style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo1; tab-stops: list .5in" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Extensibility:&lt;/B&gt; Third parties are able to implement their own metadata handler. Once this is done, they may register their own keyword that will be used to access the metadata in this new metadata schema. 
&lt;LI style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo1; tab-stops: list .5in" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Full Disclosure:&lt;/B&gt; By using the full metadata “path”, a user can clearly see which piece of metadata is being written. 
&lt;LI style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo1; tab-stops: list .5in" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Policy Component:&lt;/B&gt; If a user still wants to access or modify metadata by a built-in policy, they may do so using a set of keywords instead of a full metadata “path”. 
&lt;LI style="MARGIN: 0in 0in 0pt; mso-list: l1 level1 lfo1; tab-stops: list .5in" class=MsoNormal&gt;&lt;B style="mso-bidi-font-weight: normal"&gt;Familiar Syntax:&lt;/B&gt; The metadata query language is very similar to &lt;A href="http://www.w3schools.com/xpath/xpath_syntax.asp" mce_href="http://www.w3schools.com/xpath/xpath_syntax.asp"&gt;basic XPath&lt;/A&gt; in the XML world. When I say “basic”, I mean the very basic concept of a “path” to metadata and an index into which index of multiple pieces of the same metadata. Full fledged features of XPath are not supported currently in the metadata query language.&lt;/LI&gt;&lt;/UL&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;Recently when &lt;A href="http://blogs.msdn.com/rwlodarc/archive/2006/03/10/549056.aspx" mce_href="http://blogs.msdn.com/rwlodarc/archive/2006/03/10/549056.aspx"&gt;the update to WICExplorer was made&lt;/A&gt;, searching by metadata query language strings was added. Also, I’ve posted a managed sample (&lt;A href="http://rwlodarcmsdnblog.codeplex.com/" mce_href="http://rwlodarcmsdnblog.codeplex.com/"&gt;code&lt;/A&gt;, &lt;A href="http://rwlodarcmsdnblog.codeplex.com/" mce_href="http://rwlodarcmsdnblog.codeplex.com/"&gt;compiled&lt;/A&gt;) for getting metadata out of the file. Using one or both of these tools is extremely helpful in understanding how the metadata query language works.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;Using &lt;A href="http://www.rawweb.net/samples/SampleImages.zip" mce_href="http://www.rawweb.net/samples/SampleImages.zip"&gt;these sample images&lt;/A&gt;, here are some examples:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1in; mso-list: l0 level1 lfo2; tab-stops: list 1.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;JPEG containing XMP metadata: &lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;(Notice in the case of XMP namespaces can be aliased to short names.)&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Creator: &lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/xmp/creator/{ulong=0}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/xmp/dc:creator/{ulong=0}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Description:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/xmp/description/x-default&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/xmp/dc:description/x-default&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Creator Contact Information:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/xmp/CreatorContactInfo/CiAdrExtadr&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/xmp/http\:\/\/iptc.org\/std\/Iptc4xmpCore\/1.0\/xmlns\/:CreatorContactInfo/http\:\/\/iptc.org\/std\/Iptc4xmpCore\/1.0\/xmlns\/:CiAdrExtadr&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1in; mso-list: l0 level1 lfo2; tab-stops: list 1.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;JPEG containing IFD metadata:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Artist:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/app1/ifd/{uint=315}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;ImageDescription:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/app1/ifd/{uint=270}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1in; mso-list: l0 level1 lfo2; tab-stops: list 1.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;TIFF containing XMP metadata:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;(Notice in the case of XMP namespaces can be aliased to short names.)&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Creator: &lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/xmp/creator/{ulong=0}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/xmp/dc:creator/{ulong=0}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Description:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/xmp/description/x-default&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/xmp/dc:description/x-default&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Creator Contact Information:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/xmp/CreatorContactInfo/CiAdrExtadr&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/xmp/http\:\/\/iptc.org\/std\/Iptc4xmpCore\/1.0\/xmlns\/:CreatorContactInfo/http\:\/\/iptc.org\/std\/Iptc4xmpCore\/1.0\/xmlns\/:CiAdrExtadr&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1in; mso-list: l0 level1 lfo2; tab-stops: list 1.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;TIFF containing IFD metadata:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Artist:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/{uint=315}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;ImageDescription:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/{uint=270}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1in; mso-list: l0 level1 lfo2; tab-stops: list 1.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;TIFF containing IPTC metadata in the IFD:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/iptc/by-line&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1in; mso-list: l0 level1 lfo2; tab-stops: list 1.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;·&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;PNG tEXt metadata:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.5in; mso-list: l0 level2 lfo2; tab-stops: list 1.5in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;Author:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 2in; mso-list: l0 level3 lfo2; tab-stops: list 2.0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"&gt;&lt;SPAN style="mso-list: Ignore"&gt;§&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/[*]tEXt/Author&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;As you notice there are duplicate places where certain metadata may live. For example, an abstracted view of author information includes the following pieces of metadata (not a complete list):&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.75in; mso-list: l2 level1 lfo3; tab-stops: list .75in" class=MsoNormal&gt;&lt;SPAN style="mso-list: Ignore"&gt;-&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;JPEG:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.25in; mso-list: l2 level2 lfo3; tab-stops: list 1.25in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/xmp/dc:creator&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.25in; mso-list: l2 level2 lfo3; tab-stops: list 1.25in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/xmp/tiff:artist&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.25in; mso-list: l2 level2 lfo3; tab-stops: list 1.25in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/app1/ifd/{ushort=315}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.25in; mso-list: l2 level2 lfo3; tab-stops: list 1.25in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/app1/ifd/{ushort=40093}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.75in; mso-list: l2 level1 lfo3; tab-stops: list .75in" class=MsoNormal&gt;&lt;SPAN style="mso-list: Ignore"&gt;-&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;TIFF:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.25in; mso-list: l2 level2 lfo3; tab-stops: list 1.25in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/xmp/dc:creator&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.25in; mso-list: l2 level2 lfo3; tab-stops: list 1.25in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/xmp/tiff:artist&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.25in; mso-list: l2 level2 lfo3; tab-stops: list 1.25in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/iptc/by-line&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.25in; mso-list: l2 level2 lfo3; tab-stops: list 1.25in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/{ushort=315}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.25in; mso-list: l2 level2 lfo3; tab-stops: list 1.25in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/ifd/{ushort=40093}&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.75in; mso-list: l2 level1 lfo3; tab-stops: list .75in" class=MsoNormal&gt;&lt;SPAN style="mso-list: Ignore"&gt;-&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;PNG:&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 1.25in; mso-list: l2 level2 lfo3; tab-stops: list 1.25in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; mso-fareast-font-family: 'Courier New'"&gt;&lt;SPAN style="mso-list: Ignore"&gt;o&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;/[*]tEXt/Author&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;Instead of using absolute metadata query language paths, you can use a policy component path. For example, for author the path is “System.Author”. When the metadata query engine sees this type of query, it hands this off to the policy component. In turn, the policy component returns a fully qualified metadata query language string back. If a file has the information requested in more than one location it’s the policy component’s job to determine which fully qualified path to actually use. When encoding metadata, you may also set the author using “System.Author”. This will write the metadata back to all applicable spots within the file (depending on what metadata formats are already in the file).&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;Currently if you try to use these policy component query strings on Windows XP, they will fail (they only work on Windows Vista today). However as Peggi mentioned in our &lt;A href="http://channel9.msdn.com/showpost.aspx?postid=168916" mce_href="http://channel9.msdn.com/showpost.aspx?postid=168916"&gt;Channel9 interview&lt;/A&gt;, there will be a WIC redistributable package that includes the policy component. This redistributable package will be available for Windows XP SP2 and Windows 2003 Server.&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt" class=MsoNormal&gt;All in all, the metadata query language is a pretty powerful tool. Play around with it a bit in WICExplorer and the managed metadata sample. Let us know if you have any questions!&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=565138" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category></item><item><title>Photo Demo Used in Channel9 Video</title><link>http://blogs.msdn.com/rwlodarc/archive/2006/03/11/photo-demo-used-in-channel9-video.aspx</link><pubDate>Sat, 11 Mar 2006 20:59:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:549602</guid><dc:creator>RWlodarczyk</dc:creator><slash:comments>0</slash:comments><comments>http://blogs.msdn.com/rwlodarc/comments/549602.aspx</comments><wfw:commentRss>http://blogs.msdn.com/rwlodarc/commentrss.aspx?PostID=549602</wfw:commentRss><description>&lt;P&gt;In the &lt;A href="http://channel9.msdn.com/showpost.aspx?postid=168916" mce_href="http://channel9.msdn.com/showpost.aspx?postid=168916"&gt;Channel9 video&lt;/A&gt;, Peggi showed off a WPF application using the managed Imaging classes.&amp;nbsp; As mentioned in the forums on Channel9, we're making this code available...&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;Code (Feb. CTP):&lt;/STRONG&gt; PhotoDemo_code.zip (code no longer available)&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=4&gt;&lt;STRONG&gt;Compiled (Feb. CTP):&lt;/STRONG&gt; PhotoDemo_compiled.zip (code no longer available)&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=549602" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Windows+Vista/default.aspx">Windows Vista</category><category domain="http://blogs.msdn.com/rwlodarc/archive/tags/Imaging/default.aspx">Imaging</category></item></channel></rss>