pdfmake图片错误插入
pdfmake image error insert
我需要在 PDF 中插入图像,但插入时出现错误,告诉我格式不正确。我的代码如下。
public getBase64Image(img : any) {
// Create an empty canvas element
var canvas = document.createElement("canvas");
canvas.width = img.width;
canvas.height = img.height;
// Copy the image contents to the canvas
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0);
// Get the data-URL formatted image
// Firefox supports PNG and JPEG. You could check img.src to
// guess the original format, but be aware the using "image/jpg"
// will re-encode the image.
var dataURL = canvas.toDataURL("image/png");
return dataURL.replace(/^data:image\/(png|jpg);base64,/, "");
}
base64转换函数。
我称之为函数。
exporterPdfHeader:{
columns: [
{
width: 300, alignment: 'left',
text: [
'Pedido de prueba\n\n',
'Centro de Trabajo: prueba. Serie: 00.\n\n',
'Numped: 38289',
],
bold:true,
fontSize: 10,
margin: [40, 20, 0, 0],
height:120,
},
{
width: 140,
alignment: 'center',
image: 'data:image/png;base64, this.getBase64Image("../imagenes/logoExportarPdf.png")',
bold:true,
fontSize: 10,
margin: [40, 20, 0, 0],
height:80,
}
]
},
错误
对此,我有几个问题。您需要将其传递给 base64 吗?
我只想将照片插入 PDF 中,这非常简单。作为一个不知道它是否重要的细节,我使用 Angle ui -grid 。我用 Typescript 编程。
谢谢
您实际上是将字符串 'data:image/png;base64, this.getBase64Image("../imagenes/logoExportarPdf.png")' 作为图像传递,而不是调用函数。
你应该使用'data:image/png;base64,'+ this.getBase64Image("../imagenes/logoExportarPdf.png")
我需要在 PDF 中插入图像,但插入时出现错误,告诉我格式不正确。我的代码如下。
public getBase64Image(img : any) {
// Create an empty canvas element
var canvas = document.createElement("canvas");
canvas.width = img.width;
canvas.height = img.height;
// Copy the image contents to the canvas
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0);
// Get the data-URL formatted image
// Firefox supports PNG and JPEG. You could check img.src to
// guess the original format, but be aware the using "image/jpg"
// will re-encode the image.
var dataURL = canvas.toDataURL("image/png");
return dataURL.replace(/^data:image\/(png|jpg);base64,/, "");
}
base64转换函数。 我称之为函数。
exporterPdfHeader:{
columns: [
{
width: 300, alignment: 'left',
text: [
'Pedido de prueba\n\n',
'Centro de Trabajo: prueba. Serie: 00.\n\n',
'Numped: 38289',
],
bold:true,
fontSize: 10,
margin: [40, 20, 0, 0],
height:120,
},
{
width: 140,
alignment: 'center',
image: 'data:image/png;base64, this.getBase64Image("../imagenes/logoExportarPdf.png")',
bold:true,
fontSize: 10,
margin: [40, 20, 0, 0],
height:80,
}
]
},
错误
对此,我有几个问题。您需要将其传递给 base64 吗? 我只想将照片插入 PDF 中,这非常简单。作为一个不知道它是否重要的细节,我使用 Angle ui -grid 。我用 Typescript 编程。
谢谢
您实际上是将字符串 'data:image/png;base64, this.getBase64Image("../imagenes/logoExportarPdf.png")' 作为图像传递,而不是调用函数。
你应该使用'data:image/png;base64,'+ this.getBase64Image("../imagenes/logoExportarPdf.png")