Steps to reproduce the problem:
1. When using the demo application - https://mozilla.github.io/pdf.js/web/viewer.html, load  the document 5311693-1.pdf

[5311693-1.pdf](https://github.com/mozilla/pdf.js/files/5137225/5311693-1.pdf)

2. go to Page 16 of the document.

3.  The strip of  EKG data  appears to have an incorrect line width   under the  Multi-color heat rate chart.

4.  When the same document is generated by pdffactory ,  the artifact are not visible.

What is the expected behavior? (add screenshot)
![expected](https://user-images.githubusercontent.com/3577617/91461157-4622cb80-e84e-11ea-8e5d-750c7b4e64ae.PNG)

What went wrong? (add screenshot)
The EKG line strip  has an incorrect thickness.  the x-transform seems to stretch the line thickness.  See the  stri in the RED rectagngle of the attached behavior versus the GREEN rectangle

Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):
 https://mozilla.github.io/pdf.js/web/viewer.html
const current = this.current;
      const font = current.font;
      const fontSize = current.fontSize;
      const fontDirection = current.fontDirection;
      const spacingDir = font.vertical ? 1 : -1;
      const charSpacing = current.charSpacing;
      const wordSpacing = current.wordSpacing;
      const textHScale = current.textHScale * fontDirection;
      const fontMatrix = current.fontMatrix || FONT_IDENTITY_MATRIX;
      const glyphsLength = glyphs.length;
      const isTextInvisible =
        current.textRenderingMode === TextRenderingMode.INVISIBLE;
      let i, glyph, width, spacingLength;
      if (isTextInvisible || fontSize === 0) {
        return;
      }
      this._cachedGetSinglePixelWidth = null;
      ctx.save();
      ctx.transform.apply(ctx, current.textMatrix);
      ctx.translate(current.x, current.y);
      ctx.scale(textHScale, fontDirection);
      for (i = 0; i < glyphsLength; ++i) {
        glyph = glyphs[i];
        if (isNum(glyph)) {
          spacingLength = (spacingDir * glyph * fontSize) / 1000;
          this.ctx.translate(spacingLength, 0);
          current.x += spacingLength * textHScale;
          continue;
        }
        const spacing = (glyph.isSpace ? wordSpacing : 0) + charSpacing;