Class WorkingPathResource

WorkingPathResource class

Risorsa percorso di lavoro.

public sealed class WorkingPathResource : ResourceBlock, IVectorPathData

Costruttori

NomeDescrizione
WorkingPathResource(byte[])Inizializza una nuova istanza diWorkingPathResource classe.

Proprietà

NomeDescrizione
override DataSize { get; }Ottiene la dimensione dei dati della risorsa in byte.
ID { get; set; }Ottiene o imposta l’identificatore univoco per la risorsa.
IsDisabled { get; set; }Ottiene o imposta un valore che indica se questa istanza è disabilitata.
IsInverted { get; set; }Ottiene o imposta un valore che indica se questa istanza è invertita.
IsNotLinked { get; set; }Ottiene o imposta un valore che indica se questa istanza non è collegata.
override MinimalVersion { get; }Ottiene la versione PSD minima richiesta.
Name { get; set; }Ottiene o imposta il nome della risorsa. Stringa in Pascal, riempita per uniformare la dimensione (un nome nullo consiste di due byte di 0).
Paths { get; set; }Ottiene o imposta i record del percorso.
Signature { get; }Ottiene la firma della risorsa. Dovrebbe essere sempre ‘8BIM’.
Size { get; }Ottiene la dimensione del blocco di risorse in byte, inclusi i relativi dati.
Version { get; set; }Ottiene o imposta la versione.

Metodi

NomeDescrizione
Save(StreamContainer)Salva il blocco di risorse nel flusso specificato.
virtual ValidateValues()Convalida i valori delle risorse.

Esempi

Questo esempio dimostra il supporto della risorsa ‘WorkingPathResource’ in PsdImage.ImageResources per il corretto funzionamento dell’operazione Crop.

[C#]

// Ritaglia l'immagine e salva.
using (var psdImage = (PsdImage)Image.Load(sourceFile))
{
    // Cerca la risorsa WorkingPathResource.
    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.");
    }

    // Ritaglia e salva.
    psdImage.Crop(0, 500, 0, 200);
    psdImage.Save(outputFile);
}

// Carica l'immagine salvata e controlla le modifiche.
using (var psdImage = (PsdImage)Image.Load(outputFile))
{
    // Cerca la risorsa WorkingPathResource.
    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.");
    }
}

Guarda anche