最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

在浏览器中使用PDFkit,从链接插入图像

IT培训 admin 3浏览 0评论

在浏览器中使用PDFkit,从链接插入图像

是否有一种简单的方法可以从URL中获取图像以放入PDFKit pdf?

我在浏览器中自动生成PDF。我想要包含一个图像,我有一个URL。问题是我在浏览器中生成PDF。由于我有从互联网上获得的URL,似乎应该有一种简单的方法将该图像转换为PDFKit可读的内容。

有没有办法让Javascript将图像URL转换为PDFKit可读的缓冲区?

我想要的是您希望以下命令执行的操作:

doc.image('.jpg')

提前致谢。我在网上找到的解决方案让您的服务器接收链接,并使用缓冲区进行响应。这是唯一的方法吗?或者有没有一种方式在浏览器中没有http发布?

回答如下:

我通过AJAX检索图像作为base64编码的字符串,然后使用以下代码将base64编码的字符串转换为可用的缓冲区:

    var data = atob(base64);
    var buffer = [];
    for (var i = 0; i < data.length; ++i)
        buffer.push(data.charCodeAt(i));
    buffer._isBuffer = true;
    buffer.readUInt16BE = function(offset, noAssert) {
        var len = this.length;
        if (offset >= len) return;

        var val = this[offset] << 8;
        if (offset + 1 < len)
            val |= this[offset + 1];
        return val;
    };

    pdf.image(buffer);

另请参阅https://github/devongovett/pdfkit/issues/354#issuecomment-68666894,其中讨论了应用于字体的相同问题。

在浏览器中使用PDFkit,从链接插入图像

是否有一种简单的方法可以从URL中获取图像以放入PDFKit pdf?

我在浏览器中自动生成PDF。我想要包含一个图像,我有一个URL。问题是我在浏览器中生成PDF。由于我有从互联网上获得的URL,似乎应该有一种简单的方法将该图像转换为PDFKit可读的内容。

有没有办法让Javascript将图像URL转换为PDFKit可读的缓冲区?

我想要的是您希望以下命令执行的操作:

doc.image('.jpg')

提前致谢。我在网上找到的解决方案让您的服务器接收链接,并使用缓冲区进行响应。这是唯一的方法吗?或者有没有一种方式在浏览器中没有http发布?

回答如下:

我通过AJAX检索图像作为base64编码的字符串,然后使用以下代码将base64编码的字符串转换为可用的缓冲区:

    var data = atob(base64);
    var buffer = [];
    for (var i = 0; i < data.length; ++i)
        buffer.push(data.charCodeAt(i));
    buffer._isBuffer = true;
    buffer.readUInt16BE = function(offset, noAssert) {
        var len = this.length;
        if (offset >= len) return;

        var val = this[offset] << 8;
        if (offset + 1 < len)
            val |= this[offset + 1];
        return val;
    };

    pdf.image(buffer);

另请参阅https://github/devongovett/pdfkit/issues/354#issuecomment-68666894,其中讨论了应用于字体的相同问题。

发布评论

评论列表 (0)

  1. 暂无评论