Bonjour à tous,

j'ai un problème avec JasperReport.

Je fait de l'impression de BVRB (Bulletins de Versements Bancaires), et la police du numéro de référence doit absolument être OCR-B. Les bulletins sont exportés en PDF.

Mon problème est que je n'arrive pas à intégrer la police en question au pdf.

J'ai fait comme ceci:

dans ma webapp, ajout de la police au classpath (à 2 endroits histoire d'être sûr de la mettre à la bonne place)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
+-- ROOT 
  +-- OCR_BB.TTF
  +-- META-INF
  +-- WEB-INF
    +-- OCR_BB.TTF
Dans mon rapport, définition de la police et intégration dans le pdf:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
                    <textElement textAlignment="Right">
                        <font fontName="OCR-B" pdfFontName="OCR_BB.TTF" size="12" isPdfEmbedded ="true"/>
                    </textElement>

Et dans mon code java, j'ajoute la police de cette manière:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
Map<FontKey, PdfFont> fontMap = new HashMap<FontKey, PdfFont>();
FontKey key = new FontKey("OCR-B", true, false);
PdfFont font = new PdfFont("OCR_BB.TTF", "UTF-8", true);
fontMap.put(key, font);
 
JRPdfExporter exporter = new JRPdfExporter();
exporter.setParameter(JRExporterParameter.FONT_MAP, fontMap);
...

Et avec le code ci-dessus, j'ai le comportement suivant:
- la police est ok dans le pdf si elle est à la fois installée sur mon serveur et chez mon client
- dans tous les autres cas, j'ai un beau carré blanc qui s'affiche...

Quelqu'un pourrait-il m'expliquer ce que je fais faux?

Merci d'avance