Bonjour les amis,

J'ai essayé toutes les techniques que j'ai trouvé sur internet, lu et essayé des tas de réponses des forums mais je ne trouve pas la solution.

jspdf 1.5.3

Je veux simplement avoir sur un format A4 avec ce que j'ai à l'écran.

Le contenu html/css à un format qui respecte le ratio de 1.41 (correspond au ratio de 21*29.7)
width: 1365px;
height: 1930px;

voici le code:
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
      let doc = new jsPDF("p","mm", "A4");
      // let doc = new jsPDF("p","mm", [290,210]);      // j'ai testé avec ça aussi
 
      const options = { background: 'white', width: 1900, height: 2800};
 
      domtoimage.toPng(div, options).then((dataUrl) => { 
 
          doc.addImage(dataUrl, 'PNG', 0, 0, 290, 297);
          let pdfOutput = doc.output();
 
          let buffer = new ArrayBuffer(pdfOutput.length);
          let array = new Uint8Array(buffer);
          for (var i = 0; i < pdfOutput.length; i++){ 
              array[i] = pdfOutput.charCodeAt(i);
          }
          ...
* j'ai mis 1900 et 2800 parceque ça rendait un truc à peu prêt correct
Code : Sélectionner tout - Visualiser dans une fenêtre à part
      const options = { background: 'white', width: 1900, height: 2800};
* j'ai mis 290 et 297 parceque ça rendait un truc à peu prêt correct
Code : Sélectionner tout - Visualiser dans une fenêtre à part
      doc.addImage(dataUrl, 'JPEG', 0, 0, 290, 297);
quelle est la logique ? les bons paramètres ?


parceque j'obtiens un truc un peu floue, un peu étiré sur la longueur... et en plus ça fait 20 mo