_AN_Write_text('Text', Phaser.Renderer.Canvas.GameObjects, false , { TYPES: [Phaser.GameObject.Text.prototype] , render: function (renderer, src){ if (src.dirty) { src.updateText(); src.dirty = false ; } if (!src.visible || src.alpha === 0 || !src.renderable) { return ; } var wt = src.worldTransform; if (src.blendMode !== renderer.currentBlendMode) { renderer.currentBlendMode = src.blendMode; renderer.context.globalCompositeOperation = Phaser.blendModesCanvas[renderer.currentBlendMode]; } if (src._mask) { renderer.pushMask(src._mask); } var resolution = src.texture.baseTexture.resolution / renderer.game.resolution; renderer.context.globalAlpha = src.worldAlpha; if (renderer.smoothProperty && renderer.currentScaleMode !== src.texture.baseTexture.scaleMode) { renderer.currentScaleMode = src.texture.baseTexture.scaleMode; renderer.context[renderer.smoothProperty] = (renderer.currentScaleMode === Phaser.scaleModes.LINEAR); } var dx = (src.texture.trim)? src.texture.trim.x - src.anchor.x * src.texture.trim.width: src.anchor.x * - src.texture.frame.width; var dy = (src.texture.trim)? src.texture.trim.y - src.anchor.y * src.texture.trim.height: src.anchor.y * - src.texture.frame.height; var tx = (wt.tx * renderer.game.resolution) + renderer.game.camera._shake.x; var ty = (wt.ty * renderer.game.resolution) + renderer.game.camera._shake.y; var cw = src.texture.crop.width; var ch = src.texture.crop.height; if (src.texture.rotated) { var a = wt.a; var b = wt.b; var c = wt.c; var d = wt.d; var e = cw; tx = wt.c * ch + tx; ty = wt.d * ch + ty; wt.a = a * 6.123233995736766e-17 + - c; wt.b = b * 6.123233995736766e-17 + - d; wt.c = a + c * 6.123233995736766e-17; wt.d = b + d * 6.123233995736766e-17; cw = ch; ch = e; } if (renderer.roundPixels) { renderer.context.setTransform(wt.a, wt.b, wt.c, wt.d, tx | 0, ty | 0); dx |= 0; dy |= 0; } else { renderer.context.setTransform(wt.a, wt.b, wt.c, wt.d, tx, ty); } dx /= resolution; dy /= resolution; if (src.tint !== 16777215) { if (src.texture.requiresReTint || src.cachedTint !== src.tint) { src.tintedTexture = PIXI.CanvasTinter.getTintedTexture(src, src.tint); src.cachedTint = src.tint; src.texture.requiresReTint = false ; } renderer.context.drawImage(src.tintedTexture, 0, 0, cw, ch, dx, dy, cw / resolution, ch / resolution); } else { var cx = src.texture.crop.x; var cy = src.texture.crop.y; renderer.context.drawImage(src.texture.baseTexture.source, cx, cy, cw, ch, dx, dy, cw / resolution, ch / resolution); } for (var i = 0; i < _AN_Read_length('length', src.children); i++ ){ var child = src.children[i]; child.render(renderer, child); } if (src._mask) { renderer.popMask(); } } } );