0

有没有办法如何使用 DynamicJasper 在表格单元格上应用删除线样式?我只是设法通过覆盖JRPdfExporter和它的方法来“破解”它exportText,我将样式添加到传递JRPrintText但必须有一个正确的方法吗?

如果有人感兴趣,这是我的解决方法:

JRPdfExporter exporter = new JRPdfExporter()
{
    @Override
    public void exportText(JRPrintText text) throws DocumentException
    {
        if (text.getText().contains("<strike>"))
        {
            text.setText(text.getText().replaceAll("<strike>", ""));
            text.getStyle().setStrikeThrough(true);
        }
        super.exportText(text);
    }
};

我所做的是我将应该具有删除线样式的文本标记为<strike>. 然后我测试文本是否包含标记,如果包含,我应用样式并删除标记。

但我相信必须有使用 DynamicJasper 的 API 的合法方式。谢谢!

4

1 回答 1

0

由于我没有得到任何答案,并且除了迁移到 DynamicReports 之外没有找到任何其他解决方案,因此我将问题标记为已回答。DynamicReports 使用条件样式可以很容易地做到这一点。

于 2012-03-02T13:09:54.600 回答