我正在编写一个C#程序来显示音频信号,我接下来成功了,
但最近我发现位图的大小限制在C#(2 ^ 16像素)。因此,使用位图对象无法显示长音频文件。
我正在寻找替代解决方案(直接绘制到图片框)。有人可以帮帮我吗?
答案 0 :(得分:1)
您可以创建自己的控件,而不是使用PictureBox
。例如,从Control
派生并覆盖OnPaintXXX
事件。
然后,您可以将示例信息传递给控件并让它重新绘制。为了加快速度,您可能还会以大块的形式进行绘画。我的意思是:将要绘制的区域划分为多个矩形,将所有矩形(线程?)绘制成位图,并将位图绘制到相应的位置。
答案 1 :(得分:-1)
我不知道你从哪里获得这些信息。来自MSDN: http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.bitmapsource.aspx
图像的最大高度和宽度为2 ^ 16像素,每通道32位* 4通道。 BitmapSource的最大大小为2 ^ 32字节(64千兆字节),最大图像大小为4千兆像素。最小图像尺寸为1x1。
我怀疑你读过"最大宽度和高度" as"最大尺寸"它不是。它是沿一个方向的最大像素数。