Class FXidResource

FXidResource class

La ressource Filter Effects contient des canaux, un masque utilisateur et un masque de feuille pour le filtre intelligent.

public sealed class FXidResource : LayerResource

Constructeurs

NomLa description
FXidResource(int, int, FilterEffectMaskData[])Initialise une nouvelle instance duFXidResource classe.

Propriétés

NomLa description
FilterEffectMasks { get; }Obtient les masques d’effet de filtre.
override Key { get; }Obtient la clé de ressource de couche.
override Length { get; }Obtient la longueur de la ressource de couche en octets.
override PsdVersion { get; }Obtient la version minimale de psd requise pour la ressource de couche. 0 indique aucune restriction.
override Signature { get; }Obtient la signature de ressource de couche.
Version { get; }Obtient la version.

Méthodes

NomLa description
override Save(StreamContainer, int)Enregistre la ressource dans le conteneur de flux spécifié.
override ToString()Renvoie unString qui représente cette instance.

Des champs

NomLa description
const FEidTypeToolKeyLa clé d’informations sur l’outil de type FEid.
const FXidTypeToolKeyLa clé d’informations sur l’outil de type FXid.

Exemples

Cet exemple montre comment obtenir et définir les propriétés de la ressource 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);
}

// vérification après sauvegarde
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);
    }
}

Voir également