Konvertieren des Arbeitsblatts in ein Bild mit ImageOrPrint-Optionen
Speichern von Arbeitsblättern in Bildern - verschiedene Ansätze
Manchmal müssen Sie Ihre Arbeitsblätter möglicherweise als bildliche Darstellung präsentieren. Sie müssen die Arbeitsblattbilder in Ihren Anwendungen oder Webseiten präsentieren. Möglicherweise müssen Sie die Bilder in ein Word-Dokument, eine PDF-Datei oder eine PowerPoint-Präsentation einfügen oder sie in einem anderen Szenario verwenden. Sie möchten einfach, dass ein Arbeitsblatt als Bild gerendert wird, damit Sie es an anderer Stelle verwenden können. Aspose.Cells unterstützt die Konvertierung von Arbeitsblättern in Excel-Dateien in Bilder. Außerdem unterstützt Aspose.Cells die Einstellung verschiedener Optionen wie Bildformat, Auflösung (sowohl vertikal als auch horizontal), Bildqualität und andere Bild- und Druckoptionen.
Sie können die Office-Automatisierung ausprobieren, aber die Office-Automatisierung hat ihre eigenen Nachteile. Es gibt mehrere Gründe und Probleme: zum Beispiel Sicherheit, Stabilität, Skalierbarkeit und Geschwindigkeit, Preis und Funktionen. Kurz gesagt, es gibt viele Gründe, wobei der wichtigste darin besteht, dass Microsoft selbst dringend von der Office-Automatisierung durch Softwarelösungen abrät.
Dieser Artikel zeigt, wie Sie eine Konsolenanwendung in Visual Studio .NET erstellen, die Konvertierung eines Arbeitsblatts in ein Bild mit verschiedenen Bild- und Druckoptionen mit wenigen und einfachsten Codezeilen unter Verwendung von Aspose.Cells API durchführen.
Sie müssen importierenAspose.Cells.RenderingNamensraum zu Ihrem Programm/Projekt. Es hat mehrere wertvolle Klassen, zum BeispielSheetRender, ImageOrPrintOptions, WorkbookRenderusw.
DasAspose.Cells.Rendering.SheetRender Klasse stellt ein Arbeitsblatt dar, um Bilder für das Arbeitsblatt zu rendern, es hat eine überladeneVorstellenMethode, die ein Arbeitsblatt direkt in Bilddatei(en) konvertieren kann, die mit Ihren gewünschten Attributen oder Optionen angegeben sind. Es kann ein System.Drawing.Bitmap-Objekt zurückgeben und Sie können eine Bilddatei auf dem Datenträger/Stream speichern. Es werden mehrere Bildformate unterstützt, zB BMP, PNG, GIFF, JPEG, TIFF, EMF und so weiter.
Verwenden von Aspose.Cells zum Konvertieren eines Arbeitsblatts in ein Bild mithilfe von ImageOrPrint-Optionen.
Erstellen einer Vorlagenarbeitsmappe in Microsoft Excel
Ich habe eine neue Arbeitsmappe in MS Excel erstellt und einige Daten im ersten Arbeitsblatt hinzugefügt. Jetzt werde ich das Arbeitsblatt „Sheet1“ der Vorlagendatei in eine Bilddatei „SheetImage.tiff“ konvertieren und verschiedene Bildoptionen wie horizontale und vertikale Auflösungen, TiffCompression usw. anwenden.
Laden Sie Aspose.Cells herunter und installieren Sie es
Zuerst müssen SieDownload Aspose.Cells für .Net. Installieren Sie es auf Ihrem Entwicklungscomputer. AllesAspose Komponenten arbeiten, wenn sie installiert sind, im Evaluierungsmodus. Der Bewertungsmodus ist zeitlich unbegrenzt und fügt nur Wasserzeichen in die produzierten Dokumente ein.
Erstellen Sie ein Projekt
Starten Sie Visual Studio. Net und erstellen Sie eine neue Konsolenanwendung. Dieses Beispiel zeigt eine C#-Konsolenanwendung, aber Sie können auch VB.NET verwenden.
Referenzen hinzufügen
Dieses Projekt verwendet Aspose.Cells. Sie müssen also in Ihrem Projekt einen Verweis auf die Komponente Aspose.Cells hinzufügen. Fügen Sie beispielsweise einen Verweis auf ….\Program Files\Aspose\Aspose.Cells for .NET\Bin\Net1.0\Aspose.Cells.dll hinzu
Arbeitsblatt in eine Bilddatei konvertieren
// 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"); |
Konvertierungsoptionen
Es ist möglich, bestimmte Seiten als Bild zu speichern. Der folgende Code konvertiert das erste und zweite Arbeitsblatt in einer Arbeitsmappe in JPG-Bilder.
// 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"); |
Bildkonvertierung mit WorkbookRender
Sie können die Arbeitsmappe durchlaufen und jedes darin enthaltene Arbeitsblatt in ein separates Bild rendern:
// 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"); |