Attach (recommended) or Link to PDF file here: 
[A Sample PDF Clean 0 degree with all annotations-original-rotated.pdf](https://github.com/mozilla/pdf.js/files/6551789/A.Sample.PDF.Clean.0.degree.with.all.annotations-original-rotated.pdf)

Configuration:
- Web browser and its version: all browsers, tested with Chrome and Firefox latest versions.
- Operating system and its version: tested in Windows 10
- PDF.js version: current (online version)

Steps to reproduce the problem:
1. Visit https://mozilla.github.io/pdf.js/web/viewer.html
2. Upload the file above
3. Notice that several annotations such as arrow, freehand & polyline are missing (compared to Acrobat Reader)
![image](https://user-images.githubusercontent.com/45581023/119781014-11d35d00-befd-11eb-8daa-64f15374cf5b.png)


What is the expected behavior?
- Should display all annotations accordingly to Acrobat Reader

What went wrong? 
- Several annotations are missing such as arrow, freehand & polyline
- Opacity property is not supported and cannot be retrieved via getAnnotations 

const customAppearance = params.dict.get("AP");
    if (!isDict(customAppearance)) {
      return;
    }
    const normalAppearance = customAppearance.get("N");
    if (!isDict(normalAppearance)) {
      return;
    }
    const exportValues = normalAppearance.getKeys();
    if (!exportValues.includes("Off")) {
      
      exportValues.push("Off");
    }
    if (exportValues.length !== 2) {
      return;
    }
    this.data.exportValue =
      exportValues[0] === "Off" ? exportValues[1] : exportValues[0];
    this.checkedAppearance = normalAppearance.get(this.data.exportValue);
    this.uncheckedAppearance = normalAppearance.get("Off") || null;
    this._streams.push(this.checkedAppearance);
    if (this.uncheckedAppearance) {
      this._streams.push(this.uncheckedAppearance);
    }
    this._fallbackFontDict = this.fallbackFontDict;
  }
  _processRadioButton(params) {