Añadir Encabezado y Pie de Página a PDF mediante JavaScript a través de C++
Aspose.PDF para JavaScript a través de C++ te permite añadir encabezado y pie de página en tu archivo PDF existente.
-
Crea un ‘FileReader’.
-
Se ejecuta la función AsposePdfAddTextHeaderFooter.
-
Se establece el nombre del archivo resultante, en este ejemplo “ResultAddHeader.pdf”.
-
A continuación, si el ‘json.errorCode’ es 0, entonces su DownloadFile recibe el nombre que especificó anteriormente. Si el parámetro ‘json.errorCode’ no es igual a 0 y, en consecuencia, hay un error en su archivo, entonces la información sobre tal error se contendrá en el archivo ‘json.errorText’.
-
Como resultado, la función DownloadFile genera un enlace y le permite descargar el archivo resultante al sistema operativo del usuario.
El siguiente fragmento de código le muestra cómo agregar texto en el encabezado de un archivo PDF con JavaScript.
var ffileAddTextHeaderFooter = function (e) {
const file_reader = new FileReader();
file_reader.onload = (event) => {
/*agregar encabezado de página a un archivo PDF y guardar el "ResultAddHeader.pdf"*/
const json = AsposePdfAddTextHeaderFooter(event.target.result, e.target.files[0].name, "Aspose.PDF for JavaScript via C++", "", "ResultAddHeader.pdf");
if (json.errorCode == 0) document.getElementById('output').textContent = json.fileNameResult;
else document.getElementById('output').textContent = json.errorText;
/*crear un enlace para descargar el archivo resultante*/
DownloadFile(json.fileNameResult, "application/pdf");
};
file_reader.readAsArrayBuffer(e.target.files[0]);
};
Usando Web Workers
/*Crear Web Worker*/
const AsposePDFWebWorker = new Worker("AsposePDFforJS.js");
AsposePDFWebWorker.onerror = evt => console.log(`Error desde Web Worker: ${evt.message}`);
AsposePDFWebWorker.onmessage = evt => document.getElementById('output').textContent =
(evt.data == 'ready') ? '¡cargado!' :
(evt.data.json.errorCode == 0) ?
`Resultado:\n${DownloadFile(evt.data.json.fileNameResult, "application/pdf", evt.data.params[0])}` :
`Error: ${evt.data.json.errorText}`;
/*Manejador de eventos*/
const ffileAddTextHeaderFooter = e => {
const file_reader = new FileReader();
file_reader.onload = event => {
const header = 'Aspose.PDF for JavaScript via C++';
const footer = 'ASPOSE';
/*Agregar texto en Encabezado/Pie de página de un archivo PDF y guardar el "ResultAddHeaderFooter.pdf" - Solicitar a 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]);
};
/*Crear un enlace para descargar el archivo resultante*/
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 = "Haz clic aquí para descargar el archivo " + filename;
document.body.appendChild(link);
document.body.appendChild(document.createElement("br"));
return filename;
}