photo shop的js脚本导出png图片

function traceObj(obj) {
    var str = "";
    for (var key in obj) {
        str += key;
        str += "\r\n";
    }
    alert(str);
}

var doc = app.activeDocument;
var psdname = doc.name.replace(".psd", "");
var outpath = "~/Desktop/" + psdname + "/";
var f = new Folder(outpath);

if (f.exists == false) {
    f.create();
}

function ept(layer) {
    // 设置导出路径
    var posx = layer.bounds[0];
    var posy = layer.bounds[1];

    layer.copy();//tempDoc, ElementPlacement.INSIDE

    // 将选中图层复制到一个新的临时文档中
    var tempDoc = app.documents.add(layer.bounds.width, layer.bounds.height, doc.resolution, "Temp Document", NewDocumentMode.RGB);

    app.activeDocument.paste();

    app.activeDocument.layers[1].visible = false;//隐藏背景
    
    // 将新文档的尺寸调整为画布大小
    tempDoc.resizeCanvas(doc.width, doc.height, AnchorPosition.TOPLEFT);

    var newlayer = app.activeDocument.layers[0];
    // alert(newlayer.name);
    var oldx = newlayer.bounds[0];
    var oldy = newlayer.bounds[1];

    var px = posx - oldx;
    var py = posy - oldy;

    newlayer.translate(px, py);

    // 导出新文档为图像文件
    var exportOptions = new ExportOptionsSaveForWeb();

    exportOptions.format = SaveDocumentType.PNG;

    //FindDifferent_03_2.png
    var exportPath = outpath + "FindDifferent_" + psdname + "_" + layer.name + ".png"; // 可以修改为您希望导出的路径和文件名
    // alert(exportPath);
    // exportPath = "./" + layer.name + ".png";
    // alert(exportPath);

    tempDoc.exportDocument(new File(exportPath), ExportType.SAVEFORWEB, exportOptions);

    // // 关闭临时文档
    tempDoc.close(SaveOptions.DONOTSAVECHANGES);

    // // 提示导出完成
    // alert("图层已成功导出到:" + exportPath);
}

for (var i = 0; i < doc.layers.length; i++) {
    var l = doc.layers[i];
    if (l.visible) {
        ept(l);
    }
}

alert("导出结束");
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值