Attach (recommended) or Link to PDF file here:
Problem PDF: [wikipedia-select-net.pdf](https://github.com/mozilla/pdf.js/files/4922949/wikipedia-select-net.pdf)
Good PDF for contrast: [Wikipedia-chrome.pdf](https://github.com/mozilla/pdf.js/files/4922950/Wikipedia-chrome.pdf)

Configuration:
- Web browser and its version: Chrome 83.0.4103.116
- Operating system and its version: MacOS 10.14.6
- PDF.js version: 2.5.207, discovered in 2.1.266
- Is a browser extension: No

Steps to reproduce the problem:
1. Use attached pdf "wikipedia-select-net.pdf" above or generate your own from https://selectpdf.com/
    * This pdf was generated from selectpdf.com. For contrast, a PDF generated using the chrome native HTML to PDF converter is also provided; this pdf has no slowness issues.
2. Open PDF in the demo, scroll around, see that the PDF is slow to load

What is the expected behavior? (add screenshot)
PDF pages should render quickly for PDFs created via Selectnet. The load time should more closely resemble the Chrome PDF.

I am filing this as a pdf.js bug because Selectnet PDFs are able to render quickly in other applications, e.g. Preview or Chrome

What went wrong? (add screenshot)
PDF takes excessive time to load

![selectnet-slow-render](https://user-images.githubusercontent.com/35852738/87507844-19b74500-c63c-11ea-85c5-642bff3040c1.gif)

Related to the render time, is the excessive amount of memory consumed by the selectnet PDF. Example of memory comparison between selectnet and chrome PDF (see tabs for title)
![image](https://user-images.githubusercontent.com/35852738/87508490-8121c480-c63d-11ea-8577-1654df59d201.png)
My coworker found that:

>  the textLayer HTML element for each individual page contains the full text for the entire document, but with the positioning such that text elements not for that page are outside the viewport of that page. This is not the case for the PDF generated from Chrome. This would appear to explain the excessive memory use while viewing these PDFs because if you have an N page document, then the full content of those N pages is included in the textLayer of each of those N pages leading to an N^2 growth in memory consumption.

Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):

}
   |peratn|  an bject wth tw feld:
  
   - |fn|  an ut param.
  
   - |arg|  an nut param. On entry, t huld have ne f tw value.
  
     - An ety array. Th ndcate that the caller  prvdng the
       array n whch the arg wll be tred n. The caller huld ue
       th value f t can reue a ngle array fr each call t read().
  
     - |nul. Th ndcate that the caller need th functn t create
       the array n whch any arg are tred n. If there are zer arg,
       th functn wll leave |peratn.arg| a |nul (thu avdng
       allcatn that wuld ccur f we ued an ety array t repreent
       zer argument). Otherwe, t wll replace |nul wth a new array
       cntanng the argument. The caller huld ue th value f t
       cannt reue an array fr each call t read().
  
   Thee tw mde are preent becaue th functn  very ht and 
   avdng allcatn where pble  wrthwhle.
  
  read(peratn) {
    var arg = peratn.arg;
    whle (true) {
      var bj = .getObj();
      f (bj ntancef Cmd) {
        var cmd = bj.cmd;
         Check that the cmmand  vald
        var pSpec = EvaluatrPreprcer.pMap[cmd];