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
namn | Beskrivning |
---|
LclrResource() | Initierar en ny instans avLclrResource class. |
LclrResource(byte[]) | Initierar en ny instans avLclrResource class. |
LclrResource(SheetColorHighlightEnum) | Initierar en ny instans avLclrResource class. |
Egenskaper
namn | Beskrivning |
---|
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
namn | Beskrivning |
---|
override Save(StreamContainer, int) | Sparar resursen till den angivna strömbehållaren. |
override ToString() | Returnerar enString som representerar denna instans. |
Fält
namn | Beskrivning |
---|
const TypeToolKey | Typverktygets 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