From: Brendan Dahl Date: Mon, 8 Aug 2011 04:54:11 +0000 (-0700) Subject: Normalizing rotation X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=850c042af75f8a1d3d3d8f788c3f27b508bf3f4c;p=pdf.js.git Normalizing rotation --- diff --git a/pdf.js b/pdf.js index 57d8ffd..3642ad6 100644 --- a/pdf.js +++ b/pdf.js @@ -3038,6 +3038,16 @@ var Page = (function() { }, get rotate() { var rotate = this.inheritPageProp("Rotate") || 0; + // Normalize rotation so it's a multiple of 90 and between 0 and 270 + if (rotate % 90 != 0) { + rotate = 0; + } else if (rotate >= 360) { + rotate = rotate % 360; + } else if (rotate < 0) { + // The spec doesn't cover negatives, assume its counterclockwise + // rotation. The following is the other implementation of modulo. + rotate = ((rotate % 360) + 360) % 360; + } return shadow(this, 'rotate', rotate); }, startRendering: function(canvasCtx, continuation, onerror) {