C# 在HTML中添加行号

C# 在HTML中添加行号,c#,javascript,html,reformatting,C#,Javascript,Html,Reformatting,我需要一些技巧来显示带有HTML文档的行号,这些文档将以固定宽度显示,例如 <p>blah blah blah blah ... blah</p> 在固定宽度的框中。HTML嵌入在XML文档中,即 <?xml version="1.0" encoding="utf-8" ?> <pages> <page> <html> <head> <link rel="styl

我需要一些技巧来显示带有HTML文档的行号,这些文档将以固定宽度显示,例如

<p>blah blah blah blah ... blah</p>
在固定宽度的框中。HTML嵌入在XML文档中,即

<?xml version="1.0" encoding="utf-8" ?> 
<pages>
  <page>
    <html>
      <head>
        <link rel="stylesheet" type="text/css" href="pageStyle.css"/>
      </head>
      <body>
        <h1>Example heading</h1>
        <p>Example paragraph.</p>
      </body>
    </html>
  </page>
</pages>

示例标题
示例段

由于我正在将html提供给另一个应用程序,我可以尝试以某种方式在内存中转换html段(提供服务的应用程序在C#中,仅供参考),尽管我不认为有一种简单的方法可以做到这一点,而不必首先对其运行某种布局,因为可能有不同的字体。我怀疑我可以通过在服务页面时向页面中注入脚本来实现这一点


我如何才能做到这一点?

一行将占用多少水平空间完全取决于字体在用户浏览器上呈现的宽度(根据我的经验,浏览器可能会有所不同),因此我不能完全确定这是否可以做到(完美/正确)在服务器端语言中。这就是为什么我希望有一种方法可以检测它在嵌入式脚本中的排列方式,然后我会在页面提供服务时简单地将其注入页面。我认为保证布局的唯一方法是在服务器端创建一个pdf,然后提供该pdf。我打赌一个复杂的JavaScript解决方案是可能的,但在有人完成这项工作之前,我认为您需要测试JavaScript是否可以在这种环境中使用。嵌入到XML文档中,这似乎不是必然的。如果我插入对外部脚本的引用,比如
<?xml version="1.0" encoding="utf-8" ?> 
<pages>
  <page>
    <html>
      <head>
        <link rel="stylesheet" type="text/css" href="pageStyle.css"/>
      </head>
      <body>
        <h1>Example heading</h1>
        <p>Example paragraph.</p>
      </body>
    </html>
  </page>
</pages>