aardio 文档

插入图片到 Excel

以下示例演示如何在 aardio 中通过 NPOI 库将图片插入 Excel 文件。

示例代码

import NPOI;

// 创建新的 XSSF 工作簿(适用于 .xlsx 格式)
var workbook = NPOI.XSSF.UserModel.XSSFWorkbook();

// 创建工作表并命名为"Pictures"
var sheet = workbook.CreateSheet("Pictures");

// 创建绘图对象(用于在工作表中插入图片)
var drawing = sheet.CreateDrawingPatriarch();

/*
创建图片锚点定位对象
参数说明:dx1, dy1, dx2, dy2, col1, row1, col2, row2
- dx1/dy1: 图片左上角在单元格内的偏移量(单位:EMU)
- dx2/dy2: 图片右下角在单元格内的偏移量
- col1/row1: 起始单元格位置(列和行,从0开始计数)
- col2/row2: 结束单元格位置
*/
var anchor = NPOI.XSSF.UserModel.XSSFClientAnchor(0, 0, 0, 0, 2, 2, 3, 5);

// 设置锚点类型为"移动但不调整大小"
anchor.AnchorType = NPOI.SS.UserModel.AnchorType.MoveDontResize;

// 加载 PNG 图片到工作簿并获取图片ID
var imageId = loadPNGImage("/res/dotnet.png", workbook);

// 在工作表中创建图片
var pic = drawing.CreatePicture(anchor, imageId);

// 保存工作簿到文件
workbook.Write("/pictures.xlsx");

/*
加载 PNG 图片到工作簿的函数
参数:
- path: 图片文件路径
- wb: 工作簿对象
返回值:图片在工作簿中的ID
*/
function loadPNGImage(path, wb) {
    // 读取图片文件为二进制数据
    var buffer = string.loadBuffer(path);

    // 将图片添加到工作簿并返回图片ID
    return wb.AddPicture(buffer, NPOI.SS.UserModel.PictureType.PNG);
}

关键点说明

  1. 图片定位

  2. 图片类型

  3. 文件操作

  4. 资源路径

这个示例展示了 NPOI 在 aardio 中的基本图片操作,你可以根据需要调整图片位置、大小和格式。

Markdown 格式