如何在C#中自定义Excel到图像的渲染

如何在C#中自定义Excel到图像的渲染

在将Excel工作表或范围导出为图像时,您通常需要精确控制内容的外观。无论是用于打印、演示还是嵌入,本文演示了如何使用Aspose.Cells for .NET自定义图像渲染。

为什么要自定义渲染?

  • 提高图像清晰度和分辨率
  • 显示或隐藏网格线、公式或标题
  • 使布局和大小符合文档要求
  • 调整背景透明度或边框

分步指南

步骤 1:安装 Aspose.Cells for .NET

dotnet add package Aspose.Cells

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

Workbook workbook = new Workbook("Template.xlsx");
Worksheet worksheet = workbook.Worksheets["Sheet1"];

步骤 3:配置高级渲染选项

ImageOrPrintOptions options = new ImageOrPrintOptions
{
    ImageType = ImageType.Png,
    HorizontalResolution = 300,
    VerticalResolution = 300,
    PrintWithStatusDialog = false,
    Transparent = false,
    OnePagePerSheet = true
};

步骤 4:启用网格线和标题(可选)

// 在输出中显示网格线
options.ShowGridLines = true;

// 渲染行/列标题
options.ShowRowColumnHeaders = true;

步骤 5:自定义页面设置

// 设置为将整个工作表渲染为单个页面
options.AllColumnsInOnePagePerSheet = true;
options.AllRowsInOnePagePerSheet = true;

步骤 6:使用 SheetRender 渲染为图像

SheetRender renderer = new SheetRender(worksheet, options);
renderer.ToImage(0, "custom_output.png");

步骤 7:保存并验证输出

确保生成的图像反映您的自定义布局和视觉选择。


完整示例代码

using System;
using Aspose.Cells;

class Program
{
    static void Main()
    {
        // 加载Excel文件
        Workbook workbook = new Workbook("Template.xlsx");
        Worksheet worksheet = workbook.Worksheets["Sheet1"];

        // 设置高级渲染选项
        ImageOrPrintOptions options = new ImageOrPrintOptions
        {
            ImageType = ImageType.Png,
            HorizontalResolution = 300,
            VerticalResolution = 300,
            PrintWithStatusDialog = false,
            Transparent = false,
            OnePagePerSheet = true,
            ShowGridLines = true,
            ShowRowColumnHeaders = true,
            AllColumnsInOnePagePerSheet = true,
            AllRowsInOnePagePerSheet = true
        };

        // 渲染为图像
        SheetRender renderer = new SheetRender(worksheet, options);
        renderer.ToImage(0, "custom_output.png");

        Console.WriteLine("自定义渲染的工作表已保存为图像。");
    }
}

提高控制的技巧

设置描述
ImageType选择PNG、JPEG、BMP或TIFF
Transparent设置为true以获得透明背景
SmoothingMode使用抗锯齿改善视觉效果
ShowFormulas显示公式而不是计算值
ChartImageWidth / ChartImageHeight设置图表的输出大小
 中文