Ajouter un en-tête et un pied de page au PDF via JavaScript via C++

Aspose.PDF pour JavaScript via C++ vous permet d’ajouter un en-tête et un pied de page dans votre fichier PDF existant.

  1. Créez un ‘FileReader’.

  2. La fonction AsposePdfAddTextHeaderFooter est exécutée.

  3. Le nom du fichier résultant est défini, dans cet exemple “ResultAddHeader.pdf”.

  4. Ensuite, si le ‘json.errorCode’ est 0, alors votre DownloadFile reçoit le nom que vous avez spécifié précédemment. Si le paramètre ‘json.errorCode’ n’est pas égal à 0 et, en conséquence, il y aura une erreur dans votre fichier, alors les informations concernant cette erreur seront contenues dans le fichier ‘json.errorText’.

  5. En conséquence, la fonction DownloadFile génère un lien et vous permet de télécharger le fichier résultant sur le système d’exploitation de l’utilisateur.

Le code suivant vous montre comment ajouter du texte dans l’en-tête d’un fichier PDF avec JavaScript.


  var ffileAddTextHeaderFooter = function (e) {
    const file_reader = new FileReader();
    file_reader.onload = (event) => {
      /*ajouter un en-tête de page à un fichier PDF et enregistrer le "ResultAddHeader.pdf"*/
      const json = AsposePdfAddTextHeaderFooter(event.target.result, e.target.files[0].name, "Aspose.PDF pour JavaScript via C++", "", "ResultAddHeader.pdf");
      if (json.errorCode == 0) document.getElementById('output').textContent = json.fileNameResult;
      else document.getElementById('output').textContent = json.errorText;
      /*créer un lien pour télécharger le fichier résultat*/
      DownloadFile(json.fileNameResult, "application/pdf");
    };
    file_reader.readAsArrayBuffer(e.target.files[0]);
  };

Utilisation des Web Workers


    /*Créer un Web Worker*/
    const AsposePDFWebWorker = new Worker("AsposePDFforJS.js");
    AsposePDFWebWorker.onerror = evt => console.log(`Erreur du Web Worker : ${evt.message}`);
    AsposePDFWebWorker.onmessage = evt => document.getElementById('output').textContent = 
      (evt.data == 'ready') ? 'chargé!' :
        (evt.data.json.errorCode == 0) ?
          `Résultat:\n${DownloadFile(evt.data.json.fileNameResult, "application/pdf", evt.data.params[0])}` :
          `Erreur: ${evt.data.json.errorText}`;

    /*Gestionnaire d'événements*/
    const ffileAddTextHeaderFooter = e => {
      const file_reader = new FileReader();
      file_reader.onload = event => {
        const header = 'Aspose.PDF for JavaScript via C++';
        const footer = 'ASPOSE';
        /*Ajouter du texte dans l'en-tête/pied de page d'un fichier PDF et enregistrer le "ResultAddHeaderFooter.pdf" - Demander au Web Worker*/
        AsposePDFWebWorker.postMessage(
          { "operation": 'AsposePdfAddTextHeaderFooter',
            "params": [event.target.result, e.target.files[0].name, header, footer, "ResultAddHeaderFooter.pdf"] },
          [event.target.result]
        );
      };
      file_reader.readAsArrayBuffer(e.target.files[0]);
    };

    /*Créer un lien pour télécharger le fichier résultat*/
    const DownloadFile = (filename, mime, content) => {
        mime = mime || "application/octet-stream";
        var link = document.createElement("a"); 
        link.href = URL.createObjectURL(new Blob([content], {type: mime}));
        link.download = filename;
        link.innerHTML = "Cliquez ici pour télécharger le fichier " + filename;
        document.body.appendChild(link); 
        document.body.appendChild(document.createElement("br"));
        return filename;
      }