@ai-ecoverse/wasm-qpdf
数字 12.4.2,用于
块状原地范围 : qpdf, (中文(简体) ),
fix-qdf 财务报告和审定财务报表 zlib-flate它取代了6's pdftk。 。 。 .
pnpm add -g @ai-ecoverse/wasm-qpdf
qpdf --empty --pages a.pdf b.pdf -- merged.pdf # pdftk cat
qpdf --split-pages in.pdf page-%d.pdf # pdftk burst
qpdf --rotate=+90:1 in.pdf out.pdf # pdftk rotate
qpdf --json in.pdf # pdftk dump_data
qpdf --password=secret --decrypt in.pdf out.pdf
qpdf --linearize in.pdf web.pdf
qpdf --check in.pdf
用于文本提取 pdftotext 从 @ai-ecoverse/wasm-poppler。 。 。 .
由 qpdf 的本地加密提供者( 没有 OpenSSL 或 GnuTLS) 所建, 并带有 zlib和libjpeg-turbo 从homecoop.
12.4.2-6: fix-qdf是帮助器;配置时没有pkg配置(homescoop#1354;2026-10-20)
fix-qdf 已经 "helper": true 内 slicc.commands根据KC的裁决 它仍然和以前一样运行;列出隐藏的帮助者将其排除在外. 现在的描述是一句简单的句子。 构建配置没有 pkg- config, 因此 emsdk 缓存中的 zlib 端口无法替换 @ai-ecoverse/wasm-zlib。字节相同.
qpdf.wasm 仍然可以在两个14字节的变体之一出现. 这来自emsdk 4.0.23的LLVM:它的WebAssembly CFG 堆叠通过远取指向图,一对试/取出对的巢会有所不同. 两个变体的行为都是一样的. 固定在 6.0.2 (llvm-project#205184) 时或之后用嵌入来. 见cert/NEGATION.md.
12.4.2-8:检查可复制的建筑(homescoop#1354,#808,#918;2026-10-22)
housescoop的CI现在两度构建了qpdf并比较了两个包. 建筑停止,除非 qpdf, (中文(简体) ), fix-qdf 财务报告和审定财务报表 zlib-flate 将 zlib 和 libjpeg- turbo 从 homescoop 连接起来, 没有 pkg- config 模块 。 在文件之间复制的证书封面页( N)cert/foreign.mjs)和软件包的命令列表(cert/manifest.mjs) (中文(简体) ). 这些工具在12.4.2至7.
12.4.2-9:可复制的qpdf.wasm(homescoop#1354;2026-10-23)
qpdf现在用被补丁的标记 6.0.9 树来建起(scripts/emscripten-tree.sh,工具链 cmake, wasm-binaryen 和 ham-clang 使用),而不是 emsdk 4.0.23. EMSDK 4.0.23的LLVM 嵌入一个尝试/去除对入 qpdf.wasm 根据堆积地址,所以两个相同的输入结构可以相差14字节. emsdk 6.0.9的LLVM有固定(llvm-project fd76c9bdf103,在emsdk 6.0.2和后期),现在每个建筑都给出了相同的字节. 这些工具在12.4.2-8中表现为:同为qpdf,同为zlib和libjpeg-turbo,同为slic shims,在遗产编码中仍为Wasm例外. 胶水中的 Emscripten 运行时间现在是 6.0.9, 与 4.0.23 的建筑 FS.lookupPath symlink 修补( wasm-emscripten ) 0014-libfs-symloop.patch)在顶上应用.
12.4.2-10:许可证通知(homescoop#1750;2026-10-23)
现在的包裹是qpdf的 NOTICE.md,其中12.4.2-8和12.4.2-9省略. 它信用SHA-2代码qpdf包括从sphlib 3.0(Projet RNRT SAPHIR,麻省理工学院许可)和公用域名Rijndael代码. THIRD-PARTY-NOTICES.md 现在还带有从 libqpdf/sha2.c 和 RSA 数据安全 MD5 通知 libqpdf/MD5_native.cc工具不变.