最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

PDFkit:Base 64到图像的未知图像格式

运维笔记admin10浏览0评论

PDFkit:Base 64到图像的未知图像格式

PDFkit:Base 64到图像的未知图像格式

我正在尝试将UPS运送标签(从API返回,以base 64编码的字符串形式)转换为PDF。我能够将其转换为JPEG并很好地查看,但是当我尝试使用PDFkit将其添加到文档中时,出现错误:

未知图像格式

我已经尝试过Canvas,但也不能使用它。可以使用嵌入式转换器将生成的图像转换为PDF。

我已经尝试将字符串转换为图像并将图像添加至文档,并且还尝试了将其添加至文档的转换。

注意:使用在线base64-图像转换器与返回的base64字符串绝对可以正常工作

const PDFDocument = require('pdfkit');
const fs = require('fs');

const doc = new PDFDocument();

/***/

 const imgFile = `SHIPLABEL${pkg.trackingNumber}.JPEG`;
        const image = {};
        image.data = Buffer.from(pkg.shippingLabel, 'base64');
        fs.writeFile(imgFile, image.data, err => {
          logger.debug(err);
        }); //this conversion works fine. Image is generated successfully

//trying direct conversion and adding to doc
doc.image(Buffer.from(pkg.shippingLabel, 'base64'), 500, 500);
// doc.end();

//trying to use previously converted image 
   doc.pipe(fs.createWriteStream(`SHIPLABELPDF${pkg.trackingNumber}.pdf`));
        const imgLoc = `/Users/nviswanathan/eshipglobal-rest-api/node/${imgFile}`;
        doc.image(imgLoc, {
          fit: [500, 500],
          align: 'center',
          valign: 'center'
        });
        doc.end();
      });

我想念什么?

回答如下:

事实证明,UPS装运标签是编码的GIF,而不是PDFkit支持的格式。

发布评论

评论列表(0)

  1. 暂无评论