Class FXidResource

FXidResource class

El recurso Efectos de filtro contiene canales, una máscara de usuario y una máscara de hoja para el filtro inteligente.

public sealed class FXidResource : LayerResource

Constructores

NombreDescripción
FXidResource(int, int, FilterEffectMaskData[])Inicializa una nueva instancia delFXidResource clase.

Propiedades

NombreDescripción
FilterEffectMasks { get; }Obtiene las máscaras del efecto de filtro.
override Key { get; }Obtiene la clave de recurso de la capa.
override Length { get; }Obtiene la longitud del recurso de la capa en bytes.
override PsdVersion { get; }Obtiene la versión psd mínima necesaria para el recurso de capa. 0 indica que no hay restricciones.
override Signature { get; }Obtiene la firma del recurso de la capa.
Version { get; }Obtiene la versión.

Métodos

NombreDescripción
override Save(StreamContainer, int)Guarda el recurso en el contenedor de flujo especificado.
override ToString()Devuelve unString que representa esta instancia.

Campos

NombreDescripción
const FEidTypeToolKeyLa clave de información de la herramienta tipo FEid.
const FXidTypeToolKeyLa clave de información de la herramienta de tipo FXid.

Ejemplos

Este ejemplo demuestra cómo obtener y establecer propiedades del recurso FXidResource.

[C#]

string inputFilePath = "psdnet414_3.psd";
string output = "out_psdnet414_3.psd";

int resLength = 1144;
int maskLength = 369;

void AssertAreEqual(object expected, object actual, string message = null)
{
    if (!object.Equals(expected, actual))
    {
        throw new FormatException(message ?? "Objects are not equal.");
    }
}

using (var psdImage = (PsdImage)Image.Load(inputFilePath))
{
    FXidResource fXidResource = (FXidResource)psdImage.GlobalLayerResources[3];

    AssertAreEqual(resLength, fXidResource.Length);
    foreach (var maskData in fXidResource.FilterEffectMasks)
    {
        AssertAreEqual(maskLength, maskData.Length);
    }

    psdImage.Save(output);
}

// comprobar después de guardar
using (var psdImage = (PsdImage)Image.Load(output))
{
    FXidResource fXidResource = (FXidResource)psdImage.GlobalLayerResources[3];

    AssertAreEqual(resLength, fXidResource.Length);
    foreach (var maskData in fXidResource.FilterEffectMasks)
    {
        AssertAreEqual(maskLength, maskData.Length);
    }
}

Ver también