0){ if(!documents.length){ a" />
解决psd文件过大,制作一个ps清理元数据的脚本 |
您所在的位置:网站首页 › ps文件清理 › 解决psd文件过大,制作一个ps清理元数据的脚本 |
function deleteDocumentAncestorSMetadata() { if(String(app.name).search("Photoshop") > 0) { if(!documents.length) { alert("There are no open documents. Please open a file to run this script.") return; } if (ExternalObject.AdobeXMPScript == undefined) ExternalObject.AdobeXMPScript = new ExternalObject("lib:AdobeXMPScript"); var xmp = new XMPMeta( activeDocument.xmpMetadata.rawData); xmp.deleteProperty(XMPConst.NS_PHOTOSHOP, "DocumentAncestors"); app.activeDocument.xmpMetadata.rawData = xmp.serialize(); clearDocumentAncestorsForAllLayers(app.activeDocument); if (app.activeDocument !== mainDocument) { app.activeDocument.close(SaveOptions.SAVECHANGES); }else{ app.activeDocument.save(); } } } function clearDocumentAncestorsForAllLayers(doc) { try { if (doc == undefined) { return; } for (var i = 0; i < doc.layers.length; i++) { var curLayer = doc.layers[i]; if (curLayer.typename != "ArtLayer") { clearDocumentAncestorsForAllLayers(curLayer); continue; } if (curLayer.kind == "LayerKind.SMARTOBJECT") { app.activeDocument.activeLayer = curLayer;
var idplacedLayerEditContents = stringIDToTypeID("placedLayerEditContents"); var actionDescriptor = new ActionDescriptor(); executeAction(idplacedLayerEditContents, actionDescriptor, DialogModes.NO); if(app.activeDocument.activeLayer == curLayer){ continue; } deleteDocumentAncestorSMetadata() layerSetStr += ("\n"+curLayer.name) } } } catch (e) { alert("Layer clean fail.name="+doc+";e="+e) } } var layerSetStr = ""; var mainDocument = app.activeDocument; function start(){ deleteDocumentAncestorSMetadata(); alert("Clean finished.\n[doc name]:"+mainDocument.name+"\n[layer set]:"+layerSetStr); } try{ if(confirm("Start to clean?")){ start(); } } catch (e) { alert("Clean fail.e="+e) } |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |