2011-07-15 10 views
1

解放フォントをgrails warと一緒にパッケージ化するにはどうすればよいですか?私が配備しているサーバーではフォントが利用できない可能性があり、レポートシステムにフォントが必要です。grails warにLiberationの.ttfフォントを含める?

フォントを戦場に含めてクラスパス上にあり、JVMで使用できるようにするにはどうすればよいですか?

+0

リソースフォルダにバンドルして、Fontクラスを使用してロードしてみましたか? - http://stackoverflow.com/questions/5902229/custom-fonts-in-javaを参照してください。 – Perception

答えて

2

明示的にジャスパーレポートを使用している場合は、これを行うだけです。

Grailsのアプリ/ confに/ jasperreports_extension.properties

net.sf.jasperreports.extension.registry.factory.simple.font.families=net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory 
net.sf.jasperreports.extension.simple.font.families.liberationsans=jasper_fonts.xml 

Grailsのアプリ/ confに/ jasper_fonts.xmlあなたのTTFフォントのための適切な

<?xml version="1.0" encoding="UTF-8"?> 
<fontFamilies> 
    <fontFamily name="Liberation Sans"> 
     <normal>lib/fonts/liberation-fonts-ttf-1.07.0/LiberationSans-Regular.ttf</normal> 
     <bold>lib/fonts/liberation-fonts-ttf-1.07.0/LiberationSans-Bold.ttf</bold> 
     <italic>lib/fonts/liberation-fonts-ttf-1.07.0/LiberationSans-Italic.ttf</italic> 
     <boldItalic>lib/fonts/liberation-fonts-ttf-1.07.0/LiberationSans-BoldItalic.ttf</boldItalic> 
     <pdfEncoding>Identity-H</pdfEncoding> 
     <pdfEmbedded>true</pdfEmbedded> 
     <exportFonts> 
      <export key="net.sf.jasperreports.html">'Liberation Sans', Arial, Helvetica, sans-serif</export> 
      <export key="net.sf.jasperreports.xhtml">'Liberation Sans', Arial, Helvetica, sans-serif</export> 
     </exportFonts> 
    </fontFamily> 
</fontFamilies> 

修正。 <exportFonts>要素に注意してください.HTMLレポートは中断しないようにしてください。

関連する問題