Convertir archivo XLSX a formato PDF con JavaScript vía C++
PDF (Formato de Documento Portátil) representa documentos de manera independiente del software, hardware y sistema operativo utilizados para crear esos documentos. Un archivo PDF puede ser documentos con cualquier combinación de texto, gráficos e imágenes de manera independiente del dispositivo y de la resolución. Los archivos PDF suelen estar comprimidos, por lo que ocupan menos espacio que el archivo original.
En ocasiones, necesitas convertir un archivo de Microsoft Excel a PDF. Para ello, necesitas una solución rápida, segura, precisa y confiable que te permita distribuir documentos PDF en todo el mundo. Existen numerosas herramientas de conversión que pueden realizar esta tarea. Pero debes asegurarte de que el diseño del documento Excel original se conserve en el archivo PDF de salida. Imágenes, gráficos, formas, formato de datos, fuentes, atributos, colores, configuración de página, orientación del texto, bordes, gráficos, etc., deben renderizarse con precisión y exactitud. Aspose.Cells garantiza una conversión de alta fidelidad.
Este documento está diseñado para proporcionar una comprensión completa de cómo un documento de Microsoft Excel (que contiene imágenes, gráficos, formato, etc.) puede convertirse a PDF. Para ello, muestra cómo crear una sencilla aplicación de consola en JavaScript vía C++ que convierte un archivo de Excel a PDF usando la API de Aspose.Cells. La conversión se realiza con un alto grado de precisión y exactitud.
Convirtiendo Excel a PDF
Este ejemplo utiliza un archivo de Excel (SampleInput.xlsx) como plantilla. El libro contiene hojas con gráficos e imágenes. Cada hoja presenta diferentes tipos de formatos usando fuentes, atributos, colores, efectos de sombreado y bordes. Hay un gráfico de columnas en la primera hoja y una imagen en la última.
El archivo de plantilla de Excel
El archivo plantilla tiene tres hojas, incluyendo gráficos e imágenes como medios. La primera hoja tiene gráficos y la última hoja tiene una imagen, como se muestra en las capturas de pantalla.
![]() |
![]() |
|---|---|
| La primera hoja de trabajo (Pronóstico de ventas) | La segunda hoja de trabajo (Informe de ventas) |
![]() |
![]() |
| La tercera hoja de trabajo (Entrada de datos) | La última hoja de trabajo (Imagen) |
Proceso de conversión
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example - Excel to PDF</title>
</head>
<body>
<h1>Excel to PDF Example</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Convert to PDF</button>
<a id="downloadLink" style="display: none;"></a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, Utils } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
});
document.getElementById('runExample').addEventListener('click', async () => {
const fileInput = document.getElementById('fileInput');
if (!fileInput.files.length) {
document.getElementById('result').innerHTML = '<p style="color: red;">Please select an Excel file.</p>';
return;
}
const file = fileInput.files[0];
const arrayBuffer = await file.arrayBuffer();
// Instantiating a Workbook object with the uploaded file
const workbook = new Workbook(new Uint8Array(arrayBuffer));
// Saving the PDF file
const outputData = workbook.save(SaveFormat.Pdf);
const blob = new Blob([outputData], { type: 'application/pdf' });
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'Output.out.pdf';
downloadLink.style.display = 'block';
downloadLink.textContent = 'Download PDF File';
document.getElementById('result').innerHTML = '<p style="color: green;">PDF generated successfully! Click the download link to get the PDF file.</p>';
});
</script>
</html>
Resultado
Cuando se ha ejecutado el código anterior, se crea un archivo PDF en la carpeta de archivos de su directorio de aplicación. Las siguientes capturas de pantalla muestran las páginas del PDF. Tenga en cuenta que los encabezados y pies de página también se conservan en el archivo PDF de salida.
![]() |
![]() |
|---|---|
| La primera hoja de trabajo (Pronóstico de ventas) | La segunda hoja de trabajo (Informe de ventas) |
![]() |
![]() |
| La tercera hoja de trabajo (Entrada de datos) | La última hoja de trabajo (Imagen) |







