Class LclrResource

LclrResource class

Class LclrResource. يحتوي هذا المورد على معلومات حول لون الطبقة في قائمة الطبقات PS. انها only

public class LclrResource : LayerResource

المنشئون

اسموصف
LclrResource()يقوم بتهيئة مثيل جديد لملفLclrResource فئة .
LclrResource(byte[])يقوم بتهيئة مثيل جديد لملفLclrResource فئة .
LclrResource(SheetColorHighlightEnum)يقوم بتهيئة مثيل جديد لملفLclrResource فئة .

الخصائص

اسموصف
Color { get; set; }الحصول على لون الطبقة أو تحديده .
override Key { get; }يحصل على مفتاح مورد الطبقة.
override Length { get; }الحصول على طول مورد الطبقة بالبايت.
override PsdVersion { get; }يحصل على نسخة مديرية الأمن العام .
override Signature { get; }يحصل على التوقيع.

طُرق

اسموصف
override Save(StreamContainer, int)يحفظ المورد في حاوية التدفق المحددة.
override ToString()إرجاع أString الذي يمثل هذا المثال.

مجالات

اسموصف
const TypeToolKeyمفتاح معلومات أداة النوع.

أمثلة

يوضح المثال التالي كيف يمكنك تغيير تمييز لون الورقة في 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
};

// لون ورقة الطبقة يُستخدم لتمييز الطبقات بصريًا. 
// على سبيل المثال ، يمكنك تحديث بعض الطبقات في 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;
            }
        }
    }
}

أنظر أيضا