【发布时间】:2012-01-07 21:16:06
【问题描述】:
如何使用 Paint.NET 的 PSD 插件将 PSD 图层保存在 png 中?
尝试这样做:
System.Drawing.Image img;
var stream = new System.IO.MemoryStream();
var BRW = new PhotoshopFile.BinaryReverseWriter(stream);
var psd = new PhotoshopFile.PsdFile();
psd.Load("c:\\1.psd");
psd.Layers[0].Save(BRW);
stream.Seek(0, System.IO.SeekOrigin.Begin);
img = System.Drawing.Image.FromStream(stream, true, true);
img.Save("c:\\1.png", System.Drawing.Imaging.ImageFormat.Png);
但是这条线 img = Image.FromStream(stream, true, true); 抛出“参数无效”异常。
任何其他通过 C#/C++ 的解决方案也是可以接受的。提前致谢。
【问题讨论】:
-
可能重复:stackoverflow.com/q/629955/635634。该问题最相关的答案基本上是说您的流已损坏。我怀疑
System.Drawing.Image理解 psd 格式。 -
不是重复的。我正在寻找问题的解决方案,而不是错误解决方案中的错误原因。
标签: c# .net photoshop psd paint.net