【问题标题】:GeckoFx not showing local imageGeckoFx 不显示本地图像
【发布时间】:2015-09-03 13:55:42
【问题描述】:

我正在使用 GeckoFx 在我的应用程序中显示一些 html 页面。但是控件不会加载本地图像。我使用GeckoBrowser.Document.Body.InnerHtml = htmlcode;,其中htmlcode 是这样的:

<html><body><img src="file:///c:/1.jpg" </img></body></html>

如果我将"file:///c:/1.jpg" 替换为任何在线图像(例如"https://www.google.com/images/nav_logo100633543.png"),图像加载没有问题,但本地图像不会加载。我试过了:

  • "c:/1.jpg"
  • "c:\1.jpg"
  • "file://c:/1.jpg"
  • "file:///c:/1.jpg"

我做错了吗?

【问题讨论】:

    标签: c# geckofx


    【解决方案1】:

    我遇到了同样的问题,显然问题是浏览器的安全功能阻止了非本地页面访问本地文件。

    我没有运气改变这种行为,因此解决方法是将您的 HTML 页面写入文件并使用导航从磁盘加载该文件。允许本地页面访问磁盘上的文件。

    代替:

    geckofx.LoadHtml(html_string);
    

    使用:

    using (StreamWriter sw = File.CreateText(path))
    {
       sw.Write(html_string);
    }
    geckofx.Navigate(path);
    

    它会按预期加载本地文件和图像,如&lt;img src="file://c:/1.jpg" /&gt;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-07
      • 2020-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多