code: function(bounds, contentFactor) {
          $.console.assert(bounds, "[Viewport._setContentBounds] bounds is required");
          $.console.assert(bounds instanceof $.Rect, "[Viewport._setContentBounds] bounds must be an OpenSeadragon.Rect");
          $.console.assert(bounds.width > 0, "[Viewport._setContentBounds] bounds.width must be greater than 0");
          $.console.assert(bounds.height > 0, "[Viewport._setContentBounds] bounds.height must be greater than 0");
  
          this._contentBoundsNoRotate = bounds.clone();
          this._contentSizeNoRotate = this._contentBoundsNoRotate.getSize().times(
              contentFactor);
  
          this._contentBounds = bounds.rotate(this.degrees).getBoundingBox();
          this._contentSize = this._contentBounds.getSize().times(contentFactor);
          this._contentAspectRatio = this._contentSize.x / this._contentSize.y;
  
          if (this.viewer) {
              /**
               * Raised when the viewer's content size or home bounds are reset
               * (see {@link OpenSeadragon.Viewport#resetContentSize}).
               *
               * @event reset-size
               * @memberof OpenSeadragon.Viewer
               * @type {object}
               * @property {OpenSeadragon.Viewer} eventSource - A reference to the Viewer which raised this event.
               * @property {OpenSeadragon.Point} contentSize
               * @property {OpenSeadragon.Rect} contentBounds - Content bounds.
               * @property {OpenSeadragon.Rect} homeBounds - Content bounds.
               * Deprecated use contentBounds instead.
               * @property {Number} contentFactor
               * @property {?Object} userData - Arbitrary subscriber-defined object.
               */
              this.viewer.raiseEvent('reset-size', {
                  contentSize: this._contentSizeNoRotate.clone(),
                  contentFactor: contentFactor,
                  homeBounds: this._contentBoundsNoRotate.clone(),
                  contentBounds: this._contentBounds.clone()
              });
          }
      }
docs: Set the viewport's content bounds @param {OpenSeadragon.Rect} bounds - the new bounds in viewport coordinates without rotation @param {Number} contentFactor - how many content units per viewport unit @fires OpenSeadragon.Viewer.event:reset-size @private