Answers:
今天我找到了一种我不知道的方法,部分原因就是迈克尔·奥斯特胡斯(Michael Osterhus)所说的,但是我并没有真正理解他的初衷。
Layer -> Align
并催促这两个Vertical centers
和Horizontal centers
这种简单的策略给了我确切的结果,因此,当您需要以某种方式将文本居中时,此技巧非常有用。
如果以前不太明显,文本将相对于您绘制的矩形水平和垂直对齐,因此,如果您希望文本在整个文档中垂直对齐,则需要使用该大小的矩形,依此类推。
这是我写的可能有效的脚本。我还没有测试过。
centerTextVertically( app.activeDocument.artLayers.getByName( 'Text-Layer-Name' ) );
/**
* @param {ArtLayer} textLayer The text layer to apply the vertical centering.
*/
function centerTextVertically( textLayer ) {
if ( textLayer.kind !== LayerKind.TEXT ) {
return; // No-op: Not a text layer
}
var verticalCenterOffset = textLayer.textItem.height / 2;
var textCenterOffset = textLayer.textItem.size / 2;
textLayer.textItem.baselineShift = textCenterOffset - verticalCenterOffset;
}