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; }Λαμβάνει το μήκος του πόρου του επιπέδου σε byte.
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);
}

Δείτε επίσης