8

此代码使用最新的 LINQPad 4.28 beta 生成异常

new System.Drawing.Bitmap(200, 200).Dump();

这是我的代码中的问题还是 LINQPad 的 .Dump() 扩展方法的问题?

4

2 回答 2

15

能够转储位图是 LINQPad 4.28 beta 的一个新特性——但似乎有一个错误。今天晚些时候我会上传一个修复程序。

编辑:新版本现已上传。您可以通过运行以下命令对其进行测试:

using (var b = new System.Drawing.Bitmap (400, 200))
using (var g = Graphics.FromImage (b))
using (var f = new Font ("Arial", 40))
{
    g.SmoothingMode = SmoothingMode.AntiAlias;
    g.FillEllipse (Brushes.CadetBlue, 0, 0, 400, 200);
    g.DrawString ("LINQPad", f, Brushes.Black, 75, 70);
    b.Dump();
}

请注意,您还可以通过调用Util.Image转储图像,并传入文件名或 URI。您可以使用后者使用Google 的 Chart API绘制图形;例如,以下内容:

Util.Image ("http://chart.apis.google.com/chart?cht=p3&chd=s:Uf9a&chs=350x140&chl=January|February|March|April")

生成此输出:

谷歌图表演示

于 2010-11-22T03:48:39.147 回答
4

LINQPad 无法使用 Dump() 绘制位图。

相反,你可以写

Application.Run(new Form { ClientSize = bitmap.Size, BackgroundImage = bitmap});
于 2010-11-22T00:28:08.570 回答