Browse our Products

Aspose.Font for JavaScript via C++ 26.3 Release Notes

Improvements and Changes

Added new functions AsposeFontGetGlyphCount and AsposeFontGetMetrics

Public API and Backwards Incompatible Changes

Added APIs

```html
  var ffileFontGetMetrics = function (e) {
    const file_reader = new FileReader();
    file_reader.onload = (event) => {
      const json = AsposeFontGetMetrics(event.target.result, e.target.files[0].name);
      if (json.errorCode == 0) {
        document.getElementById('output').textContent = 
            "Font metrics: "
            + "\nascent:"               + json.metrics.ascent
            + "\ndescet:"               + json.metrics.descet
            + "\nlineGap:"              + json.metrics.lineGap
            + "\nadvanceWidthMax:"      + json.metrics.advanceWidthMax
            + "\nminLeftSideBearing:"   + json.metrics.minLeftSideBearing
            + "\nminRightSideBearing:"  + json.metrics.minRightSideBearing
            + "\nxMaxExtent:"           + json.metrics.xMaxExtent;
      }
      else document.getElementById('output').textContent = json.errorText;
    }
    file_reader.readAsArrayBuffer(e.target.files[0]);
  }

  var ffileFontGetGlyphCount = function (e) {
    const file_reader = new FileReader();
    file_reader.onload = (event) => {
      const json = AsposeFontGetGlyphCount(event.target.result, e.target.files[0].name);
      if (json.errorCode == 0) {
        document.getElementById('output').textContent = "Glyph count: " + json.glyphCount;
      }
      else document.getElementById('output').textContent = json.errorText;
    }
    file_reader.readAsArrayBuffer(e.target.files[0]);
  }
```