Html2Canvas foreignObjectRendering отображает только точку обзора - PullRequest
0 голосов
/ 30 ноября 2018

В настоящее время у меня возникают проблемы при отображении сложного элемента DIV в элемент CANVAS с использованием пакета Html2Canvas.Проблема в том, что DIV, который я хочу записать на CANVAS, имеет

overflow: auto 

Таким образом, DIV больше, чем соотношение экрана.и чтобы добавить бензин в огонь, все описанное выше находится в компоненте Angular 5, что означает, что CSS недоступен, пока я обращаюсь к ElementRef.nativeElement.innerHTML.

Encapsulation.None не работает дляменя здесь тоже.

Настройки HTML для холста:

  async: true,
  logging: false,
  backgroundColor: null,
  allowTaint: true,
  foreignObjectRendering: true,
  removeContainer: true

результат: result with foreignObjectRendering: true

обратите внимание на черное пространство вокруг изображения, это соотношение экрана, но оно не может быть отображено.

Пока я устанавливаю:

foreignObjectRendering: false

Я получаю очень удовлетворительное качество и нужные размеры.но диаграммы выглядят так:

enter image description here

Заранее спасибо!это очень важно для меня.И я гарантирую, что если я решу эту проблему, я создам очень полезный пакет NPM для экспорта элементов в виде PDF-файла в Angular 2 +

Также для удобства добавляем документацию Html2Canvas: http://html2canvas.hertzen.com/configuration/

...