LinkedLayersManager.LinkLayers

LinkedLayersManager.LinkLayers method

Lie les couches d’entrée et renvoie LingGroupId.

public short LinkLayers(Layer[] layers)
ParamètreTaperLa description
layersLayer[]Les couches.

Return_Value

L’identifiant du groupe de liens.

Exceptions

exceptioncondition
ArgumentNullExceptionLes calques sont nuls.
ArgumentExceptionLe nombre de couches doit être supérieur à 1.
ArgumentExceptionLe conteneur de chaque calque doit être le même que le PsdImage actuel.

Exemples

L’exemple suivant montre comment vous pouvez manipuler des calques liés dans Aspose.PSD

[C#]

string sourceFile = "example.psd";
string outputFile = "psdnet11_output.psd";

// Charger une image existante dans une instance de la classe PsdImage
using (var psd = (PsdImage)Image.Load(sourceFile))
{
    Layer[] layers = psd.Layers;

    // lie toutes les couches dans un groupe lié
    short layersLinkGroupId = psd.LinkedLayersManager.LinkLayers(layers);

    // obtient l'identifiant d'une couche
    short linkGroupId = psd.LinkedLayersManager.GetLinkGroupId(layers[0]);
    if (layersLinkGroupId != linkGroupId)
    {
        throw new Exception("layersLinkGroupId and linkGroupId are not equal.");
    }

    // obtient toutes les couches liées par l'identifiant du groupe de liens.
    Layer[] linkedLayers = psd.LinkedLayersManager.GetLayersByLinkGroupId(linkGroupId);

    // dissocie chaque calque du groupe
    foreach (var linkedLayer in linkedLayers)
    {
        psd.LinkedLayersManager.UnlinkLayer(linkedLayer);
    }

    // récupère NULL pour un ID de groupe de liens qui n'a pas de couches dans le groupe.
    linkedLayers = psd.LinkedLayersManager.GetLayersByLinkGroupId(linkGroupId);
    if (linkedLayers != null)
    {
        throw new Exception("The linkedLayers field is not NULL.");
    }
    psd.Save(outputFile);
}

Voir également