我使用iTextSharp从html模板生成pdf。我有这个工作,但现在我有一些问题造型pdf。
我希望h2
和h3
标记加下划线,但不是h1
标记。
解析我的html时,似乎已解析的元素被加载为Paragraph
或PdfPTable
s。
代码:
var parsedHtmlElements = HTMLWorker.ParseToList(new StringReader(transformableTemplate.Body), _styles, _interfaceProps);
foreach (var htmlElement in parsedHtmlElements)
{
var paragraph = htmlElement as Paragraph;
if (paragraph != null)
{
var border = new ParagraphUnderline(new Color(0xd1, 0xd4, 0xd3), 1);
writer.PageEvent = border;
border.setActive(true);
paragraph.SpacingBefore = 20;
document.Add(paragraph);
border.setActive(false);
continue;
}
var table = as PdfPTable;
if (table != null)
{
table.SpacingAfter = 20;
document.Add(table);
continue;
}
document.Add(htmlElement as IElement);
}
有没有办法找出每个段落的相应标签是什么?我已经尝试在HTML中设置类和属性,但它们似乎被解析器忽略了。