public class CodecsPsdLayerInfo @interface LTCodecsPsdLayerInfo : NSObject public ref class CodecsPsdLayerInfo class CodecsPsdLayerInfo: For more information on PSD layers, refer to the FILE FORMATS SPECIFICATION from Adobe.
using Leadtools;using Leadtools.Codecs;using Leadtools.ImageProcessing;using Leadtools.ImageProcessing.Color;using Leadtools.Svg;public void PsdLayersExample(){RasterCodecs codecs = new RasterCodecs();string[] layerFileNames ={Path.Combine(LEAD_VARS.ImagesDir, "Sample1.cmp"),Path.Combine(LEAD_VARS.ImagesDir, "Sample2.cmp"),Path.Combine(LEAD_VARS.ImagesDir, "Sample3.cmp"),};string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp");string destFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.psd");// Load the layer images (as pages in 1 image)RasterImage layersImage = null;foreach (string layerFileName in layerFileNames){RasterImage layerImage = codecs.Load(layerFileName);if (layersImage == null)layersImage = layerImage;elselayersImage.AddPage(layerImage);}// Load the image that is made up of all the layersRasterImage image = codecs.Load(srcFileName, 24, CodecsLoadByteOrder.BgrOrGray, 1, 1);// Save this image and all the layerscodecs.SavePsdWithLayers(image, destFileName, 0, layersImage, null);image.Dispose();layersImage.Dispose();CodecsImageInfo imageInfo = codecs.GetInformation(destFileName, false);if (imageInfo.Psd.Layers > 0){int layer = 0;CodecsPsdLayerInfo layerInfo = new CodecsPsdLayerInfo();RasterImage layerImage = codecs.LoadPsdLayer(destFileName, 0, CodecsLoadByteOrder.BgrOrGray, layer, layerInfo);layerInfo.Clipping = 0;layerInfo.Left = 0;layerInfo.LoadMaskImage = true;layerInfo.MaskImage = null;layerInfo.Name = null;layerInfo.Opacity = 0;layerInfo.Top = 0;string blendModeKey = Encoding.ASCII.GetString(layerInfo.GetBlendModeKey());Debug.WriteLine("Loaded layer at index {0}, size is {1} by {2}, Blend mode key:{3}", layer, layerImage.Width, layerImage.Height, blendModeKey);Debug.WriteLine("TransparencyProtected is {0}, Visible is {1}, Obsolete is {2} and Psd5OrLater is {3}",layerInfo.TransparencyProtected, layerInfo.Visible, layerInfo.Obsolete, layerInfo.Psd5OrLater);char[] byteArray = "dark".ToCharArray(); //Define Blend Mode KeylayerInfo.SetBlendModeKey(Encoding.ASCII.GetBytes(byteArray));Debug.WriteLine("Loaded layer at index {0} with updated Blend mode key:{1}", layer, Encoding.ASCII.GetString(layerInfo.GetBlendModeKey()));layerImage.Dispose();}elseDebug.WriteLine("No layers found in this PSD file");// Clean upcodecs.Dispose();}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images";}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
