The following features and enhancements have been incorporated in this version of the product.
Users can now set the position of axis data labels in charts.
Arrange shapes using alignment, distribution, and snap options - Users can align multiple shapes, distribute them, and snap them to other shapes or grids.
TrailingRow without having blank space after data rows - Users can specify whether to have frozen trailing rows or columns or both in a sheet.
Set a limit on the number of undo and redo operations - Users can get the undo and redo stack as well as set a limit on number of undo and redo operations.
Change tab strip position and width - Users can set the position of tab strip relative to the workbook and change the width of tab strip.
Paste or skip data in invisible range - Users can now control whether to paste the data in an invisible range or not.
Support to import Excel file with customizable date format - Users can now customize the date format based on system locale settings while importing an Excel file.
SpreadJS supports WEBSERVICE function which helps in fetching data from a web service on the Internet or Intranet.
SpreadJS supports FILTERJSON function which helps in parsing data from a JSON string.
IMAGE sparkline - Users can now place an image in a cell using IMAGE sparkline function.
, and Check Box cell width size.
Users can set the orientation of chart axis.
Users can now change the hover backColor of cell button when it is visible or enabled.
Users can create histogram sparkline to represent the frequency distribution of a dataset.
Users can create gauge KPI sparkline to visualize the performance of metrics with respect to KPI values.
Users can now add Pivot Tables and perform various pivot related operations in SpreadJS.
Users can now use fill effects such as solid fill, gradient fill, picture fill, and texture fill in shapes.
Hyperlinks on Shapes - Users can add hyperlinks on shapes, connector shapes, or group shapes.
Camera Shape - Users can add dynamic images of a referenced area in a spreadsheet.
Users can add and edit text in shapes.
Users can now add different types of compound lines in shapes to customize their appearance.
The following issues have been resolved since the last release.
Cell editing works properly when cell contains formula.
Picture size is retained after Excel file import.
@ Operator does not apply extra parenthesis automatically.
Alt Code Symbols are correctly exported to PDF.
The contents of a cell are correctly displayed in imported Excel file.
Characters are shown properly after registering font files and exporting the workbook as pdf.
"Invalid range" error message is no longer thrown while adding chart based of non-contiguous ranges for the Category Axis.
Custom date format is correctly applied to imported Excel files.
The cell aspect ratio is retained when printing using fitPagesWide or fitPagesTall options.
The value calculated by formula is retained when calcOnDemand is set to true and cell value is updated.
Designer lib template & table icon position is fixed.
Exporting shapes to PDF retains their position when the zoom factor is not 100%.
Optimized CalcEngine performance.
Formula result in SpreadJS is same as Excel.
The name box displays correctly after initializing two designers.
Formula recalculates after being modified.
Shape's Gradient fill settings, "Radial" and "Linear", can be exported to PDF.
The fields coincide with active blue box when designing a template.
Hover action of Button Cells is retained after setting a background color.
Pivot Table collapse operation does not cause group headers to disappear.
SpreadJS updates all dependent cells.
The sheet is updated after deleting any data.
Setting the style name through API works correctly.
Setting styles using the Designer component works correctly.
The CellChanged event is called only once when changing the cell from Dialog.
The style of exported Excel file is retained.
After importing an Excel file, the formula displays correct information.
Formula result is same as Excel after deleting rows.
AT_AsyncFunction Function works correctly.
Padding is scaled with zoom-in or zoom-out operations.
Date formatting is based on locale settings on importing an Excel file.
Other styles are retained after increasing the font size in cell.
Fixed different Formula results using SpreadJS and Excel.
Consistent results after exporting PDF.
Percentage format symbol is displayed correctly in edit mode if clicked in the gray area after edit mode.
Improved unhiding row performance.
Font style is applied when adding style from Cell Style dropdown.
DateTime Object is a new value in CellChanged event argument.
Designer's copy button works correctly when used on images.
Excel file is exported correctly after setting the conditional format.
Label Margin works properly in Designer.
Exporting ssjson from v14.0.8, importing it in v14.0.10 successfully exports Excel.
In Pivot table Number Type Field, show details works correctly.
Hyperlink in column headers works properly.
Setting rich text by contextMenu with different font color, and change font color in formatCell dialog, the cell font foreColor also changes.
When change the rich text color in richText and formatCell dialog, after changing the current theme, the rich text font color also changes according to the theme.
Setting rich text and use named style in ribbon (Style -> Cell styles), the cell foreColor and font also change according to the named cell style.
ComboBox does not display value when text is empty and EditorValueType is value.
Clicking a spreadsheet moves scroll position in intended behavior when using in iframe and Firefox.
The font is retained after printing.
Top border is applied to areas that share a border with merged cell.
An event is bound to workbook properly.
The formula is calculated correctly after importing in Excel.
IsNA function works properly if the refer cell's result is "#NA".
The backColor of the cell is consistent after importing to Excel.
Demo scrollbars work properly when dragging and clicking out of the instance.
Table theme style is retained after auto fitting row using header.
No exception console message is thrown after exporting an Excel file.
The hidden sheet is not displayed when checking incrementalLoading during Excel file import.
The following breaking change has been introduced prior the last release of the product.
The name argument of LET function should not contain a '.'. All the pre-existing Excel and ssjson files using LET function and containing '.' in the variable names will be silently upgraded to valid variable names. SpreadJS will convert the '.' to '_', to match the updated Excel behavior.