未使用ITextSharp(5.5.1)XHTML到PDF应用类CSS定义中的元素

未使用ITextSharp(5.5.1)XHTML到PDF应用类CSS定义中的元素,css,pdf,xhtml,html-table,itext,Css,Pdf,Xhtml,Html Table,Itext,更新:ITextSharp 5.5.2支持此功能,但以前版本的ITextSharp不支持此功能。 ITextSharp 5.5.1是否支持类元素CSS选择器?比如 <style> .test td { border: 1px solid green; } </style> 这是我的完整html供参考 <html> <head> <style> .test td { border:

更新:ITextSharp 5.5.2支持此功能,但以前版本的ITextSharp不支持此功能。

ITextSharp 5.5.1是否支持类元素CSS选择器?比如

<style>
    .test td {
        border: 1px solid green;
    }
</style>
这是我的完整html供参考

<html>
<head>
<style>
    .test td {
        border: 1px solid green;
    }
</style>
</head>
<body>
<table class='test'>
  <tr>
    <th>Firstname</th>
    <th>Lastname</th>
    <th>Savings</th>
  </tr>
  <tr>
    <td>Peter</td>
    <td>Griffin</td>
    <td>$100</td>
  </tr>
  <tr>
    <td>Lois</td>
    <td>Griffin</td>
    <td>$150</td>
  </tr>
  <tr>
    <td>Joe</td>
    <td>Swanson</td>
    <td>$300</td>
  </tr>
  <tr>
    <td>Cleveland</td>
    <td>Brown</td>
    <td>$250</td>
</tr>
</table>
</body>
</html>

.测试运输署{
边框:1px纯绿色;
}
名字
姓氏
储蓄
彼得
格里芬
$100
露易丝
格里芬
$150
乔
斯旺森
$300
克利夫兰
棕色的
$250

这是一个奇怪的问题,因为XML Worker的默认实现正好满足您的需要。我们有一个转换为的HTML文件,我们只使用基本的XML工作者代码:

只需5行即可获得屏幕截图中显示的结果:

public void createPdf(String file) throws IOException, DocumentException {
    // step 1
    Document document = new Document();
    // step 2
    PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(file));
    // step 3
    document.open();
    // step 4
    XMLWorkerHelper.getInstance().parseXHtml(writer, document,
            new FileInputStream(HTML));
    // step 5
    document.close();
}

尝试:
请查看以下帖子:希望有帮助。
HTMLWorker
XMLWorker
?XMLWorker,因为我被告知要远离HTMLWorker。Java中的IText和C中的ITextSharp有区别吗?我用我正在使用的代码更新了我的原始帖子。也许不同之处在于版本。我正在主干中使用这个版本(它将在几周后发布,如果我没记错的话,XML Worker团队最近一直在致力于更好的CSS支持)。你用的是什么版本?我用的是5.5.1版。有没有一种简单的方法来获得行李箱总成?使用行李箱似乎是可行的!准确地说,是r783的快照。谢谢我期待着5.5.2。
public void createPdf(String file) throws IOException, DocumentException {
    // step 1
    Document document = new Document();
    // step 2
    PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(file));
    // step 3
    document.open();
    // step 4
    XMLWorkerHelper.getInstance().parseXHtml(writer, document,
            new FileInputStream(HTML));
    // step 5
    document.close();
}