(function () { var ns = $.namespace('pskl.utils'); ns.ImageResizer = { resize : function (image, targetWidth, targetHeight, smoothingEnabled) { var canvas = pskl.CanvasUtils.createCanvas(targetWidth, targetHeight); var context = canvas.getContext('2d'); context.save(); if (!smoothingEnabled) { this.disableSmoothingOnContext(context); } context.translate(canvas.width / 2, canvas.height / 2); context.scale(targetWidth / image.width, targetHeight / image.height); context.drawImage(image, -image.width / 2, -image.height / 2); context.restore(); return canvas; }, disableSmoothingOnContext : function (context) { context.imageSmoothingEnabled = false; context.mozImageSmoothingEnabled = false; context.oImageSmoothingEnabled = false; context.webkitImageSmoothingEnabled = false; context.msImageSmoothingEnabled = false; } }; })();