Un moyen facile de supprimer la page blanche générée par JasperReports.
Si votre rapport JasperReports contient un autre sous-rapport et qu'il a été généré en tant que fichier PDF. Dans certaines circonstances, une page vierge pourrait être trouvée dans le fichier PDF. Voici ma solution pour l'enlever facilement.
private void removeBlankPage(List<JRPrintPage> pages) {
for (Iterator<JRPrintPage> i=pages.iterator(); i.hasNext();) {
JRPrintPage page = i.next();
if (page.getElements().size() == 0)
i.remove();
}
}
Cette méthode doit être appelée avant de vider votre instance de JasperPrint au format PDF.
Après l'exemple de code, il serait préférable de connaître la hiérarchie des objets de JasperPrint.
- Un JasperPrint a un ou plusieurs
JRPrintPage
, vous pouvez l'obtenir via la méthode getPages()
de JasperPrint
. Il renvoie une liste de JRPrintPage
. Si vous avez trois éléments, votre imprimante imprimera 3 pages.
- Un
JRPrintPage
a un ou plusieurs JRPrintElement
, chaque élément peut être une chaîne de texte, ou une image, ou un rectangle, etc. Vous pouvez changer sa position ou son contenu dynamiquement, ou même ajouter un nouveau JRPrintElement
en JRPrintPage
.
CREDITS: http://mattjiang.blogspot.in/2007/05/easy-way-to-remove-blank-page-generated.html
Vous devez ajouter les informations utiles de votre lien vers votre réponse en tant modifier. Nous n'aimons pas seulement les réponses de lien ici. –