Files
kenaito-media-picker/core/handle_image.go
T
odboy 066e28a2d6 feat(core): 优化媒体文件扫描和处理功能
- 添加跳过ffprobe相关文件的逻辑,避免处理临时释放文件
- 修复图片处理中的变量引用错误
- 实现大文件指纹复用机制,避免重复全量读取计算MD5
- 新增文件头尾采样指纹算法,提升大文件处理性能
- 重构ffprobe内嵌资源管理,支持多平台自动选择对应版本
- 添加媒体信息数据库的指纹索引和去向跟踪功能
- 优化程序启动流程,失败时跳过媒体整理但保留图片处理
- 更新文档说明多平台ffprobe支持和构建要求
2025-03-21 21:00:59 +08:00

541 lines
22 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package core
import (
"fmt"
_ "image/gif" // 导入gif支持
_ "image/jpeg" // 导入jpeg支持
_ "image/png" // 导入png支持
"kenaito-media-picker/util"
"kenaito-media-picker/vars"
"os"
"strings"
)
func DoHandleImage(pickerDir string) {
total := len(vars.GlobalImagePathList) // 总数
successCount := 0 // 成功数
errorCount := 0 // 失败数
ignoreCount := 0 // 忽略数
for _, imageFilePath := range vars.GlobalImagePathList {
suffix := vars.GlobalFilePath2FileExtMap[imageFilePath]
if strings.EqualFold(suffix, ".webp") { // 特殊文件处理, webp为网络常用图片格式
webpErr, webpWidth, webpHeight := ReadWebpImage(imageFilePath)
if webpErr == nil {
vars.ImagePath2WidthHeightMap[imageFilePath] = fmt.Sprintf("%d-%d", webpWidth, webpHeight)
saveMediaRecord(imageFilePath, "image", webpWidth, webpHeight, 0, "", "", "")
successCount = successCount + 1
} else {
errorCount = errorCount + 1
vars.ImageReadErrorPathList = append(vars.ImageReadErrorPathList, imageFilePath)
fmt.Printf("=== 异常图片: %s \n", imageFilePath)
}
continue
}
if strings.EqualFold(suffix, ".bmp") { // 特殊文件处理
bpmErr, bmpWidth, bmpHeight := ReadBmpImage(imageFilePath)
if bpmErr == nil {
vars.ImagePath2WidthHeightMap[imageFilePath] = fmt.Sprintf("%d-%d", bmpWidth, bmpHeight)
saveMediaRecord(imageFilePath, "image", int(bmpWidth), int(bmpHeight), 0, "", "", "")
successCount = successCount + 1
} else {
errorCount = errorCount + 1
vars.ImageReadErrorPathList = append(vars.ImageReadErrorPathList, imageFilePath)
fmt.Printf("=== 异常图片: %s \n", imageFilePath)
}
continue
}
if strings.EqualFold(suffix, ".psd") { // 特殊文件处理
vars.ImagePsdList = append(vars.ImagePsdList, imageFilePath)
successCount = successCount + 1
continue
}
if strings.EqualFold(suffix, ".psb") { // 特殊文件处理, psb与psd共享文件头
psbErr, psbWidth, psbHeight := ReadPsdImage(imageFilePath)
if psbErr == nil {
vars.ImagePath2WidthHeightMap[imageFilePath] = fmt.Sprintf("%d-%d", psbWidth, psbHeight)
saveMediaRecord(imageFilePath, "image", psbWidth, psbHeight, 0, "", "", "")
successCount = successCount + 1
} else {
errorCount = errorCount + 1
vars.ImageReadErrorPathList = append(vars.ImageReadErrorPathList, imageFilePath)
fmt.Printf("=== 异常图片: %s \n", imageFilePath)
}
continue
}
if util.IsSupportImage(suffix) {
err, width, height := util.ReadImageInfo(imageFilePath)
if err == nil {
successCount = successCount + 1
vars.ImagePath2WidthHeightMap[imageFilePath] = fmt.Sprintf("%d-%d", width, height)
saveMediaRecord(imageFilePath, "image", width, height, 0, "", "", "")
fmt.Printf("=== Image总数: %d, 已读取Info: %d, 成功数: %d, 失败数: %d \n", total, successCount+errorCount+ignoreCount, successCount, errorCount)
} else if util.CheckFileIsExist(util.FFprobeExePath()) {
// Go标准库解码失败,尝试用ffprobe兜底(ffmpeg支持的图片格式更广,如tiff/svg等)
if probe, perr := util.ProbeMediaFile(util.FFprobeExePath(), imageFilePath); perr == nil {
if w, h := probe.VideoResolution(); w > 0 && h > 0 {
successCount = successCount + 1
vars.ImagePath2WidthHeightMap[imageFilePath] = fmt.Sprintf("%d-%d", w, h)
saveMediaRecord(imageFilePath, "image", w, h, 0, probe.VideoCodec(), probe.FormatName(), probe.RawJSON())
continue
}
}
errorCount = errorCount + 1
vars.ImageReadErrorPathList = append(vars.ImageReadErrorPathList, imageFilePath)
fmt.Printf("=== 异常图片: %s \n", imageFilePath)
} else {
errorCount = errorCount + 1
vars.ImageReadErrorPathList = append(vars.ImageReadErrorPathList, imageFilePath)
fmt.Printf("=== 异常图片: %s \n", imageFilePath)
}
continue
}
// 其他的直接先忽略吧, 爱改改, 不改拉倒
ignoreCount = ignoreCount + 1
vars.ImageIgnorePathList = append(vars.ImageIgnorePathList, imageFilePath)
}
if len(vars.ImagePsdList) > 0 {
psdImagePath := pickerDir + string(os.PathSeparator) + "图片_PSD"
if util.CreateDir(psdImagePath) {
util.DoMoveFileToDir(vars.ImagePsdList, psdImagePath)
}
}
if len(vars.ImageReadErrorPathList) > 0 {
readInfoErrorPath := pickerDir + string(os.PathSeparator) + "图片_读取异常"
if util.CreateDir(readInfoErrorPath) {
util.DoMoveFileToDir(vars.ImageReadErrorPathList, readInfoErrorPath)
}
}
if len(vars.ImageIgnorePathList) > 0 {
ignorePath := pickerDir + string(os.PathSeparator) + "图片_已忽略"
if util.CreateDir(ignorePath) {
util.DoMoveFileToDir(vars.ImageIgnorePathList, ignorePath)
}
}
doPickImageFile(pickerDir, vars.ImagePath2WidthHeightMap)
fmt.Printf("=== 图片处理完毕 \n\n")
}
// 条件图片并分组存放
func doPickImageFile(pickerDir string, imagePath2WidthHeightMap map[string]string) {
if len(imagePath2WidthHeightMap) == 0 {
fmt.Printf("=== 当前目录下没有扫描到图片文件, %s \n", pickerDir)
return
}
for currentImagePath, infoStr := range imagePath2WidthHeightMap {
width2Height := strings.Split(infoStr, "-")
width := util.String2int(width2Height[0])
height := util.String2int(width2Height[1])
suffix := vars.GlobalFilePath2FileExtMap[currentImagePath]
if strings.EqualFold(suffix, ".gif") {
handleGifImage(currentImagePath)
continue
}
if width > height {
handleHorizontalImage(currentImagePath, width, height)
continue
}
if width < height {
handleVerticalImage(currentImagePath, height)
continue
}
handleSquareImage(currentImagePath, width)
}
moveHorizontalImage(pickerDir)
moveVerticalImage(pickerDir)
moveSquareImage(pickerDir)
moveGifImage(pickerDir)
}
// 统一处理gif
func handleGifImage(path string) {
vars.ImageGifList = append(vars.ImageGifList, path)
}
// 处理垂直图片
func handleVerticalImage(currentImagePath string, height int) {
// 非标规格
if height < 1000 {
vars.ImageVerticalNormalList = append(vars.ImageVerticalNormalList, currentImagePath)
} else if height < 2000 {
vars.ImageVertical1KList = append(vars.ImageVertical1KList, currentImagePath)
} else if height < 3000 {
vars.ImageVertical2KList = append(vars.ImageVertical2KList, currentImagePath)
} else if height < 4000 {
vars.ImageVertical3KList = append(vars.ImageVertical3KList, currentImagePath)
} else if height < 5000 {
vars.ImageVertical4KList = append(vars.ImageVertical4KList, currentImagePath)
} else if height < 6000 {
vars.ImageVertical5KList = append(vars.ImageVertical5KList, currentImagePath)
} else if height < 7000 {
vars.ImageVertical6KList = append(vars.ImageVertical6KList, currentImagePath)
} else if height < 8000 {
vars.ImageVertical7KList = append(vars.ImageVertical7KList, currentImagePath)
} else if height < 9000 {
vars.ImageVertical8KList = append(vars.ImageVertical8KList, currentImagePath)
} else if height < 10000 {
vars.ImageVertical9KList = append(vars.ImageVertical9KList, currentImagePath)
} else if height >= 10000 { // 提示请忽略
vars.ImageVerticalHKList = append(vars.ImageVerticalHKList, currentImagePath)
}
}
// 处理横向图片
func handleHorizontalImage(currentImagePath string, width int, height int) {
// 1280×720(720p)—— 标准高清(HD),常用于早期高清视频或小型屏幕
if width == 1280 && height == 720 {
vars.ImageHorizontalStandard720PList = append(vars.ImageHorizontalStandard720PList, currentImagePath)
return
}
// 1600×900—— 介于HD和FHD之间
if width == 1600 && height == 900 {
vars.ImageHorizontalStandard1D5KList = append(vars.ImageHorizontalStandard1D5KList, currentImagePath)
return
}
// 1920×1080(1080p)—— 全高清,主流显示器、电视和视频的分辨率
if width == 1920 && height == 1080 {
vars.ImageHorizontalStandard1080PList = append(vars.ImageHorizontalStandard1080PList, currentImagePath)
return
}
// 2048×1080(2dk)—— 影院2k
if width == 2048 && height == 1080 {
vars.ImageHorizontalStandard2DKList = append(vars.ImageHorizontalStandard2DKList, currentImagePath)
return
}
// 2560×1440(1440p)—— 俗称“2.5K”,电竞显示器或高端手机屏幕
if width == 2560 && height == 1440 {
vars.ImageHorizontalStandard2D5KList = append(vars.ImageHorizontalStandard2D5KList, currentImagePath)
return
}
// 2560×1080—— 带鱼屏显示器(超宽屏)
if width == 2560 && height == 1080 {
vars.ImageHorizontalStandardUltraWide2List = append(vars.ImageHorizontalStandardUltraWide2List, currentImagePath)
return
}
// 3440×1440—— 带鱼屏显示器(超宽屏)
if width == 3440 && height == 1440 {
vars.ImageHorizontalStandardUltraWide3List = append(vars.ImageHorizontalStandardUltraWide3List, currentImagePath)
return
}
// 5120×2160—— 带鱼屏显示器(超宽屏)
if width == 5120 && height == 2160 {
vars.ImageHorizontalStandardUltraWide4List = append(vars.ImageHorizontalStandardUltraWide4List, currentImagePath)
return
}
// 3840×2160(主流4K)—— 超高清,现代高端显示器、电视和影视制作
if width == 3840 && height == 2160 {
vars.ImageHorizontalStandard4KList = append(vars.ImageHorizontalStandard4KList, currentImagePath)
return
}
// 4096×2160(DCI 4K)—— 电影行业标准
if width == 4096 && height == 2160 {
vars.ImageHorizontalStandard4KHList = append(vars.ImageHorizontalStandard4KHList, currentImagePath)
return
}
// 7680×4320—— 超高清,用于专业影视或高端设备
if width == 7680 && height == 4320 {
vars.ImageHorizontalStandard8KList = append(vars.ImageHorizontalStandard8KList, currentImagePath)
return
}
// 非标规格
if width < 1000 {
vars.ImageHorizontalNormalList = append(vars.ImageHorizontalNormalList, currentImagePath)
} else if width < 2000 {
vars.ImageHorizontal1KList = append(vars.ImageHorizontal1KList, currentImagePath)
} else if width < 3000 {
vars.ImageHorizontal2KList = append(vars.ImageHorizontal2KList, currentImagePath)
} else if width < 4000 {
vars.ImageHorizontal3KList = append(vars.ImageHorizontal3KList, currentImagePath)
} else if width < 5000 {
vars.ImageHorizontal4KList = append(vars.ImageHorizontal4KList, currentImagePath)
} else if width < 6000 {
vars.ImageHorizontal5KList = append(vars.ImageHorizontal5KList, currentImagePath)
} else if width < 7000 {
vars.ImageHorizontal6KList = append(vars.ImageHorizontal6KList, currentImagePath)
} else if width < 8000 {
vars.ImageHorizontal7KList = append(vars.ImageHorizontal7KList, currentImagePath)
} else if width < 9000 {
vars.ImageHorizontal8KList = append(vars.ImageHorizontal8KList, currentImagePath)
} else if width < 10000 {
vars.ImageHorizontal9KList = append(vars.ImageHorizontal9KList, currentImagePath)
} else if width >= 10000 { // 提示请忽略
vars.ImageHorizontalHKList = append(vars.ImageHorizontalHKList, currentImagePath)
}
}
// 处理等比图片
func handleSquareImage(currentImagePath string, width int) {
// 非标规格
if width < 1000 {
vars.ImageSquareNormalList = append(vars.ImageSquareNormalList, currentImagePath)
} else if width < 2000 {
vars.ImageSquare1KList = append(vars.ImageSquare1KList, currentImagePath)
} else if width < 3000 {
vars.ImageSquare2KList = append(vars.ImageSquare2KList, currentImagePath)
} else if width < 4000 {
vars.ImageSquare3KList = append(vars.ImageSquare3KList, currentImagePath)
} else if width < 5000 {
vars.ImageSquare4KList = append(vars.ImageSquare4KList, currentImagePath)
} else if width < 6000 {
vars.ImageSquare5KList = append(vars.ImageSquare5KList, currentImagePath)
} else if width < 7000 {
vars.ImageSquare6KList = append(vars.ImageSquare6KList, currentImagePath)
} else if width < 8000 {
vars.ImageSquare7KList = append(vars.ImageSquare7KList, currentImagePath)
} else if width < 9000 {
vars.ImageSquare8KList = append(vars.ImageSquare8KList, currentImagePath)
} else if width < 10000 {
vars.ImageSquare9KList = append(vars.ImageSquare9KList, currentImagePath)
} else if width >= 10000 {
vars.ImageSquareHKList = append(vars.ImageSquareHKList, currentImagePath)
}
}
// 移动水平图片
func moveHorizontalImage(pickerDir string) {
pathSeparator := string(os.PathSeparator)
// 标准
if len(vars.ImageHorizontalStandard720PList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_720P"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard720PList, imageDirPath)
}
if len(vars.ImageHorizontalStandard1D5KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_1D5KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard1D5KList, imageDirPath)
}
if len(vars.ImageHorizontalStandard1080PList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_1080P"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard1080PList, imageDirPath)
}
if len(vars.ImageHorizontalStandard2DKList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_2DKP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard2DKList, imageDirPath)
}
if len(vars.ImageHorizontalStandard2D5KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_2D5KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard2D5KList, imageDirPath)
}
if len(vars.ImageHorizontalStandardUltraWide2List) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_ultraWide2KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandardUltraWide2List, imageDirPath)
}
if len(vars.ImageHorizontalStandardUltraWide3List) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_ultraWide3KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandardUltraWide3List, imageDirPath)
}
if len(vars.ImageHorizontalStandardUltraWide4List) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_ultraWide4KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandardUltraWide4List, imageDirPath)
}
if len(vars.ImageHorizontalStandard4KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_4KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard4KList, imageDirPath)
}
if len(vars.ImageHorizontalStandard4KHList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_4KHP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard4KHList, imageDirPath)
}
if len(vars.ImageHorizontalStandard8KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_8KP"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalStandard8KList, imageDirPath)
}
// 非标准
if len(vars.ImageHorizontalNormalList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_普通"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalNormalList, imageDirPath)
}
if len(vars.ImageHorizontal1KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_1K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal1KList, imageDirPath)
}
if len(vars.ImageHorizontal2KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_2K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal2KList, imageDirPath)
}
if len(vars.ImageHorizontal3KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_3K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal3KList, imageDirPath)
}
if len(vars.ImageHorizontal4KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_4K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal4KList, imageDirPath)
}
if len(vars.ImageHorizontal5KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_5K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal5KList, imageDirPath)
}
if len(vars.ImageHorizontal6KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_6K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal6KList, imageDirPath)
}
if len(vars.ImageHorizontal7KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_7K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal7KList, imageDirPath)
}
if len(vars.ImageHorizontal8KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_8K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal8KList, imageDirPath)
}
if len(vars.ImageHorizontal9KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_9K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontal9KList, imageDirPath)
}
if len(vars.ImageHorizontalHKList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_横屏_原图"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageHorizontalHKList, imageDirPath)
}
}
// 移动垂直图片
func moveVerticalImage(pickerDir string) {
pathSeparator := string(os.PathSeparator)
// 非标准
if len(vars.ImageVerticalNormalList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_普通"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVerticalNormalList, imageDirPath)
}
if len(vars.ImageVertical1KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_1K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical1KList, imageDirPath)
}
if len(vars.ImageVertical2KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_2K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical2KList, imageDirPath)
}
if len(vars.ImageVertical3KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_3K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical3KList, imageDirPath)
}
if len(vars.ImageVertical4KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_4K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical4KList, imageDirPath)
}
if len(vars.ImageVertical5KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_5K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical5KList, imageDirPath)
}
if len(vars.ImageVertical6KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_6K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical6KList, imageDirPath)
}
if len(vars.ImageVertical7KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_7K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical7KList, imageDirPath)
}
if len(vars.ImageVertical8KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_8K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical8KList, imageDirPath)
}
if len(vars.ImageVertical9KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_9K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVertical9KList, imageDirPath)
}
if len(vars.ImageVerticalHKList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_竖屏_原图"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageVerticalHKList, imageDirPath)
}
}
// 移动等比图片
func moveSquareImage(pickerDir string) {
pathSeparator := string(os.PathSeparator)
// 非标准
if len(vars.ImageSquareNormalList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_普通"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquareNormalList, imageDirPath)
}
if len(vars.ImageSquare1KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_1K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare1KList, imageDirPath)
}
if len(vars.ImageSquare2KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_2K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare2KList, imageDirPath)
}
if len(vars.ImageSquare3KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_3K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare3KList, imageDirPath)
}
if len(vars.ImageSquare4KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_4K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare4KList, imageDirPath)
}
if len(vars.ImageSquare5KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_5K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare5KList, imageDirPath)
}
if len(vars.ImageSquare6KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_6K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare6KList, imageDirPath)
}
if len(vars.ImageSquare7KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_7K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare7KList, imageDirPath)
}
if len(vars.ImageSquare8KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_8K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare8KList, imageDirPath)
}
if len(vars.ImageSquare9KList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_9K"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquare9KList, imageDirPath)
}
if len(vars.ImageSquareHKList) > 0 {
imageDirPath := pickerDir + pathSeparator + "图片_等比_原图"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageSquareHKList, imageDirPath)
}
}
// 移动gif图片
func moveGifImage(pickerDir string) {
if len(vars.ImageGifList) > 0 {
pathSeparator := string(os.PathSeparator)
imageDirPath := pickerDir + pathSeparator + "图片_GIF"
util.CreateDir(imageDirPath)
util.DoMoveFileToDir(vars.ImageGifList, imageDirPath)
}
}