以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  移动开发,如何载入图片  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=101844)

--  作者:zhy400137
--  发布时间:2017/6/8 11:38:00
--  移动开发,如何载入图片
移动开发,如何点击一个按钮,从当前行的数据库里从一个二进制的列载入一个图片显示的网页上,有实例可以
参考吗?谢谢

--  作者:狐狸爸爸
--  发布时间:2017/6/8 12:28:00
--  
不要用二进制列
--  作者:zhy400137
--  发布时间:2017/6/8 13:45:00
--  
主要是我是从现有ERP里读限的数据,它本身就是用的二进制。
--  作者:有点蓝
--  发布时间:2017/6/8 14:53:00
--  
保存为本地图片,再通过相对路径显示:http://www.foxtable.com/webhelp/scr/2957.htm
--  作者:有点蓝
--  发布时间:2017/6/8 17:02:00
--  
如果不想保存可以通过二进制数据直接返回

Dim fl As String = "d:\\web\\" & e.path
If filesys.FileExists(fl)
    Dim idx As Integer = fl.LastIndexOf(".")
    Dim ext As String  = fl.SubString(idx)
    Select Case ext
        Case ".jpg",".gif",".png",".bmp",".wmf",".js",".css" ,".html",".htm",".zip",".rar"
            e.WriteFile(fl)
            Return \'这里必须返回
    End Select
End If
Select Case e.Path
    Case "test.htm"
        Dim wb As New weui
        wb.AddForm("","form1","getVimg.htm")
        With wb.AddButtonGroup("form1","btg1",True)  \'垂直排列
            .Add("btn1", "查看图片")
        End With
        e.WriteString(wb.Build) \'生成网页
    Case "getVimg.htm"
        Dim wb As New weui
        wb.AddForm("","form1","getVimg.htm")
        Dim cmd As new SQLCommand
        cmd.ConnectionName = "T"
        cmd.CommandText="select top 1 第八列 from DDDDD " \'这里第八列是二进制列
        Dim dt As DataTable = cmd.ExecuteReader
        Dim src As String
        If dt.DataRows.Count >0 Then
            Dim imagebytes As Byte() = dt.DataRows(0)("第八列")
            src = Convert.ToBase64String(imagebytes )
        End If
        With wb.AddArticle("","ar1")
            .UseGallery = True \'启用Gallery,必须放在第一行
            \' .AddImage("./images/004.jpg")
            .AddImage("data:image/jpeg;base64," & src)
        End With
        e.WriteString(wb.Build) \'生成网页
End Select

--  作者:zhy400137
--  发布时间:2017/6/8 17:14:00
--  
谢谢老师,我试试。
--  作者:rambowhuang
--  发布时间:2017/6/9 11:13:00
--  
有点蓝 老师, 
如果想利用 httpclient 请求网站图片,然后将图片返回给客户端的浏览器,
应该如何改写呢?
Dim URL As String = "http://xxx.com/xxx.jpg"
Dim hc As New HttpClient(url)
...
.AddImage(...)

--  作者:有点色
--  发布时间:2017/6/9 12:28:00
--  

 直接下载图片即可。

 

http://www.foxtable.com/webhelp/scr/1402.htm

 

 


--  作者:rambowhuang
--  发布时间:2017/6/9 13:30:00
--  
有点色 老师,
下载的方式是如同本地图档返回,
想请教老师的是类似 input/output流的处理方式。

--  作者:有点色
--  发布时间:2017/6/9 14:45:00
--  

 参考

 

Dim req = System.Net.WebRequest.Create("http://www.foxtable.com/bbs/images/userface/image1.gif")

Dim img As Image = Image.FromStream(req.GetResponse().GetResponseStream())

img.save("d:\\test.gif")