我有一个可以在C#中读取xmp数据的程序,但是有些图像有一些属性为NULL,当我试图为一个NULL属性编写xmp数据时,它会给出一个异常:
属性:异常来自HRESULT: 0x88982F40
是否可以为为NULL的属性设置值?
// Credit Status = Copyrighted
metaData.SetQuery("/xmp/xmpRights:Marked", "True");
//overwriting instructions with static text
metaData.SetQuery("/xmp/photoshop:Instructions", Constants.InstructionsText);
var usageTerms = metaData.GetQuery("/xmp/xmpRights:UsageTerms/x-default");
if (string.IsNullOrEmpty(Convert.ToString(usageTerms)))
metaData.SetQuery("/xmp/xmpRights:UsageTerms/x-default", Constants.UsageTermText);基本上,我需要一个脚本,通过它我可以在Jpeg中创建一个新的XMP属性?
发布于 2014-09-29 12:31:14
我找到了一条路,希望它能帮上忙!我在MSDN注释上找到了答案
if (!metadata.ContainsQuery(@"/xmp/photoshop:Instructions"))
metadata.SetQuery(@"/xmp/{wstr=http://ns.adobe.com/photoshop/1.0/}:Instructions", instructions);
if (metadata.ContainsQuery("/xmp/photoshop:Marked"))
metadata.SetQuery(@"/xmp/{wstr=http://ns.adobe.com/photoshop/1.0/}:Marked", CreditStatus);
if (metadata.ContainsQuery("/xmp/xmpRights:UsageTerms/x-default"))
{
metadata.SetQuery(@"/xmp/{wstr=http://ns.adobe.com/xap/1.0/rights/}:UsageTerms",
new BitmapMetadata("xmpalt"));
metadata.SetQuery(@"/xmp/xmpRights:UsageTerms/x-default", usageTerms);
}https://stackoverflow.com/questions/26055115
复制相似问题