From 916426ea76b1f21892fd86de0c8ead6ceff989d3 Mon Sep 17 00:00:00 2001 From: Nigel Tao Date: Tue, 11 May 2010 13:35:16 +1000 Subject: [PATCH] drawGlyphOver optimization. Timings (as for change 1122043) go from 49ms to 48ms ish. It's mostly lost in the noise, but it probably doesn't hurt. R=r CC=golang-dev https://golang.org/cl/1179041 --- src/pkg/exp/draw/draw.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/pkg/exp/draw/draw.go b/src/pkg/exp/draw/draw.go index 0589dde5ef..dcafc89344 100644 --- a/src/pkg/exp/draw/draw.go +++ b/src/pkg/exp/draw/draw.go @@ -167,10 +167,11 @@ func drawGlyphOver(dst *image.RGBA, r Rectangle, src image.ColorImage, mask *ima continue } ma |= ma << 8 - dr := uint32(dst.Pixel[y][x].R) - dg := uint32(dst.Pixel[y][x].G) - db := uint32(dst.Pixel[y][x].B) - da := uint32(dst.Pixel[y][x].A) + rgba := dst.Pixel[y][x] + dr := uint32(rgba.R) + dg := uint32(rgba.G) + db := uint32(rgba.B) + da := uint32(rgba.A) // dr, dg, db and da are all 8-bit color at the moment, ranging in [0,255]. // We work in 16-bit color, and so would normally do: // dr |= dr << 8 -- 2.48.1