Imprimir y vista previa de libro de trabajo
Introducción a la impresión
Microsoft Excel asume que desea imprimir toda el área de la hoja de cálculo a menos que especifique una selección. Para imprimir usando Aspose.Cells, primero importe el espacio de nombres Aspose.Cells.Rendering al programa. Tiene varias clases útiles, por ejemplo, SheetRender y WorkbookRender.
Impresión usando SheetRender
La clase Aspose.Cells.Rendering.SheetRender representa una hoja de cálculo y tiene el método ToPrinter que puede imprimir una hoja de cálculo. El siguiente código de muestra muestra cómo imprimir una hoja de cálculo.
// 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); | |
// Instantiate a workbook with 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(); | |
} | |
// Define a worksheet. | |
Worksheet worksheet; | |
// Get the second sheet. | |
worksheet = workbook.Worksheets[1]; | |
// Apply different Image/Print options. | |
Aspose.Cells.Rendering.ImageOrPrintOptions options = new Aspose.Cells.Rendering.ImageOrPrintOptions(); | |
options.PrintingPage = PrintingPageType.Default; | |
SheetRender sr = new SheetRender(worksheet, options); | |
Console.WriteLine("Printing SampleBook.xlsx"); | |
// Print the sheet. | |
try | |
{ | |
sr.ToPrinter(printerName); | |
Console.WriteLine("Pinting finished."); | |
} | |
catch (Exception ex) | |
{ | |
Console.WriteLine(ex.Message); | |
} |
Impresión usando WorkbookRender
Para imprimir un libro completo, recorra las hojas e imprímalas, o use la clase WorkbookRender.
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Source directory | |
string sourceDir = RunExamples.Get_SourceDirectory(); | |
// Instantiate a workbook with an Excel file. | |
Workbook workbook = new Workbook(sourceDir + "samplePrintingUsingWorkbookRender.xlsx"); | |
string printerName = "doPDF 8"; | |
// Apply different Image/Print options. | |
Aspose.Cells.Rendering.ImageOrPrintOptions options = new Aspose.Cells.Rendering.ImageOrPrintOptions(); | |
options.ImageType = Drawing.ImageType.Tiff; | |
options.PrintingPage = PrintingPageType.Default; | |
// To print a whole workbook, iterate through the sheets and print them, or use the WorkbookRender class. | |
WorkbookRender wr = new WorkbookRender(workbook, options); | |
try | |
{ | |
// Print the workbook. | |
wr.ToPrinter(printerName); | |
} | |
catch (Exception ex) | |
{ | |
Console.WriteLine(ex.Message); | |
} |
Vista previa de impresión
Puede haber casos en los que se necesite convertir archivos de Excel con millones de páginas a PDF o imágenes. Procesar tales archivos consumirá mucho tiempo y recursos. En tales casos, la función de vista previa de impresión del libro y la hoja de cálculo puede resultar útil. Antes de convertir dichos archivos, el usuario puede verificar el número total de páginas y decidir si se debe convertir o no. Este artículo se centra en el uso de las clases WorkbookPrintingPreview y SheetPrintingPreview para averiguar el número total de páginas.
Aspose.Cells proporciona la función de vista previa de impresión. Para esto, la API proporciona las clases WorkbookPrintingPreview y SheetPrintingPreview. Para crear la vista previa de impresión de todo el libro de trabajo, cree una instancia de la clase WorkbookPrintingPreview pasando objetos Workbook y ImageOrPrintOptions al constructor. La clase WorkbookPrintingPreview proporciona un método EvaluatedPageCount que devuelve el número de páginas en la vista previa generada. Al igual que la clase WorkbookPrintingPreview, la clase SheetPrintingPreview se utiliza para generar una vista previa de impresión para una hoja de cálculo específica. Para crear la vista previa de impresión de una hoja de cálculo, cree una instancia de la clase SheetPrintingPreview pasando objetos Worksheet y ImageOrPrintOptions al constructor. La clase SheetPrintingPreview también ofrece un método EvaluatedPageCount que devuelve el número de páginas en la vista previa generada.
El siguiente fragmento de código demuestra el uso de las clases WorkbookPrintingPreview y SheetPrintingPreview utilizando el archivo de Excel de muestra.
Código de muestra
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Source directory | |
string sourceDir = RunExamples.Get_SourceDirectory(); | |
Workbook workbook = new Workbook(sourceDir + "Book1.xlsx"); | |
ImageOrPrintOptions imgOptions = new ImageOrPrintOptions(); | |
WorkbookPrintingPreview preview = new WorkbookPrintingPreview(workbook, imgOptions); | |
Console.WriteLine("Workbook page count: " + preview.EvaluatedPageCount); | |
SheetPrintingPreview preview2 = new SheetPrintingPreview(workbook.Worksheets[0], imgOptions); | |
Console.WriteLine("Worksheet page count: " + preview2.EvaluatedPageCount); |
A continuación se muestra la salida generada al ejecutar el código anterior.
Salida de la consola
Workbook page count: 1
Worksheet page count: 1
Temas avanzados
- Configuración de fuentes para la representación de hojas de cálculo
- Convertir hoja de cálculo a imagen - Eliminar espacios alrededor de los datos
- Conversión de hoja de cálculo a imagen y hoja de cálculo a imagen por página
- Conversión de hoja de cálculo a imagen usando opciones de imagen o impresión
- Exportar un rango de celdas en una hoja de cálculo a una imagen
- Exportar hoja de cálculo o gráfico a imagen con ancho y alto deseados
- Extraer imágenes de las hojas de cálculo usando opciones de imagen o impresión
- Generar miniatura de la hoja de cálculo
- Página en Blanco de Salida cuando no hay Nada que Imprimir
- Configuración de página y opciones de impresión
- Impresión de un rango de páginas usando SheetRender y WorkbookRender
- Renderizar secuencia de páginas usando las propiedades PageIndex y PageCount de ImageOrPrintOptions
- Renderizar la hoja de cálculo en contexto gráfico
- Especificar un Conjunto Individual o Privado de Fuentes para la Representación del Libro
- Especificar nombre de trabajo o documento al imprimir con Aspose.Cells