Photoshop CS/CS2でテキストレイヤーのみレイヤーパレットに表示されているレイヤーに色を付けるものです。以下のスクリプトはドキュメントのレイヤーパレットに表示されているレイヤーの色を赤色にするものです。
			setLayerColor(colorName);
			function setLayerColor(colorNameString)
			{
			 var id21 = charIDToTypeID( "setd" );
			 var desc4 = new ActionDescriptor();
			 var id22 = charIDToTypeID( "null" );
			 var ref2 = new ActionReference();
			 var id23 = charIDToTypeID( "Lyr " );
			 var id24 = charIDToTypeID( "Ordn" );
			 var id25 = charIDToTypeID( "Trgt" );
			 ref2.putEnumerated( id23, id24, id25 );
			 desc4.putReference( id22, ref2 );
			 var id26 = charIDToTypeID( "T   " );
			 var desc5 = new ActionDescriptor();
			 var id27 = charIDToTypeID( "Clr " );
			 var id28 = charIDToTypeID( "Clr " );
			 var id29 = charIDToTypeID( colorNameString ); // レイヤーカラー
			 desc5.putEnumerated( id27, id28, id29 );
			 var id30 = charIDToTypeID( "Lyr " );
			 desc4.putObject( id26, id30, desc5 );
			 executeAction( id21, desc4, DialogModes.NO );
			}
指定するレイヤーの色を変更するには最初の行の"Rd  "を変更します。この文字列が色の名前になっており、以下のものが指定できます。
| "Rd  " | 赤色 | 
| "Orng" | 橙色 | 
| "Ylw " | 黄色 | 
| "Grn " | 緑色 | 
| "Bl  " | 青色 | 
| "Vlt " | 紫色 | 
| "Gry " | 灰色 | 
| "None" | 白色(色なし) | 
テキストレイヤーのみ色を付ける場合には以下のスクリプトになります。
			colorName = "Rd  ";
			layObj = activeDocument.layers;
			for (i=0; i<layObj.length; i++) {
			 if(layObj[i].kind == LayerKind.TEXT)
			 {
			  activeDocument.activeLayer = layObj[i];
			  setLayerColor(colorName);
			 }
			}
			function setLayerColor(colorNameString)
			{
			 var id21 = charIDToTypeID( "setd" );
			 var desc4 = new ActionDescriptor();
			 var id22 = charIDToTypeID( "null" );
			 var ref2 = new ActionReference();
			 var id23 = charIDToTypeID( "Lyr " );
			 var id24 = charIDToTypeID( "Ordn" );
			 var id25 = charIDToTypeID( "Trgt" );
			 ref2.putEnumerated( id23, id24, id25 );
			 desc4.putReference( id22, ref2 );
			 var id26 = charIDToTypeID( "T   " );
			 var desc5 = new ActionDescriptor();
			 var id27 = charIDToTypeID( "Clr " );
			 var id28 = charIDToTypeID( "Clr " );
			 var id29 = charIDToTypeID( colorNameString ); // レイヤーカラー
			 desc5.putEnumerated( id27, id28, id29 );
			 var id30 = charIDToTypeID( "Lyr " );
			 desc4.putObject( id26, id30, desc5 );
			 executeAction( id21, desc4, DialogModes.NO );
			}
テキストレイヤーではなく他の種類のものにしたい場合には
if(layObj[i].kind == LayerKind.TEXT)
のLayerKind.TEXTを変更します。これは以下のものが指定できます。
LayerKind.BRIGHTNESSCONTRAST
LayerKind.CHANNELMIXER
LayerKind.COLORBALANCE
LayerKind.CURVES
LayerKind.GRADIENTFILL
LayerKind.GRADIENTMAP
LayerKind.HUESATURATION
LayerKind.INVERSION
LayerKind.LEVELS
LayerKind.NORMAL
LayerKind.PATTERNFILL
LayerKind.POSTERIZE
LayerKind.SELECTIVECOLOR
LayerKind.SMARTOBJECT
LayerKind.SOLIDFILL
LayerKind.TEXT
LayerKind.THRESHOLD
			
			[
サンプルをダウンロード]