[英]Create a graphic image dynamically using C#
这是一个.net网站。 我有一个100 x,y坐标列表。
我需要显示100个八角形,其中心点位于相应的坐标上。
我通过将数组传递给javascript并动态创建和定位图像来玩弄这个。 但它看起来很糟糕,调整浏览器窗口大小会导致问题等。
那么,我可以自己创建一个图形吗? 我看到这段代码回答了一个类似的问题:
using (Bitmap bmp = new Bitmap(10, 10))
{
using (Graphics g = Graphics.FromImage(bmp))
{
g.Clear(Color.White);
g.DrawLine(Pens.Black, new PointF(9.56f, 4.1f),
new PointF(3.456789f, 2.12345f));
}
bmp.Save(@"c:\myimage.jpg", ImageFormat.Jpeg);
}
你能用这个容易地画出八边形吗?
但是,当我尝试运行上面的代码时,我收到此错误。
GDI +中发生了一般错误
如果我不能让它运行,我不想花很长时间来画出八角形等。
最后一件事,我不需要保存图形,我只是想显示它,好像它是我从images文件夹中获取的图像。
编辑:继续下面的建议我修改了这样的代码:
using (MemoryStream ms = new MemoryStream())
{
bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] buffer = ms.GetBuffer();
HttpContext.Current.Response.OutputStream.Write(buffer, 0, buffer.Length);
}
这是我的画在屏幕上。 有什么应该调整的吗?
您可能没有C:\\
写入权限。
您应该保存到MemoryStream
,然后将其呈现给HTTP响应,而不是保存到磁盘。 (在ASHX或MVC行动中)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.