J'ai un rapport conçu avec IREPORT 1.3.0. Ce rapport comprend plusieurs images, qui sont chargées de manière dynamique. Ensuite, j'utilise Quelqu'un peut-il me dire ce que je fais mal? p>
Merci. P> jasperrunmanager.runreportopdfffile code> pour créer le fichier PDF. Tout dans le PDF a l'air bien à l'exception des images, qui apparaissent à l'échelle. P>
3 Réponses :
Si vous enregistrez le rapport en tant que HTML, vous remarquerez que le logo apparaît correctement. p>
Les fichiers image tels que PNG sont des images raster: stockées comme pixels individuels. P>
Alors que les fichiers PDF sont principalement vectorisés: les éléments à l'intérieur sont stockés comme des descriptions de la manière de les dessiner. Cela permet aux pdfs d'échelle et d'être lisibles à n'importe quelle taille. P>
L'utilisation d'une image raster dans un format vectoriel entraînera probablement un effet pixelé. P>
Vous avez quelques options pour que les images correspondent à la qualité du texte, par ordre de facilité: p>
L'image sera tranchante jusqu'à environ 400% de zoom. P>
L'image aura l'air aigu chaque résolution. Remplacez la normale
<image hAlign="Center" vAlign="Middle">
<reportElement x="0" y="0" width="179" height="66"/>
<imageExpression class="net.sf.jasperreports.engine.JRRenderable"><![CDATA[net.sf.jasperreports.renderers.BatikRenderer.getInstance(new java.io.File("/path/to/logo.svg"))]]></imageExpression>
</image>
Il n'est pas nécessaire de définir la propriété Classe Code> dans des versions plus récentes de JasperReports (au cas où vous vous demandez comment définir cela sur
jrdesignexpression code>).
La résolution est ce qui me corrigé. J'ai fait l'image énorme et cela a fonctionné.
à la version 4.0.1 La résolution d'images raster doit être préservée et vous pouvez également améliorer la résolution des graphiques lors de l'utilisation d'autres options d'exportation (XLS, RTF, HTML, etc.). La valeur par défaut n'est qu'un très faible 72 dpi. P>
Dans Options d'IRPORT> Propriétés JasperReport Modifier P>
net.sf.jasperreporrs.image.dpi em> 300 em> strong> p> p>
http://jasperforge.org/projects/jasperreports/tracker/ Voir.php? id = 3411 p>
Dans les versions plus récentes, vous devez configurer le net.sf.jasperreports.image.dpi code> global en définissant un
jasperreports.properties code> fichier intérieur
web-inf. / Classes / CODE> Dossier avec cette ligne:
net.sf.jasperreports.image.dpi=300
Je viens de télécharger et d'installer la version la plus récente (4.0.0). J'ai essayé un aperçu du rapport et les images apparaissent toujours à l'échelle. Il doit y avoir un paramètre de configuration, je manque, mais je ne peux pas comprendre lequel. S'il vous plaît aider!