読者です 読者をやめる 読者になる 読者になる

JRuby+iTextでフォントを追加する方法

JRuby iText

PDFで帳票を作成するプログラムを書いていて、デザイナーの方からニタラゴルイカというフォントを使いたいという話があり、それに対応しました。

以下のように、createFontメソッドに.ttfのPATHを渡すことで、ニタラゴルイカを利用することができました。

java_import 'com.itextpdf.text.pdf.BaseFont'

bf = BaseFont.createFont(Rails.root.join('lib').join('NitalagoRuikaMono-01.TTF').to_s, BaseFont::IDENTITY_H, BaseFont::EMBEDDED)
directcontent.setFontAndSize(bf, 6)
directcontent.setRGBColorFill(0, 0, 0)
directcontent.moveText(100, 150)
directcontent.showText('This is test.')
directcontent.endText

参考:竹形誠司 ブログ:Java+MySQL+Tomcat:iText(PDFライブラリ)で使えるフォント