创建html文件时不保存图像

时间:2014-12-26 13:15:03

标签: javascript asp.net twitter-bootstrap

我正在使用twitter bootstrap开发.NET应用程序。

我在.aspx页面中加载图片并将该页面保存为html文件。

这是我的代码:

protected void Page_Load(object sender, EventArgs e)
{
        string ISMfilePath = Server.MapPath("~/Download/");
        string FileNamePath = @D:"/Export.html";
        StreamWriter sWriter = File.CreateText(FileNamePath);
        StringWriter sw = new StringWriter();
        HtmlTextWriter htw = new HtmlTextWriter(sw);
        pnlData.RenderControl(htw);
        sWriter.WriteLine(sw.ToString());
        sWriter.Close();
}
<asp:Panel  ID="pnlData"  runat="server" class="pnlData" style="background-   color:White;">
<img src="mountain.jpg" alt="" style="width:128px;height:128px"/>
</asp:Panel>

我能够创建一个html文件,但{h}页面中没有加载mountain.jpg。图像未保存在html页面中。

1 个答案:

答案 0 :(得分:1)

而不是将图像src作为文件名,而是放置一个base64字符串。这会将图像嵌入到html中并为您提供所需的内容。

E.g。

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA
AAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO
9TXL0Y4OHwAAAABJRU5ErkJggg==" alt="Red dot" />

您可以使用http://www.base64-image.de/

等各种网站将图片转换为base64字符串

有关详细信息,请参阅http://en.wikipedia.org/wiki/Data_URI_scheme

仅供参考:我记得IE8只支持base64字符串作为数据URI,其中图像小于32kb,它是我见过的唯一一个有这个问题的浏览器。