【问题标题】:extract image from excel in nodejs从nodejs中的excel中提取图像
【发布时间】:2019-08-23 08:51:28
【问题描述】:

我正在尝试使用节点 js 提取 excel 中的所有图像。任何人都可以为此建议任何 npm 模块。这是我用于测试的 excel 文件的图像。

【问题讨论】:

    标签: node.js excel base64 exceljs


    【解决方案1】:

    我会使用 JSZip https://stuk.github.io/jszip/

    您应该能够在 excel 文件的 \xl\media\ 目录中找到图像。

    您可以使用 ExcelJS 找出图像出现的列和行。不幸的是,我还没有在 ExcelJS 中找到一种方法来知道出现在 excel 文档中该单元格上的图像的文件名。

    编辑: 您可以打开 sheet1.xml.rels 以查找用于创建 sheet1 的其他文件。在文件列表中应该有对 drawing1.xml 文件的引用。在 drawing1.xml.rels 文件中,您可以找到指向 media 文件夹中图像的链接。该文件还为这些文件中的每一个提供了一个 ID。 drawing1.xml 包含有关应在工作表中放置哪些图像的信息。

    一般结构如下:

    <xdr:twoCellAnchor editAs="oneCell">
        <xdr:from>
            <xdr:col>4</xdr:col>
            <xdr:row>14</xdr:row>
        </xdr:from>
        <xdr:pic>
            <xdr:blipFill>
                <a:blip xmlns:r="" r:embed="rId2" cstate="print">
                </a:blip>
            </xdr:blipFill>
        </xdr:pic>
        <xdr:clientData />
    </xdr:twoCellAnchor>
    

    如果您将 col 和 row 值都加 1,您将获得存储图像的单元格。 rId2 是一个 Id,它引用了 drawing1.xml.rels 中的媒体定义

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-18
      • 1970-01-01
      • 2019-08-21
      • 1970-01-01
      • 2015-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多