From 34edf5646cee8050a58dfb874460cf4d0c0ec2ff Mon Sep 17 00:00:00 2001 From: pablo rodriguez <58742538+1-pablo-rodriguez@users.noreply.github.com> Date: Tue, 4 Jul 2023 15:10:29 +0200 Subject: [PATCH] =?UTF-8?q?Am=C3=A9lioration=20:=20L'impression=20des=20fe?= =?UTF-8?q?uilles=20d'=C3=A9margement.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- resources/accueil.svg | 4 +-- src/baseUFRHG/FileSaveXLSX.java | 2 +- src/baseUFRHG/Window_demarre.java | 2 +- src/baseUFRHG/createEmargement.java | 47 +++++++++++++++++++++++------ 4 files changed, 41 insertions(+), 14 deletions(-) diff --git a/resources/accueil.svg b/resources/accueil.svg index 4712562..30f5e07 100644 --- a/resources/accueil.svg +++ b/resources/accueil.svg @@ -192,7 +192,7 @@ inkscape:current-layer="layer1" inkscape:document-units="mm" inkscape:cy="46.440375" - inkscape:cx="362.94484" + inkscape:cx="257.64055" inkscape:zoom="1.6903395" inkscape:pageshadow="2" inkscape:pageopacity="0.0" @@ -224,7 +224,7 @@ inkscape:groupmode="layer" inkscape:label="Calque 1">pablo rodriguez - 2023
Version 1.0.1"); + JLabel lblNewLabel_3 = new JLabel("pablo rodriguez - 2023
Version 1.0.2"); lblNewLabel_3.setVerticalAlignment(SwingConstants.TOP); lblNewLabel_3.setHorizontalAlignment(SwingConstants.LEFT); lblNewLabel_3.setFont(new Font("Tahoma", Font.BOLD, 15)); diff --git a/src/baseUFRHG/createEmargement.java b/src/baseUFRHG/createEmargement.java index 304b0bc..6947e42 100644 --- a/src/baseUFRHG/createEmargement.java +++ b/src/baseUFRHG/createEmargement.java @@ -13,6 +13,7 @@ import javax.swing.JProgressBar; import javax.swing.SwingConstants; import javax.swing.SwingWorker; +import org.apache.poi.hssf.usermodel.HeaderFooter; import org.apache.poi.ss.usermodel.BorderStyle; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellStyle; @@ -38,7 +39,7 @@ public class createEmargement extends JFrame{ JPanel panel; String path; - public createEmargement(Object[][] data, String nameFileWithPath){ + public createEmargement(Object[][] data, String nameFileWithPath, String nameFile){ this.path = nameFileWithPath; @@ -68,7 +69,7 @@ public class createEmargement extends JFrame{ this.fr.setVisible(true); - processTask = new ProcessTask(data); + processTask = new ProcessTask(data,nameFile); processTask.execute(); this.dispose(); @@ -78,9 +79,11 @@ public class createEmargement extends JFrame{ private class ProcessTask extends SwingWorker { private Object[][] data; + private String nameFile; - public ProcessTask(Object[][] data) { + public ProcessTask(Object[][] data, String nameFile) { this.data = data; + this.nameFile = nameFile; } @@ -125,6 +128,8 @@ public class createEmargement extends JFrame{ blueCellStyle.setFont(font1); + String nameFormation = ""; + // Définir la hauteur de la ligne 4 (1 cm) int heightInPoints = (int) (1 * 72 / 2.54); //1cm int heightInPoints2 = (int) (0.8 * 72 / 2.54); //0.8cm @@ -132,7 +137,7 @@ public class createEmargement extends JFrame{ for (int i = 0; i < rows; i++) { publish(i); - String nameFormation = (String) data[i][0]; + nameFormation = (String) data[i][0]; String[][] data1 = (String[][]) data[i][columns-1]; Sheet sheet = workbook.createSheet(nameFormation); @@ -203,18 +208,40 @@ public class createEmargement extends JFrame{ - // Définir la largeur de la colonne B (2 cm) - int widthInCharsB = (int) (2 * 256 / 0.146); + //Définir la largeur de la colonne B (2 cm) + int widthInCharsB = (int) (1.8 * 256 / 0.146); sheet.setColumnWidth(1, widthInCharsB); - // Définir la largeur de la colonne E (6 cm) - int widthInCharsE = (int) (6 * 256 / 0.146); - sheet.setColumnWidth(4, widthInCharsE); - sheet.autoSizeColumn(0); sheet.autoSizeColumn(2); sheet.autoSizeColumn(3); + +// // Définir la largeur de la colonne E (6 cm) +// int widthInCharsE = (int) (6 * 256 / 0.146); +// sheet.setColumnWidth(4, widthInCharsE); + + // Estimer la largeur de la feuille A4 en unités de 1/256ème de caractère + int a4WidthUnits = 22000 ; //(17 * 256)/0.146; // Largeur de la feuille A4 en unités de 1/256ème de caractère +// int a4WidthUnits = 16250; + // Obtenir la largeur totale des colonnes A à D en unités de 1/256ème de caractère + int widthOfColumnsAtoD = 0; + for (int columnIndex = 0; columnIndex < 4; columnIndex++) { + widthOfColumnsAtoD += sheet.getColumnWidth(columnIndex); + } + + // Calculer la largeur restante en unités de 1/256ème de caractère + int remainingWidthUnits = a4WidthUnits - widthOfColumnsAtoD; + + // Définir la largeur de la colonne E en unités de 1/256ème de caractère + sheet.setColumnWidth(4, remainingWidthUnits); + + // Définir l'en-tête de la feuille de calcul + sheet.getHeader().setCenter("Emargement : " + nameFile); + + // Définir le pied de page + sheet.getFooter().setCenter("Page " + HeaderFooter.page()); + } // Enregistrer le classeur dans un fichier