I'm sorry if it's a duplicate, I found lots of issues with gradients but none of the open ones looks similar.
It's apparently the PDF code `/Matrix [440 0 0 -200 20 220]` (line 44 in both files) that causes the problem.

**Configuration:**
- Web browser and its version: Chrome 54
- Operating system and its version: Windows 10
- PDF.js version: 1.6.343

**Steps to reproduce the problem:**
Open attached files:
[radial.pdf](https://github.com/mozilla/pdf.js/files/610302/radial.pdf)
[linear.pdf](https://github.com/mozilla/pdf.js/files/610300/linear.pdf)

**What is the expected behavior?** (Adobe Reader 11)
![image](https://cloud.githubusercontent.com/assets/17966696/20583379/fa80d780-b1f1-11e6-85d2-62dd6970a08c.png)

**What went wrong?** (mozilla.github.io/pdf.js/web/viewer.html)
Gradients aren't correctly transformed
![image](https://cloud.githubusercontent.com/assets/17966696/20583361/cf5bb8a4-b1f1-11e6-9479-9cc606b41187.png)

if (!bbox || typeof Path2D === "undefined") {
    return;
  }
  const width = bbox[2] - bbox[0];
  const height = bbox[3] - bbox[1];
  const region = new Path2D();
  region.rect(bbox[0], bbox[1], width, height);
  ctx.clip(region);
}
ShadingIRs.RadialAxial = {
  fromIR: function RadialAxial_fromIR(raw) {
    const type = raw[1];
    const bbox = raw[2];
    const colorStops = raw[3];
    const p0 = raw[4];
    const p1 = raw[5];
    const r0 = raw[6];
    const r1 = raw[7];
    return {
      getPattern: function RadialAxial_getPattern(ctx) {
        applyBoundingBox(ctx, bbox);
        let grad;
        if (type === "axial") {
          grad = ctx.createLinearGradient(p0[0], p0[1], p1[0], p1[1]);
        } else if (type === "radial") {
          grad = ctx.createRadialGradient(p0[0], p0[1], r0, p1[0], p1[1], r1);
        }
        for (let i = 0, ii = colorStops.length; i < ii; ++i) {