web-dev-qa-db-fra.com

Utiliser des polices personnalisées lors de la création de pdf à l'aide d'iReport

version d'iReport: 3.7.1

J'ai abordé ce problème de deux manières.

Ma première méthode

Je crée une page pdf dans iReport et l'un des champs (de la base de données) est défini sur une police Gujarati-Salarl (une police pour une langue régionale de l'Inde).

Cette police est disponible dans la liste des polices de iReport. Lorsque je clique sur Aperçu, j'obtiens la sortie souhaitée, avec le champ dans le style de police requis.

Tout va bien jusqu'à ici.

Mais le fichier pdf généré contient toujours la même police originale en caractères anglais.

Le résultat est le même si j'appelle le rapport depuis l'application ou depuis un fichier Java.

Après un peu d'étude, j'ai trouvé ceci, une deuxième méthode

JRProperties.setProperty("net.sf.jasperreports.default.pdf.font.name", "C:\\Gujrati-Saral-1.ttf");

Ceci définit la police de la pdf sur la police ttf fournie, mais maintenant la totalité de la pdf est dans la police Guarati-saral, ce qui n’est pas ce que je recherche.

Existe-t-il un moyen d’appliquer spécifiquement cette police uniquement à ce domaine particulier?

ou 

en passant par la deuxième méthode, y a-t-il un moyen de ne pas appliquer la police Guarati-saral à tous les autres champs sauf celui requis?

17
Sangeet Menon

Vous devriez utiliser le mécanisme Font Extensions

Une fois la police créée et exportée sous forme de fichier jar, vous devez ajouter le fichier jar généré au chemin d'accès aux classes de l'application.

a) Créer une nouvelle police dans iReport (via Options -> Polices -> Bouton "Installer la police")

Creating the new font descriptor in iReport

b) Exporter la nouvelle police (ou celle existante) sous forme de fichier jar dans iReport (via Options -> Polices -> Bouton "Exporter en tant qu’extension")

enter image description here

a) Créer une nouvelle police dans JasperReports Studio (via Fenêtre -> Préférences -> JasperStudio -> Polices -> Bouton "Ajouter")

b) Configurez vos polices

Exporting font as jar file

c) Créez un fichier JAR contenant vos polices

Export Font Jar

enter image description here

Vous pouvez trouver plus d’informations sur l’utilisation de Font Extensionsici .

25
Alex K

Pour ceux qui ont besoin de la langue russe dans Jasper Reports (du moins dans les versions précédentes), la combinaison suivante fait l'affaire sans utiliser l'extension de police:

Nom de la police: SanSerif PDF Police: Courier PDF Codage: CP1251 PDF incorporé: Oui (incertain, cela peut fonctionner même sans)

Alexey Bakhmutov

0
Alexey Bakhmutov

si vous rencontrez des problèmes pour afficher les caractères UTF-8 dans le fichier pdf, à partir de la version 4.8.0 de l’IReport, inutile de rien faire! Il suffit de changer la police des cellules du tableau de sanserif à Dejavu sans. c'est tout.

0
Rodniko