Class WorkingPathResource

WorkingPathResource class

Arbeitspfadressource.

public sealed class WorkingPathResource : ResourceBlock, IVectorPathData

Konstrukteure

NameBeschreibung
WorkingPathResource(byte[])Initialisiert eine neue Instanz vonWorkingPathResource Klasse.

Eigenschaften

NameBeschreibung
override DataSize { get; }Ruft die Ressourcendatengröße in Byte ab.
ID { get; set; }Ruft die eindeutige Kennung für die Ressource ab oder legt sie fest.
IsDisabled { get; set; }Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob diese Instanz deaktiviert ist.
IsInverted { get; set; }Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob diese Instanz invertiert ist.
IsNotLinked { get; set; }Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob diese Instanz nicht verknüpft ist.
override MinimalVersion { get; }Ruft die minimal erforderliche PSD-Version ab.
Name { get; set; }Ruft den Ressourcennamen ab oder legt ihn fest. Pascal-String, aufgefüllt, um die Größe gleichmäßig zu machen (ein Nullname besteht aus zwei Bytes von 0).
Paths { get; set; }Ruft die Pfaddatensätze ab oder legt sie fest.
Signature { get; }Ruft die Ressourcensignatur ab. Sollte immer ‘8BIM’ sein.
Size { get; }Ruft die Ressourcenblockgröße in Byte ab, einschließlich seiner Daten.
Version { get; set; }Ruft die Version ab oder legt sie fest.

Methoden

NameBeschreibung
Save(StreamContainer)Speichert den Ressourcenblock im angegebenen Stream.
virtual ValidateValues()Validiert die Ressourcenwerte.

Beispiele

Dieses Beispiel demonstriert die Unterstützung der Ressource „WorkingPathResource“ in PsdImage.ImageResources für das korrekte Funktionieren des Crop-Vorgangs.

[C#]

// Bild zuschneiden und speichern.
using (var psdImage = (PsdImage)Image.Load(sourceFile))
{
    // WorkingPathResource-Ressource durchsuchen.
    ResourceBlock[] imageResources = psdImage.ImageResources;
    WorkingPathResource workingPathResource = null;
    foreach (var imageResource in imageResources)
    {
        if (imageResource is WorkingPathResource)
        {
            workingPathResource = (WorkingPathResource)imageResource;
            break;
        }
    }
    BezierKnotRecord record = workingPathResource.Paths[3] as BezierKnotRecord;

    if (record.Points[0].X != 2572506 || record.Points[0].Y != 8535408)
    {
        throw new Exception("Values is incorrect.");
    }

    // Zuschneiden und speichern.
    psdImage.Crop(0, 500, 0, 200);
    psdImage.Save(outputFile);
}

// Gespeichertes Bild laden und die Änderungen überprüfen.
using (var psdImage = (PsdImage)Image.Load(outputFile))
{
    // WorkingPathResource-Ressource durchsuchen.
    ResourceBlock[] imageResources = psdImage.ImageResources;
    WorkingPathResource workingPathResource = null;
    foreach (var imageResource in imageResources)
    {
        if (imageResource is WorkingPathResource)
        {
            workingPathResource = (WorkingPathResource)imageResource;
            break;
        }
    }
    BezierKnotRecord record = workingPathResource.Paths[3] as BezierKnotRecord;

    if (record.Points[0].X != 4630510 || record.Points[0].Y != 22761088)
    {
        throw new Exception("Values is incorrect.");
    }
}

Siehe auch