我想在 Go 中做这样的事情:
for x := 0; x < width; x++ {
for y := 0; y < height; y++ {
// something similar to this:
src_img[x, y] = color.Black
}
}
是否可以这样做,只导入“image”、“image/jpeg”、“image/color”?
最佳答案
例如:
package main
import (
"fmt"
"image"
"image/color"
)
func main() {
const D = 12
img := image.NewGray(image.Rect(1, 1, D, D))
for x := 1; x <= D; x++ {
img.Set(x, x, color.Gray{byte(2 * x)})
}
for x := 1; x < D; x++ {
fmt.Printf("[%2d, %2d]: %5v\n", x, x, img.At(x, x))
}
}
输出:
[ 1, 1]: { 2}
[ 2, 2]: { 4}
[ 3, 3]: { 6}
[ 4, 4]: { 8}
[ 5, 5]: { 10}
[ 6, 6]: { 12}
[ 7, 7]: { 14}
[ 8, 8]: { 16}
[ 9, 9]: { 18}
[10, 10]: { 20}
[11, 11]: { 22}
推荐阅读The Go image package文章(除 godocs 之外)。
关于image-processing - 我可以修改图像的像素值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18230009/