代码之家  ›  专栏  ›  技术社区  ›  Ian Boyd

如何使用HTML标记构造图像?

  •  0
  • Ian Boyd  · 技术社区  · 16 年前

    我需要使用Microsoft的 HTMLDocument 对象。

    很遗憾,您可以为文档提供HTML标记,但不能为其提供图像。它只能显示从URL获取的图像,例如:

    • http://
    • 文件:/ /
    • RES:/ /

    作为一个解决方案,我认为我可以使用HTML标记来构建一个图像,一个接一个彩色像素。

    这方面有什么工作吗?它应该绝对定位在1X1色跨度吗?一张350x200的表格,行和列都有一个像素大小?

    7 回复  |  直到 12 年前
        1
  •  7
  •   Daniel LeCheminant    16 年前

    你能用一下吗 the Data URI scheme ?

    IE8支持此功能(与大多数更新的浏览器一样);您的图像如下所示:

    <img src="data:image/png;base64,A0123...==">
    

    何处 A0123... 东西是 base64 图像文件的表示。根据你使用的语言,你可以利用 Convert.ToBase64String() 为你做很多工作。

        2
  •  6
  •   FWH    16 年前

    在我看来,最简单的方法是使用base64编码的图像。它足够高效,而且有一些工具可以自动生成: http://www.greywyvern.com/code/php/binary2base64 .

        3
  •  2
  •   chaos    16 年前

    大家都很害怕, done some solid work in this area . 我链接到的解决方案使用带有RLE压缩的表,这对我来说似乎足够聪明。

        4
  •  2
  •   Pesto    16 年前

    首先,要注意一句:这是一件可怕的事情,你计划要做。

    既然我们已经把这件事解决了,我正好做到了。 a good deal 关于这个 terrible thing . 我可以告诉你,你最好用 tables 不是 divs 或跨度。尽管如此,它还是非常低效,而且需要永远加载,正如您从我链接到的示例中看到的那样。只是不要这样做,除非是一个恶作剧。

        5
  •  0
  •   Jacob Wyke    16 年前

    我写了一篇 PHP class 几年前,我就这么做了,但我不建议在现实世界中使用它,因为浏览器渲染一个足够大的表来显示图像需要很长时间。

    除非我不能正确理解您的问题,否则为什么您不能使用完整的URL引用图像:

    http://somewhere.com/myimage.jpg

        6
  •  0
  •   MickeyfAgain_BeforeExitOfSO    15 年前

    “报告和事情”…这里可能更清楚一点…

    如果您最终想要做的是显示一个动态生成的报告,那么您很可能会自动生成报告的图像。”“导出到PDF”可能在报告工具中可用。粗糙,但比你现在似乎要去的地方更简单和更有效率。

        7
  •  0
  •   Matthew Lock fge    15 年前

    在IE中只能使用 VML 它提供了基本的类似SVG的矢量绘制能力。

    这家伙创建了一个javascript库,用siv在浏览器中绘制矢量图形: http://web.archive.org/web/20080112113027/www.walterzorn.com/jsgraphics/jsgraphics_e.htm (目前网站似乎已关闭)

    现在你也可以去图书馆,比如 Raphaël 它使用浏览器的画布或VML支持。