9naquame/fpdf

基于 itbz/fpdf 的分支,以满足我的依赖

1.7.2 2013-12-27 14:18 UTC

This package is not auto-updated.

Last update: 2024-09-29 04:42:46 UTC


README

Latest Stable Version

FPDF 库的非官方 PSR-0 兼容版本

这是带有一些小更改的 1.7 版本

  • 该库在 fpdf 命名空间中。要创建实例,请使用

    $fpdf = new \fpdf\FPDF();

  • 目录结构遵循 PSR-0 标准,src/ 为根目录

  • 发生错误时,将抛出 RuntimeException 而不是让 lib 剧烈崩溃

  • 构造函数已重命名为 __construct 而不是 FPDF

使用 composer 安装

该软件包在 Packagist 存储库中以 itbz/fpdf 存在。

FPDF_EXTENDED

此软件包还包含一些破坏向后兼容性的扩展。要访问增强功能,请使用 FPDF_EXTENDED 而不是 FPDF

  • FPDF_EXTENDED 预期所有输入都进行 UTF-8 编码。FPDF 本地期望所有输入都进行 ISO-8859-1 编码,并建议在处理 UTF-8 编码的字符串时使用 utf8_decode()。

  • FPDF 使用一种有些奇怪的语法来打印 PDF 中的总页数。FPDF_EXTENDED 定义了两种方法来处理此问题。 TotalPagesNo() 返回一个在输出时将被总页数替换的字符串。PaginationStr() 接受一个可选的分隔符(默认为 '/'),并返回 '{当前页} / {总页数}'。

  • 调用 AliasNbPages() 已不再必要。

  • 您可以使用 setImagePath() 设置图像路径,并且 image() 将能够理解相对路径。

  • FPDF_EXTENDED 优雅地处理缺失的字体样式。如果一个字体只定义(添加)了某种样式(例如粗体),您尝试使用另一种样式(例如斜体)时,此 FPDF_EXTENDED 将回退到定义的样式(例如粗体)。常规样式优先。

  • FPDF_EXTENDED 定义了 moveX()moveY() 来移动光标,除了 FPDF 的 setX()setY()

  • FPDF_EXTENDED 的子类可以定义 draw()。在 PDF 渲染之前调用 draw。在这个阶段,可以在 PDF 创建之前执行操作。

  • FPDF_EXTENDED 将 GetPdf() 定义为一个输出 PDF 为原始字符串的简写。

  • 从版本 1.7.2 开始,FPDF_EXTENDED 定义了 WriteXY() 用于写入指定位置。