使用Excel4Node库创建精美的Excel文档之(添加图片进excel)

❤️砥砺前行,不负余光,永远在路上❤️
❤️Github主页:https://github.com/codernmx
❤️公众号:水印相机打卡

效果图:

在这里插入图片描述

效果图代码:

可根据自己业务情况封装改写,此代码仅做示例/记录

const xl = require("excel4node");
const fs = require("fs");
const fishlist = [
    {
        imgUrl: '001.jpg',
        name: "名称1",
        weight: "0.1"
    },
    {
        imgUrl: '001.jpg',
        name: "名称2",
        weight: "0.1"
    },
    {
        imgUrl: '001.jpg',
        name: "名称3",
        weight: "0.1"
    }
]
// 创建工作簿
const wb = new xl.Workbook();
const style = wb.createStyle();
// 向工作簿添加一个表格
let ws = wb.addWorksheet('Sheet 1');

ws.cell(1, 1).string('图片').style(style);
ws.cell(1, 2).string('名称').style(style);
ws.cell(1, 3).string('其他属性').style(style);

fishlist.forEach((item, i) => {
    ws.addImage({
        path: item.imgUrl,
        type: 'picture',
        position: {
            type: 'twoCellAnchor',
            from: {
                col: 1, // 图片列从第1列开始
                colOff: 0,
                row: i + 2, // 第一行是标题,所以从第3行开始
                rowOff: 0,
            },
            to: {
                col: 2, // 图片列到第2列结束
                colOff: 0,
                row: i + 3, // 图片的高度占用两行,所以从第4行结束
                rowOff: 0,
            },
        },
    });
    ws.cell(i + 2, 2).string(item.name).style(style); // 从第2行开始写入名称
    ws.cell(i + 2, 3).string(item.weight).style(style); // 从第2行开始写入重量

    ws.row(i + 2).setHeight(50); // 设置每行的行高为50
});
const fileName = new Date().getTime() + ".xlsx";
wb.write(fileName, (err, stats) => {
    if (err) {
        console.error(err);
    } else {
        console.log(fileName + "导出成功");
    }
});

使用Excel4Node库创建精美的Excel文档

Excel表格是处理数据、制作报告和展示信息的强大工具。在Node.js中,有许多库可供选择,以便通过代码来生成Excel文件。其中之一就是excel4node库,它提供了创建Excel文档的灵活性和强大功能。本文将介绍excel4node库的基本用法,以及如何使用它来创建自定义的Excel文档。

什么是excel4node?

excel4node是一个用于在Node.js环境中生成Excel文件的库。它提供了丰富的功能,可以帮助你创建包含数据、图表、样式和图片的Excel工作簿。这个库的主要特点包括:

简单易用:excel4node的API设计非常简单,容易理解和使用,即使对于没有Excel编程经验的开发者也很友好。

丰富的功能:它支持创建工作簿、工作表、单元格、图表、样式和图片,并能够设置各种属性和格式。

支持图片:excel4node允许你在Excel文档中插入图片,这在制作报告和数据可视化时非常有用。

跨平台:它可以在各种操作系统上运行,因为它是基于Node.js的,不受平台限制。

安装excel4node

要开始使用excel4node,首先需要在你的Node.js项目中安装它。你可以使用npm或yarn来安装:

npm install excel4node

创建一个简单的Excel文档

让我们从一个简单的示例开始,创建一个包含一些数据的Excel工作簿。

Copy code
const xl = require("excel4node");

// 创建一个新的工作簿
const wb = new xl.Workbook();

// 添加一个工作表
const ws = wb.addWorksheet('Sheet 1');

// 向工作表添加数据
ws.cell(1, 1).string('姓名');
ws.cell(1, 2).string('年龄');

ws.cell(2, 1).string('Alice');
ws.cell(2, 2).number(30);

ws.cell(3, 1).string('Bob');
ws.cell(3, 2).number(25);

// 将工作簿保存到文件
wb.write('sample.xlsx', (err, stats) => {
  if (err) {
    console.error('出现错误:', err);
  } else {
    console.log('Excel文档已创建');
  }
});

在这个示例中,我们首先导入excel4node库,然后创建一个新的工作簿和一个工作表。接着,我们使用ws.cell方法来添加数据到工作表中,最后将工作簿保存到名为sample.xlsx的文件中。

添加图片到Excel文档

除了数据,excel4node还支持在Excel文档中添加图片。以下是一个示例,演示如何添加图片到工作簿:

Copy code
const xl = require("excel4node");

// 创建一个新的工作簿
const wb = new xl.Workbook();

// 添加一个工作表
const ws = wb.addWorksheet('Sheet 1');

// 添加图片
ws.addImage({
  path: 'path/to/your/image.png',
  type: 'picture',
  position: {
    type: 'twoCellAnchor',
    from: {
      col: 1,
      colOff: 0,
      row: 1,
      rowOff: 0,
    },
    to: {
      col: 4,
      colOff: 0,
      row: 6,
      rowOff: 0,
    },
  },
});

// 将工作簿保存到文件
wb.write('document_with_image.xlsx', (err, stats) => {
  if (err) {
    console.error('出现错误:', err);
  } else {
    console.log('带有图片的Excel文档已创建');
  }
});

在这个示例中,我们使用ws.addImage方法来添加图片到工作簿。你需要提供图片的路径、类型和位置信息。这个方法允许你在Excel文档中精确地定位图片。

总结

excel4node是一个强大的Node.js库,用于创建自定义的Excel文档。无论是制作报告、生成数据报表还是展示数据可视化,excel4node都提供了丰富的功能和灵活性。通过使用这个库,你可以轻松地生成精美的Excel文档,满足各种需求。不妨尝试一下,发挥你的创造力,制作出令人印象深刻的Excel文件!

希望本文对你了解excel4node库以及如何使用它创建Excel文档有所帮助。祝你在使用excel4node时取得成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

codernmx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值