Class PtFlResource

PtFlResource class

فئة PtFlResource. يحتوي على بيانات طبقة تعبئة النمط .

public class PtFlResource : FillLayerResource

المنشئون

اسموصف
PtFlResource(string, string)يقوم بتهيئة مثيل جديد لملفPtFlResource فئة .

الخصائص

اسموصف
AlignWithLayer { get; set; }الحصول على أو تحديد قيمة تشير إلى [المحاذاة مع الطبقة].
IsLinkedWithLayer { get; set; }الحصول على أو تعيين قيمة تشير إلى ما إذا كان هذا المثيل مرتبطًا بطبقة.
override Key { get; }يحصل على مفتاح مورد الطبقة.
override Length { get; }الحصول على طول مورد الطبقة بالبايت.
Offset { get; set; }الحصول على الإزاحة أو تعيينها .
PatternId { get; set; }الحصول على أو تحديد معرف النمط.
PatternName { get; set; }الحصول على أو تحديد اسم النمط.
override PsdVersion { get; }يحصل على الحد الأدنى من إصدار psd المطلوب لمورد الطبقة. 0 يشير إلى عدم وجود قيود.
Scale { get; set; }الحصول على المقياس أو تعيينه.
override Signature { get; }يحصل على توقيع مورد الطبقة.

طُرق

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

مجالات

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

أمثلة

يوضح المثال التالي دعم تحميل وتحرير مورد PtFlResource.

[C#]

string sourceFileName = "PatternFillLayer.psd";
string exportPath = "PtFlResource_Edited.psd";
double tolerance = 0.0001;
var im = (PsdImage)Image.Load(sourceFileName);
using (im)
{
    foreach (var layer in im.Layers)
    {
        if (layer is FillLayer)
        {
            var fillLayer = (FillLayer)layer;
            var resources = fillLayer.Resources;
            foreach (var res in resources)
            {
                if (res is PtFlResource)
                {
                    // قراءة
                    PtFlResource resource = (PtFlResource)res;
                    if (
                        resource.Offset.X != -46 ||
                        resource.Offset.Y != -45 ||
                        resource.PatternId != "a6818df2-7532-494e-9615-8fdd6b7f38e5\0" ||
                        resource.PatternName != "$$$/Presets/Patterns/OpticalSquares=Optical Squares\0" ||
                        resource.AlignWithLayer != true ||
                        resource.IsLinkedWithLayer != true ||
                        !(Math.Abs(resource.Scale - 50) < tolerance))
                    {
                        throw new Exception("PtFl Resource was read incorrect");
                    }

                    // التحرير
                    resource.Offset = new Point(-11, 13);
                    resource.Scale = 200;
                    resource.AlignWithLayer = false;
                    resource.IsLinkedWithLayer = false;
                    fillLayer.Resources = fillLayer.Resources;
                    // ليس لدينا بيانات الأنماط في PattResource ، لذا يمكننا إضافتها.
                    var fillSettings = (PatternFillSettings)fillLayer.FillSettings;
                    fillSettings.PatternData = new int[]
                    {
                        Color.Black.ToArgb(),
                        Color.White.ToArgb(),
                        Color.White.ToArgb(),
                        Color.White.ToArgb(),
                    };
                    fillSettings.PatternHeight = 1;
                    fillSettings.PatternWidth = 4;
                    fillSettings.PatternName = "$$$/Presets/Patterns/VerticalLine=Vertical Line New\0";
                    fillSettings.PatternId = Guid.NewGuid().ToString() + "\0";
                    fillLayer.Update();
                }
                break;
            }
            break;
        }
    }

    im.Save(exportPath);
}

أنظر أيضا