我正在使用 C# GDI+ 创建自定义控件。
快速解释...该控件将在屏幕上显示 500 像素,但可能包含 500000 像素的信息。因此,虽然我一次只显示 500px,但我显然需要在水平面(左和右)上滚动。棘手的部分是每个 500px 的位图 block 都需要一段时间(100 毫秒 - 1000 毫秒)来渲染。
所以我的计划是在内存中维护一个 1500px 的位图。即 500px 可见部分和可见区域两侧 500px,并在用户滚动时异步绘制离屏部分。
我想要一些反馈、建议、批评或代码示例来帮助我实现这一目标。这看起来相当简单,但经过几次初步测试尝试后,事实证明它比人们想象的要困难。
谢谢。
最佳答案
此方法的有效性取决于用户的移动量等因素。如果用户做了小 Action ,然后停下来考虑新信息,这可能会起作用。但是,如果用户来回移动,您仍然会遇到问题。
您的应用程序是否有助于逐渐提高图像质量 - 即提供快速可用的图像,然后在用户停止考虑时对其进行改进?
关于c# - GDI+ 离屏缓冲滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/727329/