已经生成了一个bitmap
public void setPos(string[] RoomNo, int num,System.Web.HttpServerUtility page)
{
BaseStr = page.MapPath(new judgeBuilding().chooseBuilding(RoomNo[0]));
bm = new Bitmap(page.MapPath(new judgeBuilding().choosePicture(RoomNo[0])));
g = Graphics.FromImage(bm);
PRStr = page.MapPath("PR.pos");
int building=RoomNo[0][0]-'0';
readRatioFile();
for(int i=0; i<Num; i++)
{
if(building == Convert.ToInt32(RatioData[i,0]))
{
building = i;break;
}
} conv.setRatio(RatioData[building,1],RatioData[building,2],RatioData[building,3],RatioData[building,4]);
this.readData();
if(tagData == false ||tagRatio == false) throw new Exception("还未读入数据。");
for(int i=0; i<num; i++)
{
int RoomPosNo = (RoomNo[i][2]-'0')*10+RoomNo[i][3]-'0';
_setSinglePos(RoomPosNo-1);
}
}
public Bitmap getBitmap(){
return this.bm;
}
其中bm是已经动态生成的图象,需要显示到页面上。
目前试过先保存为文件,再从文件中读取,但因为是动态生成的,不同的条件下会有不同的文件名,因此不能放到项目中去,生成的图象只有在本地机上可以访问,换另外一台机器就不能正确显示图像。
所以想问下到底有没有方法直接将bm画到页面上面?该怎么画?谢谢了
public void setPos(string[] RoomNo, int num,System.Web.HttpServerUtility page)
{
BaseStr = page.MapPath(new judgeBuilding().chooseBuilding(RoomNo[0]));
bm = new Bitmap(page.MapPath(new judgeBuilding().choosePicture(RoomNo[0])));
g = Graphics.FromImage(bm);
PRStr = page.MapPath("PR.pos");
int building=RoomNo[0][0]-'0';
readRatioFile();
for(int i=0; i<Num; i++)
{
if(building == Convert.ToInt32(RatioData[i,0]))
{
building = i;break;
}
} conv.setRatio(RatioData[building,1],RatioData[building,2],RatioData[building,3],RatioData[building,4]);
this.readData();
if(tagData == false ||tagRatio == false) throw new Exception("还未读入数据。");
for(int i=0; i<num; i++)
{
int RoomPosNo = (RoomNo[i][2]-'0')*10+RoomNo[i][3]-'0';
_setSinglePos(RoomPosNo-1);
}
}
public Bitmap getBitmap(){
return this.bm;
}
其中bm是已经动态生成的图象,需要显示到页面上。
目前试过先保存为文件,再从文件中读取,但因为是动态生成的,不同的条件下会有不同的文件名,因此不能放到项目中去,生成的图象只有在本地机上可以访问,换另外一台机器就不能正确显示图像。
所以想问下到底有没有方法直接将bm画到页面上面?该怎么画?谢谢了
解决方案 »
- 如何读取一个cookies 的过期时间以秒为单位。
- 求救:DropDownList的数据绑定已经写到if (!IsPostBack)里面了,还是只能取到绑定的第一个值
- 提高浏览速度
- WebGrid在2000下能显视数据,在2003下却不能显视数据........我已为这个问题心胆俱裂!
- activex控件如何使用在客户端呀?
- 为表示感谢,请wowangpeng()进来接分!为表示感谢,请wowangpeng()进来接分!为表示感谢,请wowangpeng()进来接分!为表示感谢,请wowang
- 帮我看下这是个什么东西?
- 类型初始值设定项引发异常----小白,我要疯了啊
- 浏览客户端目录
- 请问,谁有C#中“接口”方面的基础教材?
- 在visual studio 2005做asp.net的设计似乎不是很容易,大家有什么好的解决办法没 啊?
- https下生成的cookie为什么其它系统读不了?改成http就好用?急。高手支招。
用一个aspx页面来生成图片,然后让这个页面以图片流的方式输出。
使用的页面就像使用一个普通图片一样的使用。例如1 生成图片流的页面叫getRandImg.aspx
2 使用图片的页面,加一个image控件,然后如下设置url即可
<asp:Image ID="Image1" ImageUrl="~/getRandImg.aspx" runat="server" />可以参考我的博客文章《ASP.NET随机码生成示例》
http://www.cnblogs.com/heekui/archive/2007/01/06/613609.html
<img src=xxx.aspx>
一般的做法就是放到另外的aspx文件,Img的src指定为此文件
因此想到不从服务器上读去图片,用了各位的方法以后,主要问题也就是上面的问题实际上是解决了。但是,当用户通过不同的条件生成两次图片以后,第一次生成的图片又会被第二次的覆盖。这是一个问题,前面也遇到过。
////////////////////////////////////////////////////