@digicole/pdfmake-rtl

中文文档
2.1.2发布于 2026/02/11MITCommonJS近 30 天下载 3432

加强PDFMake,提供全面的RTL(阿拉伯语/波斯语/乌尔都语)支持 -- -- 生产准备就绪的一揽子计划

中文使用文档
文档目录13 节
  1. 关键特性
  2. 现场直播
  3. 文档
  4. 特征
  5. * 安装
  6. QQ快起步-浏览器 (Client-Side)
  7. QQ快起步-节点.js (Server-Side)
  8. 文档
  9. 来源建筑
  10. 许可证
  11. 贷项
  12. pdf make-rtl 页面存档备份,存于互联网档案馆
  13. pdfmake(原始图书馆)

pdfmake-RTL (英语) Node.js CI GitHub npm

PDFMake RTL 软件 是增强版本的 PDF 制作 与 自动 RTL( 右到左) 语言支持 用于阿拉伯语,波斯语(法尔西语),乌尔都语等RTL文字. 不需要手动配置——只需写出您的内容和库自动检测和处理RTL文本!

所有已存在的PDFMake代码工作不变,添加了自动RTL支持!

重要内容: 此软件包已移至一个新的 npm 范围 。 请使用 pdfmake-rtl 继续前进.

npm install pdfmake-rtl

关键特性

  • ✅ 自动 RTL 检测 - 不用设了 rtl 旗帜
  • ✅ 智能表格列倒转 - 阿拉伯文/佩斯文/乌尔都文表格自动倒行
  • ✅ Unicode 脚本检测 - 支持阿拉伯语、波斯语、乌尔都语和扩展语
  • ✅ 自动选择字体 - 每种语言使用适当的字体
  • ✅ 适当的文本对齐 - RTL 文本对右, LTR 文本对左
  • ✅ 列表项目符号位置 - 为RTL清单正确定位的子弹
  • ✅ 混合内容支持 - 阿拉伯语/波斯语/乌尔都语/英语混合内容
  • ✅ 100% PDF 制作兼容性 - 用于PDFMake的投放替换

现场直播

👉 在 Netlify 上查看 Live Demo

PDF 文件生成库,用于纯JavaScript中的服务器侧和客户端侧.

检查出来 游乐场 财务报告和审定财务报表 实例。 。 。 .

文档

综合指南、API参考文献和使用实例,请访问 pdfmake.github.io/docs (英语)。 。 。 .

特征

RTL 语言支持

  • 自动RTL 检测 阿拉伯语、波斯语(法尔西语)、乌尔都语和其他RTL 脚本
  • 智能表格列倒转 ——列自动反转RTL内容
  • 自动选择字体 ——阿拉伯语,波斯语和乌尔都语文本使用开罗字体
  • 适当的文本对齐 — RTL 文本自动向右对齐, LTR 向左对齐
  • 列出弹出位置 - 为RTL清单正确定位了子弹和数字
  • 混合内容处理 ——在同一文件中无缝处理阿拉伯语/波斯语/乌尔都语/英语
  • Unicode 脚本检测 ——支持阿拉伯语,波斯语,乌尔都语字符和扩展名

支持的RTL语言

语言脚本自动字体
阿拉伯语العربية开罗
波斯语( 法尔西 )فارسی开罗
乌尔都语اردو开罗
其他RTL 脚本—— 说开罗

一般特点

  • 线接,
  • 文本对齐(左,右,中,正),
  • 编号和中弹清单(带有RTL-感应子弹定位),
  • 表格和栏
    • 自动/固定/星等宽度,
    • 相声和相声,
    • 页面断开时自动重复页眉,
    • rTL 内容的自动列反转, (中文(简体) ),
  • 图像和向量图形,
  • 方便的造型和风格的继承,
  • 页面页眉和页脚 :
    • 静态或动态内容,
    • 访问当前页码和页数,
  • 背景层,
  • 页面尺寸和方向,
  • 边距,
  • 文件节,
  • 自定义分页符,
  • 字体嵌入(包含用于 RTL 支持的开罗字体),
  • 支持复杂、多层次(取消)结构,
  • 目录,
  • 打开/打印/下载生成的 PDF 的帮助方法,
  • 设置 PDF 元数据(例如作者,主题).

* 安装

npm install pdfmake-rtl

QQ快起步-浏览器 (Client-Side)

<!-- Load pdfmake-rtl + fonts -->
<script src="https://unpkg.com/pdfmake-rtl/build/pdfmake.min.js"></script>
<script src="https://unpkg.com/pdfmake-rtl/build/vfs_fonts.js"></script>
<!-- <script src="https://unpkg.com/pdfmake-rtl/build/fonts/Cairo.js"></script> -->

<script>
    var dd = {
        rtl: true,
        // If Cairo font isn't applied automatically, set `rtl: true` to force RTL mode or add defaultStyle:{font:'Cairo'}
        content: [
            // RTL paragraph — auto-detected, no configuration needed
            { text: "مرحباً بكم في مكتبة pdfmake-rtl", fontSize: 20, bold: true },
            {
                text: "هذه المكتبة تدعم اللغة العربية تلقائياً",
                margin: [0, 0, 0, 15],
            },

            // RTL table — columns auto-reverse for Arabic content
            {
                table: {
                    // rtl:true
                    widths: ["*", "*", "*"],
                    body: [
                        [
                            { text: "الراتب", bold: true },
                            { text: "القسم", bold: true },
                            { text: "الاسم", bold: true },
                        ],
                        ["5000", "تكنولوجيا", "أحمد محمد"],
                        ["6000", "تسويق", "فاطمة علي"],
                    ],
                },
            },

            // Force RTL on any table with rtl: true
            {
                table: {
                    rtl: true,
                    widths: ["*", "*", "*"],
                    body: [
                        [
                            { text: "Status", bold: true },
                            { text: "Name", bold: true },
                            { text: "#", bold: true },
                        ],
                        ["Active", "Ali Hassan", "1"],
                        ["Active", "Sara Ahmed", "2"],
                    ],
                },
            },
        ],
    };

    pdfMake.createPdf(dd).open();
</script>

* 参看完整的实例: examples/simple-rtl-table.html

QQ快起步-节点.js (Server-Side)

var pdfmake = require("pdfmake-rtl");

// Add fonts
// Cairo is the default font for RTL languages (Arabic, Persian, Urdu)
// Roboto is the default font for LTR/Latin text
var Roboto = require("pdfmake-rtl/fonts/Roboto");
pdfmake.addFonts(Roboto);

var Cairo = require("pdfmake-rtl/fonts/Cairo");
pdfmake.addFonts(Cairo);

var dd = {
    // If Cairo font isn't applied automatically, set `rtl: true` to force RTL mode or add defaultStyle Cairo
    rtl: true, // Forces RTL layout direction for the entire document
    content: [
        { text: "مرحباً بكم في مكتبة pdfmake-rtl", fontSize: 20, bold: true },
        {
            table: {
                widths: ["*", "*", "*"],
                body: [
                    [
                        { text: "الراتب", bold: true },
                        { text: "القسم", bold: true },
                        { text: "الاسم", bold: true },
                    ],
                    ["5000", "تكنولوجيا", "أحمد محمد"],
                    ["6000", "تسويق", "فاطمة علي"],
                ],
            },
        },
    ],
};

var pdf = pdfmake.createPdf(dd);
pdf.write("output.pdf").then(() => console.log("PDF created!"));

文档

文档 URL: https://pdfmake-trtl.github.io/docs/* (中文(简体) )* 联合国

文件来源: https://github.com/pdfmake-trtl/docs (中文(简体) ) 欢迎改进!

来源建筑

使用 npm :

git clone https://github.com/aysnet1/pdfmake-rtl.git
cd pdfmake-rtl
npm install
npm run build

使用线条 :

git clone https://github.com/aysnet1/pdfmake-rtl.git
cd pdfmake-rtl
yarn
yarn run build

许可证

麻省理工学院

贷项

pdf make-rtl 页面存档备份,存于互联网档案馆

pdfmake(原始图书馆)

pdfmake 是基于一个真正惊人的库 pdfkit (英语) (对 @devongovett (英语)) (中文(简体) ).

感谢所有贡献者.

版本与发布记录

@digicole/pdfmake-rtl 共发布 6 个版本,首次发布于 2025/08/05;过去 12 个月发布了 3 个版本。

版本发布日期距今
2.1.2latest2026/02/119 个月前
2.1.12026/02/099 个月前
2.1.02026/02/099 个月前
1.2.02025/08/051.3 年前
1.1.02025/08/051.3 年前
1.0.02025/08/051.3 年前

关于 @digicole/pdfmake-rtl 的常见问题

@digicole/pdfmake-rtl 是什么?

加强PDFMake,提供全面的RTL(阿拉伯语/波斯语/乌尔都语)支持 -- -- 生产准备就绪的一揽子计划

如何安装 @digicole/pdfmake-rtl?

在项目目录运行 npm install @digicole/pdfmake-rtl,或使用 pnpm add / yarn add / bun add。

@digicole/pdfmake-rtl 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/digicole__pdfmake-rtl 是否存在。

@digicole/pdfmake-rtl 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@digicole/pdfmake-rtl 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@digicole/pdfmake-rtl 可以商用吗?

@digicole/pdfmake-rtl 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@digicole/pdfmake-rtl 的下载量有多少?

根据 npm 官方下载统计,@digicole/pdfmake-rtl 在 2026/10/12 – 2026/11/10 这 30 天内被下载 3,432 次,日均约 114 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@digicole/pdfmake-rtl 还在维护吗?

最新版本 2.1.2 发布于 2026/02/11(9 个月前);至今共发布 6 个版本,其中过去 12 个月发布了 3 个;首次发布于 2025/08/05。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。