Insert
在已有图像上插入一个图像。

参数

参数名
类型
说明
source
interface{}
待插入的图像
x
int
待插入图像左上角坐标 x 轴
y
int
待插入图像左上角坐标 y 轴
source 参数支持以下类型:
支持类型
数据类型
文件系统中图像的绝对路径或相对路径
string[]byte
图片的 URL
string[]byte
Base64 编码的图像数据
string[]byte
*os.File 类型的文件实例
*os.File
实现了 image.Image 接口的类型实例
image.Image 以及实现了 image.Image 接口的类型
*imgo.Image 类型的实例
*imgo.Image

返回值

*imgo.Image 类型的实例。

例子

图像文件路径

package main
import (
"github.com/fishtailstudio/imgo"
"image/color"
)
func main() {
imgo.Canvas(500, 500, color.Black).
Insert("gopher.png", 100, 100).
Save("out.png")
}

图像 URL

package main
import (
"github.com/fishtailstudio/imgo"
"image/color"
)
func main() {
url := "https://www.baidu.com/img/flexible/logo/pc/result.png"
imgo.Canvas(500, 500, color.Black).
Insert(url, 100, 100).
Save("out.png")
}

Base64 编码的图像数据

package main
import (
"github.com/fishtailstudio/imgo"
"image/color"
)
func main() {
base64Img := imgo.Load("gopher.png").ToBase64()
imgo.Canvas(500, 500, color.Black).
Insert(base64Img, 50, 50).
Save("out.png")
}

*os.File 类型的文件实例

package main
import (
"github.com/fishtailstudio/imgo"
"image/color"
"os"
)
func main() {
file, err := os.Open("gopher.png")
if err != nil {
panic(err)
}
defer file.Close()
imgo.Canvas(500, 500, color.Black).
Insert(file, 100, 100).
Save("out.png")
}

实现了 image.Image 接口的类型实例

package main
import (
"github.com/fishtailstudio/imgo"
"image/color"
"image/png"
"os"
)
func main() {
file, err := os.Open("gopher.png")
if err != nil {
panic(err)
}
defer file.Close()
img, err := png.Decode(file)
if err != nil {
panic(err)
}
imgo.Canvas(500, 500, color.Black).
Insert(img, 100, 100).
Save("out.png")
}

*imgo.Image 类型的实例

package main
import (
"github.com/fishtailstudio/imgo"
"image/color"
)
func main() {
img := imgo.Load("gopher.png")
imgo.Canvas(500, 500, color.Black).
Insert(img, 100, 100).
Save("out.png")
}
复制链接
大纲
参数
返回值
例子
图像文件路径
图像 URL
Base64 编码的图像数据
*os.File 类型的文件实例
实现了 image.Image 接口的类型实例
*imgo.Image 类型的实例