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 

constructor(parameters) {
    super(parameters);
    this.data.annotationType = AnnotationType.CARET;
  }
}
class InkAnnotation extends MarkupAnnotation {
  constructor(parameters) {
    super(parameters);
    this.data.annotationType = AnnotationType.INK;
    this.data.inkLists = [];
    const rawInkLists = parameters.dict.getArray("InkList");
    if (!Array.isArray(rawInkLists)) {
      return;
    }
    const xref = parameters.xref;
    for (let i = 0, ii = rawInkLists.length; i < ii; ++i) {
      /
      /
      /
      /
      this.data.inkLists.push([]);
      for (let j = 0, jj = rawInkLists[i].length; j < jj; j += 2) {
        this.data.inkLists[i].push({
          x: xref.fetchIfRef(rawInkLists[i][j]),
          y: xref.fetchIfRef(rawInkLists[i][j + 1]),
        });
      }
    }