Public API Changes in Aspose.Cells 8.8.3
Added APIs
Support for ActiveX Controls
Aspose.Cells for Java 8.8.3 has exposed the addActiveXControl method that allows to add an ActiveX control to the ShapeCollection. The aforementioned method requires 7 parameters to specify the control type, location to place the control and size of the control. The type can be specified using the ControlType enumeration with following possible values.
- ControlType.CHECK_BOX
- ControlType.COMBO_BOX
- ControlType.COMMAND_BUTTON
- ControlType.IMAGE
- ControlType.LABEL
- ControlType.LIST_BOX
- ControlType.RADIO_BUTTON
- ControlType.SCROLL_BAR
- ControlType.SPIN_BUTTON
- ControlType.TEXT_BOX
- ControlType.TOGGLE_BUTTON
- ControlType.UNKNOWN
Following is the simple usage scenario.
Java
//Create an instance of Workbook
Workbook book = new Workbook();
//Access first worksheet from the collection
Worksheet sheet = book.getWorksheets().get(0);
//Add Toggle Button ActiveX Control to the ShapeCollection at specified location
Shape shape = sheet.getShapes().addActiveXControl(ControlType.TOGGLE_BUTTON, 4, 0, 4, 0, 100, 30);
//Access the ActiveX Control object and set its linked cell property
ActiveXControl control = shape.getActiveXControl();
control.setLinkedCell("A1");
//Save the result on disc
book.save(dir + "output.xlsx", SaveFormat.XLSX);
Added LoadOptions.setPaperSize Method
Aspose.Cells for Java 8.8.3 allows to set the default print paper size from the default printer’s setting while using the newly exposed LoadOptions.setPaperSize method as demonstrated below. Please note, the input parameter to the aforementioned method is the value from the PaperSizeType enumeration containing the predefined paper sizes.
Following is the simple usage scenario.
Java
//Create an instance of LoadOptions
LoadOptions loadOptions = new LoadOptions();
//Set the PaperSize property to appropriate value
loadOptions.setPaperSize(PaperSizeType.PAPER_A_4);
//Create an instance of Workbook and load an existing spreadsheet
Workbook book = new Workbook(dir + "input.xlsx", loadOptions);
Added Cell.getCharacters(flag) Method
Aspose.Cells APIs allow to get the characters objects in the form of FontSetting array by using the Cell.getCharacters method. With this release, the Aspose.Cells for Java API has exposed an overloaded version of the Cell.getCharacters that could accept Boolean as parameter, indicating if the table style has to be applied on the cell if the cell is part of a ListObject.
Java
//Create an instance of Workbook and load an existing spreadsheet
Workbook book = new Workbook(dir + "input.xlsx");
//Access first worksheet from the collection
Worksheet sheet = book.getWorksheets().get(0);
//Access cells collection of the first worksheet
Cells cells = sheet.getCells();
//Access particular cell from a ListObject
//Assuming A1 resides in a ListObject
Cell cell = cells.get("A1");
//Get all Characters objects from the cell
FontSetting[] characters = cell.getCharacters(true);
Added OleObject.AutoLoad Property
Aspose.Cells for Java 8.8.3 has exposed the OleObject.AutoLoad property which allows to refresh the OleObject’s image if the contents/data of the underlying object has been changed. The aforementioned property when set to true, forces the Excel application to refresh the OleObject’s image when resultant spreadsheet is loaded.
Following is the simple usage scenario.
Java
//Create an instance of Workbook and load an existing spreadsheet
Workbook book = new Workbook(dir + "input.xlsx");
//Access first worksheet from the collection
Worksheet sheet = book.getWorksheets().get(0);
//Access OleObjectCollection from first worksheet
OleObjectCollection oleObjects = sheet.getOleObjects();
//Access a OleObject from the collection
OleObject oleObject = oleObjects.get(0);
//Set AutoLoad to true
oleObject.setAutoLoad(true);
Added HTMLLoadOptions.SupportDivTag Property
Aspose.Cells for Java 8.8.3 has exposed the HTMLLoadOptions.SupportDivTag property which allows to parse the DIV tags embedded in TD tags while loading HTML files/snippet in Aspose.Cells object model. Boolean type property has the default value of false.
Following is the simple usage scenario.
Java
//Store the HTML snippet in a variable
String export_html = "<html>"
\+ "<body>"
\+ " <table>"
\+ " <tr>"
\+ " <td>"
\+ " <div>This is some Text.</div>"
\+ " <div>"
\+ " <div>"
\+ " <span>This is some more Text</span>"
\+ " </div>"
\+ " <div>"
\+ " <span>abc@abc.com</span>"
\+ " </div>"
\+ " <div>"
\+ " <span>1234567890</span>"
\+ " </div>"
\+ " <div>"
\+ " <span>ABC DEF</span>"
\+ " </div>"
\+ " </div>"
\+ " <div>Generated On May 30, 2016 02:33 PM <br />Time Call Received from Jan 01, 2016 to May 30, 2016</div>"
\+ " </td>"
\+ " <td>"
\+ " <img src='ASpose_logo_100x100.png' />"
\+ " </td>"
\+ " </tr>"
\+ " </table>"
\+ "</body>"
\+ "</html>";
//Convert HTML string to InputStream
InputStream stream = new ByteArrayInputStream(export_html.getBytes(StandardCharsets.UTF_8));
//Create an instance of HTMLLoadOptions
HTMLLoadOptions loadOptions = new HTMLLoadOptions(LoadFormat.HTML);
// Set SupportDivTag property to true
loadOptions.setSupportDivTag(true);
//Create workbook object from the HTML using load options
Workbook book = new Workbook(stream, loadOptions);
//Save the spreadsheet on disc
book.save(dir + "output.xlsx", SaveFormat.XLSX);
Added HtmlSaveOptions.ExportGridLines Property
Aspose.Cells for Java 8.8.3 has exposed the HtmlSaveOptions.ExportGridLines property which allows to render the grid lines while exporting spreadsheet to HTML format. Boolean type property has the default value of false, however, when set to true, the API renders the grid lines for the available data range in HTML format.
Following is the simple usage scenario.
Java
//Create an instance of Workbook and load existing spreadsheet
Workbook book = new Workbook(dir + "input.xlsx");
//Create an instance of HtmlSaveOptions
HtmlSaveOptions options = new HtmlSaveOptions();
//Set ExportGridLines to true
options.setExportGridLines(true);
//Save the result in HTML format
book.save(dir + "output.html", options);
Added ListObject.Comment Property
Aspose.Cells APIs now allow to get and set the comments for an instance of ListObject. In order provide the aforementioned feature, the Aspose.Cells APIs have exposed the ListObject.Comment property.
Following is the simple usage scenario.
Java
//Create an instance of Workbook and load existing spreadsheet
Workbook book = new Workbook(dir + "input.xlsx");
//Access first worksheet from the collection
Worksheet sheet = book.getWorksheets().get(0);
//Access first ListObject from the collection of ListObjects
ListObject listObject = sheet.getListObjects().get(0);
//Set comments for the ListObject
listObject.setComment("Comments");
//Save the result on disc
book.save(dir + "output.xlsx");
Removed APIs
Removed Workbook.decrypt Method
The said property was marked obsoleted some time back. This release has completely removed it from the public API. It is advised to set the WorkbookSettings.Password property to null in order to achieve the same goal.