Сценарий изменения размера холста в фотошопе - PullRequest
0 голосов
/ 26 мая 2019

Можно ли написать скрипт для изменения размера каждого изображения до ближайшего круглого числа (например, если исходное изображение имеет размер 791x1265px, то его можно изменить до 800x1300px)

Спасибо!

1 Ответ

1 голос
/ 27 мая 2019

Довольно простой и маленький скрипт может сделать это :) Наслаждайтесь

Примечание: у вас есть два варианта сценария; перед запуском скрипта используйте статическое базовое значение (по умолчанию) или, если вы хотите добавлять подсказку при каждом запуске, раскомментируйте ниже строки var base и прокомментируйте строку base var :) Надеюсь, это то, что вы искали:)

    //get Original Ruler Units;
var origRuler = app.preferences.rulerUnits;
app.preferences.rulerUnits = Units.PIXELS;    

    //get Active document scales
var origWidth = app.activeDocument.width;
var origHeight = app.activeDocument.height;

    //define base
var base = 100; //change your base like 10;100 etc; use below code to make a prompt on each run;
//var base = prompt("Enter Your Base number",""); //use this code if you want prompt for each run . uncomment by rermoving first two "//"

    //magical Mathematics XD
var roundWidth = Math.ceil(origWidth / base) * base;
var roundHeight = Math.ceil(origHeight / base) * base;

    //resize canvas
app.activeDocument.resizeCanvas (roundWidth, roundHeight);

    //Restores Original Ruler Units;
app.preferences.rulerUnits = origRuler;    

Редактировать: Обновлен скрипт, чтобы избежать конфликтов юнитов линейки, и изменен Math.round на Math.ceil в соответствии с предложением @Sergey!

...