Printing Range of Pages using SheetRender and WorkbookRender
Microsoft Excel allows you to print range of pages of workbook or worksheet. The following screenshot shows the Microsoft Excel interface to specify the range of pages.
Aspose.Cells provides the WorkbookRender.ToPrinter(string PrinterName, int PrintPageIndex, int PrintPageCount) and SheetRender.ToPrinter(string PrinterName, int PrintPageIndex, int PrintPageCount) methods for this purpose.
Microsoft Excel Interface to specify the Range of Pages to Print
The following sample code illustrates the use of WorkbookRender.ToPrinter(string PrinterName, int PrintPageIndex, int PrintPageCount) and SheetRender.ToPrinter(string PrinterName, int PrintPageIndex, int PrintPageCount) methods. It prints the pages 2-5 of the workbook and worksheet.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create workbook from source Excel file | |
Workbook workbook = new Workbook(dataDir + "SampleBook.xlsx"); | |
string printerName = ""; | |
while (string.IsNullOrEmpty(printerName) && string.IsNullOrWhiteSpace(printerName)) | |
{ | |
Console.WriteLine("Please Enter Your Printer Name:"); | |
printerName = Console.ReadLine(); | |
} | |
ImageOrPrintOptions bookRenderOptions = new ImageOrPrintOptions(); | |
bookRenderOptions.PageIndex = 1; | |
bookRenderOptions.PageCount = 2; | |
// Print the worbook specifying the range of pages. Here we are printing pages 2-3 | |
WorkbookRender wr = new WorkbookRender(workbook, new ImageOrPrintOptions()); | |
try | |
{ | |
wr.ToPrinter(printerName); | |
} | |
catch (Exception ex) | |
{ | |
Console.WriteLine(ex.Message); | |
} | |
// Access first worksheet | |
Worksheet worksheet = workbook.Worksheets[0]; | |
ImageOrPrintOptions sheetRenderOptions = new ImageOrPrintOptions(); | |
sheetRenderOptions.PageIndex = 1; | |
sheetRenderOptions.PageCount = 2; | |
// Print the worksheet specifying the range of pages. Here we are printing pages 2-3 | |
SheetRender sr = new SheetRender(worksheet, new ImageOrPrintOptions()); | |
try | |
{ | |
sr.ToPrinter(printerName); | |
} | |
catch (Exception ex) | |
{ | |
Console.WriteLine(ex.Message); | |
} |