Attach (recommended) or Link to PDF file here:
http://education.ohio.gov/getattachment/Topics/Special-Education/Preschool-Special-Education/ETR-Preschool-Planning-Form.pdf.aspx

- Web browser and its version: Firefox 89.0.1
- Operating system and its version: Windows 10 10.0.19043.1052
- PDF.js version: commit 5d251a3a3e7bfaa8fbfa07f0b7f9901eb3f999d9
- Is a browser extension: No

Steps to reproduce the problem:
1. Enable XFA support
2. Open form

What is the expected behavior? (add screenshot)
Shapes stay inside table cells
![image](https://user-images.githubusercontent.com/7104454/122572782-1252a580-d01c-11eb-9d0f-5fed46d6f2fe.png)

What went wrong? (add screenshot)
Shapes fall outside cells (among other issues)
![image](https://user-images.githubusercontent.com/7104454/122572885-2d251a00-d01c-11eb-8863-fa3b9969f0ea.png)

const page = pageArea[$toHTML]().html;
      mainHtml.children.push(page);
      if (leader) {
        this[$extra].noLayoutFailure = true;
        page.children.push(leader[$toHTML](pageArea[$extra].space).html);
        leader = null;
      }
      if (trailer) {
        this[$extra].noLayoutFailure = true;
        page.children.push(trailer[$toHTML](pageArea[$extra].space).html);
        trailer = null;
      }
      const contentAreas = pageArea.contentArea.children;
      const htmlContentAreas = page.children.filter(node =>
        node.attributes.class.includes("xfaContentarea")
      );
      hasSomething = false;
      this[$extra].firstUnsplittable = null;
      this[$extra].noLayoutFailure = false;
      const flush = index => {
        const html = root[$flushHTML]();
        if (html) {
          hasSomething =
            hasSomething || (html.children && html.children.length !== 0);
          htmlContentAreas[index].children.push(html);
        }
      };
      for (let i = startIndex, ii = contentAreas.length; i < ii; i++) {
        const contentArea = (this[$extra].currentContentArea = contentAreas[i]);
        const space = { width: contentArea.w, height: contentArea.h };