LinkedLayersManager.LinkLayers
LinkedLayersManager.LinkLayers method
Verknüpft die Eingabeschichten und gibt LingGroupId zurück.
public short LinkLayers(Layer[] layers)
Parameter | Typ | Beschreibung |
---|---|---|
layers | Layer[] | Die Schichten. |
Rückgabewert
Die Linkgruppen-ID.
Ausnahmen
Ausnahme | Bedingung |
---|---|
ArgumentNullException | Die Schichten ist null. |
ArgumentException | Die Anzahl der Ebenen muss größer als 1 sein. |
ArgumentException | Der Container jeder Ebene sollte mit dem aktuellen PsdImage identisch sein. |
Beispiele
Das folgende Beispiel zeigt, wie Sie verknüpfte Ebenen in Aspose.PSD manipulieren können
[C#]
string sourceFile = "example.psd";
string outputFile = "psdnet11_output.psd";
// Ein vorhandenes Bild in eine Instanz der PsdImage-Klasse laden
using (var psd = (PsdImage)Image.Load(sourceFile))
{
Layer[] layers = psd.Layers;
// Alle Ebenen in einer verknüpften Gruppe verknüpfen
short layersLinkGroupId = psd.LinkedLayersManager.LinkLayers(layers);
// Ruft die ID für eine Ebene ab
short linkGroupId = psd.LinkedLayersManager.GetLinkGroupId(layers[0]);
if (layersLinkGroupId != linkGroupId)
{
throw new Exception("layersLinkGroupId and linkGroupId are not equal.");
}
// Ruft alle verknüpften Layer nach Linkgruppen-ID ab.
Layer[] linkedLayers = psd.LinkedLayersManager.GetLayersByLinkGroupId(linkGroupId);
// Jede Ebene von der Gruppe trennen
foreach (var linkedLayer in linkedLayers)
{
psd.LinkedLayersManager.UnlinkLayer(linkedLayer);
}
// ruft NULL für eine Link-Gruppen-ID ab, die keine Layer in der Gruppe hat.
linkedLayers = psd.LinkedLayersManager.GetLayersByLinkGroupId(linkGroupId);
if (linkedLayers != null)
{
throw new Exception("The linkedLayers field is not NULL.");
}
psd.Save(outputFile);
}
Siehe auch
- class Layer
- class LinkedLayersManager
- namensraum Aspose.PSD.FileFormats.Psd.Layers
- Montage Aspose.PSD