Class WorkingPathResource

WorkingPathResource class

Ruta de trabajo recurso.

public sealed class WorkingPathResource : ResourceBlock, IVectorPathData

Constructores

NombreDescripción
WorkingPathResource(byte[])Inicializa una nueva instancia delWorkingPathResource clase.

Propiedades

NombreDescripción
override DataSize { get; }Obtiene el tamaño de los datos del recurso en bytes.
ID { get; set; }Obtiene o establece el identificador único del recurso.
IsDisabled { get; set; }Obtiene o establece un valor que indica si esta instancia está deshabilitada.
IsInverted { get; set; }Obtiene o establece un valor que indica si esta instancia está invertida.
IsNotLinked { get; set; }Obtiene o establece un valor que indica si esta instancia no está vinculada.
override MinimalVersion { get; }Obtiene la versión PSD mínima requerida.
Name { get; set; }Obtiene o establece el nombre del recurso. Cadena Pascal, rellenada para que el tamaño sea uniforme (un nombre nulo consta de dos bytes de 0).
Paths { get; set; }Obtiene o establece los registros de ruta.
Signature { get; }Obtiene la firma del recurso. Debe ser siempre ‘8BIM’.
Size { get; }Obtiene el tamaño del bloque de recursos en bytes, incluidos sus datos.
Version { get; set; }Obtiene o establece la versión.

Métodos

NombreDescripción
Save(StreamContainer)Guarda el bloque de recursos en el flujo especificado.
virtual ValidateValues()Valida los valores del recurso.

Ejemplos

Este ejemplo demuestra la compatibilidad del recurso ‘WorkingPathResource’ en PsdImage.ImageResources para el correcto funcionamiento de la operación Recortar.

[C#]

// Recorta la imagen y guarda.
using (var psdImage = (PsdImage)Image.Load(sourceFile))
{
    // Buscar el recurso 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.");
    }

    // Recortar y guardar.
    psdImage.Crop(0, 500, 0, 200);
    psdImage.Save(outputFile);
}

// Carga la imagen guardada y verifica los cambios.
using (var psdImage = (PsdImage)Image.Load(outputFile))
{
    // Buscar el recurso 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.");
    }
}

Ver también