首页 > 解决方案 > PDF2pic:错误:在转换 pdf 时写入 EPIPE 错误

问题描述

我正在尝试将 pdf 文档转换为图像(每页作为单独的图像)。我正在使用包 pdf2pic。我试图在这里转换一个 pdfenter 代码并得到错误。谁能帮我我在这里做错了什么

我得到的错误

Error: write EPIPE
    at afterWriteDispatched (internal/stream_base_commons.js:156:25)
    at writeGeneric (internal/stream_base_commons.js:147:3)
    at Socket._writeGeneric (net.js:785:11)
    at Socket._write (net.js:797:8)
    at writeOrBuffer (internal/streams/writable.js:358:12)
    at Socket.Writable.write (internal/streams/writable.js:303:10)
    at ReadStream.ondata (internal/streams/readable.js:745:22)
    at ReadStream.emit (events.js:376:20)
    at ReadStream.Readable.read (internal/streams/readable.js:519:10)
    at flow (internal/streams/readable.js:1001:34) {
  errno: -4047,
  code: 'EPIPE',
  syscall: 'write'
}


const { fromBase64, fromPath } = require("pdf2pic");
const { mkdirsSync, readFileSync } = require("fs-extra");
const rimraf = require("rimraf");

module.exports = () => {
  const specimen1 = "./files/specimen1.pdf";
  const outputDirectory = "./output";
  
  rimraf.sync(outputDirectory);
  mkdirsSync(outputDirectory);
  
  const options = {
    density: 100,
    saveFilename: "untitled",
    savePath: outputDirectory,
    format: "png",
    width: 600,
    height: 600
  };
  
  const storeAsImage = fromPath(specimen1, options);
  return storeAsImage(1).then( res=> { console.log(res)}).catch(error =>{ console.log(error)})
}

谢谢

标签: javascriptnode.js

解决方案


我在使用 Windows 时遇到了这个问题。您将需要 ImageMagick,它不会自动安装在 GraphicsMagick 的更高版本中。解决方案是从源代码下载 GraphicsMagick。请参阅: https ://github.com/yakovmeister/pdf2image/blob/HEAD/docs/gm-installation.md http://www.graphicsmagick.org/INSTALL-windows.html


推荐阅读