canvas.toDataURL () не копирует нарисованные изображения - PullRequest
0 голосов
/ 05 сентября 2018

У меня есть холст, который нужно скопировать в несколько разных мест на моей веб-странице, а также скопировать в PDF-файл с помощью jsPDF. Я рисую несколько разных изображений, используя context.drawImage(...), а также рисую пути SVG с context.stroke(..) и context.fill(...), и пишу текст, используя context.fillText(...). Эти три функции работают нормально, и когда я использую canvas.toDataURL('image/png', 1.0), SVG и тексты очень хорошо отображаются в полученных копиях и PDF. Тем не менее, все изображения PNG, которые я рисую, отсутствуют. Чтобы было ясно, все отображается на исходном холсте, на котором я рисую, но когда я пытаюсь скопировать данные, PNG не экспортируются.

Кто-нибудь знает, почему полотно избирательно относится к этим изображениям?

Я рисую их так:

let img = new Image();
img.onload = () => {
    context.drawImage(img, section['coordinates'][1], 
    section['coordinates'][0], 
    section['size'][1], 
    section['size'][0]);
};
img.src = section['src'];
...