Визуализация рабочего листа и рабочей книги в изображение с помощью ImageOrPrintOptions

Обзор

Иногда вам может потребоваться представить свои рабочие листы в виде графического представления. Вам необходимо представить изображения рабочего листа в ваших приложениях или на веб-страницах. Вам может понадобиться вставить изображения в документ Word, файл PDF, презентацию PowerPoint или использовать их в каком-либо другом сценарии. Просто вы хотите, чтобы рабочий лист отображался как изображение, чтобы вы могли использовать его в другом месте. Aspose.Cells поддерживает преобразование рабочих листов в файлах Excel в изображения. Кроме того, Aspose.Cells поддерживает настройку различных параметров, таких как формат изображения, разрешение (как по вертикали, так и по горизонтали), качество изображения и другие параметры изображения и печати.

API предоставляет несколько ценных классов, например,Листрендеринг, Имажеорпринтоптионс, Рабочая книгаВизуализация, и т.д.

Листрендеринг класс обрабатывает задачу рендеринга изображений для рабочего листа, тогда как классРабочая книгаВизуализацияделает то же самое для рабочей книги. Оба вышеупомянутых класса имеют несколько перегруженных версийизображатьметод, который может напрямую преобразовывать лист или книгу в файлы изображений, указанные с нужными атрибутами или параметрами. Вы можете сохранить файл изображения на диск/поток. Поддерживается несколько форматов изображений, например BMP, PNG, GIFF, JPEG, TIFF, EMF и так далее.

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

// 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(ConvertWorksheettoImage.class) + "TechnicalArticles/";
//Instantiate a new Workbook object
//Open template
Workbook book = new Workbook(dataDir + "book1.xlsx");
//Get the first worksheet
Worksheet sheet = book.getWorksheets().get(0);
//Apply different Image and Print options
ImageOrPrintOptions options = new ImageOrPrintOptions();
//Set Horizontal Resolution
options.setHorizontalResolution(300);
//Set Vertical Resolution
options.setVerticalResolution(300);
//Set TiffCompression
options.setTiffCompression(TiffCompression.COMPRESSION_LZW);
//Set Image Format
options.setImageType(ImageType.TIFF);
//Set printing page type
options.setPrintingPage(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
sr.toImage(0, dataDir + "CWorksheettoImage_out.tiff");

Параметры преобразования

Можно сохранить определенные страницы в изображение. Следующий код преобразует первый и второй листы книги в изображения JPG.

// 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(ConversionOptions.class) + "TechnicalArticles/";
// Instantiate a new Workbook object
// Open template
Workbook book = new Workbook(dataDir + "book1.xlsx");
// Get the first worksheet
Worksheet sheet = book.getWorksheets().get(0);
// Apply different Image and Print options
ImageOrPrintOptions options = new ImageOrPrintOptions();
// Set Horizontal Resolution
options.setHorizontalResolution(300);
// Set Vertical Resolution
options.setVerticalResolution(300);
// Set Image Format
options.setImageType(ImageType.JPEG);
// If you want entire sheet as a single image
options.setOnePagePerSheet(true);
// Render the sheet with respect to specified image/print options
SheetRender sr = new SheetRender(sheet, options);
// Render/save the image for the sheet
sr.toImage(0, dataDir + "ConversionOptions_out.jpg");

Или вы можете циклически просматривать книгу и отображать каждый лист в ней в отдельное изображение:

// 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(WorksheetToSeparateImage.class) + "TechnicalArticles/";
// Instantiate a new Workbook object
// Open template
Workbook book = new Workbook(dataDir + "book1.xlsx");
// Iterate over all worksheets in the workbook
for (int i = 0; i < book.getWorksheets().getCount(); i++) {
Worksheet sheet = book.getWorksheets().get(i);
// Apply different Image and Print options
ImageOrPrintOptions options = new ImageOrPrintOptions();
// Set Horizontal Resolution
options.setHorizontalResolution(300);
// Set Vertical Resolution
options.setVerticalResolution(300);
// Set Image Format
options.setImageType(ImageType.JPEG);
// If you want entire sheet as a single image
options.setOnePagePerSheet(true);
// Render to image
SheetRender sr = new SheetRender(sheet, options);
sr.toImage(0, dataDir + "WSheetToSImage_out-" + sheet.getName() + ".jpg");
}

Преобразование книги в изображение:

Чтобы преобразовать полную книгу в формат изображения, вы можете либо использовать описанный выше подход, либо просто использоватьРабочая книгаВизуализация класс, который принимает экземплярРабочая тетрадь а также объектИмажеорпринтоптионс.

// 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(ConvertWorkbooktoImage.class) + "TechnicalArticles/";
// Instantiate a new Workbook object
Workbook book = new Workbook(dataDir + "book1.xlsx");
// Apply different Image and Print options
ImageOrPrintOptions options = new ImageOrPrintOptions();
// Set Image Format
options.setImageType(ImageType.TIFF);
// If you want entire sheet as a single image
options.setOnePagePerSheet(true);
// Render to image
WorkbookRender render = new WorkbookRender(book, options);
render.toImage(dataDir + "CWorkbooktoImage_out.tiff");

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