Сценарии Adobe Photoshop - Как выбрать ограничивающую рамку вокруг текущего выделения?

Кто-нибудь знает, возможно ли в расширенном скрипте Photoshop преобразовать неправильный выбор (например, выбор инструмента "Волшебная палочка") в прямоугольный выбор, охватывающий верхнюю, левую, нижнюю и правую границы выделения?

1 ответ

Решение

Вот он, я задокументировал код, чтобы вы могли изменить его позже, если вам нужно. Кроме того, проверьте страницу 166 и следуя справочному руководству по Photoshop для JS, вы можете прочитать больше о выделениях - вы можете установить растушевку, растянуть / пересечь / и т.д. выбор, если вам нужно.

Сделано для CS6, должно работать с последним.

#target photoshop
if (documents.length == 0) {
    alert("nothing opened");
} else {
    // start

    //setup
    var file = app.activeDocument;
    var selec =  file.selection; 

    //run
    var bnds = selec.bounds; // get the bounds of current selection
    var // save the particular pixel values
       xLeft = bnds[0],
       yTop = bnds[1],
       xRight = bnds[2],
       yBottom = bnds[3];

    var newRect = [ [xLeft,yTop], [xLeft,yBottom], [xRight,yBottom], [xRight,yTop] ]; // set coords for selection, counter-clockwise

    selec.deselect;
    selec.select(newRect);

    // end
}
Другие вопросы по тегам