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

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

14得票2回答
.NET 2.0和.NET 4.0的GDI+有什么区别?

我有一个非常奇怪的问题,我的应用程序对图片进行很多复杂的 GDI+ 操作,例如裁剪、放大等。在 .NET 2.0 中,我的应用程序运行良好,但是在 .NET 4.0 中,用户报告称它会崩溃并显示 gdi+ 的“内存不足”错误。我知道“内存不足”的 gdi+ 错误是许多错误的捕获点,但为什么在 ...

14得票3回答
如何在WPF中模拟悬挂电缆?

我有一个非常“基于连接”的应用程序,即多个输入/输出。 UI概念中的“电缆”正是我要向用户清晰表达的内容。Propellerhead在其Reason音频组件软件中采取了类似的方法,可以在此YouTube视频(快进到2m:50s)中看到。 我可以通过从点A到点B绘制样条线来使这个概念在GDI...

14得票4回答
将SVG路径数据转换为GDI+ GraphicsPath数据

有没有一种简单的方法将SVG路径标签转换为C# System.Drawing.Drawing2D.GraphicsPath?它们是密切相关的,我希望有一种简单的方法将SVG路径数据转换为GraphicsPath点。

14得票3回答
如何在GDI+中旋转文本?

我想以特定角度显示给定的字符串。我尝试使用System.Drawing.Font类来实现这一点。以下是我的代码: ``` Font boldFont = new Font(FontFamily.GenericSansSerif, 12, FontStyle.Bold, GraphicsUni...

14得票1回答
GDI/GDI+是如何在没有OpenGL或DirectX的情况下工作的

如果这个问题不是此处讨论的话题,我很抱歉。如果是,那么请随意将其移动到适当的站点。 GDI/GDI+如何在屏幕上显示内容(渲染到显卡)而不使用低级API与GPU通信,例如DirectX或OpenGL?它是如何在不使用任何API的情况下绘制到屏幕上的?是的,我知道图像是合成和在CPU上呈现的,...

14得票2回答
裁剪/去除图像边缘的不必要空白区域

我搜索了很多方法来去除不需要的空格,但都没有找到。我只找到了一些可以用来去除黑色和白色背景空格的链接。但我的背景图片可以是任何东西。所以,如果我有这些图片: 我该如何提取我需要的图片部分呢?例如:

13得票2回答
如何在C语言中使用GDI+?

免责声明:我才刚开始学习C,很可能会忽略一些显而易见的问题或者没有采用正确的思路! 如何在纯C中使用GDI+呢? 据我所知,GDI+是为C++封装的对象,但在其底层实现了一个平面API,可以通过一个友好的C头文件gdiplusflat.h来访问。 我的问题是,当我包含这个头文件时,我会得到...

13得票3回答
通过减少若干像素来缩短一条线

我正在使用.NET GDI+绘制业务对象的自定义图表,其中包含连接对象的几条线路。 在特定场景中,我需要将一条线路缩短指定数量的像素,例如10个像素,即查找距离线路终点前10个像素的点。 想象一个半径为r = 10像素的圆和一个带有起始点(x1,y1)和终点(x2,y2)的线。圆心位于线段...

13得票6回答
什么时候需要使用Dispose?

当你有如下代码:Bitmap bmp = new Bitmap ( 100, 100 ); Graphics g = Graphics.FromImage ( bmp ); Pen p = new Pen ( Color.FromArgb ( 128, Color.Blue ), 1 ); ...