Получение высоты и ширины изображения из base64 Строка изображения в GoJS - PullRequest
0 голосов
/ 31 августа 2018

Я пытаюсь получить высоту и ширину изображения из строкового представления base64 изображения, и я использую GoJS.

В конечном итоге я хочу добавить это изображение в PDF-файл с помощью библиотеки jspdf.

Вот что я сделал до сих пор:

download() {
    let imgData = this.diagram.makeImageData({background: "white", returnType: "string"}); 
    let pdf = new jspdf('p', 'mm', 'a4'); // A4 size page of PDF  
      var position = 0;
      var imgWidth = imgData.width; //Reading width from Image Data
      var imgHeight = imgData.height; //Reading height from Image Data
      pdf.setFontSize(30);
      pdf.text("Diagram", 100, 20, 'center');
      pdf.addImage(imgData, 'PNG', 1, 25, position, imgWidth, imgHeight);  
      pdf.save("Diagram.pdf');
  }

В этих imgData.width и imgData.height визуальная студия intellisense показывает "Свойство" height "и" width "не существует для типа" string ".

Как я могу получить свойство высоты и ширины изображения?

1 Ответ

0 голосов
/ 31 августа 2018

Создайте HTMLImageElement , используя эти данные изображения, а затем получите его naturalWidth и naturalHeight после его загрузки:

var imgData = myDiagram.makeImageData(. . .);
var img = document.createElement("img");
img.addEventListener('load', function(e) {
  console.log(img.naturalWidth + " " + img.naturalHeight);
});
img.src = imgData;
...