酷代码 AI
菜单
服务商
DeepSeek字节豆包讯飞星火
更多选项

PS2025:JSX脚本一键修复老照片,附多场景处理要点!

```jsx #target photoshop // 定义修复老照片的函数 function repairOldPhoto() { // 打开文件选择对话框,让用户选择要修复的老照片 var file = File.openDialog("请选择要修复的老照片"); if (file != null) { app.open(file); // 获取当前活动文档 var doc = app.activeDocument; // 去除照片中的划痕和污点 var healBrush = new ActionDescriptor(); putInteger(healBrush, "Version", 1); putEnumerated(healBrush, "Mode", "HealMode", "Replace"); executeAction(stringIDToTypeID("healingBrush"), healBrush, DialogModes.NO); // 自动调整颜色和对比度 autoColor(); autoContrast(); autoTone(); // 锐化图像 sharpenImage(doc); // 保存修复后的照片 saveDocument(doc, file.path.replace(/(.*)\.[^\.]+$/, "$1_Repaired.jpg")); doc.close(SaveOptions.DONOTSAVECHANGES); } } // 自动调整颜色 function autoColor() { var idAutoColor = stringIDToTypeID("autoColor"); executeAction(idAutoColor, undefined, DialogModes.NO); } // 自动调整对比度 function autoContrast() { var idAutoContrast = stringIDToTypeID("autoContrast"); executeAction(idAutoContrast, undefined, DialogModes.NO); } // 自动调整色调 function autoTone() { var idAutoTone = stringIDToTypeID("autoTone"); executeAction(idAutoTone, undefined, DialogModes.NO); } // 锐化图像 function sharpenImage(doc) { var desc = new ActionDescriptor(); desc.putInteger(charIDToTypeID('Rds '), 250); // 半径 desc.putInteger(charIDToTypeID('Amt '), 80); // 强度 desc.putInteger(charIDToTypeID('Thrs'), 3); // 阈值 executeAction(stringIDToTypeID('sharpenLab'), desc, DialogModes.NO); } // 保存文档 function saveDocument(doc, path) { var options = new JPEGSaveOptions(); options.quality = 12; // 设置保存质量为最高 doc.saveAs(new File(path), options, true, Extension.LOWERCASE); } // 调用修复老照片的函数 repairOldPhoto(); ``` 额外需要注意的逻辑点: - 文件路径处理时需要考虑不同操作系统之间的差异。 - 图像处理效果可能因照片的具体情况而异,需根据实际效果调整参数。 - 对于特别大的图片,处理时间可能会较长,可加入进度提示或优化算法。 ######[AI写代码神器 | 602点数解答 | 2025-03-06 15:59:01]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]