首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GdiPlus OverflowException

GdiPlus OverflowException
EN

Stack Overflow用户
提问于 2009-05-21 13:59:03
回答 1查看 3.2K关注 0票数 3

我最近通过第三方工具在GDI+中遇到了一个OverflowException,这给我带来了一些问题。我正在努力追查这个问题的原因,然后决定是否有任何解决方案。

错误发生在返回等于GpStatus.ValueOverflow的错误代码11的SafeNativeMethods.Gdip.GdipFillPath()中。我不知道这是什么意思,也不知道是什么原因造成的。后果相当严重,因为我有一大块屏幕无法绘制。

此错误的堆栈跟踪为:

System.OverflowException:溢出错误。在System.Drawing.Graphics.CheckErrorStatus(Int32状态)在Northwoods.Go.GoRoundedRectangle.Paint(Graphics g处的System.Drawing.Graphics.FillPath(图形g,GoView视图,钢笔,画笔,画笔,GraphicsPath路径)在Northwoods.Go.GoView.PaintView(图形g,图形g,Northwoods.Go.GoView.onPaintCanvas(PaintEventArgs evt处的RectangleF clipRect)处的Northwoods.Go.GoView.OnPaint(PaintEventArgs evt),Int16层,Boolean disposeEventArgs) at System.Windows.Forms.Control.WmPaint(Message& m) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd,Int32消息,IntPtr wparam,IntPtr lparam)

显然,这里使用了两个参数。我无法控制的GraphicsPath和画笔。笔刷是由一个静态方法返回的,为了确保它的处理没有问题,我试着改变笔刷的属性来返回一个克隆,如下所示。然而,这似乎没有产生任何影响。

代码语言:javascript
复制
public Brush 
{
   get {
         return MappingLinearGradient(this.Bounds).Clone();
       }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-05-21 14:06:07

IIRC,图形对象的最大平面面积为(1 << 24) -1\f25 => 1670万像素。

我不确定这个区域本身是否有限制,但我会调查一下。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/893069

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档