whole_func_string: function singleResize(width,height) {
  
      this.canvas.width = width;
      this.canvas.height = height;
  
      var container = $(this.context),
          canvasParent = $(this.canvas).parent()[0];
  
      if (opts[this.context].aspectRatio != "Default" && opts[this.context].aspectRatio.indexOf(":") > -1) {
          var res = opts[this.context].aspectRatio.split(":");
          var ratio = gcd(this.canvas.width,this.canvas.height);
      }
      var destAspect = container.width() / container.height();
  
      if (ratio) var sourceAspect = (ratio * parseFloat(res[0])) / (ratio * parseFloat(res[1]));
      else var sourceAspect = this.canvas.width / this.canvas.height;
  
      if (opts[this.context].crop != "Default" && opts[this.context].crop.indexOf(":") > -1) {
          var res = opts[this.context].crop.split(":");
          var ratio = gcd(this.canvas.width,this.canvas.height);
          var sourceAspect = (ratio * parseFloat(res[0])) / (ratio * parseFloat(res[1]));
      }
  
      var cond = destAspect > sourceAspect;
  
      if (opts[this.context].crop != "Default" && opts[this.context].crop.indexOf(":") > -1) {
          if (cond) {
              canvasParent.style.height = "100%";
              canvasParent.style.width = ( ((container.height() * sourceAspect) / container.width() ) * 100) + "%";
          } else {
              canvasParent.style.height = ( ((container.width() / sourceAspect) /container.height() ) * 100) + "%";
              canvasParent.style.width = "100%";
          }
          var sourceAspect = this.canvas.width / this.canvas.height;
          futureWidth = ( ((canvasParent.offsetHeight * sourceAspect) / canvasParent.offsetWidth ) *canvasParent.offsetWidth);
          if (futureWidth < canvasParent.offsetWidth) {
              var sourceAspect = this.canvas.height / this.canvas.width;
              this.canvas.style.width = canvasParent.offsetWidth+"px";
              this.canvas.style.height = ( ((canvasParent.offsetWidth * sourceAspect) / canvasParent.offsetHeight ) *canvasParent.offsetHeight) + "px";
          } else {
              this.canvas.style.height = canvasParent.offsetHeight+"px";
              this.canvas.style.width = ( ((canvasParent.offsetHeight * sourceAspect) / canvasParent.offsetWidth ) *canvasParent.offsetWidth) + "px";
          }
      } else {
          if (cond) {
              canvasParent.style.height = (100*opts[this.context].zoom)+"%";
              canvasParent.style.width = ( ((container.height() * sourceAspect) / container.width() ) * 100 *opts[this.context].zoom) + "%";
          } else {
              canvasParent.style.height = ( ((container.width() / sourceAspect) /container.height() ) * 100*opts[this.context].zoom) + "%";
              canvasParent.style.width = (100*opts[this.context].zoom)+"%";
          }
          this.canvas.style.height = "100%";
          this.canvas.style.width = "100%";
      }
  }
func_code_string: function singleResize(width,height) {
  
      this.canvas.width = width;
      this.canvas.height = height;
  
      var container = $(this.context),
          canvasParent = $(this.canvas).parent()[0];
  
      if (opts[this.context].aspectRatio != "Default" && opts[this.context].aspectRatio.indexOf(":") > -1) {
          var res = opts[this.context].aspectRatio.split(":");
          var ratio = gcd(this.canvas.width,this.canvas.height);
      }
      var destAspect = container.width() / container.height();
  
      if (ratio) var sourceAspect = (ratio * parseFloat(res[0])) / (ratio * parseFloat(res[1]));
      else var sourceAspect = this.canvas.width / this.canvas.height;
  
      if (opts[this.context].crop != "Default" && opts[this.context].crop.indexOf(":") > -1) {
          var res = opts[this.context].crop.split(":");
          var ratio = gcd(this.canvas.width,this.canvas.height);
          var sourceAspect = (ratio * parseFloat(res[0])) / (ratio * parseFloat(res[1]));
      }
  
      var cond = destAspect > sourceAspect;
  
      if (opts[this.context].crop != "Default" && opts[this.context].crop.indexOf(":") > -1) {
          if (cond) {
              canvasParent.style.height = "100%";
              canvasParent.style.width = ( ((container.height() * sourceAspect) / container.width() ) * 100) + "%";
          } else {
              canvasParent.style.height = ( ((container.width() / sourceAspect) /container.height() ) * 100) + "%";
              canvasParent.style.width = "100%";
          }
          var sourceAspect = this.canvas.width / this.canvas.height;
          futureWidth = ( ((canvasParent.offsetHeight * sourceAspect) / canvasParent.offsetWidth ) *canvasParent.offsetWidth);
          if (futureWidth < canvasParent.offsetWidth) {
              var sourceAspect = this.canvas.height / this.canvas.width;
              this.canvas.style.width = canvasParent.offsetWidth+"px";
              this.canvas.style.height = ( ((canvasParent.offsetWidth * sourceAspect) / canvasParent.offsetHeight ) *canvasParent.offsetHeight) + "px";
          } else {
              this.canvas.style.height = canvasParent.offsetHeight+"px";
              this.canvas.style.width = ( ((canvasParent.offsetHeight * sourceAspect) / canvasParent.offsetWidth ) *canvasParent.offsetWidth) + "px";
          }
      } else {
          if (cond) {
              canvasParent.style.height = (100*opts[this.context].zoom)+"%";
              canvasParent.style.width = ( ((container.height() * sourceAspect) / container.width() ) * 100 *opts[this.context].zoom) + "%";
          } else {
              canvasParent.style.height = ( ((container.width() / sourceAspect) /container.height() ) * 100*opts[this.context].zoom) + "%";
              canvasParent.style.width = (100*opts[this.context].zoom)+"%";
          }
          this.canvas.style.height = "100%";
          this.canvas.style.width = "100%";
      }
  }
func_documentation_string: end player event handlers