这个线程几乎是我需要的: Creating a GraphicsPath from a semi-transparent bitmap
但他正在图像周围绘制轮廓 - 我需要在图像内部绘制一个仅几个像素的轮廓。基本上我正在尝试绘制一个“焦点矩形”(除非它不是矩形),结果需要采用 GraphicsPath 的形式,以便我可以将它直接放入我当前的代码中。
私有函数 GetImagePath(img as Image) as GraphicsPath ...结束函数
[编辑] 好的,首先我什至无法从其他帖子中获取代码来工作。我一直在这一行得到索引超出范围:
*byte alpha = originalBytes[y * bitmapData.Stride + 4 * x + 3];*
那就是如果它甚至先通过其他东西。很多时候它从第一个循环中出来并没有找到一个不透明的点——当大部分图像是不透明的时候。
最新的问题是它创建了一个没有任何意义的点列表。图像是 68x68 我的点列表有像 290x21 这样的点,甚至像 2316x-15 这样更疯狂的点
这是我的原始图像:
[不会让我上传因为我是新人]
它是 70x70 的按钮的背景图像 - 如果这很重要的话。