有关图片显示的问题

keluos 2003-08-18 03:50:29
我要把数据库里面的图片读出来显示在ie上,代码如下:
sqlstr = "Select AXLE_ID,VAX_VDATAL From Vaxles where DETECT_ID=" & CStr(DetectID) & "Order By AXLE_ID ASC"
(其中VAX_VDATAL 为图片字段)
Dim DataR As SqlDataReader
DataR = DataBase.ExecuteReDR(sqlstr)
While (DataR.Read())

Response.BinaryWrite(DataR.Item("VAX_VDATAL"))

End While
DataR.Close()
数据库里面是有两幅图片的,可是显示出来的只要一幅。该怎么办?
...全文
49 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
panyee 2003-08-18
  • 打赏
  • 举报
回复
//pany
//2003-8-18
//合成两张图片
System.Drawing.Image img1 = System.Drawing.Image.FromFile("c:\\111.jpg");
int iWidth1 = img1.Width;
int iHeight1 = img1.Height;
System.Drawing.Image img2 = System.Drawing.Image.FromFile("c:\\222.jpg");
int iWidth2 = img2.Width;
int iHeight2 = img2.Height;
//设置总的图片大小
int iheight = iHeight1 + iHeight2;
int iWidth = iWidth1>iWidth2?iWidth1:iWidth2;
//取得图片大小
System.Drawing.Size size = new Size(iWidth, iheight);
//新建一个bmp图片
System.Drawing.Image bitmap = new System.Drawing.Bitmap(size.Width,size.Height);
//新建一个画板
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap);
//设置高质量插值法
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
//设置高质量,低速度呈现平滑程度
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
//清空一下画布
g.Clear(Color.Transparent);
//在指定位置画图
g.DrawImage(img1, new System.Drawing.Rectangle(0, 0, iWidth1, iHeight1),
new System.Drawing.Rectangle(0, 0, iWidth1, iHeight1),
System.Drawing.GraphicsUnit.Pixel);
g.DrawImage(img2, new System.Drawing.Rectangle(0, iHeight1, iWidth2, iHeight2),
new System.Drawing.Rectangle(0, 0, iWidth2, iHeight2),
System.Drawing.GraphicsUnit.Pixel);
//保存高清晰度的缩略图
bitmap.Save("c:\\all.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
g.Dispose();
xiaolin0987 2003-08-18
  • 打赏
  • 举报
回复
if(!dr.IsNull("图片"))
{
//从dataset的数据库中读入图片
以字节为单位传入数据
mydata = (byte)dr["图片"];
int bmpsize = new int();
bmpsize =mydata.lengyh;
建立个内存流
MemoryStream ms =new MemoryStream();
把图片内容写入内存流
ms.Write(mydata,0,bmpsize);
Bitmap bmp;
根据内存流重新建立图片
bmp =new Bitmap(ms);
picture.image =bmp;
}
tongtianming 2003-08-18
  • 打赏
  • 举报
回复
咱俩问题一样,我帮你up
keluos 2003-08-18
  • 打赏
  • 举报
回复
up
keluos 2003-08-18
  • 打赏
  • 举报
回复
请问有没有办法把两幅图片都显示出来?
chnking 2003-08-18
  • 打赏
  • 举报
回复
Response.BinaryWrite()
方法执行一次就是一次独立的http输出,你这样:

While (DataR.Read())
Response.BinaryWrite(DataR.Item("VAX_VDATAL"))
End While

见到的总是最后一幅图
keluos 2003-08-18
  • 打赏
  • 举报
回复
在线等待,请各位大侠帮帮忙,甚急。bow
keluos 2003-08-18
  • 打赏
  • 举报
回复
panyee可以给个代码例子吗?
keluos 2003-08-18
  • 打赏
  • 举报
回复
打错字了,“数据库里面有两幅图片,可是显示出来的只有第一幅,我需要把两幅都显示,该怎么办?”
panyee 2003-08-18
  • 打赏
  • 举报
回复
自己构造Graphics对象,把byte[]转成流写画到g上去
再输出给客户端
keluos 2003-08-18
  • 打赏
  • 举报
回复
up

62,039

社区成员

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

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

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

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