Previous topicNext topic
Help > 开发指南 > Excel > API > 示例 > Cell单元格 >
如何:将单元格区域另存为图像

调用 CellRange 对象的 CellRangeExtensions.ExportToImage 扩展方法,将单元格区域另存为图像。将 ImageFileFormat 枚举成员传递给此方法以指定输出图像格式。

重要

CellRangeExtensions 类在 DevExpress 中定义。文档。第23 节。1.dll 程序集。将此程序集添加到项目中以使用单元格区域扩展。需要 DevExpress Office 文件 API 订阅或 DevExpress 通用订阅  的许可证才能在生产代码中使用此程序集。

以下代码片段演示了如何将单元格区域导出为图像:

Vb.Net
Using workbook As New DevExpress.Spreadsheet.Workbook()
    workbook.LoadDocument("D:\InvestmentPortfolio.xlsx", DevExpress.Spreadsheet.DocumentFormat.Xlsx)
    Dim worksheet As DevExpress.Spreadsheet.Worksheet = workbook.Worksheets.ActiveWorksheet
    worksheet.Range("B1:I25").ExportToImage("D:\RangeImage.png", DevExpress.Spreadsheet.ImageFileFormat.Png)
End Using

C#
using (DevExpress.Spreadsheet.Workbook workbook = new DevExpress.Spreadsheet.Workbook())
{
    workbook.LoadDocument(@"D:\InvestmentPortfolio.xlsx", DevExpress.Spreadsheet.DocumentFormat.Xlsx);
    DevExpress.Spreadsheet.Worksheet worksheet = workbook.Worksheets.ActiveWorksheet;
    worksheet.Range["B1:I25"].ExportToImage(@"D:\RangeImage.png", DevExpress.Spreadsheet.ImageFileFormat.Png);
}

自定义导出设置
创建一个 RangeImageOptions 类实例,并将其传递给 CellRange.ExportToImage 方法以指定导出选项。可以使用以下选项:

RangeImageOptions 属性 描述
Resolution 定义图像分辨率(以 DPI 为单位)。
Scale 指定在将工作表内容导出到图像之前如何缩放工作表内容。
BackgroundColor 允许您用颜色填充图像背景。
ExportHeadings 指定是否在输出图像中包括行标题和列标题。
ExportDrawingObjects 指定是否在输出图像中包括绘图对象(图表、形状和图片)。
ExportGridlines 指定是否在输出图像中包括单元格网格线。
GridlineColor 定义网格线颜色。
BlackAndWhite 允许您将单元格区域另存为黑白图像。

以下示例演示如何将单元格区域另存为图像,并定义导出选项以创建以下图像:

Vb.Net
Using workbook As New DevExpress.Spreadsheet.Workbook()
    workbook.LoadDocument("D:\InvestmentPortfolio.xlsx", DevExpress.Spreadsheet.DocumentFormat.Xlsx)
    Dim worksheet As DevExpress.Spreadsheet.Worksheet = workbook.Worksheets.ActiveWorksheet
    Dim exportOptions As New DevExpress.Spreadsheet.RangeImageOptions With {
        .Resolution = 192,
        .ExportHeadings = True,
        .ExportGridlines = True,
        .GridlineColor = Color.Gray,
        .BackgroundColor = Color.FromArgb(&HF2, &HF2, &HF2)
    }
    worksheet.Range("B1:I25").ExportToImage("D:\RangeImage.png", DevExpress.Spreadsheet.ImageFileFormat.Png,exportOptions)
End Using

C#
using (DevExpress.Spreadsheet.Workbook workbook = new DevExpress.Spreadsheet.Workbook())
{
    workbook.LoadDocument(@"D:\InvestmentPortfolio.xlsx", DevExpress.Spreadsheet.DocumentFormat.Xlsx);
    DevExpress.Spreadsheet.Worksheet worksheet = workbook.Worksheets.ActiveWorksheet;
    var exportOptions = new DevExpress.Spreadsheet.RangeImageOptions
    {
        Resolution = 192,
        ExportHeadings = true,
        ExportGridlines = true,
        GridlineColor = Color.Gray,
        BackgroundColor = Color.FromArgb(0xF2, 0xF2, 0xF2)
    };
    worksheet.Range["B1:I25"].ExportToImage(@"D:\RangeImage.png", DevExpress.Spreadsheet.ImageFileFormat.Png,exportOptions);
}