【Photoshop JS脚本】参考线转换为线


if(documents.length) app.activeDocument.suspendHistory('描边参考线', 'main()'); 

function main(){

activeDocument.artLayers.add();

activeDocument.activeLayer.name="描边参考线";

app.showColorPicker();

var newColour = app.foregroundColor;

var guideSize = Window.prompt("请输入描边大小!","1");

var guides = app.activeDocument.guides;

var guideArray = [];
 
for( var g = 0; g < guides.length; g++ ){
    
    singleLine(guides[g].direction.toString(), Number(guides[g].coordinate.value).toFixed(0) );

    if(Number(guideSize) > 1)

   activeDocument.selection.stroke (newColour, Number(guideSize), StrokeLocation.OUTSIDE, ColorBlendMode.NORMAL, 100, false);

   activeDocument.selection.stroke (newColour, Number(guideSize), StrokeLocation.INSIDE, ColorBlendMode.NORMAL, 100, false);

}

activeDocument.selection.deselect();

};

function singleLine(pos,pixelPos) {

var desc5 = new ActionDescriptor();

var ref4 = new ActionReference();

ref4.putProperty( charIDToTypeID('Chnl'), charIDToTypeID('fsel') );

desc5.putReference( charIDToTypeID('null'), ref4 );

var desc6 = new ActionDescriptor();

if(pos == "Direction.VERTICAL"){

desc6.putUnitDouble( charIDToTypeID('Left'), charIDToTypeID('#Pxl'), Number(pixelPos) );

desc5.putObject( charIDToTypeID('T   '), charIDToTypeID('Sngc'), desc6 );

}else{

desc6.putUnitDouble( charIDToTypeID('Top '), charIDToTypeID('#Pxl'), Number(pixelPos) );

desc5.putObject( charIDToTypeID('T   '), charIDToTypeID('Sngr'), desc6 );

}

executeAction( charIDToTypeID('setd'), desc5, DialogModes.NO );

};

猜你喜欢

转载自blog.csdn.net/greless/article/details/105785773