在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML/ 用pdfkit生成的內(nèi)容如何寫成pdf文件呢

用pdfkit生成的內(nèi)容如何寫成pdf文件呢

寫了一個轉(zhuǎn)pdf的函數(shù),但是導(dǎo)出的pdf打開的時候提示文件損壞,應(yīng)該是寫入的內(nèi)容有問題,但實在是不知道該如何解決
先貼代碼
用到了兩個庫,pdfkit,和blob-stream

let doc = new PDFDocument()
      let stream = doc.pipe(blobStream())
      // doc.pipe(fs.createWriteStream('Aim.pdf'))
      console.dir(stream)
      doc.fontSize(25).text('Here is some vector graphics...', 100, 80)

      // some vector graphics
      doc
        .save()
        .moveTo(100, 150)
        .lineTo(100, 250)
        .lineTo(200, 250)
        .fill('#FF3300')

      doc.circle(280, 200, 50).fill('#6600FF')

      // an SVG path
      doc
        .scale(0.6)
        .translate(470, 130)
        .path('M 250,75 L 323,301 131,161 369,161 177,301 z')
        .fill('red', 'even-odd')
        .restore()

      // end and display the document in the iframe to the right
      doc.end()

      // html5Bolb轉(zhuǎn)arraybuffer
      // stream.toBlob('application/pdf')
      // console.log('轉(zhuǎn)blob', stream._blob.length)
      // let reader = new FileReader()
      // reader.readAsArrayBuffer(stream._blob)
      // reader.onload = function (e) {
      //   console.log('onloaded', reader.result)
      // }
      stream.on('finish', function() {
        stream.toBlob('application/pdf')
        // stream.toBlobURL('application/pdf')
        console.log('after', stream, doc)
        doc.pipe(fs.createWriteStream('Aim.pdf'))
      //   // console.log('over', stream.toBlobURL('application/pdf'))
        console.log('over')
      })

打印的內(nèi)容如下圖片描述

不知該從哪兒下手了

回答
編輯回答
青黛色

已解決,是將圖片數(shù)據(jù)轉(zhuǎn)成arraybuffer后通過pdfkit寫入文檔,然后fs.writeFile()寫到本地

2017年12月5日 17:54
編輯回答
來守候

生成pdf可以試試XDOC,簡單實用:http://www.xdocin.com/office....

2018年2月18日 16:38