レイヤー内のテキストのサイズと色をリセットする

Photoshop CS2だと複数のレイヤーを選択できるため、今回のスクリプトは不要です。CSではテキストの色や文字サイズを一括して変更しようとしてもアクションなどを利用したりするか、頑張って手作業で処理するしかありません。そんな時はスクリプトの出番です。一度作ってしまえばメニューから選択するだけです。
まず、以下のスクリプトがテキストレイヤーの文字サイズを全て同じにするものです。以前掲載したレイヤー内のテキストを検索するスクリプトと同じ作りになっています。


// レイヤーセット内にテキストレイヤーが含まれる限り処理する(再帰)
function setLayerTextSize(layObj)
{
var i,n = layObj.artLayers.length;
for (i=0; i<n; i++)
{
layType = layObj.artLayers[i].kind;
if (layType == LayerKind.TEXT)
{
layObj.artLayers[i].textItem.size = fSize;
}
}
var ns = layObj.layerSets.length;
for (i=0; i<ns; i++)
{
setLayerTextSize(layObj.layerSets[i])
}
}

fSize = parseFloat(prompt("フォントサイズは?(pt)",12));
setLayerTextSize(activeDocument);

次に文字の色を黒色に統一するスクリプトを以下に示します。

// レイヤーセット内にテキストレイヤーが含まれる限り処理する(再帰)
function setLayerTextColor(layObj)
{
var i,n = layObj.artLayers.length;
for (i=0; i<n; i++)
{
layType = layObj.artLayers[i].kind;
if (layType == LayerKind.TEXT)
{
layObj.artLayers[i].textItem.color.rgb.red = r;
layObj.artLayers[i].textItem.color.rgb.green = g;
layObj.artLayers[i].textItem.color.rgb.blue = b;
}
}
var ns = layObj.layerSets.length;
for (i=0; i<ns; i++)
{
setLayerTextColor(layObj.layerSets[i])
}
}

r = 0; // 赤の輝度
g = 0; // 緑の輝度
b = 0; // 青の輝度
setLayerTextColor(activeDocument);

サイズを指定するスクリプトとほとんど同じです。異なるのはcolor.rgb.red〜color.rgb.blueで輝度を指定している部分です。スクリプトの下の部分で

r = 0;
g = 0;
b = 0;

の数値(輝度)を変更することで任意の色にすることができます。また、スクリプト実行時に輝度を入力するようにすることもできます。その場合は以下のようにします。

r = parseFloat(prompt("赤の輝度は?",0));
g = parseFloat(prompt("緑の輝度は?",0));
b = parseFloat(prompt("青の輝度は?",0));



[サンプルをダウンロード]