Conversión de Hoja de Cálculo a Imagen usando Opciones de Imagen o Impresión
Guardar hojas de cálculo en imágenes - Diferentes enfoques
A veces, es posible que desee presentar sus hojas de cálculo como representación pictórica. Es posible que necesite presentar las imágenes de las hojas de cálculo en sus aplicaciones o páginas web. Es posible que necesite insertar las imágenes en un documento de Word, un archivo PDF, una presentación de PowerPoint o usarlas en algún otro escenario. Simplemente desea que una hoja de cálculo se renderice como una imagen para poder usarla en otro lugar. Aspose.Cells admite la conversión de hojas de cálculo en archivos de Excel a imágenes. Además, Aspose.Cells admite configurar diferentes opciones como formato de imagen, resolución (tanto vertical como horizontal), calidad de imagen y otras opciones de imagen e impresión.
Es posible que intente la Automatización de Office pero la Automatización de Office tiene sus propios inconvenientes. Hay varias razones y problemas involucrados: por ejemplo, seguridad, estabilidad, escalabilidad y velocidad, precio y características. En resumen, hay muchas razones, siendo la principal que Microsoft mismo recomienda encarecidamente no utilizar la Automatización de Office en soluciones de software.
Este artículo muestra cómo crear una aplicación de consola en Visual Studio .NET, realizar la conversión de una hoja de cálculo a imagen utilizando diferentes opciones de imagen e impresión con unas pocas y simples líneas de código utilizando la API de Aspose.Cells.
Debe importar el espacio de nombres Aspose.Cells.Rendering a su programa/proyecto. Tiene varias clases valiosas, por ejemplo, SheetRender, ImageOrPrintOptions, WorkbookRender, etc.
La clase Aspose.Cells.Rendering.SheetRender representa una hoja de cálculo para renderizar imágenes de la hoja de cálculo, tiene un método sobrecargado ToImage que puede convertir directamente una hoja de cálculo en archivo(s) de imagen especificados con sus atributos u opciones deseados. Puede devolver un objeto System.Drawing.Bitmap y puede guardar un archivo de imagen en el disco/fluido. Se admiten varios formatos de imagen, como BMP, PNG, GIFF, JPEG, TIFF, EMF, etc.
Usar Aspose.Cells para convertir hoja de cálculo a imagen utilizando opciones de imagen o impresión.
Creación de un libro de trabajo de plantilla en Microsoft Excel
Creé un nuevo libro de trabajo en MS Excel y agregué algunos datos en la primera hoja de cálculo. Ahora, convertiré la hoja de trabajo del archivo de plantilla ‘Sheet1’ a un archivo de imagen ‘SheetImage.tiff’ y aplicaré diferentes opciones de imagen como resoluciones horizontal y vertical, Compresión Tiff, etc.
Descargar e instalar Aspose.Cells
Primero, debe descargar Aspose.Cells para .Net. Instálelo en su computadora de desarrollo. Todos los componentes de Aspose funcionan en modo de evaluación cuando se instalan. El modo de evaluación no tiene límite de tiempo y solo inserta marcas de agua en los documentos producidos.
Crear un proyecto
Inicie Visual Studio .Net y cree una nueva aplicación de consola. Este ejemplo mostrará una aplicación de consola en C#, pero también puede usar VB.NET.
Agregar referencias
Este proyecto utilizará Aspose.Cells. Por lo tanto, debe agregar referencia al componente Aspose.Cells en su proyecto. Por ejemplo, agregue una referencia a …\Program Files\Aspose\Aspose.Cells for .NET\Bin\Net1.0\Aspose.Cells.dll
Convertir hoja de cálculo a un archivo de imagen
// 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(); | |
//Output directory | |
string outputDir = RunExamples.Get_OutputDirectory(); | |
//Open template | |
Workbook book = new Workbook(sourceDir + "sampleWorksheetToAnImage.xlsx"); | |
// Get the first worksheet | |
Worksheet sheet = book.Worksheets[0]; | |
// Apply different Image and Print options | |
Aspose.Cells.Rendering.ImageOrPrintOptions options = new Aspose.Cells.Rendering.ImageOrPrintOptions(); | |
// Set Horizontal Resolution | |
options.HorizontalResolution = 300; | |
// Set Vertical Resolution | |
options.VerticalResolution = 300; | |
// Set TiffCompression | |
options.TiffCompression = Aspose.Cells.Rendering.TiffCompression.CompressionLZW; | |
// Set Image Format | |
options.ImageType = Drawing.ImageType.Tiff; | |
// Set printing page type | |
options.PrintingPage = PrintingPageType.Default; | |
// Render the sheet with respect to specified image/print options | |
SheetRender sr = new SheetRender(sheet, options); | |
// Render/save the image for the sheet | |
int pageIndex = 3; | |
sr.ToImage(pageIndex, outputDir + @"outputWorksheetToAnImage_"+ (pageIndex + 1) + ".tiff"); |
Opciones de conversión
Es posible guardar páginas específicas como imágenes. El siguiente código convierte las primeras y segundas hojas de cálculo en un libro de trabajo a imágenes JPG.
// 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(); | |
//Output directory | |
string outputDir = RunExamples.Get_OutputDirectory(); | |
// Open a template excel file | |
Workbook book = new Workbook(sourceDir + "sampleSpecificPagesToImages.xlsx"); | |
// Get the first worksheet. | |
Worksheet sheet = book.Worksheets[0]; | |
// Define ImageOrPrintOptions | |
ImageOrPrintOptions imgOptions = new ImageOrPrintOptions(); | |
// Specify the image format | |
imgOptions.ImageType = Drawing.ImageType.Jpeg; | |
// Render the sheet with respect to specified image/print options | |
SheetRender sr = new SheetRender(sheet, imgOptions); | |
//Specify page index to be rendered | |
int idxPage = 3; | |
// Render the third image for the sheet | |
Bitmap bitmap = sr.ToImage(idxPage); | |
// Save the image file | |
bitmap.Save(outputDir + "outputSpecificPagesToImage_"+ (idxPage+1)+".jpg"); |
Conversión de imagen usando WorkbookRender
Una imagen TIFF puede contener más de una imagen. Puede guardar todo el libro de trabajo en una sola imagen TIFF con múltiples marcos o páginas.
// 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(); | |
//Output directory | |
string outputDir = RunExamples.Get_OutputDirectory(); | |
Aspose.Cells.Workbook wb = new Aspose.Cells.Workbook(sourceDir + "sampleUseWorkbookRenderForImageConversion.xlsx"); | |
ImageOrPrintOptions opts = new ImageOrPrintOptions(); | |
opts.ImageType = Drawing.ImageType.Tiff; | |
WorkbookRender wr = new WorkbookRender(wb, opts); | |
wr.ToImage(outputDir + "outputUseWorkbookRenderForImageConversion.tiff"); |