5

In Jaspersoft Studio ho creato un report in cui voglio visualizzare il titolo in grassetto. Se uso font sans serif, funziona correttamente. Se utilizzo altri font, il grassetto viene visualizzato nell'anteprima di Jaspersoft Studio, ma non viene mostrato quando il report viene eseguito nel server Jasper. Per favore aiuto.Grassetto non funziona in Jaspersoft Studio per font diversi da sans serif

+0

Per i caratteri corretti nei PDF sono necessarie considerazioni speciali. Per JasperReports le estensioni dei font della libreria incorporata sono una soluzione. Non so, però, come fare l'equivalente sul server Jasper. – mkl

+0

Vedere: http://community.jaspersoft.com/wiki/custom-font-font-extension –

risposta

3

È necessario creare un jar di estensione di caratteri jasper e inserirlo nel classpath sia in fase di compilazione (durante la compilazione di jrxmls) sia in fase di esecuzione (durante l'esecuzione di report). Ecco come il vaso (ad esempio JasperReports-fonts-5.5.2.jar) dovrebbe apparire:

pic1

pic2

I jasperreports_extension.properties dovrebbero contenere alcune proprietà per inizializzare tipi di carattere. (Ho usato basato primavera caratteri di inizializzazione. Potrebbe essere necessario aggiungere paio di vasi di primavera come la primavera-core, spring-fagioli ecc per classpath, se non è già presente.)

net.sf.jasperreports.extension.registry.factory.fonts=net.sf.jasperreports.extensions.SpringExtensionsRegistryFactory 
net.sf.jasperreports.extension.fonts.spring.beans.resource=fonts/fonts_def.xml 

Ora il fonts.xml per definire quali tipi di carattere si desidera aggiungere.

<?xml version="1.0" encoding="UTF-8"?> 
<beans xmlns="http://www.springframework.org/schema/beans" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://www.springframework.org/schema/beans 
      http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> 

    <bean id="fontBean001" class="net.sf.jasperreports.engine.fonts.SimpleFontFamily"> 
     <property name="name" value="Tahoma"/> 
     <property name="normal" value="fonts/Tahoma.ttf"/> 
     <property name="bold" value="fonts/Tahoma_Bold.ttf"/> 
     <property name="pdfEmbedded" value="true"/> 
    </bean> 

    <bean id="fontBean002" class="net.sf.jasperreports.engine.fonts.SimpleFontFamily"> 
     <property name="name" value="Arial"/> 
     <property name="normal" value="fonts/Arial.ttf"/> 
     <property name="bold" value="fonts/Arial_Bold.ttf"/> 
     <property name="italic" value="fonts/Arial_Italic.ttf"/> 
     <property name="boldItalic" value="fonts/Arial_Bold_Italic.ttf"/> 
     <property name="pdfEmbedded" value="true"/> 
    </bean> 

</beans> 

Nota la proprietà "pdfEmbedded" è "true". Infine aggiungi il file .ttf per i font che vuoi aggiungere a jar.

0

Basta andare a questo sito per aggiungere i font personalizzati in PDF con Jasper

https://community.jaspersoft.com/wiki/custom-font-font-extension 

Con le immagini la sua menzionati come crearlo. Basta eseguire il downlod di un file * .ttf per il tuo font. (Ad esempio: Arial.ttf).

Creare l'estensione ed esportarlo come un barattolo con l'aiuto di eclipse.

Infine aggiungi quel barattolo al tuo progetto. Questo è tutto.

Problemi correlati