1 标准TIFF
- 引入仓库
go get https://github.com/cognusion/imaging
- 简介
- 虽然该仓库停止维护了5年了,但是它拥有出色的处理能力,支持jpg\jpeg\png\gift\tiff,是对image包的功能拓展。
- 只要按照image包的格式,且返回指定的结构体,注册自定义图片类型的
Decoder
和Encoder
,即可完成自己的图片处理。
- 不足
它只能处理标准格式的tiff
(特征码II*
),不能处理BigTiff(特征码II+
)
2 拓展型BigTiff、GeoTiff
针对imaging
无法处理BigTiff、GeoTiff的情况,需要引入其它的仓库:返回的格式需为image
的图像结构体;有对应的Decode
、DecodeConfig
、Encode
。
- 引入仓库
go get https://github.com/chai2010/tiff
- 在处理图片前,注册类型处理
// 文件后缀、特征码、解码器、解码配置
image.RegisterFormat("tiff", "II+", tiff.Decode, tiff.DecodeConfig)