PHP 食谱
这是 PHP 原生 NextPDF 食谱索引,收录的是面向任务、可运行的页面,直接针对核心 PHP API 编写。 nextpdf 核心仓库拥有并验证 docs/public/cookbook/php/ 下的每个食谱。 每个食谱都由一个 examples/*.php 脚本和一个 tests/Cookbook/Php/ 测试夹具支撑。 随后,聚合器会把每个页面拉入本站,并一并带上其来源出处。
由于本页只是索引,它不会对任何食谱的行为作出声明。 每一行都记录该食谱的意图、调用的核心模块,以及它声明的可复现性概况。 该概况以及任何合规性声明都位于食谱页面本身,来源于该页面的 front-matter 及其仓库内测试,而不是本页。 关于集成(框架、渲染器、服务)食谱,请参阅 集成食谱。 关于每个可运行食谱都遵循的约定,请参阅 食谱约定。
食谱 slug 如何组织
标题为“食谱 slug 如何组织”的章节每个食谱都在核心仓库的 docs/public/cookbook/php/ 下编写,并由聚合器发布到本站。 slug 遵循一条约定:只包含单个段。
/cookbook/php/<recipe>/<recipe> 以 kebab-case 命名该食谱的意图(例如 render-html-to-pdf,而不是模块名 html)。 它使用小写字母、以连字符分隔、不含版本号,并以结尾斜杠收尾。
一句话说清可复现性概况
标题为“一句话说清可复现性概况”的章节每个食谱都声明它能如实满足的最严格概况:
- bitwise —— 跨多次运行逐字节相同(纯确定性内容,所有熵均已固定)。
- structural —— 对易变原子进行归一化之后相同(trailer 中的
/ID、creation/modification 日期、字体子集前缀——实际上涵盖每个多对象 PDF)。 - semantic —— 仅做结构化 AST 加元数据的等价比较(已签名或带时间戳的输出,或本身在字节层面就不稳定的输出)。
该概况是食谱页面通过其测试夹具证明的一项属性。 本索引仅报告页面声明的值。
构建文档、分页,并设置文档样式。
| 食谱 | 它的用途 | 模块 | 概况 |
|---|---|---|---|
render-html-to-pdf | 将 HTML 文档渲染为 PDF | Html | structural |
style-with-css | 为 HTML 渲染应用 CSS | Html | structural |
html-table-layout | 布局一个 HTML 表格 | Html | structural |
paginate-long-html | 为长 HTML 文档分页 | Html | structural |
paginate-large-html-tables | 对大型 HTML 表格进行跨页分页 | Html | structural |
render-rtl-arabic-html | 渲染从右到左的阿拉伯语 HTML | Html | structural |
compose-text-and-fonts | 按排版控制排布文本 | 排版 | structural |
embed-and-subset-fonts | 嵌入并子集化字体 | 字体 | structural |
cjk-vertical-writing | 以竖排书写模式排布 CJK 文本 | 排版 | structural |
multi-page-document | 构建一个多页文档 | 文档 | structural |
headers-and-footers | 添加页眉页脚 | 布局 | structural |
图形与内容
标题为“图形与内容”的章节矢量、图像、图层与坐标空间。
| 食谱 | 它的用途 | 模块 | 概况 |
|---|---|---|---|
draw-vector-graphics | 绘制矢量图形 | 图形 | structural |
gradients-and-transparency | 应用渐变与透明度 | 图形 | structural |
embed-images | 嵌入位图图像 | 内容 | structural |
add-watermarks-and-backgrounds | 为页面添加文字和图片水印或背景 | 内容 | structural |
cmyk-spot-color-and-icc-profiles | 生成适合印刷的 CMYK 和专色 | 颜色 | structural |
embed-file-attachments | 嵌入文件并创建 PDF 包 | 内容 | structural |
optional-content-layers | 使用可选内容(图层) | 图形 | structural |
transform-coordinate-space | 变换坐标空间 | 图形 | structural |
导航与表单
标题为“导航与表单”的章节书签、链接、注释与 AcroForm 字段。
| 食谱 | 它的用途 | 模块 | 概况 |
|---|---|---|---|
bookmarks-and-toc | 构建书签和目录 | 导航 | structural |
generate-dynamic-table-of-contents | 生成动态目录 | 导航 | structural |
links-and-annotations | 添加链接与注释 | 导航 | structural |
generate-barcodes | 生成条形码 | 条形码 | bitwise |
gs1-composite-barcodes | 生成 GS1 Composite 条形码(CC-C 载体) | 条形码 | structural |
fill-pdf-form | 填写 AcroForm | 表单 | structural |
flatten-form-fields | 扁平化表单字段 | 表单 | structural |
form-field-validation-and-flatten-with-state | 校验表单字段并带状态扁平化 | 表单 | structural |
文档信息
标题为“文档信息”的章节设置元数据与查看器行为。
| 食谱 | 它的用途 | 模块 | 概况 |
|---|---|---|---|
set-document-metadata | 设置文档元数据 | 元数据 | structural |
set-viewer-preferences | 设置查看器首选项 | 文档 | structural |
文档操作
标题为“文档操作”的章节组装、拆分并优化现有文档。
| 食谱 | 它的用途 | 模块 | 概况 |
|---|---|---|---|
merge-external-pdfs | 合并外部 PDF 或追加页面 | 文档 | structural |
split-and-extract-pages | 拆分 PDF 并提取页面范围 | 文档 | structural |
optimize-pdf-file-size | 通过压缩和子集化缩减 PDF 文件体积 | 文档 | structural |
安全、签名与一致性
标题为“安全、签名与一致性”的章节加密、签名、无障碍与概况输出。 这些食谱会在各自页面中承载“支持≠一致性”与“存在≠有效”这两条边界。
| 食谱 | 它的用途 | 模块 | 概况 |
|---|---|---|---|
encrypt-aes256 | 使用 AES-256 加密并设置权限标志 | 安全 | structural |
encrypt-with-permissions | 加密并设置权限标志 | 安全 | structural |
sign-pades-b-b | 应用 PAdES 签名(B-B 与 B-T) | 安全 | semantic |
inspect-existing-signature | 检查现有签名 | 检查 | semantic |
tagged-pdf-ua2 | 为 PDF/UA-2 生成带标签结构 | 无障碍 | semantic |
accessible-pdfua2-from-html | 为从 HTML 创作的无障碍 PDF/UA-2 生成带标签结构 | 无障碍 | semantic |
pdf-a-4-output | 生成 PDF/A-4 输出 | 一致性 | semantic |
pdfa4-conformance-gate | 生成 PDF/A-4 输出,并以外部校验器作为门禁 | 一致性 | semantic |
validate-conformance | 根据一致性概况进行校验 | 合规 | semantic |
检查与提取
标题为“检查与提取”的章节从 PDF 中读取内容与结构。
| 食谱 | 它的用途 | 模块 | 概况 |
|---|---|---|---|
extract-text-content | 提取文本内容 | 文本 | semantic |
multilingual-copy-paste-extraction | 让 CJK 和阿拉伯语 PDF 的复制粘贴准确无误 | 文本 | structural |
parse-and-inspect-pdf | 解析并检查一个 PDF | 检查 | semantic |
inspect-layout-boxes | 检查布局盒 | 检查 | semantic |
横切关注点
标题为“横切关注点”的章节跨多个模块的模式。
| 食谱 | 它的用途 | 跨越 | 概况 |
|---|---|---|---|
worker-safe-batch-rendering | 在长时间运行的工作进程中安全渲染(共享注册表、有界内存) | Core · Performance · Support | semantic |
streaming-and-memory | 剖析流式处理与内存占用 | Performance | bitwise |
exception-aware-error-handling | 使用 NextPDF 异常体系处理错误 | Exception · Contracts | structural |
custom-error-recovery-patterns | 实现自定义错误恢复与重试策略 | Exception | semantic |
observe-with-opentelemetry | 使用 OpenTelemetry 观测渲染过程 | Observability · Telemetry · Event | semantic |
上面每个食谱都在核心仓库中发布,并由一个 examples/*.php 脚本和一个 tests/Cookbook/Php/ 测试夹具支撑。 上游新编写一个食谱后,只要其示例和测试落地,它就会出现在这里。