```javascript // 定义美颜处理函数 function beautifyImage() { // 检查是否有打开的文档 if (app.documents.length == 0) { alert("请先打开一张图片"); return; } // 获取当前活动文档 var doc = app.activeDocument; // 创建智能对象,保护原始图像 doc.suspendHistory("Beautify Image", "beautifySteps(doc)"); } function beautifySteps(doc) { // 步骤1: 添加高斯模糊图层 var blurLayer = doc.artLayers.add(); blurLayer.name = "Smooth Skin"; doc.activeLayer = blurLayer; app.playbackPreferences = PlaybackPreferencesType.EDITABLE; doc.applyGaussianBlur(2); // 应用轻微模糊 // 步骤2: 设置蒙版,保护眼睛和嘴巴区域 var mask = blurLayer.layerMaskCreate(); var sel = new Array(3); sel[0] = [[50, 50], [150, 50], [150, 150], [50, 150]]; // 眼睛区域 sel[1] = [[100, 200], [200, 200], [200, 250], [100, 250]]; // 嘴巴区域 sel[2] = [[doc.width/2-50, doc.height/2-50], [doc.width/2+50, doc.height/2-50], [doc.width/2+50, doc.height/2+50], [doc.width/2-50, doc.height/2+50]]; // 中心区域 for (var i = 0; i < sel.length; i++) { doc.selection.make workPath(sel[i]); doc.selection.invert(); doc.selection.fill(Color.white); doc.selection.deselect(); } // 步骤3: 调整对比度和亮度 doc.adjustBrightnessContrast(10, 20); // 步骤4: 锐化细节 doc.applySmartSharpen(50, SmartSharpenMode.STANDARD, 0.3, false); // 步骤5: 添加自然饱和度 doc.adjustSaturation(10); // 清理工作路径 doc.pathItems.removeAll(); } // 注册到菜单栏 if (app.buildNumber >= "2020") { var menu = MenuElement("command", "Beautify Image", "end", "File"); menu.onSelect = beautifyImage; } else { alert("此脚本适用于Photoshop 2020及以上版本"); } ``` 三条额外需要注意的逻辑点: 1. 脚本中定义的选择区域坐标需要根据实际图像尺寸调整。 2. 参数如模糊程度、亮度对比度等数值可根据需求修改以适应不同类型的图片。 3. 脚本执行前确保没有其他选择区域存在,否则可能影响效果。 [2025-02-28 14:43:51 | AI写代码神器 | 680点数解答]