Skip to content

Releases: rabanti-github/PicoXLSX

Release v4.0.0

01 Mar 01:41

Choose a tag to compare

This is the major release of the version v4.0.0

Changes

Modularization

  • Changed the code base of PicoXLSX to the now shared NanoXLSX base (namespace changed)
  • Split the monolithic PicoXLSX library into separate NuGet packages: NanoXLSX.Core, NanoXLSX.Writer and the meta-package PicoXLSX
  • Option to upgrade PicoXLSX to NanoXLSX (reader support) by adding the NuGet package NanoXLSX.Reader
  • Introduced a plugin architecture for the Writer module, allowing custom implementations
  • Added external module NanoXLSX.Formatting for in-line cell formatting (rich text), bundled with the meta-package

Color System

  • Introduced new Color class (namespace NanoXLSX.Colors) supporting RGB, ARGB, indexed, theme, system and auto colors
  • Changed Font.ColorValue from string to Color
  • Removed Font.ColorTheme property (value now handled by Font.ColorValue when type is ThemeColor)
  • Changed Fill.BackgroundColor and Fill.ForegroundColor from string to Color
  • Removed Fill.IndexedColor property (value now part of Color class)
  • Added implicit conversions for colors from strings (ARGB) and integers (indexed color)

Font Redesign

  • Changed Font.Family from string to enum Font.FontFamilyValue
  • Changed Font.Charset from string to enum Font.CharsetValue
  • Changed Font.VerticalAlign from Font.VerticalAlignValue to Font.VerticalTextAlignValue
  • Added Baseline as value for VerticalTextAlignValue
  • Added font properties: Font.Outline, Font.Shadow, Font.Condense and Font.Extend
  • Renamed font constants to PascalCase (e.g. DEFAULT_FONT_NAME to DefaultFontName)

Fill Redesign

  • Complete overhaul of the Fill class for flexible color definitions including tint support
  • Changed fill color properties to use the new Color class
  • Added implicit operators for Fill creation from strings and integers
  • Renamed fill constants and enum values to PascalCase

Worksheet and Workbook

  • Worksheet.SelectedCells changed from Range to List<Range> with automatic range recalculation
  • Worksheet.SheetProtectionPassword changed from string to IPassword interface (default: LegacyPassword)
  • Address struct properties (Row, Column, Type) are now read-only (immutable)
  • Range struct properties (StartAddress, EndAddress) are now read-only (immutable)
  • Added explicit cast operator for Address from string and implicit cast operator for Range from string
  • Added AddCellRange overloads accepting Range objects
  • Removed deprecated methods: Workbook.AddStyle, Workbook.AddStyleComponent, Workbook.RemoveStyle
  • Workbook.GetMruColors() now returns IReadOnlyList<Color>
  • Empty Workbook.WorkbookMetadata now returns a default object instead of null

Naming Conventions (Breaking)

  • All enum values renamed from camelCase to PascalCase across: Cell.CellType, Worksheet.SheetProtectionValue, Worksheet.WorksheetPane, Worksheet.SheetViewType, Border.StyleValue, Fill.FillType, Fill.PatternValue, CellXf.HorizontalAlignValue, CellXf.TextBreakValue, CellXf.TextDirectionValue, CellXf.VerticalAlignValue, NumberFormat.FormatRange, NumberFormat.FormatNumber, Font.SchemeValue, Font.VerticalTextAlignValue, Font.UnderlineValue
  • All public constants renamed from UPPER_SNAKE_CASE to PascalCase across Worksheet, Font, Border, Fill, CellXf, NumberFormat

Utils

  • Several util methods split into specific classes DataUtils, ParserUtils and Validators in namespace NanoXLSX.Utils
  • Utils.GeneratePasswordHash moved to LegacyPassword.GenerateLegacyPasswordHash
  • Constants moved to NanoXLSX.Utils.Constants

Misc

  • Introduced Theme class for workbook theme representation
  • All (s)RGB values are automatically validated and cast to uppercase
  • Improved Cell constructor behavior: EMPTY type discards any passed value
  • Added ThemeColor constructor by index
  • Various bug fixes and optimizations from RC releases

See the Migration Guide for detailed instructions on migrating from v3.x to v4.0.0.

Content

Release v3.4.5

01 Oct 13:43

Choose a tag to compare

This is the release of the version v3.4.4

Changes

  • Fixed handling of worksheet protection (regression bug)

Content

  • The release library (dll) for .NET 4.5 and .NET Standard 2.0
  • The debug library and XML documentation (dll) for .NET 4.5 and .NET Standard 2.0
  • The help file (chm)

The NuGet package can be found https://www.nuget.org/packages/PicoXLSX

Release v3.4.4

29 Sep 22:23

Choose a tag to compare

This is the release of the version v3.4.4

Changes

  • Fixed handling of worksheet protection (selecting locked or unlocked cells)

Note: The default value of Style.CurrentCellXf.Locked is now true, to be consistent with Excel behavior. This change only affects worksheets with protection enabled and may require
explicit unlocking of cells that should remain editable

Content

  • The release library (dll) for .NET 4.5 and .NET Standard 2.0
  • The debug library and XML documentation (dll) for .NET 4.5 and .NET Standard 2.0
  • The help file (chm)

The NuGet package can be found https://www.nuget.org/packages/PicoXLSX

Release v3.4.3

26 Apr 21:29

Choose a tag to compare

This is the release of the version v3.4.3

Changes

  • Fixed a bug that prevented adding new worksheets when a pane split was defined

Content

  • The release library (dll) for .NET 4.5 and .NET Standard 2.0
  • The debug library and XML documentation (dll) for .NET 4.5 and .NET Standard 2.0
  • The help file (chm)

The NuGet package can be found https://www.nuget.org/packages/PicoXLSX

Release v3.4.2

24 Jan 21:26

Choose a tag to compare

This is the release of the version v3.4.2

Changes

  • Fixed a regression bug in the Cell function ConvertArray

Content

  • The release library (dll) for .NET 4.5 and .NET Standard 2.0
  • The debug library and XML documentation (dll) for .NET 4.5 and .NET Standard 2.0
  • The help file (chm)

The NuGet package can be found https://www.nuget.org/packages/PicoXLSX

Release v3.4.1

19 Jan 20:57

Choose a tag to compare

This is the release of the version v3.4.1

Changes

  • Fixed a bug on writing default column widths (not persisted in some cases)
  • Code maintenance

Content

  • The release library (dll) for .NET 4.5 and .NET Standard 2.0
  • The debug library and XML documentation (dll) for .NET 4.5 and .NET Standard 2.0
  • The help file (chm)

The NuGet package can be found https://www.nuget.org/packages/PicoXLSX

Release v3.4.0

12 Jan 00:42

Choose a tag to compare

This is the release of the version v3.4.0

Changes

  • Added Cell constructor, accepting Address objects as address
  • Added GetRow and GetColum functions in Worksheet class
  • Added InsertRow and InsertColumn functions. Functionality provided by Alexander Schlecht in NanoXLSX
  • Added FirstCewllByValue, FirstOrDefaultCell, CellsByValue functions. Functionality provided by Alexander Schlecht in NanoXLSX
  • Added ReplaceCellValue function. Functionality provided by Alexander Schlecht in NanoXLSX
  • Code maintenance

Content

  • The release library (dll) for .NET 4.5 and .NET Standard 2.0
  • The debug library and XML documentation (dll) for .NET 4.5 and .NET Standard 2.0
  • The help file (chm)

The NuGet package can be found https://www.nuget.org/packages/PicoXLSX

Release v3.3.2

24 Nov 20:12

Choose a tag to compare

This is the release of the version v3.3.2

Changes

  • Fixed a bug of the column address (letter) resolution. Column letters above 'Z' were resolved incorrectly
  • Simplified project structure

Content

  • The release library (dll) for .NET 4.5 and .NET Standard 2.0
  • The debug library and XML documentation (dll) for .NET 4.5 and .NET Standard 2.0
  • The help file (chm)

The NuGet package can be found https://www.nuget.org/packages/PicoXLSX

Release v3.3.1

25 Oct 23:36

Choose a tag to compare

This is the release of the stable version v3.3.1
The executable contains:

The release library (dll for .NET 4.5 and .NET Standard 2.0)
The debug library and XML documentation (dll for .NET 4.5 and .NET Standard 2.0)
The help file (chm)

Release v3.3.0

23 Jul 21:33

Choose a tag to compare

This is the release of the stable version v3.3.0
The executable contains:

  • The release library (dll for .NET 4.5 and .NET Standard 2.0)
  • The debug library and XML documentation (dll for .NET 4.5 and .NET Standard 2.0)
  • The help file (chm)