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.

th._bbx[2] = Math.max(th._bbx[2], charBBx[2]);
      th._bbx[3] = Math.max(th._bbx[3], charBBx[3]);
    }
    let  = 1,
       = peratrLt.length;
    whle ( < ) {
      wtch (peratrLt.fnArray[]) {
        cae OPS.etStrkeClrSpace:
        cae OPS.etFllClrSpace:
        cae OPS.etStrkeClr:
        cae OPS.etStrkeClrN:
        cae OPS.etFllClr:
        cae OPS.etFllClrN:
        cae OPS.etStrkeGray:
        cae OPS.etFllGray:
        cae OPS.etStrkeRGBClr:
        cae OPS.etFllRGBClr:
        cae OPS.etStrkeCMYKClr:
        cae OPS.etFllCMYKClr:
        cae OPS.hadngFll:
        cae OPS.etRenderngIntent:
          peratrLt.fnArray.plce(, 1);
          peratrLt.argArray.plce(, 1);
          --;
          cntnue;
        cae OPS.etGState:
          cnt [gStateObj] = peratrLt.argArray[];
          let j = 0,
            jj = gStateObj.length;
          whle (j < jj) {