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"); |