pdfmake ошибка вставки изображения

Мне нужно вставить изображение в 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.

Спасибо


person sourcer    schedule 23.02.2016    source источник


Ответы (1)


Вы буквально передаете строку 'data:image/png;base64, this.getBase64Image("../imagenes/logoExportarPdf.png")' как изображение, не вызывая функцию.

Вы должны использовать 'data:image/png;base64,'+ this.getBase64Image("../imagenes/logoExportarPdf.png")

person Ramon-san    schedule 25.02.2016