17得票3回答
为什么不使用GDI从数组中重复填充窗口的RGB数据?

这是对此问题的跟进。我正在编写一个简单的游戏,想找到在Win32窗口中以最快的方式(反复)显示RGB数据数组的方法,而且不会出现闪烁或其他伪像。 针对上一个问题的答案中推荐了几种不同的方法,但没有达成哪种方法最快的共识。因此,我编写了一个测试程序。该代码只是尽可能快地反复显示屏幕上的帧缓冲区...

17得票7回答
如何找出直流电源的尺寸?

假设我有一个设备上下文的句柄(自然,在Windows环境中):HDC hdc; 我该如何获取它的宽度和高度?

17得票4回答
GDI和GDI+有什么区别?

这两个库之间有什么区别吗?

17得票5回答
C# WinForms - 有没有C# GDI库不会像SLOW GDI+那样慢?

GDI+非常缓慢,几乎完全是软件渲染,而GDI高度硬件加速。 GDI+是Graphics类在WinForms上使用的内容,它太慢了。 有人制作了一个.NET GDI库,这样我们就可以获得更快的速度吗? [编辑] 许多人推荐OpenGL / DirectX。我要求客户端兼容性,特别是远程桌面。...

16得票2回答
在GDI和WinForms中实现C#径向渐变刷效果

我创建了一个C# Windows应用程序并编写了75%的代码。该程序允许用户创建流程图,并根据其状态着色流程图形状。我希望它们变成3D按钮,例如来自Webdesign.org网站的。我想使用刷子或其他技术在C#中创建它们,而不是为每个按钮创建PNG文件。// Create solid brus...

16得票1回答
使用第二线程和TGIFImage导致GDI句柄泄漏

我有一个后台线程,用于加载图像(从磁盘或服务器),目标是最终将它们传递到主线程进行绘制。 当第二个线程使用VCL的TGIFImage类加载GIF图像时,程序有时会在该线程中执行以下行时泄漏多个句柄:m_poBitmap32->Assign(poGIFImage); 即,刚打开的GIF图像...

15得票3回答
如何使用GDI将正方形位图渲染成任意四边形?

我需要绘制一个正方形的图像,映射或变换成一个在编译时不知道的四边形。如何做到这一点? 更长的解释 具体问题是使用非矩形地图投影渲染地图瓦片。假设我有以下瓦片: 我知道这四个角点需要在这里: 鉴于此,我希望获得以下输出: 方形瓷砖可能会: 旋转; 和/或者 一端比另一端...

15得票4回答
如何在C#中有效地在桌面上绘图?

我想在 C# 中直接在桌面上绘图。经过一番搜索,我使用了来自桌面 HDC(null)的 Graphics 对象。然后,我使用此 Graphics 对象正常绘制。 问题是当屏幕的任何部分重新绘制时,我的图形会丢失。我尝试使用 While 循环,但实际上它以应用程序可以处理的速度进行绘制,而不是...

14得票5回答
SetPixel太慢了。有没有更快的方法来绘制位图?

我正在开发一个小型的绘图程序。使用SetPixel在位图上画线时,当笔刷大小变大(比如25像素),会出现明显的性能下降。我想知道是否有更快的方法来绘制位图。以下是该项目的一些背景: 我使用位图来利用图层,就像在Photoshop或The GIMP中一样。 线条是手动绘制的,因为它最终将使用...

14得票4回答
在Windows Vista、Windows 7中,如何截取屏幕并保留应用程序区域以外的透明区域?

我想要截取一个应用程序的屏幕截图,并且希望矩形框中不属于应用程序区域的部分是透明的。例如,在标准的Windows应用程序中,我想要将圆角设置为透明。 我编写了一个快速的测试应用程序,它可以在XP上运行(或在关闭aero的vista/windows 7上运行)。 protected ...