And*_*ita 6 .net clipboard png jpeg paint
我在将剪贴板图像保存为 png 时遇到了一个奇怪的问题。使用 prtscr 或截图工具截取屏幕截图时,它与 Clipboard.GetImage() 和 PngBitmapEncoder 一起工作正常。但是当从 Paint 复制图像并执行相同操作时,我得到了一个空图像。至少在尝试查看时它看起来是空的,尽管它似乎包含有效的 PNG-image-data。使用 Jpeg 编码器时,它工作正常。PNG 和 Paint 有什么问题?和透明度有关系吗?
更新 澄清:我从剪贴板成功提取图像。如果图像最初是从 Paint 复制的,我就无法使用 PNGEncoder 将其保存到光盘。我可以使用 JpegEncoder 保存绘画剪贴板图像……但我想使用 PNG。
BitmapSource source = Clipboard.GetImage();
PngBitmapEncoder enc = new PngBitmapEncoder();
enc.Frames.Add(BitmapFrame.Create(source));
enc.Save(stream);
Run Code Online (Sandbox Code Playgroud)
上面的代码生成一个包含不可见内容的图像文件,根据查看器(从画图复制时,ctrl-c 时)变成全黑或全白。这让我认为它与透明度有关......
| 归档时间: |
|
| 查看次数: |
1353 次 |
| 最近记录: |