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.

scaleFactors[i] * signedInt16(metrics[j + 2], metrics[j + 3])
        );
        writeSignedInt16(metrics, j + 2, lsb);
      }
    }
    
    let numGlyphsOut = numGlyphs + 1;
    let dupFirstEntry = true;
    if (numGlyphsOut > 0xffff) {
      dupFirstEntry = false;
      numGlyphsOut = numGlyphs;
      warn("Not enough space in glyfs to duplicate first glyph.");
    }
    let maxFunctionDefs = 0;
    let maxSizeOfInstructions = 0;
    if (version >= 0x00010000 && tables.maxp.length >= 22) {
      
      font.pos += 8;
      const maxZones = font.getUint16();
      if (maxZones > 2) {
        
        tables.maxp.data[14] = 0;
        tables.maxp.data[15] = 2;
      }
      font.pos += 4;
      maxFunctionDefs = font.getUint16();
      font.pos += 4;
      maxSizeOfInstructions = font.getUint16();
    }
    tables.maxp.data[4] = numGlyphsOut >> 8;