]> Cypherpunks repositories - gostls13.git/commitdiff
image/draw: add the Quantizer type.
authorNigel Tao <nigeltao@golang.org>
Thu, 11 Jul 2013 05:17:32 +0000 (15:17 +1000)
committerNigel Tao <nigeltao@golang.org>
Thu, 11 Jul 2013 05:17:32 +0000 (15:17 +1000)
R=r
CC=andybons, golang-dev
https://golang.org/cl/11148043

src/pkg/image/draw/draw.go

index 4c514e77c7baacc7c38e76e05f3a835f1532d063..661230e7c5994385c3da434d7534fd5476abd798 100644 (file)
@@ -16,12 +16,19 @@ import (
 // m is the maximum color value returned by image.Color.RGBA.
 const m = 1<<16 - 1
 
-// A draw.Image is an image.Image with a Set method to change a single pixel.
+// Image is an image.Image with a Set method to change a single pixel.
 type Image interface {
        image.Image
        Set(x, y int, c color.Color)
 }
 
+// Quantizer produces a palette for an image.
+type Quantizer interface {
+       // Quantize appends up to cap(p) - len(p) colors to p and returns the
+       // updated palette suitable for converting m to a paletted image.
+       Quantize(p color.Palette, m image.Image) color.Palette
+}
+
 // Op is a Porter-Duff compositing operator.
 type Op int