Class LclrResource
LclrResource class
Klasse LclrResource. Deze bron bevat informatie over de kleur van de laag in de lagenlijst is PS. Het is slechts
public class LclrResource : LayerResource
Constructeurs
Naam | Beschrijving |
---|
LclrResource() | Initialiseert een nieuw exemplaar van hetLclrResource klasse. |
LclrResource(byte[]) | Initialiseert een nieuw exemplaar van hetLclrResource klasse. |
LclrResource(SheetColorHighlightEnum) | Initialiseert een nieuw exemplaar van hetLclrResource klasse. |
Eigenschappen
Naam | Beschrijving |
---|
Color { get; set; } | Haalt of stelt de kleur van de laag in. |
override Key { get; } | Haalt de laagbronsleutel op. |
override Length { get; } | Haalt de resourcelengte van de laag op in bytes. |
override PsdVersion { get; } | Krijgt de psd-versie. |
override Signature { get; } | Krijgt de handtekening. |
methoden
Naam | Beschrijving |
---|
override Save(StreamContainer, int) | Slaat de bron op in de opgegeven streamcontainer. |
override ToString() | Geeft als resultaat eenString die deze instantie vertegenwoordigt. |
Velden
Naam | Beschrijving |
---|
const TypeToolKey | De infotoets voor het typen van gereedschap. |
Voorbeelden
Het volgende voorbeeld laat zien hoe u Sheet Color Highlight In Aspose.PSD (Sheet colour setting) kunt wijzigen
[C#]
string sourceFilePath = "AllLclrResourceColors.psd";
string outputFilePath = "AllLclrResourceColorsReversed.psd";
// In het bestand zijn de kleuren van de markering van lagen in deze volgorde
SheetColorHighlightEnum[] sheetColorsArr = new SheetColorHighlightEnum[] {
SheetColorHighlightEnum.Red,
SheetColorHighlightEnum.Orange,
SheetColorHighlightEnum.Yellow,
SheetColorHighlightEnum.Green,
SheetColorHighlightEnum.Blue,
SheetColorHighlightEnum.Violet,
SheetColorHighlightEnum.Gray,
SheetColorHighlightEnum.NoColor
};
// Layer Sheet Color wordt gebruikt om lagen visueel te markeren.
// U kunt bijvoorbeeld enkele lagen in PSD bijwerken en vervolgens met kleur de laag markeren die u de aandacht wilt trekken.
using (PsdImage img = (PsdImage)Image.Load(sourceFilePath))
{
CheckSheetColorsAndRerverse(sheetColorsArr, img);
img.Save(outputFilePath, new PsdOptions());
}
using (PsdImage img = (PsdImage)Image.Load(outputFilePath))
{
// Kleuren moeten worden omgekeerd
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)
{
// De lcrl-resource wordt altijd weergegeven in de psd-bestandsresourcelijst.
LclrResource resource = layerResource as LclrResource;
if (resource != null)
{
if (resource.Color != sheetColors[layerIndex])
{
throw new Exception("Sheet Color has been read wrong");
}
// Omgekeerde stijlbladkleuren. Instelling van laagkleurmarkering.
resource.Color = sheetColors[layersCount - layerIndex - 1];
break;
}
}
}
}
Zie ook