问题描述
我在使用InDesign扩展脚本从链接的图形检索XMP数据时遇到问题。我在从中检索XMP数据时遇到问题的文件存储在Adobe Creative Cloud中,看来我无法打开它们/文件的XMP部分。
最终,该脚本通过批量处理来检索文件夹内InDesign文件中所有链接图形的Creditline。 我正在访问XMP,因为使用开箱即用的扩展脚本来检索copyrightinfo的方法会检索错误的字段(Link。linkXmp.copyrightNotice)。
我正在运行的脚本对于位于我的本地驱动器或服务器上的链接非常有效,但不适用于Adobe Creative Cloud中文档中链接的资产。
我的脚本如下:
if ( !ExternalObject.AdobeXMPScript ){
try{ExternalObject.AdobeXMPScript = new ExternalObject('lib:AdobeXMPScript');}
catch (e){alert('Unable to load the AdobeXMPScript library!');}
}
var myFile = File(app.selection[0].graphics[0].itemLink.filePath);
alert(myFile.fsName);
xmpFile = new XMPFile(myFile.fsName,XMPConst.UNKNowN,XMPConst.OPEN_FOR_READ);
var myXmp = xmpFile.getXMP();
xmpFile.closeFile(XMPConst.CLOSE_UPDATE_SAFELY);
var myPsCredit = myXmp.getProperty(XMPConst.NS_PHOTOSHOP,"Credit");
var myDcCredit = myXmp.getProperty(XMPConst.NS_DC,'rights[1]');
if (myPsCredit) {
var output = myPsCredit;
} else{
var output = myDcCredit;
}
alert(output);
if( ExternalObject.AdobeXMPScript ){
try{ExternalObject.AdobeXMPScript.unload(); ExternalObject.AdobeXMPScript = undefined;}
catch (e){alert('Unable to unload the AdobeXMPScript library!');}
}
在下面的行中我出现了错误:
错误号:1000
错误字符串:XMP异常:OpenFile返回false
xmpFile = new XMPFile(myFile.fsName,XMPConst.OPEN_FOR_READ);
我从中得知,无法打开位于Creative Cloud中的文件的XMP。
有没有办法从这些文件中检索XMP?
除非有一种方法可以从云中批量下载所有资产并自动将它们重新链接到我要检查的所有文件中,否则我必须访问云存储文件中的XMP。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)