function CanvasRenderer(options) {
        var _this = _super.call(this, _pixi_constants__WEBPACK_IMPORTED_MODULE_3__.RENDERER_TYPE.CANVAS, options) || this;
        /** Boolean flag controlling canvas refresh. */
        _this.refresh = true;
        /**
         * Instance of a CanvasMaskManager, handles masking when using the canvas renderer.
         * @member {PIXI.CanvasMaskManager}
         */
        _this.maskManager = new CanvasMaskManager(_this);
        /** The canvas property used to set the canvas smoothing property. */
        _this.smoothProperty = 'imageSmoothingEnabled';
        /** Tracks the blend modes useful for this renderer. */
        _this.blendModes = mapCanvasBlendModesToPixi();
        _this.renderingToScreen = false;
        _this._activeBlendMode = null;
        /** Projection transform, passed in render() stored here */
        _this._projTransform = null;
        /** @private */
        _this._outerBlend = false;
        _this.rootContext = _this.view.getContext('2d', { alpha: _this.useContextAlpha });
        _this.context = _this.rootContext;
        if (!_this.rootContext.imageSmoothingEnabled) {
            var rc = _this.rootContext;
            if (rc.webkitImageSmoothingEnabled) {
                _this.smoothProperty = 'webkitImageSmoothingEnabled';
            }
            else if (rc.mozImageSmoothingEnabled) {
                _this.smoothProperty = 'mozImageSmoothingEnabled';
            }
            else if (rc.oImageSmoothingEnabled) {
                _this.smoothProperty = 'oImageSmoothingEnabled';
            }
            else if (rc.msImageSmoothingEnabled) {
                _this.smoothProperty = 'msImageSmoothingEnabled';
            }
        }
        _this.initPlugins(CanvasRenderer.__plugins);
        (0,_pixi_utils__WEBPACK_IMPORTED_MODULE_1__.sayHello)('Canvas');
        _this.resize(_this.options.width, _this.options.height);
        return _this;
    }
@param options - The optional renderer parameters
@param {number} [options.width=800] - the width of the screen
@param {number} [options.height=600] - the height of the screen
@param {HTMLCanvasElement} [options.view] - the canvas to use as a view, optional
@param {boolean} [options.useContextAlpha=true] - Pass-through value for canvas' context `alpha` property.
  If you want to set transparency, please use `backgroundAlpha`. This option is for cases where the
  canvas needs to be opaque, possibly for performance reasons on some older devices.
@param {boolean} [options.autoDensity=false] - Resizes renderer view in CSS pixels to allow for
  resolutions other than 1
@param {boolean} [options.antialias=false] - sets antialias
@param {number} [options.resolution=PIXI.settings.RESOLUTION] - The resolution / device pixel ratio of the renderer.
@param {boolean} [options.preserveDrawingBuffer=false] - enables drawing buffer preservation,
 enable this if you need to call toDataUrl on the webgl context.
@param {boolean} [options.clearBeforeRender=true] - This sets if the renderer will clear the canvas or
     not before the new render pass.
@param {number} [options.backgroundColor=0x000000] - The background color of the rendered area
 (shown if not transparent).
@param {number} [options.backgroundAlpha=1] - Value from 0 (fully transparent) to 1 (fully opaque).