Преобразование рабочего листа в различные форматы изображений

Преобразование рабочего листа в изображение

Иногда бывает полезно сохранить изображение рабочего листа. Изображения можно публиковать в Интернете, вставлять в другие документы (например, отчеты, написанные в Word Microsoft, или презентации PowerPoint).

Aspose.Cells обеспечивает экспорт изображения через**[SheetRender] (https://reference.aspose.com/cells/java/com.aspose.cells/sheetrender)** учебный класс. Этот класс представляет рабочий лист, который будет преобразован в изображение.**[SheetRender] (https://reference.aspose.com/cells/java/com.aspose.cells/sheetrender)** класс обеспечивает**toImage()**метод преобразования рабочего листа в файл изображения. Поддерживаются форматы BMP, PNG, JPEG, TIFF и EMF.

В приведенном ниже коде показано, как преобразовать рабочий лист в файле Excel Microsoft в файл PNG.

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

Преобразование рабочего листа в SVG

SVG означаетМасштабируемая векторная графикаSVG — это спецификация, основанная на стандартах XML для двумерной векторной графики. Это открытый стандарт, который разрабатывается Консорциумом World Wide Web (W3C) с 1999 года.

С момента выпуска v7.1.0,Aspose.Cells for Java может конвертировать рабочие листы в изображения SVG.

Чтобы использовать эту функцию, вам необходимо импортировать пространство имен com.aspose.cells в вашу программу или проект. Он имеет несколько полезных классов для рендеринга и печати, например,[SheetRender] (https://reference.aspose.com/cells/java/com.aspose.cells/sheetrender), [ImageOrPrintOptions] (https://reference.aspose.com/cells/java/com.aspose.cells/ImageOrPrintOptions), [WorkbookRender] (https://reference.aspose.com/cells/java/com.aspose.cells/workbookrender), и другие.

[com.aspose.cells.ImageOrPrintOptions] (https://reference.aspose.com/cells/java/com.aspose.cells/ImageOrPrintOptions) class указывает, что рабочий лист будет сохранен в формате SVG.

[SheetRender] (https://reference.aspose.com/cells/java/com.aspose.cells/sheetrender)класс принимает объект[ImageOrPrintOptions] (https://reference.aspose.com/cells/java/com.aspose.cells/ImageOrPrintOptions) в качестве параметра, который устанавливает формат сохранения в формат SVG.

В следующем фрагменте кода показано, как преобразовать рабочий лист в файле Excel в файл изображения SVG.

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

Отобразить активный рабочий лист в рабочей книге

Простой способ преобразовать активный лист в книгу — установить индекс активного листа, а затем сохранить книгу как SVG. При этом активный лист будет отображаться как SVG. Следующий пример кода демонстрирует эту функцию:

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

Статьи по Теме