Bonjour,

avec iText, je découpe un PDF en plusieurs PDF unitaires. Ces PDF unitaires peuvent avoir 1 à n pages (j'ai 2 variables pageDebut et pageFin). Les PDF unitaires en sortie font en moyenne plus de 1Mo. Il faut que je réduise ce poids. J'ai essayé de passer setFullCompression, mais de 1101Ko, je suis passé à 1088Ko. Comment améliorer cette compression ? Mon code peut-il être amélioré ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
// On initialise les constantes
Constantes constantes = new Constantes();
PdfReader reader = new PdfReader(constantes.INPUT_PATH + "\\" + "fichier_prod.pdf");
String outFile = cheminSortie + "\\FichierUnitaire-" + "-" + pageDebut + "-" + pageFin + ".pdf";
 
Document document = new Document(reader.getPageSizeWithRotation(1));
PdfCopy writer = new PdfCopy(document, new FileOutputStream(outFile));
writer.setPdfVersion(PdfCopy.PDF_VERSION_1_5); 	 	    
writer.setFullCompression();
document.open();
// Appel fonction d'ajout de pages dans un PDF
addPagesPDF(pageDebut,pageFin, writer, reader);
document.close();
writer.close();
 
//La fonction addPages :
public static void addPagesPDF(String pageDebut, String pageFin, PdfCopy writer, PdfReader reader) throws IOException, DocumentException {
 int i = Integer.parseInt(pageDebut);
 while(i <= Integer.parseInt(pageFin)) {		
       	PdfImportedPage pages = writer.getImportedPage(reader, i);
       	writer.addPage(pages);        	
        i++;
 }
}
Merci pour les pistes que vous pourrez m'apporter.
Cdlt,