Class LclrResource

LclrResource class

Klass LclrResource. Denna resurs innehåller information om färgen på lagret i lagerlistan är PS. Det är bara

public class LclrResource : LayerResource

Konstruktörer

namnBeskrivning
LclrResource()Initierar en ny instans avLclrResource class.
LclrResource(byte[])Initierar en ny instans avLclrResource class.
LclrResource(SheetColorHighlightEnum)Initierar en ny instans avLclrResource class.

Egenskaper

namnBeskrivning
Color { get; set; }Hämtar eller ställer in färgen på lagret.
override Key { get; }Hämtar lagerresursnyckeln.
override Length { get; }Hämtar lagerresurslängden i byte.
override PsdVersion { get; }Hämtar psd-versionen.
override Signature { get; }Får signaturen.

Metoder

namnBeskrivning
override Save(StreamContainer, int)Sparar resursen till den angivna strömbehållaren.
override ToString()Returnerar enString som representerar denna instans.

Fält

namnBeskrivning
const TypeToolKeyTypverktygets infonyckel.

Exempel

Följande exempel visar hur du kan ändra arkfärgsmarkering i Aspose.PSD (arkfärgsinställning)

[C#]

string sourceFilePath = "AllLclrResourceColors.psd";
string outputFilePath = "AllLclrResourceColorsReversed.psd";

// I filen är färgerna på lagers markering i denna ordning
SheetColorHighlightEnum[] sheetColorsArr = new SheetColorHighlightEnum[] {
    SheetColorHighlightEnum.Red,
    SheetColorHighlightEnum.Orange,
    SheetColorHighlightEnum.Yellow,
    SheetColorHighlightEnum.Green,
    SheetColorHighlightEnum.Blue,
    SheetColorHighlightEnum.Violet,
    SheetColorHighlightEnum.Gray,
    SheetColorHighlightEnum.NoColor
};

// Layer Sheet Color används för att visuellt markera lager. 
// Du kan till exempel uppdatera några lager i PSD och sedan markera efter färg det lager som du vill väcka uppmärksamhet.
using (PsdImage img = (PsdImage)Image.Load(sourceFilePath))
{
    CheckSheetColorsAndRerverse(sheetColorsArr, img);
    img.Save(outputFilePath, new PsdOptions());
}

using (PsdImage img = (PsdImage)Image.Load(outputFilePath))
{
    // Färgerna ska vara omvända
    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-resursen presenteras alltid i resurslistan för psd-filer.
            LclrResource resource = layerResource as LclrResource;
            if (resource != null)
            {
                if (resource.Color != sheetColors[layerIndex])
                {
                    throw new Exception("Sheet Color has been read wrong");
                }

                // Baksidan av stilmallsfärgerna. Konfigurera lagerfärgmarkering.
                resource.Color = sheetColors[layersCount - layerIndex - 1];
                break;
            }
        }
    }
}

Se även