У меня есть холст, который нужно скопировать в несколько разных мест на моей веб-странице, а также скопировать в 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'];