Konvertieren von Arbeitsblättern in verschiedene Bildformate

Arbeitsblatt in Bild konvertieren

Manchmal ist es nützlich, ein Bild eines Arbeitsblatts zu speichern. Bilder können online geteilt, in andere Dokumente eingefügt (Beispielsweise in Berichte in Microsoft Word oder in PowerPoint-Präsentationen).

Aspose.Cells bietet die Bildexportfunktion durch die Klasse SheetRender. Diese Klasse repräsentiert die Arbeitsmappe, die als Bild gerendert wird. Die Klasse SheetRender bietet die Methode toImage() zur Umwandlung einer Arbeitsmappe in eine Bilddatei. BMP, PNG, JPEG, TIFF und EMF-Formate werden unterstützt.

Der folgende Code zeigt, wie man ein Arbeitsblatt in einer Microsoft Excel-Datei in eine PNG-Datei konvertiert.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// The path to the documents directory.
String dataDir = Utils.getSharedDataDir(WorksheetToImage.class) + "LoadingSavingConvertingAndManaging/";
// Instantiate a new workbook with path to an Excel file
Workbook book = new Workbook(dataDir + "MyTestBook1.xlsx");
// Create an object for ImageOptions
ImageOrPrintOptions imgOptions = new ImageOrPrintOptions();
// Set the image type
imgOptions.setImageType(ImageType.PNG);
// Get the first worksheet.
Worksheet sheet = book.getWorksheets().get(0);
// Create a SheetRender object for the target sheet
SheetRender sr = new SheetRender(sheet, imgOptions);
for (int j = 0; j < sr.getPageCount(); j++) {
// Generate an image for the worksheet
sr.toImage(j, dataDir + "WToImage-out" + j + ".png");
}

Arbeitsblatt in SVG konvertieren

SVG steht für skalierbare Vektorgrafiken. SVG ist eine Spezifikation, die auf XML-Standards für zweidimensionale Vektorgrafiken basiert. Es ist ein offener Standard, der seit 1999 von der World Wide Web Consortium (W3C) entwickelt wurde.

Seit der Veröffentlichung von v7.1.0 kann Aspose.Cells for Java Arbeitsblätter in SVG-Bilder konvertieren.

Um diese Funktion zu verwenden, müssen Sie den Namespace com.aspose.cells in Ihr Programm oder Projekt importieren. Es gibt mehrere wertvolle Klassen zum Rendern und Drucken, wie z.B. SheetRender, ImageOrPrintOptions, WorkbookRender und andere.

Die Klasse com.aspose.cells.ImageOrPrintOptions gibt an, dass die Arbeitsmappe im SVG-Format gespeichert wird.

Die Klasse SheetRender benötigt das Objekt von ImageOrPrintOptions als Parameter, das das Speicherformat auf das SVG-Format einstellt.

Der folgende Codeausschnitt zeigt, wie man ein Arbeitsblatt in einer Excel-Datei in eine SVG-Bilddatei konvertiert.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// The path to the documents directory.
String dataDir = Utils.getSharedDataDir(ConvertingWorksheetToSVG.class) + "loading_saving/";
String path = dataDir + "Book1.xlsx";
// Create a workbook object from the template file
Workbook workbook = new Workbook(path);
// Convert each worksheet into svg format in a single page.
ImageOrPrintOptions imgOptions = new ImageOrPrintOptions();
imgOptions.setSaveFormat(SaveFormat.SVG);
imgOptions.setOnePagePerSheet(true);
// Convert each worksheet into svg format
int sheetCount = workbook.getWorksheets().getCount();
for (int i = 0; i < sheetCount; i++) {
Worksheet sheet = workbook.getWorksheets().get(i);
SheetRender sr = new SheetRender(sheet, imgOptions);
for (int k = 0; k < sr.getPageCount(); k++) {
// Output the worksheet into Svg image format
sr.toImage(k, path + sheet.getName() + k + "_out.svg");
}
}
// Print message
System.out.println("Excel to SVG conversion completed successfully.");

Rendern Sie das aktive Arbeitsblatt in einer Arbeitsmappe

Ein einfacher Weg, das aktive Arbeitsblatt in einer Arbeitsmappe zu konvertieren, besteht darin, den Index des aktiven Blatts festzulegen und dann die Arbeitsmappe als SVG zu speichern. Dadurch wird das aktive Arbeitsblatt in SVG gerendert. Der folgende Beispielcode zeigt diese Funktion:

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
String outputDir = Utils.Get_OutputDirectory();
// Instantiate a workbook
Workbook workbook = new Workbook();
// Put sample text in the first cell of first worksheet in the newly created workbook
workbook.getWorksheets().get(0).getCells().get("A1").setValue("DEMO TEXT ON SHEET1");
// Add second worksheet in the workbook
workbook.getWorksheets().add(SheetType.WORKSHEET);
// Set text in first cell of the second sheet
workbook.getWorksheets().get(1).getCells().get("A1").setValue("DEMO TEXT ON SHEET2");
// Set currently active sheet index to 1 i.e. Sheet2
workbook.getWorksheets().setActiveSheetIndex(1);
// Save workbook to SVG. It shall render the active sheet only to SVG
workbook.save(outputDir + "ConvertActiveWorksheetToSVG_out.svg");

Verwandte Artikel