【问题标题】:produces an HTML file from XML从 XML 生成 HTML 文件
【发布时间】:2011-11-29 09:41:46
【问题描述】:

我有一个带有矩形元素的 XML 文件,其中包含子元素 - RGBcolor、ID、高度和宽度。 现在我需要将矩形绘制到一个 HTML 网页中,其中提到的大小、颜色和名称到几个 DIV 中。我该怎么做?我是这个行业的新手,所以请尽量详细说明。 这是我的 xml:

 <?xml version="1.0"?>
 <ArrayOfRectangle xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"      xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<Rectangle>
 <Id>First one</Id>
 <TopLeft>
  <X>0.06</X>
  <Y>0.4</Y>
 </TopLeft>
 <BottomRight>
  <X>0.12</X>
  <Y>0.13</Y>
 </BottomRight>
 <Color>
  <Red>205</Red>
  <Green>60</Green>
  <Blue>5</Blue>
 </Color>
</Rectangle>
<Rectangle>
 <Id>Second One</Id>

XML 很好,我什至反序列化了它,但我不知道如何解析成 HTML.. 谢谢大家

【问题讨论】:

  • 有很多方法可以做到这一点,你能否提供一些信息,如果这将在网络浏览器中看到,如果可以使用 Flash,是否需要移动设备友好,如果您有任何网络浏览器注意事项。
  • 如果你已经可以反序列化它,你的问题是生成什么html?

标签: asp.net html xml xml-serialization html-parsing


【解决方案1】:

简短的回答是你不能。 HTML 是一种文本标记语言,而不是一种图形语言。

可以将所有规则转换为 CSS 并将它们应用到 div(通用块元素),尽管这将是一个 hack。

SVG 是一种图形语言,它会比你自己编造的语言得到更好的支持,但 still has limitations。如果您将规则转换为 JavaScript,那么Raphaël 可以根据不同浏览器的需要生成 SVG 或 VML。这将以依赖 JS 为代价提供更广泛的支持。

为了获得最广泛的支持,您可以在服务器上将 XML 文档转换为 PNG 图像。

如何从您的格式转换为另一种格式的具体细节有多种选择。您将需要一个 XML 解析器。然后您需要阅读文档并输出您喜欢的任何格式。您可以为此使用 DOM,而 XSLT 是一个流行的选项(尤其是对于 XML 到其他 XML 的转换)。

【讨论】:

    【解决方案2】:

    我不清楚您的问题是设计要生成的 HTML(和/或 SVG),还是决定使用什么技术进行转换。对于简单的矩形,我们当然可以使用具有适当 CSS 属性的 HTML DIV 元素,但 SVG 为您提供了更大的灵活性。无论哪种方式,我都会使用 XSLT 进行转换;但请花一些时间阅读并熟悉该语言,因为它可能与您以前使用过的任何东西都不一样。

    【讨论】:

      猜你喜欢
      • 2011-10-05
      • 1970-01-01
      • 2014-07-01
      • 2014-04-03
      • 1970-01-01
      • 2015-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多