Limit the Number of Pages Generated - Excel to PDF Conversion with JavaScript via C++
Contents
[
Hide
]
Sometimes you want to print a range of pages to an output PDF file. Aspose.Cells for JavaScript via C++ has the ability to set a limit on how many pages are generated when converting an Excel spreadsheet to the PDF file format.
Limiting the Number of Pages Generated
The following example shows how to render a range of pages (3 and 4) in a Microsoft Excel file to PDF.
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells PDF Export Example</title>
</head>
<body>
<h1>Export Specific Pages to PDF</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, PdfSaveOptions } = 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();
// Open an Excel file
const workbook = new Workbook(new Uint8Array(arrayBuffer));
// Instantiate the PdfSaveOptions
const options = new PdfSaveOptions();
// Print only Page 3 and Page 4 in the output PDF
// Starting page index (0-based index)
options.pageIndex = 3;
// Number of pages to be printed
options.pageCount = 2;
// Save the PDF file
const outputData = workbook.save(SaveFormat.Pdf, options);
const blob = new Blob([outputData], { type: 'application/pdf' });
const downloadLink = document.getElementById('downloadLink');
downloadLink.href = URL.createObjectURL(blob);
downloadLink.download = 'outPDF1.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 file.</p>';
});
</script>
</html>
If the spreadsheet contains formulas, it is best to call Workbook.calculateFormula() just before rendering it to PDF. Doing so ensures that formula‑dependent values are recalculated, and the correct values are rendered in the output file.