Работа с слоями

Поддержка связанных слоев

Связывание слоев похоже на группировку слоев. Если вы связываете два или более слоев, то это позволит вам вносить определенные изменения во все связанные слои. Например, если вы применяете преобразования к одному слою, то они будут применены ко всем другим связанным слоям. В этой статье демонстрируется, как получить и разорвать связанные слои с помощью Aspose.PSD для Java.

String dataDir = Utils.getDataDir(SupportOfLinkedLayer.class) + "ModifyingAndConvertingImages/";
PsdImage psd = (PsdImage) Image.load(dataDir + "LinkedLayerexample.psd");
try {
Layer[] layers = psd.getLayers();
short layersLinkGroupId = psd.getLinkedLayersManager().linkLayers(layers);
short linkGroupId = psd.getLinkedLayersManager().getLinkGroupId(layers[0]);
if (layersLinkGroupId != linkGroupId) {
throw new Exception("layersLinkGroupId and linkGroupId are not equal.");
}
Layer[] linkedLayers = psd.getLinkedLayersManager().getLayersByLinkGroupId(linkGroupId);
for (Layer linkedLayer : linkedLayers) {
psd.getLinkedLayersManager().unlinkLayer(linkedLayer);
}
linkedLayers = psd.getLinkedLayersManager().getLayersByLinkGroupId(linkGroupId);
if (linkedLayers != null) {
throw new Exception("The linkedLayers field is not NULL.");
}
psd.save(dataDir + "LinkedLayerexample_output.psd");
} finally {
psd.dispose();
}