如何更改图像的分辨率?
How to change the resolution of an image?
如何在上传前更改此图片的分辨率?
f, uploadedFile, err := c.Request.FormFile("file") // image file
if err != nil {
c.JSON(http.StatusInternalServerError, gin.H{
"message": err.Error(),
"error": true,
})
return
}
完整代码: paste.ofcode.org/4wvAGNxZDmpqZ2Zucujmnw
正如 icza 所说,您需要一个外部库才能做到这一点,
有基本的:resize 不再维护
更大的:imaging
在这两种情况下,您都需要在使用调整大小库之前获取标准图像结构。
看起来像这样:
import(
"image"
github.com/disintegration/imaging
[...]
)
[...]
f, uploadedFile, err := c.Request.FormFile("file") // image file
// Decode the file into a image struct
var srcImg image.Image
srcImg, _, err = image.Decode(f)
// Resize srcImage to width = 800px preserving the aspect ratio.
dstImage800 := imaging.Resize(srcImg, 800, 0, imaging.Lanczos)
如何在上传前更改此图片的分辨率?
f, uploadedFile, err := c.Request.FormFile("file") // image file
if err != nil {
c.JSON(http.StatusInternalServerError, gin.H{
"message": err.Error(),
"error": true,
})
return
}
完整代码: paste.ofcode.org/4wvAGNxZDmpqZ2Zucujmnw
正如 icza 所说,您需要一个外部库才能做到这一点,
有基本的:resize 不再维护
更大的:imaging
在这两种情况下,您都需要在使用调整大小库之前获取标准图像结构。
看起来像这样:
import(
"image"
github.com/disintegration/imaging
[...]
)
[...]
f, uploadedFile, err := c.Request.FormFile("file") // image file
// Decode the file into a image struct
var srcImg image.Image
srcImg, _, err = image.Decode(f)
// Resize srcImage to width = 800px preserving the aspect ratio.
dstImage800 := imaging.Resize(srcImg, 800, 0, imaging.Lanczos)