[]
        
立即试用
(Showing Draft Content)

导出HTML

许多公司在 Excel 文件中维护产品库存、招聘职位、价目表等。但是,将这些数据发布到网站上与相关客户共享是非常普遍的。因此,在这种情况下,导出为 HTML 文件成为一项重要功能。

GcExcel 允许用户将工作簿、工作表或任何特定范围导出到 HTML 文件。默认情况下,它导出一个HTML文件和一个包含其他文件的文件夹。这些附加文件可以是工作表中的图像、工作簿中其他工作表的 HTML 文件或用于设置 HTML 文件样式的 CSS 文件。同样,在导出工作表或工作表的任何区域时,也可以导出单个 HTML 文件。

使用 HtmlSaveOptions 类中的各种方法,可以通过各种设置控制导出的内容,如导出标题、网格线、文档属性或应用其他设置,如可缩放宽度、页面标题、显示工具提示文本等。

HtmlSaveOptions 类中的 setExportCssSeparately 方法单独导出 CSS 文件(在附加文件夹中),因为其默认值为 True。但是,可以将其设置为false,以便将css样式数据直接导出到每个工作表,而不创建单独的 CSS 文件。

HtmlSaveOptions 类中的 setCssExportType 方法为用户提供了选项,用于决定如何使用 CssExportType 枚举将 CSS 文件与 HTML 文件一起导出。CssExportType 枚举允许用户将 CSS 导出到单独的文件(在附加文件夹中)、HTML 中的 style 标记中或 HTML 元素内的 style 属性中。

注意: 如果使用未经许可的GcExcel版本:

  • 将工作簿导出为HTML时:工作簿中会附加一个“评估警告”页,并在每个工作表的开头显示一条“评估警告”消息。

  • 将工作表或范围导出为HTML时:在工作表或范围文件的开头添加“评估警告”消息。


选项

描述

导出选项

HTMLSaveOptions

AddTooltipText

表示当数据无法完全显示时是否添加工具提示文本。默认值为 false。

AttachedFilesUrlPrefix

指定附加文件(如 HTML 文件中的图片)的 URL 前缀。

CellCssPrefix

设置 CSS 名称的前缀。默认值为 null。

CssExportType

指定样式表(CSS)的导出方式。

Encoding

设置编码类型。默认编码类型为 Encoding.UTF8。

ExportArea

表示要将哪个区域导出为 HTML。用于导出工作表的特定区域。仅当 HTMLSaveOptions.ExportSheetName 不为 null 时生效。

ExportCssSeparately

表示是否将工作表样式单独导出为 CSS。默认值为 true。当此属性设置为 false 时,CSS 样式数据将直接导出到每个工作表,不会创建单独的 stylesheet.css 文件。

ExportDocumentProperties

表示是否导出文档属性。默认值为 true。

ExportFileName

表示 HTML 文件的名称。仅用于保存为 HTML 流,默认值为 “workbook”。

ExportGridlines

表示是否导出网格线。默认值为 false。

ExportHeadings

表示将文件保存为 HTML 时是否导出标题。默认值为 false。

ExportHiddenWorksheet

表示是否导出隐藏的工作表。默认值为 false。

ExportImageAsBase64

指定是否以 Base64 格式将图片保存到 HTML 中。默认值为 false。当此属性设置为 true 时,图片数据将直接导出到 img 元素中,不会创建单独的文件。

ExportSheetName

表示要将哪个工作表导出为 HTML。用于导出工作簿中的特定工作表。

ExportSingleTab

表示当文件只有一个工作表或设置了 ExportSheetName 时是否导出单个选项卡。默认值为 false。

FileFormat

表示工作簿保存的格式。

IsExportComments

表示将文件保存为 HTML 时是否导出注释。默认值为 false。

IsFullPathLink

表示在 HTML 中是否使用完整路径链接。仅用于导出为 HTML 文件。默认值为 false。

IsWidthScalable

表示将文件导出为 HTML 时是否使用可缩放单位来描述列宽。默认值为 false。

LinkTargetType

表示 <a> 链接中 target 属性的类型。默认值为 HyperLinkTargetType.Blank。

PageTitle

HTML 页面的标题。

TableCssId

设置类型 CSS 名称的前缀,如 tr、td 等;它们包含在具有特定 TableCssId 属性的 table 元素中。默认值为 null。

IncludeAutoMergedCells

表示是否包含自动合并的单元格。默认值为 false。

HtmlSaveOptions 类中的 setCssExportType 方法为用户提供了选项,以便使用 CssExportType 枚举来决定如何将 CSS 文件与 HTML 文件一起导出。CssExportType 枚举允许用户将 CSS 导出到单独的文件(在附加文件夹中)、HTML 中的 style 标签内,或 HTML 元素内的 style 属性中。

注意:如果使用的是未授权版本的 GcExcel:

  • 将工作簿导出为 HTML 时:会在工作簿中追加一个 “Evaluation warning” 工作表,并在每个工作表的开头添加一条 “Evaluation warning” 消息。

  • 将工作表或区域导出为 HTML 时:会在工作表或区域文件的开头添加一条 “Evaluation warning” 消息。

导出工作簿为HTML

IWorkbook 接口的 save 方法可用于将工作簿导出为 HTML 文件。

请参阅以下示例代码,将工作簿导出成一个 zip 文件夹,其包含工作簿的 HTML 文件和其他文件。

// Create a zip file stream
FileOutputStream outputStream = new FileOutputStream("SaveWorkbookToHTML.zip");
// Create a new workbook
Workbook workbook = new Workbook();
workbook.open("NetProfit.xlsx");
// Save workbook to html format
workbook.save(outputStream, SaveFileFormat.Html);

导出工作表为HTML

IWorkbook 接口的 save 方法可用于将工作表导出为HTML文件。工作表的标题和网格线也可以使用 HtmlSaveOptions 类的 setExportHeadingssetExportGridlines 方法导出。setExportSheetName 方法可用于定义需要导出的工作表。

请参阅以下示例代码,将工作表导出成一个zip文件夹,其包含工作表的HTML文件和其他文件。

// Create a zip file stream
FileOutputStream outputStream = null;
outputStream = new FileOutputStream("SaveWorksheetToHTML.zip");

// Create a new workbook
Workbook workbook = new Workbook();
workbook.open("ProjectTracker.xlsx");
HtmlSaveOptions options = new HtmlSaveOptions();

// Set exporting row/column headings
options.setExportHeadings(true);

// Set exporting gridlines
options.setExportGridlines(true);

// Export first sheet
options.setExportSheetName(workbook.getWorksheets().get(0).getName());

// Set exported html file name
options.setExportFileName("HiringDetails");
workbook.save(outputStream, options);

当设置了 HtmlSaveOptions 类的指定方法时,工作表也可以导出到单个HTML文件中,如下代码所示。

// Create a workbook
Workbook workbook = new Workbook();

// Open an xlsx file
workbook.open("ProjectTracker.xlsx");

// Create HtmlSaveOptions
HtmlSaveOptions options = new HtmlSaveOptions();

// Export first sheet
options.setExportSheetName(workbook.getWorksheets().get(0).getName());

// Set exported image as base64
options.setExportImageAsBase64(true);

// Set the css export type to internal CSS.
options.setCssExportType(CssExportType.Internal);

// Or, set the css export type to inline CSS.
// options.setCssExportType(CssExportType.Inline);

// Set not to export single tab in html
options.setExportSingleTab(false);

// Save first worksheet to html
workbook.save("SaveWorksheetToSingleHTML.html", options);

导出工作表的区域为HTML

IWorkbook 接口的 save 方法可用于将工作表的任何范围导出为HTML文件。HtmlSaveOptions 类的 setExportArea 方法可用于定义需要导出的范围。

请参阅以下示例代码,将工作表中的一片区域导出成一个 zip 文件夹,其包含导出区域的 HTML 文件和其他文件。

// Get detail range and set style.
for (IPivotLine item : pivottable.getPivotRowAxis().getPivotLines()) {
    if (item.getLineType() == PivotLineType.Subtotal) {
        item.getPivotLineCells().get(0).getRange().getInterior().setColor(Color.GetGreenYellow());
    }
}

当设置了 HtmlSaveOptions 类的特定方法时,工作表中的范围也可以导出到单个HTML文件中,如下代码所示。

// Create a new workbook
Workbook workbook = new Workbook();
workbook.open("ProjectTracker.xlsx");

// Create HtmlSaveOptions
HtmlSaveOptions options = new HtmlSaveOptions();

// Specify exported sheet name
options.setExportSheetName(workbook.getWorksheets().get(0).getName());

// Set export area
options.setExportArea("D2:G23");

// Set exported image as base64
options.setExportImageAsBase64(true);

// Set the css export type to internal CSS.
options.setCssExportType(CssExportType.Internal);

// Or, set the css export type to inline CSS.
// options.setCssExportType(CssExportType.Inline);

// Set not to export single tab in html
options.setExportSingleTab(false);

// Save the specified range of first worksheet to html
workbook.save("WorksheetRangeToHTML.html", options);

type=warning

注意:setExportCssSeparately 方法现已过时,但具有此属性的现有应用程序将继续正常运行。

限制

导出到HTML文件时不支持以下功能:

  • 图表

  • 渐变填充

  • 切片器

    • 数据透视表切片器或报表连接

    • 切片器项目的自定义高度

    • 切片器设置

    • 切片器样式(颜色属性除外)

    • 切片器头部样式

    • 围绕“项目”面板的滚动查看器

    • 无数据时的切片器项目样式