Скрипт фотошопа: Как найти расстояние графического центра относительно верхнего левого угла холста?
Моя проблема заключается в следующем:
http://img405.imageshack.us/img405/9915/ldi8.jpg
Можно ли измерить с помощью скрипта Photoshop (я использую CS5.1) ТОЧНЫЙ (x,y) центра графики (как показано на рисунке), связанный с верхним левым углом холста (0,0)? Какой тактике я должен следовать? У кого-нибудь есть идея? (Графика находится в своем собственном слое, и я хочу сделать меру для каждого графика, слой за слоем, чтобы сформировать макет в Corona).
2 ответа
Да, в Photoshop нажмите "Изображение" в меню навигации, затем выберите "Размер изображения". Возьмите ширину и разделите на 2, возьмите высоту и разделите на 2.
Чтобы найти координаты центра изображения, вам нужно найти границы слоя, которые сообщат вам левое, верхнее, правое и нижнее значения изображения. Из этого мы можем определить ширину и высоту изображения и центра (слева вверху от фотошопа)
//pref pixels
app.preferences.rulerUnits = Units.PIXELS;
// call the source document
var srcDoc = app.activeDocument;
// get current width values
var W = srcDoc.width.value;
var H = srcDoc.height.value;
var X = srcDoc.activeLayer.bounds[0]
var Y = srcDoc.activeLayer.bounds[1]
var X1 = srcDoc.activeLayer.bounds[2]
var Y1 = srcDoc.activeLayer.bounds[3]
var selW = parseFloat((X1-X));
var selH = parseFloat((Y1-Y));
var posX = Math.floor(parseFloat((X+X1)/2));
var posY = Math.floor(parseFloat((Y+Y1)/2));
alert(X + ", " + Y + ", " + X1 + ", " + Y1 + "\n" + "W: " + selW + ", H: " + selH + "\nPosition " + posX + "," + posY);