Documentation ¶
Index ¶
Constants ¶
const ( Min = 800 // 最短一边是 200 原参数 200 ---> 800 DefaultMax = 1200 // 为 9:16 = 800:356 DivideTimes = 4.0 // 最长一边/最短一边的 比例, 超过此比例,定义为 失调 4 倍定义为 )
Variables ¶
var ErrFileNotExist = errors.New("the file or directory is not exist")
ErrFileNotExist is returned when the file(/directory) path is not exist
var ErrFilePathInvalid = errors.New("the file or directory path is invalid")
ErrFilePathInvalid is returned when the file path is invalid
var ErrGoCVGIF = errors.New("gif is error")
var ErrGoCVInner = errors.New("go cv lib is error")
ErrGoCVInner , for example, gocv inner error is returned when the file is heif format
var ErrIsNotFile = errors.New("err err err !!! this is not file")
ErrIsNotFile this never happen , everything is file
var ErrNotSupportDirectory = errors.New("not support file directory")
ErrNotSupportDirectory is returned when the file is directory
var ErrNotSupportFile4Img = errors.New("can't get a pic from this type file")
ErrNotSupportFile4Img is returned when can't get a pic from the file, 比如 从 mp3文件里进行截图
var ErrNotSupportFileCheckMimetype = errors.New("not support file check mimetype") // 未支持的文件类型检查 [文件类型检查的时候失败]
ErrNotSupportFileCheckMimetype is returned when the file mimetype can't be checked
var ErrNotSupportFileImg = errors.New("not support file type img")
ErrNotSupportFileImg is returned when the file is checked but can't be treated
var ErrNotSupportFileVideo = errors.New("not support file type video")
ErrNotSupportFileVideo is returned when the file is checked but can't be treated
var ErrSave2Jpg = errors.New("save jpg file error")
ErrSave2Jpg , 保存文件出错了
Functions ¶
func Close ¶
func Close(f *FileResult)
func HeicConvert2jpg ¶ added in v0.0.2
func Resize ¶
图片缩放要求: 对于一般图片,比例没有非常失调的 情况下, 最短一边保持 200,另外一边保持常宽比例不变 对于特殊比例失调的图片,处理下 最短一遍也是 200, 最常一边 从中切图 (保持 长的部分为 9:16 的比例, 那么就是 356)
比例失调定义为 最大边/最短边 >= 4倍以上
1. 问题, 应该是 切图 而不是 缩放这个地方的 原始意图 需要修正一下 2. 因为 该方法调用之后,需要继续使用 dst ,所以这个地方 应该是 返回的 指针类型. FIXME 最小边为 800, 其他边等比缩放
Types ¶
type FileResult ¶
type FileResult struct { SrcPath string // 文件路径 Mimetype string // 文件类型 这个地方就可以判断出该文件的类型是图片/视频/... //ThumbnailData []byte // 缩略图 的数据 有缩放操作 (图片和视频都有) 缩放的尺寸 (最大不超过120) //CoverData []byte // 封面,没有缩放,原尺寸大小 用于视频播放前的预览 (只有视频才有) ThumbnailData gocv.Mat // 缩略图 的数据 有缩放操作 (图片和视频都有) 缩放的尺寸 (最大不超过120) CoverData gocv.Mat // 封面,没有缩放,原尺寸大小 用于视频播放前的预览 (只有视频才有) OutputDir string // 输出的文件目录 传入的参数 ThumbnailImgPath string // 缩略图 的数据 存放路径 CoverImgPath string // 封面 的数据 存放路径 }
func Image ¶
func Image(filePath string) (*FileResult, error)
func ImageAndSave ¶
func ImageAndSave(fileInPath string, outputDir string) (*FileResult, error)
ImageAndSave 该方法结合了 Image 和 Save2Jpg ,调用者不需要关心内部使用细节 根据原始文件路径,在 输出目录下生成对应的 缩略图和封面图片