web项目img标签绝对路径不显示原因并和解决方法

在当前浏览器环境中,直接使用绝对路径显示图片被限制,仅低版本IE和本地HTML支持。为解决此问题,提出了两种方案:将图片上传至web项目并使用相对路径,或转为Base64格式。鉴于需求,选择了Base64方法,但大尺寸图片导致加载缓慢,因此添加了调整图片尺寸的函数,通过替换原图片为调整后的图片实现优化。如需进一步提升加载速度,可考虑实施延迟加载策略。
摘要由CSDN通过智能技术生成

最近做一个功能,根据数据库查询的地址(绝对路径)显示到页面上,后来发现什么写页面都显示不出来,上网找了很久基本都是说直接写地址或加file\的。后来才发现原来是游览器导致的,由于现在对于网络安全方法越来越看中,所以现在的游览器运行时都是不允许直接写绝对路径的 (除了低版本ie和本地运行HTML页面 外)。

理解到不能直接用绝对路径后我就重写整理思路
相对的解决方法有2个
1.把图片上传到web项目中 在显示图片时改为相对路径
2.把图片转换成Base64格式显示出来

由于需求原因,我选择了第2种方法。下面就是我的代码:

 protected string clickShowImg(object sender, EventArgs e)
 {
       string src= ""; //img 标签src值
       string path = "D:/图片/IMG_0899.JPG";
       if (File.Exists(path))
       {
            System.Net.WebRequest imgRequst = System.Net.WebRequest.Create(path);
            //获得图片
            System.Drawing.Image image = System.Drawing.Image.FromStream(imgRequst.GetResponse().GetResponseStream());
                
            Bitmap Bitmap = new Bitmap(image);
            //创建内存流 
            using (MemoryStream ms1 = new MemorySt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值