Skip to main content
Damon D Bell
Known Participant
April 1, 2018
Answered

Get Text Rotation Value?

  • April 1, 2018
  • 1 reply
  • 1645 views

Is there any way to get the transform rotation angle for a text layer?

This topic has been closed for replies.
Correct answer r-bin

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;

1 reply

Legend
April 2, 2018

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"); }

Tom Winkelmann
Inspiring
April 2, 2018

Try to rotate e.g. -130° and you get the wrong result...??

r-binCorrect answer
Legend
April 2, 2018

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;