gdi+相关内容

在多个监视器上绘制所有窗口

我使用以下代码在单个监视器上绘制: Point cursorLocation; NativeMethods.GetCursorPos(out cursorLocation); Screen screen = Screen.FromPoint(cursorLocation); Point h1 = new Point(screen.Bounds.Left, cursorLocation.Y) ..
发布时间:2022-09-24 22:34:04 C#/.NET

GDI+闪烁

所以我想做一个便宜的Gyazo(截图工具) 问题是光标坐标闪烁,我如何防止这种情况?我已经尝试过WM_ERASEBKGND,但没有任何帮助。 我的代码还有没有其他错误?有什么不好的做法/技巧吗? #include #include #include #pragma comment (lib, "Gdiplus.li ..
发布时间:2022-08-17 15:02:56 C/C++开发

如何在C中使用GDI+?

免责声明:我只是从C开始,所以我很可能遗漏了一些明显的东西,或者没有正确地思考!:) 我将如何在纯C中使用GDI+? 据我所知,GDI+包装了为C++制作的对象,但在它下面是一个平面API,可以通过gdiplusflat.h访问,这是一个C友好的头文件。 我的问题是,当我#包含它时,我得到以下错误: C:Program Files (x86)Microsoft SDKsWindo ..
发布时间:2022-08-17 14:59:30 其他开发

来自TTnTEdit的Delphi字符串中的GDIPLUS

我正在尝试使用Delphi 6将阿拉伯文旋转文本绘制到颜料盒。尝试了不同的工具,如Gr32和现在的GDIPLUS。 GDIPLUS样本工作正常,我可以绘制&Hello";: graphics := TGPGraphics.Create(PaintBox.Canvas.Handle); fontFamily:= TGPFontFamily.Create('Times Ne ..
发布时间:2022-06-07 20:34:20 其他开发

如何正确地左对齐文字和拉弦?

我正在将文本绘制到屏幕外的位图。遗憾的是,文本没有正确左对齐(见下图)。文本应该触及左边距(蓝色线条),但偏离了几个像素。距离随文字大小增加。 如何摆脱此距离? 我使用的是.NET框架4.6.1。但这似乎更像是一个我不理解的一般性GDI+问题。 用于生成示例的代码: using System.Drawing; using System.Drawing.Imaging; n ..
发布时间:2022-06-07 20:09:31 C#/.NET

控制边界外的自定义绘制下拉面板

我似乎拿到了一张“不清楚我在问什么”的选票。我想自定义绘制一个组合框样式的控件。弹出打开部分需要在控件本身的边界之外绘制。我不能使用组合框-想象一下类似于Word功能区中的图库控件。 我想了两种方法: 将弹出的打开面板向上传递到要呈现的窗体。 使用无边框、无框架窗体或NativeWindow。 后者还允许下拉菜单脱离窗口的边界,这可能有用,但不是绝对必要的。 有没有其他方 ..
发布时间:2022-06-07 20:02:26 C#/.NET

C#GDI-如何创建多边形(点集)的位图副本

我有一个位图对象(或任何其他图像),我正在这个位图上画一些线来创建一个多边形。 绘制后,我需要克隆/复制/剪切选定区域(基于线条)。 我无法使用bitmap.Clone方法,因为它仅适用于矩形。 我需要基于Point[]或GraphicsPath的某种克隆实现... 请帮助新入门的GDI/Graphics...:) 更新 我尝试这样做: Graphics g = ..
发布时间:2022-06-07 19:53:11 C#/.NET

我可以在面板上显示正在绘制的节点的工具提示吗?

我有一个用于MMO的网状系统,它使用A*来查找路径。偶尔它会失败,因为我有放置不当的节点。为了解决这个问题,我制作了一个网格可视化工具。它工作得很好-我可以看到一些节点放置得不好。但我看不到哪些节点。 以下是显示节点的代码: foreach (var node in FormMap.Nodes) { var x1 = (node.Point.X * s ..
发布时间:2022-06-07 19:47:46 C#/.NET

用C#实现基数曲线的插补

我需要手动插补一条基本曲线/样条线--这是由System.Drawing的DrawCurve方法创建的曲线类型。我已经找到了DeCastelJau算法的一个很好的C示例,可以用Bezier来实现这一点。遗憾的是,我找到的这类曲线的所有例子都是纯粹的数学符号,对我来说可能是楔形的。 谁能给我举一个插补(所有的点都相交)这种曲线的例子,用编程语言演示,这就是我所知道的阅读方法? 编辑: ..
发布时间:2022-04-04 21:42:25 C#/.NET

将图像保存到文件

我正在开发一个基本的绘图应用程序.我希望用户能够保存图像的内容. 我认为我应该使用 System.Drawing.Drawing2D.GraphicsState img = drawRegion.CreateGraphics().Save(); 但这并不能帮助我保存到文件. 解决方案 您可以尝试使用这种方法保存图像 SaveFileDialog 对话框=new SaveFile ..
发布时间:2022-01-24 18:14:39 C#/.NET

什么可能导致双缓冲杀死我的应用程序?

我有一些使用 GDI+ 在屏幕上绘制的自定义(winforms)组件. 为了防止重绘时闪烁,我决定启用双缓冲,所以我在构造函数中添加了一行: public ColourWheel(){初始化组件();this.DoubleBuffered = true;} 在这个组件(ColourWheel)上效果很好.当我将同一行添加到其他两个(结构相似)组件中的任何一个的构造函数中时,我得到了一些奇 ..
发布时间:2022-01-21 10:45:34 C#/.NET

什么时候需要 Dispose?

当你有这样的代码时: 位图 bmp = 新位图 (100, 100);图形 g = Graphics.FromImage ( bmp );Pen p = new Pen (Color.FromArgb (128, Color.Blue), 1);Brush b = new SolidBrush (Color.FromArgb (128, Color.Blue));g.FillEllipse ( ..
发布时间:2022-01-16 09:55:13 C#/.NET

检测两个重合线段的重合子集

这个问题与: 如何确定GDI+中两条线的交点?(很好的代数解释,但没有代码) 如何检测两条线的位置段相交?(接受的答案实际上不起作用) 但请注意,一个有趣的子问题在大多数解决方案中都被完全掩盖了,即使存在三个子案例,它们也只为重合案例返回 null: 重合但不重叠 触摸点和重合 重叠/重合线子段 例如,我们可以设计一个这样的 C# 函数: public static ..
发布时间:2022-01-14 15:31:22 C#/.NET

如何判断某个点是否在某条线附近?

我问“怎么能我告诉一个点是否属于某条线?"之前我找到了合适的答案,非常感谢. 现在,我想知道如何判断某个点是否接近我的线. 解决方案 你需要计算到直线的直角距离.然后你必须定义什么是“接近"并测试它是否在那个距离内. 你想要的等式是: ..
发布时间:2022-01-14 15:29:21 C#/.NET

TextBox 使用 GDI 还是 GDI+

基本上,我想测量 TextBox 中的文本大小,我发现 TextRenderer 给了我正确的值,而 Graphics 给了我错误的值.这样看来,TextBox 应该使用 GDI 来绘制文本,对吧? 但是,无论我在哪里阅读,我都看到它应该使用 GDI+.例如: 这里 http://microsoft.public.dotnet.framework.windowsforms.contro ..
发布时间:2022-01-13 11:41:24 C#/.NET