Class LclrResource
LclrResource class
Class LclrResource. このリソースには、レイヤー リストのレイヤーの色に関する情報が含まれています。 only です
public class LclrResource : LayerResource
コンストラクター
名前 | 説明 |
---|
LclrResource() | の新しいインスタンスを初期化しますLclrResource class. |
LclrResource(byte[]) | の新しいインスタンスを初期化しますLclrResource class. |
LclrResource(SheetColorHighlightEnum) | の新しいインスタンスを初期化しますLclrResource class. |
プロパティ
名前 | 説明 |
---|
Color { get; set; } | レイヤーの色を取得または設定します。 |
override Key { get; } | レイヤ リソース キーを取得します。 |
override Length { get; } | 層リソースの長さをバイト単位で取得します。 |
override PsdVersion { get; } | psd バージョンを取得します。 |
override Signature { get; } | 署名を取得します。 |
メソッド
名前 | 説明 |
---|
override Save(StreamContainer, int) | 指定したストリーム コンテナーにリソースを保存します。 |
override ToString() | を返しますStringこのインスタンスを表す. |
田畑
例
次の例は、Aspose.PSD (シート カラー設定) でシート カラー ハイライトを変更する方法を示しています。
[C#]
string sourceFilePath = "AllLclrResourceColors.psd";
string outputFilePath = "AllLclrResourceColorsReversed.psd";
// ファイルでは、レイヤーのハイライトの色はこの順序になっています
SheetColorHighlightEnum[] sheetColorsArr = new SheetColorHighlightEnum[] {
SheetColorHighlightEnum.Red,
SheetColorHighlightEnum.Orange,
SheetColorHighlightEnum.Yellow,
SheetColorHighlightEnum.Green,
SheetColorHighlightEnum.Blue,
SheetColorHighlightEnum.Violet,
SheetColorHighlightEnum.Gray,
SheetColorHighlightEnum.NoColor
};
// Layer Sheet Color は、レイヤを視覚的に強調するために使用されます。
// たとえば、PSD のいくつかのレイヤーを更新してから、注目を集めたいレイヤーを色で強調表示できます。
using (PsdImage img = (PsdImage)Image.Load(sourceFilePath))
{
CheckSheetColorsAndRerverse(sheetColorsArr, img);
img.Save(outputFilePath, new PsdOptions());
}
using (PsdImage img = (PsdImage)Image.Load(outputFilePath))
{
// 色を反転する必要があります
Array.Reverse(sheetColorsArr);
CheckSheetColorsAndRerverse(sheetColorsArr, img);
}
void CheckSheetColorsAndRerverse(SheetColorHighlightEnum[] sheetColors, PsdImage img)
{
int layersCount = img.Layers.Length;
for (int layerIndex = 0; layerIndex < layersCount; layerIndex++)
{
Layer layer = img.Layers[layerIndex];
LayerResource[] resources = layer.Resources;
foreach (LayerResource layerResource in resources)
{
// lcrl リソースは常に psd ファイル リソース リストに表示されます。
LclrResource resource = layerResource as LclrResource;
if (resource != null)
{
if (resource.Color != sheetColors[layerIndex])
{
throw new Exception("Sheet Color has been read wrong");
}
// スタイルシートの色を反転。レイヤーカラーハイライトの設定。
resource.Color = sheetColors[layersCount - layerIndex - 1];
break;
}
}
}
}
関連項目