Copy link to clipboard
Copied
Is there any way to get the transform rotation angle for a text layer?
https://forums.adobe.com/people/Tom+Winkelmann
Try to rotate e.g. -130° and you get the wrong result...??
Before alert() insert this
if (d.getDouble(stringIDToTypeID("yy")) < 0) angle_v = angle_v-180;
if (angle_v > 180) angle_v = 360-angle_v;
if (angle_v < -180) angle_v = 360+angle_v;
Copy link to clipboard
Copied
Try this
var r = new ActionReference();
r.putEnumerated(charIDToTypeID("Lyr "), charIDToTypeID("Ordn"), charIDToTypeID("Trgt"));
try { var d = executeActionGet(r).getObjectValue(stringIDToTypeID("textKey")).getObjectValue(stringIDToTypeID("transform"));
var scale_v = d.getDouble(stringIDToTypeID("yy"))/d.getDouble(stringIDToTypeID("xx"));
var angle_v = Math.atan(d.getDouble(stringIDToTypeID("xy"))/d.getDouble(stringIDToTypeID("xx"))) * 180.0 / Math.PI;
var angle_h = Math.atan(d.getDouble(stringIDToTypeID("yx"))/d.getDouble(stringIDToTypeID("yy"))) * 180.0 / Math.PI;
alert
(
"Scale V:\t" + (scale_v*100).toFixed(3) + "%" + "\n" +
"Angle:\t" + angle_v.toFixed(3) + "°" + "\n" +
"Skew H:\t" + (angle_v+angle_h).toFixed(3) + "°" + "\n"
);
}
catch (e) { alert("No tranformations"); }
Copy link to clipboard
Copied
Try to rotate e.g. -130° and you get the wrong result...??
Copy link to clipboard
Copied
https://forums.adobe.com/people/Tom+Winkelmann
Try to rotate e.g. -130° and you get the wrong result...??
Before alert() insert this
if (d.getDouble(stringIDToTypeID("yy")) < 0) angle_v = angle_v-180;
if (angle_v > 180) angle_v = 360-angle_v;
if (angle_v < -180) angle_v = 360+angle_v;
Copy link to clipboard
Copied
That's better
Copy link to clipboard
Copied
THANKS!!!!!