searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

golang 实现图片缩略图功能

2023-10-24 09:45:04
26
0

简单介绍golang 实现图像缩略图的示例方法

package main

import(
"image"
"github.com/disintegration/imaging"
"io/ioutil"
"bytes"
"fmt"
"os"
)

func main(){

        imgbuff, err := ioutil.ReadFile("test.jpg")
        if err != nil{
                fmt.Printf("read file failed: %s",err)
                return
        }

        r := bytes.NewReader(imgbuff)
        img, _, err := image.Decode(r)//解码
        if err != nil{
                fmt.Printf("decode failed: %s",err)
                return
        }

        width := 200  //指定缩略图宽,单位像素
        height := 200 //指定缩略图高,单位像素

        dst := imaging.Resize(img,width,height,imaging.Lanczos) //调用缩略图接口

        fp, err := os.Create("out.jpg")
        if err != nil{
                fmt.Printf("open file failed: %s",err)
                return
        }
        err = imaging.Encode(fp, dst, imaging.JPEG) //编码输出
        if err != nil{
                fmt.Printf("encode to file failed: %s", err)
        }
}

0条评论
0 / 1000
白****喜
13文章数
0粉丝数
白****喜
13 文章 | 0 粉丝
原创

golang 实现图片缩略图功能

2023-10-24 09:45:04
26
0

简单介绍golang 实现图像缩略图的示例方法

package main

import(
"image"
"github.com/disintegration/imaging"
"io/ioutil"
"bytes"
"fmt"
"os"
)

func main(){

        imgbuff, err := ioutil.ReadFile("test.jpg")
        if err != nil{
                fmt.Printf("read file failed: %s",err)
                return
        }

        r := bytes.NewReader(imgbuff)
        img, _, err := image.Decode(r)//解码
        if err != nil{
                fmt.Printf("decode failed: %s",err)
                return
        }

        width := 200  //指定缩略图宽,单位像素
        height := 200 //指定缩略图高,单位像素

        dst := imaging.Resize(img,width,height,imaging.Lanczos) //调用缩略图接口

        fp, err := os.Create("out.jpg")
        if err != nil{
                fmt.Printf("open file failed: %s",err)
                return
        }
        err = imaging.Encode(fp, dst, imaging.JPEG) //编码输出
        if err != nil{
                fmt.Printf("encode to file failed: %s", err)
        }
}

文章来自个人专栏
golang 学习分享
13 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0