Public API Changes in Aspose.Cells 8.8.1
Added APIs
Filter the Data for Loading
Aspose.Cells for Java 8.8.1 has exposed the LoadDataFilterOptions enumeration along with LoadOptions.LoadDataFilterOptions property which can be used to specify the data type that should be loaded when building the workbook from a template file. Filtering loaded data can improve the performance for special purposes, especially when using LightCells APIs.
The LoadDataFilterOptions enumeration provides the following selections.
- ALL to load everything from the spreadsheet.
- NONE to load nothing from the spreadsheet.
- CELL_BLANK loads the cells whose values are blank.
- CELL_BOOL loads cells whose values are Boolean.
- CELL_DATA loads cells data including values, formulas and formatting.
- CELL_ERROR loads cells whose values are error.
- CELL_NUMERIC loads cells whose values are numeric (including Date & Time).
- CELL_STRING loads cells whose values are text/string.
- CELL_VALUE loads only cell values (all types).
- CHART loads only charts.
- CONDITIONAL_FORMATTING loads only conditional formatting rules.
- DATA_VALIDATION loads only data validation rules.
- DOCUMENT_PROPERTIES loads only document properties.
- FORMULA loads formulas including defined names.
- MERGED_AREA loads only merged cells.
- PIVOT_TABLE loads Pivot Tables.
- SETTINGS loads only Workbook & Worksheet settings.
- SHAPE loads only shapes.
- STYLE loads cells formatting.
- TABLE loads Excel tables/List Objects.
Following is the simple usage scenario.
Java
//Create an instance of LoadOptions & initialize it with type of template to be loaded
LoadOptions options = new LoadOptions(LoadFormat.XLSX);
//Set LoadDataFilterOptions to load only shapes
options.setLoadDataFilterOptions(LoadDataFilterOptions.SHAPE);
//Create an instance of Workbook from a existing spreadsheet using instance of LoadOptions
Workbook book = new Workbook(filePath, options);
Directly Convert Chart to PDF
Aspose.Cells APIs have already provided the facility to render charts to PDF while using the Chart.toPdf method. With this release, the API has exposed another overloaded version of the said method that could accept an instance of OutputStream, allowing the users to save the chart’s PDF in an instance of ByteArrayOutputStream.
Following is the simple usage scenario.
Java
//Create an instance of Workbook and load an existing spreadsheet with a chart
Workbook workbook = new Workbook(filePath);
//Access first worksheet containing a chart
Worksheet worksheet = workbook.getWorksheets().get(0);
//Access first chart from the worksheet
Chart chart = worksheet.getCharts().get(0);
//Save the chart to PDF as Stream
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
chart.toPdf(outStream);
Added WorkbookSettings.PaperSize Property
Aspose.Cells for Java 8.8.1 has exposed the WorkbookSettings.PaperSize property in order to set the default printing paper size for the whole spreadsheet. The WorkbookSettings.PaperSize property accepts a value from the PaperSizeType enumeration which contains the predefined sizes for most widely used printing paper types.
Java
//Create an instance of Workbook
//Optionally load an existing spreadsheet
Workbook book = new Workbook();
//Access WorkbookSettings from the Workbook
WorkbookSettings settings = book.getSettings();
//Set the default printing paper size for the Workbook
settings.setPaperSize(PaperSizeType.PAPER_A_4);
Added Shape.TextBody Property
This release of Aspose.Cells for Java API has exposed the Shape.TextBody in order to manipulate the aspects of the text in a shapes. The following snippet uses the said property to set the shadow effect of the text in a TextBox.
Java
//Create an instance of Workbook
Workbook book = new Workbook();
//Access first worksheet of the Workbook
Worksheet sheet = book.getWorksheets().get(0);
//Add a TextBox to the ShapeCollection
int index = sheet.getTextBoxes().add(2, 2, 100, 400);
TextBox textBox = sheet.getTextBoxes().get(index);
//Set the text of the TextBox
textBox.setText("This text has the following settings.\n\nText Effects > Shadow > Offset Bottom");
//Set shadow effect for text
for (int i = 0; i < textBox.getTextBody().getCount(); i++)
{
textBox.getTextBody().get(i).getShapeFont().getFillFormat().getShadowEffect().setPresetType(PresetShadowType.OFFSET_BOTTOM);
}
Added Worksheet.calculateFormula(string formula, CalculationOptions opts) Method
Aspose.Cells for Java 8.8.1 has exposed another overload for the Worksheet.calculateFormula method which provides the ability to calculate a given formula directly with custom options.
Added GridCell.createValidation Method
Aspose.Cells.GridWeb has provided the ability to directly add the validation rule to a single cell while using the GridCell.createValidation method. The said method requires 2 parameters. First one is of type GridValidationType which determines the validation type, whereas the second parameter (isRequied) is of type Boolean.
Java
//Access first worksheet
GridWorksheet sheet = gridweb.getWorkSheets().get(0);
//Access cell B3
GridCell cell = sheet.getCells().get("B3");
//Add validation inside the GridCell
//Any value which is not between 20 and 40 will cause error in a GridCell
GridValidation val = cell.createValidation(GridValidationType.WHOLE_NUMBER, true);
val.setFormula1("=20");
val.setFormula2("=40");
val.setOperator(OperatorType.BETWEEN);
val.setShowError(true);
val.setShowInput(true);
Added GridCell.removeValidation Method
Aspose.Cells.GridWeb has also provided the ability to remove the data validation rule from a GridCell while using the GridCell.removeValidation method.
Obsoleted APIs
Obsoleted Shape.TextFrame Property
It is advised to use the Shape.TextBody.TextAlignment property instead.