New Release 1.8 and its Hot Fixes

Dear Customers,

1.8.0.0 is Released.

Dear customers,

Hotfix 1.8.1

Released!

Fixed:
1. License bug caused by incompatibility of DotNet Framework 1.0 and 1.1
2. Open file bug
If the designer file contains external links to other file, the result file may crash. Now we fixed it.
3. Range.ColumnCount bug

Enhancement:
1. Speed up AutoFit method

Added:
1. Cells.InsertRow/Column method

///


/// Inserts a new row into the worksheet.
///

/// Row index.
public void InsertRow(int rowIndex)

///
/// Inserts a new column into the worksheet.
///

/// Column index.
public void InsertColumn(byte columnIndex)

2. MS Excel “LOOKUP” formula function

3. Cells.ExportDataTableAsString method
///
/// Exports data in the collection to a object.
///

/// The row number of the first cell to export out.
/// The column number of the first cell to export out.
/// Maximum rows to be imported,no more than 65536.
/// Maximum columns to be imported,no more than 256.
/// Exported object.
/// All data in the collection are converted to strings.
public DataTable ExportDataTableAsString(int firstRow, byte firstColumn, int maxRows, int maxColumns)

Dear customers,

Hotfix 1.8.2 Released!

Fixed:

  1. Open file error issue
  2. AutoFitRow issue
    When a wrapped long string contains several space characters, the row height set by AutoFitRow function sometimes is not enough.

Enhancement:

  1. Multi-port license support
    Please refer to https://forum.aspose.com/t/159872.

Added:

  1. ShrinkToFit
    // Represents if text automatically shrinks to fit in the available column width.
    cell.Style.ShrinkToFit = true;
  1. IsFormulaHidden
    //Represents if the formula will be hidden when the worksheet is protected.
    cell.Style.IsFormulaHidden = true;
  1. Ungroup function
Cells.UngroupColumns
/// <summary>
/// Ungroups columns.
/// </summary>
/// <param name="firstIndex">The first column index to be ungrouped.</param>
/// <param name="lastIndex">The last column index to be ungrouped.</param>
public void UngroupColumns(byte firstIndex, byte lastIndex)

/// <summary>
Cells.UngroupRows
/// Ungroups rows.
/// </summary>
/// <param name="firstIndex">The first row index to be ungrouped.</param>
/// <param name="lastIndex">The last row index to be ungrouped.</param>
public void UngroupRows(int firstIndex, int lastIndex)


Dear customers,

Hotfix 1.8.3 Released!



Fixed:
1. platform type licensing.
2. font size issues described in https://forum.aspose.com/t/119304.

Dear customers,

Hotfix 1.8.4 Released!



Fixed:
1. Japanese characters issue described in https://forum.aspose.com/t/119254

2.AutoFitColumn issue described in https://forum.aspose.com/t/119254

3.PageSetup.FixToPages issue described in https://forum.aspose.com/t/119254

Enhanced:
1. Import DataTable header even number of rows is zero. Please refer to https://forum.aspose.com/t/119254

Added:
1. Cell.SimpleFormula, please refer to https://forum.aspose.com/t/119254

///


/// Gets or sets a formula of the .
///

///A formula string always begins with an equal sign (=).
/// This property provides a faster way to generate a cell formula than .
/// However, only simple formula can be set by this property, such as “=SUM(F1:G5”), “=A1+B1”, etc.
/// Complicated formulas, such as “=SUM(F1:G5) + AVERAGE(D1:D6)”, cannot be set by this property.
///
public string SimpleFormula

Dear Customers,

Hotfix 1.8.5 is released.



Fixed:
1.Column setting issue described in https://forum.aspose.com/t/119182

2.Range setting issue described in https://forum.aspose.com/t/119182 and https://forum.aspose.com/t/119182

3.Multi-language issue described in https://forum.aspose.com/t/119182

Removed:
1. Cell.SimpleFormula
Because performance of Cell.Formul is improved, Cell.SimpleFormula added in previous fix is not needed.

Added:
1. Cells.DeleteRow, Cells.DeleteColumn

///


/// Deletes a row.
///

/// Row index.
public void DeleteRow(int rowIndex)

///
/// Deletes a column.
///

/// Column index.
public void DeleteColumn(byte columnIndex)

2. Range.Copy
///
/// Copys data from a source range.
///

/// Source object.
public void Copy(Range range)

3.Ranges object
///
/// Encapsulates a collection of objects.
///

The change in the performance of Cell.Formula is impressive. Way to go!!!

Dear Customers,

Hotfix 1.8.6 is released.



Fixed:
1.DeleteRow issue described in https://forum.aspose.com/t/119094

2.Boolean data type issue described in https://forum.aspose.com/t/119094

3.Range style issue described in https://forum.aspose.com/t/119094

Added:
1.Data label setting
*DataLabels.IsValueShown
*DataLabels.IsPercentageShown
*DataLabels.IsCategoryNameShown
*DataLabels.IsLegendKeyShown

//Show value in data labels
for(int i = 0; i < chart.NSeries.Count; i ++)
{
chart.NSeries[i].DataLabels.IsValueShown = true;
}

2.Axis.Title
//Set Category Axis’ title
chart.CategoryAxis.Title.Text = “CategoryTitle”;

3. Legend position setting, please refer to

http://www.aspose.com/Products/Aspose.Excel/Api/Aspose.Excel.Legend.html

chart.Legend.Position = LegendPositionType.Top;
chart.Legend.X = 2000;
chart.Legend.Width = 50;
chart.Legend.Height = 50;

4. IsVisible issue as described in https://forum.aspose.com/t/119094

Dear Customers,

Hotfix 1.8.7 is released.



Fixed:
1. Range.SetOutlineBorder issue

Added:
1. PrintArea setting
excel.Worksheets[0].PageSetup.PrintArea = “A1:B5”;

2. PrintTitles setting
excel.Worksheets[0].PageSetup.PrintTitleColumns = “$A:$B”;
excel.Worksheets[0].PageSetup.PrintTitleRows = “$1:$1”;

3. Import two-dimension array
string[,] stringNumbers = { {“1”, “2”}, {“3”, “4”}, {“5”, “6”}, {“7”, “8”}, {“9”, “10”} };
excel.Worksheets[0].Cells.ImportArray(stringNumbers, 1, 1);

int[,] intNumbers = { {1, 2}, {3, 4}, {5, 6}, {7, 8}, {9, 10} };
excel.Worksheets[0].Cells.ImportArray(intNumbers, 5, 5);

double[,] doubleNumbers = { {1.1, 2.2}, {3.3, 4.4}, {5.5, 6.6}, {7.7, 8.8}, {9.9, 10.11} };
excel.Worksheets[0].Cells.ImportArray(doubleNumbers, 10, 10);

object[,] obj = { {“Tom”, 33}, {“Jerry”, 31}, {“Mike”, 16}, {“Jane”, 12}};
excel.Worksheets[0].Cells.ImportArray(obj, 10, 5);

4. Formula supports & operator and some special characters within sheet name
cell.Formula = “=A2 & " hello world"”;
cell.Formula = “=‘First Sheet’!A4”;
cell.Formula = “=sum(‘My-1stSheet’!A1:D5)”;

5. FitToPages issue described in https://forum.aspose.com/t/119266

6. Axis title’s rotation
chart.ValueAxis.Title.Rotation = 90;

7. Clear range api
Cells.Clear
///


/// Clears contents and formatting of a range.
///

/// Start row index.
/// Start column index.
/// End row index.
/// End column index.
public void Clear(int startRow, byte startColumn, int endRow, byte endColumn)


Cells.ClearContents
///
/// Clears contents of a range.
///

/// Start row index.
/// Start column index.
/// End row index.
/// End column index.
public void ClearContents(int startRow, byte startColumn, int endRow, byte endColumn)

Dear Customers,

Hotfix 1.8.8 is released.



Fixed:
1. Long formula issue as described in https://forum.aspose.com/t/119004.

2. Hyperlinks issue as described in
https://forum.aspose.com/t/119004


3. Export DateTime in ExportDataTable method, please refer to https://forum.aspose.com/t/119004

Added:
1. DataLabels font setting
for(int i = 0; i < chart.NSeries.Count; i ++)
{
chart.NSeries[i].DataLabels.IsValueShown = true;
chart.NSeries[i].DataLabels.IsLegendKeyShown = true;
chart.NSeries[i].DataLabels.Font.Size = 6;
}

2. PlotArea size setting
chart.PlotArea.Width = 2500;
chart.PlotArea.X = 500;
chart.PlotArea.Y = 800;

3. Cells.Start, Cells.End property
Cells.Start
///


/// Gets the last cell in this worksheet.
///

public Cell End

Cells.End
///
/// Gets the first cell in this worksheet.
///

public Cell Start

3. Cells.GroupColumns
///
/// Groups columns.
///

/// The first column index to be grouped.
/// The last column index to be grouped.
/// Specifies if the grouped columns are hidden.
public void GroupColumns(byte firstIndex, byte lastIndex, bool isHidden)

I just downloaded the latest fix (1.8.8) and now I’m getting an error when compiling:

c:\webs\ca\bin\Aspose.Excel.dll Cannot declare a namespace and a type both named ‘ca’

We have a large namespace named ca (our top-level), so we cannot rename it.

Is there anything you can do about the name of whatever type object is ca within Aspose.Excel ?

Hello mbuckleman,

1. You’re using an obfuscated copy of Aspose.Excel.dll. To protect Aspose.Excel.dll it must be obfuscated.

2. Aspose.Excell does not have an API named as ca orginally. However, after it’s obfuscated, one of the APIs is named as ca.

3. Now I check the obfuscator that is used to obfuscate Aspose.Excel.dll, it’s possible to prevent if from not renaming one of the APIs as ca.

Please download the latest hot fix