导入必要的包
在开始之前,我们首先需要导入必要的包。在 Golang 中,使用 `image` 包来处理图像操作,使用 `os` 包来进行文件相关的操作。因此,我们可以通过以下方式导入这两个包:import ( "image" "os" )
打开图片文件
接下来,我们需要打开要获取大小的图片文件。可以使用 `os.Open` 方法打开一个文件,并使用 `defer` 关键字来确保文件在使用完毕后被关闭:file, err := os.Open("image.png") if err != nil { log.Fatal(err) } defer file.Close()
解码图片
打开图片文件后,我们需要对其进行解码。Golang 提供了 `Decode` 函数来解码图片。我们可以根据图片格式选择相应的解码器,例如 `jpeg.Decode` 用于解码 JPEG 格式的图片,`png.Decode` 用于解码 PNG 格式的图片。img, _, err := image.Decode(file) if err != nil { log.Fatal(err) }
获取图片大小
现在,我们已经成功解码了图片。接下来,我们可以通过 `img.Bounds()` 方法获取图片的宽度和高度。`Bounds()` 方法返回一个 `image.Rectangle` 结构,它包含了图片的边界坐标信息。width := img.Bounds().Dx() height := img.Bounds().Dy()
输出图片大小
最后,我们可以将获取到的图片大小信息打印出来或者进行其他处理。在这个例子中,我们将简单地使用 `fmt.Printf` 函数将图片的宽度和高度输出到控制台:fmt.Printf("图片大小: %d x %d\n", width, height)