从MVC4中的html生成的PDF中的有序列表
本文关键字:PDF 列表 MVC4 中的 html | 更新日期: 2023-09-27 18:19:22
我试图在我的MVC4应用程序中使用iTextSharp生成PDF。我正在使用一个html文件,在其中填写数据并生成PDF。但是呈现type = "a"的有序列表存在问题。代码如下所示:
<ol style="font-size: 10px">
<li>First</li>
<li>Second</li>
<li>Third
<ol type="a">
<li>3.1</li>
<li>3.2</li>
</ol>
</li>
<li>Fourth</li>
</ol>
应该显示如下:
1. First
2. Second
3. Third
a. 3.1
b. 3.2
4. Fourth
但它显示为:
1. First
2. Second
3. Third
1. 3.1
2. 3.2
4. Fourth
即使我删除嵌套,只是尝试呈现类型为"a"的有序列表,如下所示:
<ol type="a">
<li>First</li>
<li>Second</li>
<li>Third</li>
</ol>
PDF中显示的列表如下:
1. First
2. Second
3. Third
应该有a, b, c…而不是1,2,3 ....
这是iTextSharp的已知问题吗?
这个问题有什么解决办法吗?
谢谢。编辑:在控制器中生成PDF的代码为:
public ActionResult GeneratePDF()
{
var myObject = new MyClass
{
Property1 = Session["Property1"].ToString(),
.....
};
return ViewPdf("", "MyPDF", myObject);
}
其中MyPDF是要呈现的html页面。
@model MyProject.ViewModel.MyPdfViewModel
@{
ViewBag.Title = "Result PDF";
}
<br />
<br />
<div>
<h2 align="center">
<u>Details</u>
</h2>
<div align="justify">
<p align="justify" style="font-size: 10px">
Below is the list
</p>
<ol style="font-size: 10px">
<li>First
</li>
<li>Second
</li>
<li>Third
<ol type="a">
<li>3.1
</li>
<li>3.2
</li>
</ol>
</li>
</ol>
</div>
你正在使用的HTML属性被标记为弃用,而你被鼓励使用CSS属性list-style-type
。假设您正在使用XMLWorker
,您可以进行更改,并且它应该像您期望的那样工作。
<ol style=""font-size: 10px"">
<li>First</li><li>Second</li>
<li>Third
<ol style=""list-style-type: lower-alpha;"">
<li>3.1</li>
<li>3.2</li>
</ol>
</li>
<li>Fourth</li>
</ol>