xing-zr/gowatermark golang 实现图片文字水印

xing-zr/gowatermark 是一个基于go语言开发的水印工具,可以添加图片和文字水印。

安装

go get -u github.com/xing-zr/gowatermark

使用

  • 添加图片水印
// 相关配置
config := gowatermark.ImageWatermarkConfig{
	OriginImagePath:    "./origin.jpg",        // 水印底图图片路径
	WatermarkImagePath: "./watermark.png",     // 水印图图片路径
	WatermarkPos:       gowatermark.LeftTop,   // 水印位置 有 左上、左下、右上、右下、平铺几个选项
	CompositeImagePath: "./composite.jpg",     // 合成后图片路径
    Opacity:   0.5,                            // 水印透明度 0-1 之间
    TiledRows: 3,                              // 水印平铺行数(水印类型为平铺有效)
    TiledCols: 4,                              // 水印平铺列数(水印类型为平铺有效)
}
// 生成图片水印图
err := gowatermark.CreateImageWatermark(config)
if err != nil {
	fmt.Println(err)
}
  • 添加文字水印
  1. 普通文字水印
// 相关配置
config := gowatermark.TextWatermarkConfig{
    OriginImagePath:    "./origin.jpg",      // 水印底图图片路径
    CompositeImagePath: "./composite.jpg",   // 合成后图片路径
    FontPath:           "./font.ttf",        // 字体文件路径
	TextInfos: []gowatermark.TextInfo{       // 文字内容位置信息
		{
			Text:  "hello world",
			Color: color.RGBA{R: 255, G: 255, B: 255, A: 255},
			Size:  20,
			X:     10,
			Y:     10,
		},
	},
}
// 生成文字水印图
err := gowatermark.CreateTextWatermark(config)
if err != nil {
	fmt.Println(err)
}
  1. 文字水印平铺
// 相关配置
config := gowatermark.TextTiledWatermarkConfig{
	OriginImagePath:    "./origin.jpg",      // 水印底图图片路径
	CompositeImagePath: "./composite.jpg",   // 合成后图片路径
	FontPath:           "./font.ttf",        // 字体文件路径
	Text:               "hello world",       // 文字内容
	Color:              color.RGBA{R: 255, G: 255, B: 255, A: 255}, // 文字颜色
	TiledRows:          3,                   // 平铺行数
	TiledCols:          4,                   // 平铺列数
}
// 生成文字水印图
err := gowatermark.CreateTextTiledWatermark(config)
if err != nil {
	fmt.Println(err)
}
posted @ 2025-01-06 14:34  元気田支店长  阅读(38)  评论(0编辑  收藏  举报