You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Node.js解压PDF中的图片?Zlib错误问题排查

问题:PDF提取图片数据流执行Zlib解压失败

我从网上下载了一张图片,用Chrome的打印页面功能生成了对应的PDF。单独对原图片执行压缩再解压操作完全正常:

const deflate = zlib.createDeflate();
const inp = fs.createReadStream('output.png');
const out = fs.createWriteStream('encoded.txt');
inp.pipe(deflate).pipe(out);
// 文件已压缩,正常

const inflate = zlib.createInflate();
const input = fs.createReadStream('decoded.txt');
const output = fs.createWriteStream('decoded.png');
input.pipe(inflate).pipe(output);
// 文件与原图片完全一致,符合预期

但对从PDF中提取的图片数据流执行相同操作时失败,仅抛出无明确提示的Uncaught Error: Zlib error。我猜测图片格式可能损坏,或许需要将PDF中的元数据纳入图片处理,但不确定具体原因。

补充说明:我已截取掉图片流前后的内容,仅保留图片数据。以下是PDF中图片流对象前的部分内容:

4 0 obj
<< /Type /XObject
/Subtype /Image
/Width 1500
/Height 970
/ColorSpace [/ICCBased 5 0 R]
/BitsPerComponent 8
/Filter /FlateDecode
/Length 320983 >> stream

请问我遗漏了什么?


内容的提问来源于stack exchange,提问作者Andrew Still

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 22:32:40