• golang-imagick图片去除边框(黑边,白边,),添加中文字


    图片去除边框(黑边,白边)

    package main
    
    import (
        "fmt"
        "github.com/gographics/imagick/imagick"
        "io/ioutil"
        "os"
        "strconv"
    )
    
    func ReadFile(path string) (string, error) {
        fi, err := os.Open(path)
        if err == nil {
            defer fi.Close()
            fd, err := ioutil.ReadAll(fi)
            return string(fd), err
        } else {
            return "", err
        }
    
    }
    
    func main() {
    
        arg_num := len(os.Args)
        if arg_num < 3 {
            fmt.Println("./tester [imagepath][trimdistance]")
            return
        }
    
        imagick.Initialize()
        defer imagick.Terminate()
    
        compMW := imagick.NewMagickWand()
        compMW.ReadImage(os.Args[1])
        trimDistance, _ := strconv.ParseFloat(os.Args[2], 0)
    
        err := compMW.TrimImage(trimDistance)
        if err != nil {
            fmt.Println("trim failed, ", err)
        } else {
            compMW.TrimImage(trimDistance)
            compMW.WriteImage("./trim.jpg")
            fmt.Println("trim success")
        }
        compMW.Destroy()
    }

     =========================

    追加:为图片添加中文字

    ===================

    func AddTextImage(Args []string) {
        imagick.Initialize()
        defer imagick.Terminate()
        mw := imagick.NewMagickWand()
        mw.ReadImage(Args[1])
        defer mw.Destroy()
    
        dw := imagick.NewDrawingWand()
        defer dw.Destroy()
    
        pw := imagick.NewPixelWand()
        pw.SetColor("red")
        defer pw.Destroy()
      #这里需要是字体文件的绝对路径
        dw.SetFont("./simsun.ttc")
        dw.SetFontSize(20)
        dw.SetFillColor(pw)
        dw.SetTextEncoding("UTF-8")
        mw.AnnotateImage(dw, 20, 20, 0, "@ 你好 Hello...")
        mw.DrawImage(dw)
    
        mw.WriteImage("textlog.jpg")
    }

    =====================

    追加:

    =====================

    不明白,代码加上fuzz的效果没出来,命令行可以进行,也是醉了。

    convert ~/Downloads/video1.jpg  -fuzz 10% -trim ./trim.jpg

    参考:

    http://www.imagemagick.org/Usage/crop/#trim 

    http://blog.csdn.net/newborn2012/article/details/24964577

  • 相关阅读:
    SQLServer.Produce的研究
    petshop以异步方式插入订单的疑惑(后面理解了)
    SQLHelper.GetCachedParameters方法之缓存
    DALFactory抽象工厂理解
    petshop异时消息处理队列抽象工厂
    AJAX学习2(经典)
    对SQLServerDAL.order的研究(不错,有心得)
    Invertory类对商品库存的更新困惑解决了
    AJAX学习1
    用DataSet读取xml文件
  • 原文地址:https://www.cnblogs.com/zhangqingping/p/4283375.html
Copyright © 2020-2023  润新知