XlsxToHtmlConverter 1.2.17
See the version list below for details.
dotnet add package XlsxToHtmlConverter --version 1.2.17
NuGet\Install-Package XlsxToHtmlConverter -Version 1.2.17
<PackageReference Include="XlsxToHtmlConverter" Version="1.2.17" />
paket add XlsxToHtmlConverter --version 1.2.17
#r "nuget: XlsxToHtmlConverter, 1.2.17"
// Install XlsxToHtmlConverter as a Cake Addin #addin nuget:?package=XlsxToHtmlConverter&version=1.2.17 // Install XlsxToHtmlConverter as a Cake Tool #tool nuget:?package=XlsxToHtmlConverter&version=1.2.17
XlsxToHtmlConverter v1.2.17
A Xlsx to Html file converter and parser. Support cell fill, font, border, alignment and other styles. Support custom column width and row height. Support vertical and/or horizontal merged cells. Support sheet tab color and hidden sheet. Support pictures. Support progress callback. It only depends on the Microsoft Open Xml SDK.
Dependencies
DocumentFormat.OpenXml = 2.20.0
Main Features
- Cell fill, font, border, alignment, and other styles
- Custom column width and row height
- Vertical and/or horizontal merged cells
- Sheet tab color and hidden sheet
- Pictures embedding as Base64 images
- Conversion progress callback
Original Xlsx File
Converted Html File
How to Use
Only one line to convert a Xlsx file to Html with the use of Stream
.
XlsxToHtmlConverter.Converter.ConvertXlsx(inputStream, outputStream);
Or to convert with specific ConverterConfig
and progress callback.
XlsxToHtmlConverter.Converter.ConvertXlsx(inputStream, outputStream, config, progressCallback);
Convert Local Files
Just use a string
of the path to the file instead of a Stream
to convert a local Xlsx file.
string filename = @"C:\path\to\file.xlsx";
XlsxToHtmlConverter.Converter.ConvertXlsx(filename, outputStream);
A third optional parameter can be set to decide whether to use MemoryStream
or FileStream
. When set to false
, it uses a FileStream
to read the file instead of loading the entire file into a MemoryStream
at once, which reduces the memory usage but at the cost of slowing down the conversion significantly.
XlsxToHtmlConverter.Converter.ConvertXlsx(filename, outputStream, false);
Conversion Configurations
ConverterConfig
include flexible and customizable conversion configurations.
In cases where the converter is unable to produce the correct stylings, it is suggested to set
ConvertStyle
tofalse
, which will ensure the conversion of all the content with default stylings.
XlsxToHtmlConverter.ConverterConfig config = new XlsxToHtmlConverter.ConverterConfig()
{
PageTitle = "My Title",
PresetStyles = "body { background-color: skyblue; } table { width: 100%; }",
ErrorMessage = "Oh, no. An error occured.",
Encoding = System.Text.Encoding.UTF8,
ConvertStyle = true,
ConvertSize = true,
ConvertPicture = true,
ConvertSheetNameTitle = true,
ConvertHiddenSheet = false,
ConvertFirstSheetOnly = false,
ConvertHtmlBodyOnly = false
};
Progress Callback
A progress callback event can be set up with ConverterProgressCallbackEventArgs
, where things like ProgressPercent
can be used.
EventHandler<XlsxToHtmlConverter.ConverterProgressCallbackEventArgs> progressCallback = ConverterProgressCallback;
private static void ConverterProgressCallback(object sender, XlsxToHtmlConverter.ConverterProgressCallbackEventArgs e)
{
string info = string.Format("{0:##0.00}% (Sheet {1} of {2} | Row {3} of {4})", e.ProgressPercent, e.CurrentSheet, e.TotalSheets, e.CurrentRow, e.TotalRows);
string progress = new string('█', (int)(e.ProgressPercent / 2)) + new string('░', (int)((100 - e.ProgressPercent) / 2));
Console.WriteLine(info + new string(' ', 5) + progress);
}
License
This project is under the MIT License.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 is compatible. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETCoreApp 3.0
- DocumentFormat.OpenXml (>= 2.20.0)
-
.NETStandard 2.0
- DocumentFormat.OpenXml (>= 2.20.0)
-
net5.0
- DocumentFormat.OpenXml (>= 2.20.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.2.20 | 176 | 9/22/2024 |
1.2.19 | 178 | 9/1/2024 |
1.2.18 | 127 | 8/15/2024 |
1.2.17 | 113 | 8/7/2024 |
1.2.15 | 506 | 3/17/2024 |
1.2.13 | 120 | 3/17/2024 |
1.2.7 | 123 | 3/10/2024 |
1.2.1 | 111 | 2/20/2024 |
1.1.15 | 165 | 2/20/2024 |
1.1.14 | 18,485 | 10/8/2020 |
1.1.12 | 494 | 10/5/2020 |
1.1.11 | 637 | 10/3/2020 |
1.1.8 | 503 | 6/22/2020 |