如何在C#中将单元格范围转换为图像

如何在C#中将单元格范围转换为图像

需要视觉提取电子表格的一部分吗?将单元格范围导出为图像对于生成缩略图、预览或部分报告非常有用。本指南展示了如何使用 Aspose.Cells for .NET 将 Excel 中定义的单元格范围转换为高质量图像。

用例

  • 导出定价表或产品目录
  • 分享工作表的一部分而不暴露完整文件
  • 捕获仪表板或小部件的动态范围

分步指南

步骤 1:安装 Aspose.Cells

dotnet add package Aspose.Cells

步骤 2:加载工作簿和工作表

Workbook workbook = new Workbook("DataSet.xlsx");
Worksheet worksheet = workbook.Worksheets[0];

步骤 3:定义要导出的范围

// 指定一个范围,如 A1:D10
Range range = worksheet.Cells.CreateRange("A1", "D10");

步骤 4:配置图像渲染选项

ImageOrPrintOptions options = new ImageOrPrintOptions
{
    ImageType = ImageType.Png,
    HorizontalResolution = 200,
    VerticalResolution = 200,
    OnePagePerSheet = true
};

步骤 5:创建 SheetRender 并渲染范围

// 如果需要,可以使用打印边界的 SheetRender
SheetRender renderer = new SheetRender(worksheet, options);

步骤 6:将范围导出为图像

Aspose.Cells 没有直接的 RangeRender 类,但您仍然可以通过将渲染聚焦于选定范围来剪切图像:

// 手动为工作表设置打印区域
worksheet.PageSetup.PrintArea = "A1:D10";

// 重新创建应用打印设置的 SheetRender
renderer = new SheetRender(worksheet, options);

// 渲染并导出
renderer.ToImage(0, "range_output.png");

步骤 7:保存并验证输出

您现在将拥有所选 Excel 范围的干净裁剪图像。


完整示例代码

using System;
using Aspose.Cells;

class Program
{
    static void Main()
    {
        // 加载工作簿
        Workbook workbook = new Workbook("DataSet.xlsx");

        // 访问第一个工作表
        Worksheet worksheet = workbook.Worksheets[0];

        // 定义要导出的范围(A1 到 D10)
        Range range = worksheet.Cells.CreateRange("A1", "D10");

        // 将打印区域设置为此范围
        worksheet.PageSetup.PrintArea = range.RefersTo;

        // 设置图像导出选项
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            HorizontalResolution = 200,
            VerticalResolution = 200,
            OnePagePerSheet = true
        };

        // 仅渲染指定范围
        SheetRender renderer = new SheetRender(worksheet, options);

        // 导出为图像
        renderer.ToImage(0, "range_output.png");

        Console.WriteLine("单元格范围成功导出为图像。");
    }
}

故障排除提示

问题解决方案
图像包含额外的行/列确保打印区域严格定义
范围裁剪不正确设置 OnePagePerSheet = true
模糊文本增加分辨率设置
 中文