debugging 如何在Visual Studio调试器中查看位图对象?

nwo49xxi  于 2022-11-24  发布在  其他
关注(0)|答案(7)|浏览(228)

我正在构建一个C#应用程序,它会创建许多位图(System.Drawing.Image)。在调试器中将这些位图显示为图片会有很大的帮助。调试器本身支持XML文件。有办法看到这些图片吗?

pbgvytdp

pbgvytdp1#

默认情况下,没有针对位图的调试器可视化工具,因此您可能希望尝试使用以下可视化工具:http://imagedebugvisualizer.codeplex.com/

3duebb1j

3duebb1j2#

在Visual Studio 2019中工作的另一个开源图像和位图可视化工具:
https://github.com/Jaex/ImageVisualizer
截图:

5ssjco0h

5ssjco0h3#

我这样做之前,我读雷切尔的评论上面,这将是容易得多....
您可以在即时窗口中对它进行Base64编码:

System.IO.MemoryStream stream = new System.IO.MemoryStream();
yourImage.Save(stream, System.Drawing.Imaging.ImageFormat.Bmp);
byte[] bytes = stream.ToArray();
base64string = System.Convert.ToBase64String(bytes);

然后将base64string的值复制并粘贴到您最喜欢的base64调试器中,例如:
https://codebeautify.org/base64-to-image-converter

vojdkbi0

vojdkbi06#

另一个不错的选择是Bitmap & BitmapSource Visualizer for Visual Studio 2013。它也有作为源代码的好处(由于我的机器中存在3. 5的问题,我用它重新编译成4. 5框架)。
默认情况下,它会添加WidthHeight有关图像的信息(与Bytescout插件相反,它会添加更多信息),但您可以通过代码添加任何信息-只需使用简单的String.Format

2admgd59

2admgd597#

答案是好的,但另一种选择是编写您自己的调试器可视化工具,VS支持了很长时间。有一篇很好的旧CodeProject文章介绍了如何编写调试器可视化工具:
https://www.codeproject.com/Articles/24211/Graphics-Debugger-Visualizer
使用这个方法我以前也写过其他可视化工具,比如DataTable可视化工具。不仅仅是位图可视化工具,这取决于你的自定义需求,你可以写任何可视化工具。
这个过程非常简单:编写可视化工具,将其编译为DLL并将其放入 VS\Common7\Packages\Debugger\Visualizers 文件夹中。

相关问题