var scriptVersion = '0.2' var log = [] var doc, sel, txt, trf, siz, w, h try { doc = activeDocument log.push( 'sel: '+ sel = doc.activeLayer ) log.push( 'txt: '+ txt = sel.textItem ) log.push( 'trf: '+ trf = GetTransform() ) log.push( 'trf.x: '+ trf.x ) log.push( 'trf.y: '+ trf.y ) log.push( 'siz: '+ siz = txt.size ) log.push( 'siz * trf.y: '+ siz * trf.y ) log.push( 'w x h: '+ w = txt.width +' x '+ h = txt.height ) log.push( 'w*trf.x x h*trf.y: '+ w*trf.x +' x '+ h*trf.y ) } catch(e) { log.push( e ) } alert( log.join('\n\n'), 'Accurate Text Box '+ scriptVersion ) function GetTransform() { try { sTT = stringIDToTypeID, tK = sTT('textKey'); (ref = new ActionReference()).putProperty(sTT('property'), tK) ref.putEnumerated(sTT('textLayer'),sTT('ordinal'),sTT('targetEnum')) prop = executeActionGet(ref).getObjectValue(tK).getObjectValue (sTT('transform')) return { y: prop.getDouble(sTT('yy')), x: prop.getDouble(sTT('xx')) } } catch(e) { log.push( 'GetTransform '+ e ); return { x:1, y:1 } } }