可以对psd文件解析出来的图层进行删除并保存?
您能详细说明一下要求吗? 您删除的图层将不再保留。 您可以通过加载PSD并删除要保留并另存为新PSD文件的图层来达到此要求。 这样,您将拥有一个PSD,其中包含您实际上想要从源文件中删除的PSD。
实际的场景,就是删除图层并替换为新添加的图层,所以第一步先要支持在源PSD基本上直接删除图层。您上面的这种方案,是可以但API操作比较繁琐,以及耗性能,另存为PSD的方式,如果还想继续编辑,还得重新加载下新的PSD文件再进行操作。所以,希望有直接对图层进行增删操作的API支持。
如何动态地从PSD移除图层?是否有相应的示例代码?另外PsdImage对象,目前只看到有添加addLayer添加图层方法,未看到有相应的removeLayer方法。是否可提供相应的删除图层方法?
收到,非常感谢。可问下,大概何时会出修复补丁或新版本Jar包?
目前,API没有从PsdImage删除图层的方法。要从PsdImage中删除图层,客户可以使用以下代码示例:
string sourceFile = "psdImage.psd";
using (var image = (PsdImage)Image.Load(sourceFile))
{
var layersList = new List<Layer>(image.Layers); // gets all PsdImage layers as layer List
layersList.RemoveAt(0); // remove layer from list
image.Layers = layersList.ToArray(); // sets updated layer list back to PsdImage
}