DOCX

@office-open/docx

使用声明式 TypeScript API 生成 .docx 文档

安装

pnpm add @office-open/docx

快速开始

import { Document, Packer, Paragraph, TextRun } from "@office-open/docx";

const doc = new Document({
    sections: [
        {
            children: [
                new Paragraph({
                    children: [new TextRun("Hello World")],
                }),
            ],
        },
    ],
});

const buffer = await Packer.toBuffer(doc);

主要组件

组件说明
Document文档根容器,包含节和属性
Paragraph文本段落,支持格式化、对齐和间距
TextRun内联文本,支持字体、大小、颜色和样式
Table, TableRow, TableCell结构化表格,支持合并单元格和边框
ImageRun嵌入图片,支持变换和定位
ChartRun柱状图、折线图、饼图、面积图和散点图
SmartArtRun预定义 SmartArt 图示
Header, Footer节页眉和页脚
FootnoteReferenceRun脚注和尾注
TableOfContents自动生成的目录
Bookmark内部书签和交叉引用
Math, MathRun数学公式
Styles声明式样式定义

导出格式

方法返回值适用场景
Packer.toBuffer(doc)Uint8ArrayNode.js 文件 I/O
Packer.toBlob(doc)Blob浏览器下载
Packer.toBase64String(doc)stringData URL、API 载荷
Packer.toString(doc)string调试、检查
Packer.toStream(doc)ReadableStream流式传输大文件
Copyright © 2026