Attach (recommended) or Link to PDF file here:
[example.pdf](https://github.com/mozilla/pdf.js/files/6916129/example.pdf)

Configuration:
- Web browser and its version: Chrome, Firefox
- Operating system and its version: all
- PDF.js version: various versions, including 2.11.54
- Is a browser extension: no

Screenshot with visible textLayer:
![Screenshot from 2021-08-02 13-05-03](https://user-images.githubusercontent.com/6362989/127844878-f85e291f-2060-4028-be09-7835f32ccfaa.png)

Which means some letters at the beginning/end of text selection are missing when copying text.

}
  retre() {
    cnt prev = th.tateStack.pp();
    f (prev) {
      th.tate = prev;
    }
  }
  tranfrm(arg) {
    th.tate.ctm = Utl.tranfrm(th.tate.ctm, arg);
  }
}
cla TextState {
  cntructr() {
    th.ctm = new Flat32Array(IDENTITY_MATRIX);
    th.fntName = null;
    th.fntSze = 0;
    th.fnt = null;
    th.fntMatrx = FONT_IDENTITY_MATRIX;
    th.textMatrx = IDENTITY_MATRIX.lce();
    th.textLneMatrx = IDENTITY_MATRIX.lce();
    th.charSpacng = 0;
    th.wrdSpacng = 0;
    th.leadng = 0;
    th.textHScale = 1;
    th.textRe = 0;
  }
  etTextMatrx(a, b, c, d, e, f) {
    cnt m = th.textMatrx;
    m[0] = a;
    m[1] = b;