Rendera arbetsbladet och arbetsboken till bild med ImageOrPrintOptions

Översikt

Ibland kan du behöva presentera dina kalkylblad som en bildrepresentation. Du måste presentera kalkylbladsbilderna i dina applikationer eller webbsidor. Du kan behöva infoga bilderna i ett Word-dokument, en PDF-fil, en PowerPoint-presentation eller använda dem i något annat scenario. Du vill helt enkelt att ett kalkylblad ska renderas som en bild så att du kan använda det någon annanstans. Aspose.Cells stöder konvertering av kalkylblad i Excel-filer till bilder. Dessutom stöder Aspose.Cells inställning av olika alternativ som bildformat, upplösning (både vertikalt och horisontellt), bildkvalitet och andra bild- och utskriftsalternativ.

API tillhandahåller flera värdefulla klasser, t.ex.SheetRender, ImageOrPrintOptions, WorkbookRender, etc.

DeSheetRender klass hanterar uppgiften att rendera bilder för kalkylbladet medanWorkbookRendergör samma sak för en arbetsbok. Båda ovannämnda klasser har flera överbelastade versioner avatt föreställa sigmetod som direkt kan konvertera ett kalkylblad eller en arbetsbok till bildfil(er) specificerade med önskade attribut eller alternativ. Du kan spara bildfilen på disken/strömmen. Det finns flera bildformat som stöds, t.ex. BMP, PNG, GIFF, JPEG, TIFF, EMF och så vidare.

Konvertera arbetsblad till bild

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

Konverteringsalternativ

Det är möjligt att spara specifika sidor till bild. Följande kod konverterar de första och andra kalkylbladen i en arbetsbok till JPG-bilder.

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

Eller så kan du bläddra igenom arbetsboken och rendera varje kalkylblad i den till en separat bild:

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

Konvertera arbetsbok till bild:

För att återge hela arbetsboken till bildformat kan du antingen använda ovanstående tillvägagångssätt eller helt enkelt användaWorkbookRender klass som accepterar en instans avArbetsbok samt föremålet förImageOrPrintOptions.

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

relaterade artiklar