字体扩展maven项目不适用于JasperReports

时间:2018-01-29 03:16:41

标签: java maven fonts jasper-reports

请勿使用此问题标记重复:Font extensions does not work for JasperReports。这是一个不同的案例,我正在分开使用maven项目。

我正在尝试将Open Sans字体添加到我的网络应用中的jasper报告中。我使用font extension mechanism

  

抛出此异常:

     

net.sf.jasperreports.engine.util.JRFontNotFoundException:字体“打开   JVM没有“Sans”。有关详细信息,请参阅Javadoc。

我正在创建一个maven项目来生成字体扩展名:

这是我的font.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<fontFamilies>
    <fontFamily name="Open Sans">
        <normal><![CDATA[fonts/OpenSans/OpenSans-Regular.ttf]]></normal>
        <bold><![CDATA[fonts/OpenSans/OpenSans-Bold.ttf]]></bold>
        <italic><![CDATA[fonts/OpenSans/OpenSans-Italic.ttf]]></italic>
        <boldItalic><![CDATA[fonts/OpenSans/OpenSans-BoldItalic.ttf]]></boldItalic>
        <pdfEncoding><![CDATA[Identity-H]]></pdfEncoding>
        <pdfEmbedded><![CDATA[true]]></pdfEmbedded>
        <exportFonts/>
    </fontFamily>
</fontFamilies>

这是我的 jasperreports_extension.properties 文件:

net.sf.jasperreports.extension.registry.factory.fonts=net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory
net.sf.jasperreports.extension.simple.font.families.opensans=fonts/fonts.xml

另外,我已将 Open Sans ttf文件放在名为 OpenSans 的文件夹中。

最后,我通过这种方式将依赖项添加到我的最终项目中(正确执行报告)

    <dependency>
        <groupId>com.myfonts</groupId>
        <artifactId>myfont</artifactId>
        <version>1.0</version>
        <scope>compile</scope>
    </dependency>

由于某种原因,我的报告无法正确显示字体。请让我知道我哪里出错了。提前谢谢。

0 个答案:

没有答案