C# 在接收到所有数据之前,如何开始显示交错PNG?

C# 在接收到所有数据之前,如何开始显示交错PNG?,c#,.net,winforms,gdi+,C#,.net,Winforms,Gdi+,我有一个缓慢的连接,我需要发送一个PNG图像(作为字节流),并立即显示图像。我有一个C#WinForms应用程序接受字节[],将其加载到内存流中,并从中创建System.Drawing.Image/Bitmap对象 我想做的是发送一个超低分辨率的图像,然后逐步更新它,以便在接收数据时变得更清晰。看起来PNG支持隔行扫描图像,这正是我想要的 是否有可能在接收到所有数据之前开始显示PNG,并在其他数据进入时逐渐使其更清晰?我如何才能做到这一点?您必须以符合标准的方式传递字节。谷歌可能会搜索到一个第三

我有一个缓慢的连接,我需要发送一个PNG图像(作为字节流),并立即显示图像。我有一个C#WinForms应用程序接受字节[],将其加载到内存流中,并从中创建System.Drawing.Image/Bitmap对象

我想做的是发送一个超低分辨率的图像,然后逐步更新它,以便在接收数据时变得更清晰。看起来PNG支持隔行扫描图像,这正是我想要的


是否有可能在接收到所有数据之前开始显示PNG,并在其他数据进入时逐渐使其更清晰?我如何才能做到这一点?

您必须以符合标准的方式传递字节。谷歌可能会搜索到一个第三方库,它以这样一种方式提供字节,从而省去了它的繁重工作

下面是一个关于它会做什么的例子

编辑
. 当然,它的DLL将要求您的.NET程序与非托管代码和非MSIL程序集交互,我确信这是stackoverflow上其他地方发布的另一个故事,或者您可以为它创建另一个问题。LibPNG是一个开源项目,因此查看它的源代码可能会提供关于Adam7算法的见解,该算法可以在C#/.NET中重新编码。

谢谢,我希望有一个更自动化的解决方案,我想没有一个:(我也是。似乎很奇怪,没有一个实现可以轻松地进行Google收集。也许你会是第一个。