golang-imagick图片去除边框(黑边,白边,),添加中文字
2024-08-25 12:08:44
图片去除边框(黑边,白边)
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 < {
fmt.Println("./tester [imagepath][trimdistance]")
return
} imagick.Initialize()
defer imagick.Terminate() compMW := imagick.NewMagickWand()
compMW.ReadImage(os.Args[])
trimDistance, _ := strconv.ParseFloat(os.Args[], ) 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[])
defer mw.Destroy() dw := imagick.NewDrawingWand()
defer dw.Destroy() pw := imagick.NewPixelWand()
pw.SetColor("red")
defer pw.Destroy()
#这里需要是字体文件的绝对路径
dw.SetFont("./simsun.ttc")
dw.SetFontSize()
dw.SetFillColor(pw)
dw.SetTextEncoding("UTF-8")
mw.AnnotateImage(dw, , , , "@ 你好 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
最新文章
- Windows Live Writer代码插件整理
- CentOS7 修改主机名(转)
- php模拟飞鸽传输协议,代码实现向飞鸽发送消息
- Linux下,telnet命令如何退出
- JuQueen(线段树 lazy)
- LeetCode Binary Tree Level Order Traversal (按层收集元素)
- 如何判断Linux load的值是否过高
- 对Unity3d C#手动处理异常产生
- Nano Server速记
- LEDAPS1.3.0版本移植到windows平台----HuSr大气校正模块
- C#基于任务的异步模式
- ionic2使用cordova打包的环境搭建
- 87、代码适配IphoneX
- Trailing Zeroes (III) LightOJ - 1138(二分)
- jvm:分析工具
- 1126 Eulerian Path (25 分)
- 【Jmeter自学】Jmeter作用域(五)
- Docker基础教程(命令详解)
- Java中带标签的break,continue
- webpack 遇到报错情况及解决