2016-07-18 15 views
4

pdf-mergeはpdfファイルをマージするためのAPIを提供しますが、バッファやストリームをマージしようとすると短くなります。 これらのバッファを標準的な方法またはパッケージ(Buffer.concat、stream-concat、buffer-concatとも呼ばれます)を介してマージしようとすると、結果にはマージされた結果ではなく最後のストリームのみが含まれます。nodejs:pdfストリームバッファをマージする

それはそうと、より多くの人々がこの問題に遭遇したが、解決策が(例:NodeJS: Merge two PDF files into one using the buffer obtained by reading them)が提供されなかった

私は、これは、PDFファイルのユニークな表現によるものであると思います。

私もpdfkitのaddContent(バッファ)を試しましたが、結果は空のファイルで、明らかにサポートされていません(https://github.com/devongovett/pdfkit/issues/417)。

誰でもこの問題が発生して動作しましたか? パフォーマンス上の問題にはストリームを使用する必要があります(viaファイルの軽減はオプションではありません)。

ありがとうございました。

答えて

1

node-pdftkは、これに非常に役立つことがわかりました。単純にバッファの配列をinputとして渡し、すぐにoutputに変換すると、PDFの組み合わせが得られます。

npm i node-pdftk

const pdfs = [...] // array of PDF buffers 

pdftk 
    .input(pdfs) 
    .output() 
    .then(buf => { 
    res.type('application/pdf'); 
    res.send(buf); 
    }); 
関連する問題