MCPcopy Create free account
hub / github.com/astercloud/aster / NewImage

Function NewImage

pkg/media/types.go:46–68  ·  view source on GitHub ↗

NewImage 创建图片

(source string)

Source from the content-addressed store, hash-verified

44
45// NewImage 创建图片
46func NewImage(source string) (*Image, error) {
47 img := &Image{}
48
49 // 判断是 URL 还是文件路径
50 if strings.HasPrefix(source, "http://") || strings.HasPrefix(source, "https://") {
51 img.URL = source
52 } else if strings.HasPrefix(source, "data:") {
53 // Data URL
54 parts := strings.SplitN(source, ",", 2)
55 if len(parts) == 2 {
56 img.Data = parts[1]
57 // 解析 MIME 类型
58 if strings.Contains(parts[0], ";") {
59 img.MimeType = strings.Split(parts[0], ";")[0][5:] // 去掉 "data:"
60 }
61 }
62 } else {
63 // 文件路径
64 return NewImageFromFile(source)
65 }
66
67 return img, nil
68}
69
70// NewImageFromFile 从文件创建图片
71func NewImageFromFile(path string) (*Image, error) {

Callers 1

ConvertImagesFunction · 0.85

Calls 1

NewImageFromFileFunction · 0.85

Tested by

no test coverage detected