Class LclrResource
LclrResource class
Class LclrResource. Bu kaynak, katmanlar listesindeki katmanın rengi hakkında bilgi içerir: PS. Sadece
public class LclrResource : LayerResource
yapıcılar
İsim | Tanım |
---|
LclrResource() | Yeni bir örneğini başlatır.LclrResource sınıf. |
LclrResource(byte[]) | Yeni bir örneğini başlatır.LclrResource sınıf. |
LclrResource(SheetColorHighlightEnum) | Yeni bir örneğini başlatır.LclrResource sınıf. |
Özellikleri
İsim | Tanım |
---|
Color { get; set; } | Katmanın rengini alır veya ayarlar. |
override Key { get; } | Katman kaynak anahtarını alır. |
override Length { get; } | Katman kaynak uzunluğunu bayt cinsinden alır. |
override PsdVersion { get; } | psd sürümünü alır. |
override Signature { get; } | İmzayı alır. |
yöntemler
İsim | Tanım |
---|
override Save(StreamContainer, int) | Kaynağı belirtilen akış kapsayıcısına kaydeder. |
override ToString() | a döndürürString bu örneği temsil eder. |
Alanlar
Örnekler
Aşağıdaki örnek, Aspose.PSD’de (Sayfa rengi ayarı) Sheet Color Highlight’ı nasıl değiştirebileceğinizi gösterir.
[C#]
string sourceFilePath = "AllLclrResourceColors.psd";
string outputFilePath = "AllLclrResourceColorsReversed.psd";
// Dosyada katmanların vurgulama renkleri bu sıradadır.
SheetColorHighlightEnum[] sheetColorsArr = new SheetColorHighlightEnum[] {
SheetColorHighlightEnum.Red,
SheetColorHighlightEnum.Orange,
SheetColorHighlightEnum.Yellow,
SheetColorHighlightEnum.Green,
SheetColorHighlightEnum.Blue,
SheetColorHighlightEnum.Violet,
SheetColorHighlightEnum.Gray,
SheetColorHighlightEnum.NoColor
};
// Katman Sayfası Rengi, katmanları görsel olarak vurgulamak için kullanılır.
// Örneğin, PSD'de bazı katmanları güncelleyebilir ve ardından dikkat çekmek istediğiniz katmanı renklendirerek vurgulayabilirsiniz.
using (PsdImage img = (PsdImage)Image.Load(sourceFilePath))
{
CheckSheetColorsAndRerverse(sheetColorsArr, img);
img.Save(outputFilePath, new PsdOptions());
}
using (PsdImage img = (PsdImage)Image.Load(outputFilePath))
{
// Renkler ters çevrilmeli
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 kaynağı her zaman psd dosyası kaynak listesinde bulunur.
LclrResource resource = layerResource as LclrResource;
if (resource != null)
{
if (resource.Color != sheetColors[layerIndex])
{
throw new Exception("Sheet Color has been read wrong");
}
// Stil sayfası renklerinin tersi. Katman rengi vurgulamasının ayarlanması.
resource.Color = sheetColors[layersCount - layerIndex - 1];
break;
}
}
}
}
Ayrıca bakınız