owc中ChartSpaceClass图表在服务端直接输出的问题

chnking 2003-09-05 05:03:46
看了孟子E章的文章:
http://xml.sz.luohuedu.net/xml/ShowDetail.asp?id=ADB6D011-A4AD-43A0-A8BF-3CED872A7A95

它是通过新建一个ChartSpaceClass对象,在程序中在ChartSpaceClass对象中根据提供的数据生成图表ChChart,最后是通过ChartSpaceClass.ExportPicture方法导出一个gif文件到服务端的硬盘上,然后把图片路径提供个客户端来显示图形.

我想能不能把生成的图形用Response.BinaryWrite直接发送到客户端去.ChartSpaceClass对象有个GetPicture 方法,可以从二进制数据流返回图表图片.
ChartSpaceClass.GetPicture("GIF",600,350);这个方法返回的是一个object类型的图片.

ChartSpaceClass objCSpace = new ChartSpaceClass();
//建立图表的过程省略
Response.Clear();
Page.Response.AddHeader( "Content-Type", "image/gif" );
Stream stream = (Stream)objCSpace.GetPicture("GIF",600,350); //这句出错
int len = (int)stream.Length;
byte[] bytes = new byte[len];
stream.Read(bytes,0,len);
Page.Response.AddHeader("Content-Disposition", "inline;filename=test.gif");
Response.BinaryWrite(bytes);
Response.End();

这样出错:
异常详细信息: System.InvalidCastException: 指定的转换无效。

Response.BinaryWrite(byte[])方法要求的参数是byte数组,objCSpace.GetPicture("GIF",600,350); 得到的图片object又不能转成Stream,应该怎么办?
...全文
96 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
chnking 2003-09-16
  • 打赏
  • 举报
回复
up
chnking 2003-09-10
  • 打赏
  • 举报
回复
up
浩子 2003-09-10
  • 打赏
  • 举报
回复
我也想知道,帮忙UP~~~
chnking 2003-09-09
  • 打赏
  • 举报
回复
up
Geyond 2003-09-09
  • 打赏
  • 举报
回复
up
chnking 2003-09-09
  • 打赏
  • 举报
回复
up
yilianyin 2003-09-09
  • 打赏
  • 举报
回复
up
chnking 2003-09-08
  • 打赏
  • 举报
回复
不算巨难的问题吧,怎么没有人回答呢
chnking 2003-09-08
  • 打赏
  • 举报
回复
up
chnking 2003-09-08
  • 打赏
  • 举报
回复
是object类型,我就是要把这个object类型的图片转成.net中的stream,image,byte数组等等都行,可哪一个都没法转
wolve 2003-09-08
  • 打赏
  • 举报
回复
不知道,你debug一下,看运行时objCSpace.GetPicture("GIF",600,350); 返回的具体类型是什么,我感觉可能是个byte数组。
Geyond 2003-09-08
  • 打赏
  • 举报
回复
up
chnking 2003-09-05
  • 打赏
  • 举报
回复
up
chnking 2003-09-05
  • 打赏
  • 举报
回复
我就是不想生成文件,然后在用IMAGEURL指向这个图片,我想直接输出
rabbitwy 2003-09-05
  • 打赏
  • 举报
回复
OWC中有些属性是不能设置的,我以前用的也是输出图片到一个目录,然后让IMAGEURL指向这个图片!!
chnking 2003-09-05
  • 打赏
  • 举报
回复
老孟同志,在不在啊?
chnking 2003-09-05
  • 打赏
  • 举报
回复
说明一下,我用的是owc10
chnking 2003-09-05
  • 打赏
  • 举报
回复
看owc的帮助,在asp中可以这样写:

Response.BinaryWrite objCSpace .GetPicture("GIF", 500, 400)

asp.net却不能这么写:
Response.BinaryWrite(objCSpace .GetPicture(("GIF", 500, 400));

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧