有没有办法从位图数据创建图形
本文关键字:数据 创建 图形 位图 有没有 | 更新日期: 2023-09-27 18:34:02
我正在使用BitmapData在其上执行各种绘图。现在我想画一些文字。
因为我想避免实现字符串字体到像素转换的复杂性,所以我想在图形对象上使用可用的 DrawString 方法。
所以我正在寻找一种方法来创建图形对象,该对象在将成为我的位图数据的设备上工作。
我看到有一个可用的Graphics.FromHdc方法。但是当我将它与我的BitmapData的Scan0一起使用时,它会抛出一个System.OutOfMemoryException。
通常BitmapData
对象派生自现有Bitmap
,如下所示:
Bitmap bmp = // insert some way to create your bitmap!
Rectangle rect = new Rectangle(Point.Empty, bmp.Size);
BitmapData BD = bmp.LockBits(rect , ImageLockMode.ReadWrite, bmp.PixelFormat);
//
// do your pixel stuff here
//
bmp.UnlockBits(BD);
using (Graphics G = Graphics.FromImage(bmp) )
{
//
// do your Graphics stuff here
//
}