diff --git a/assets/img/1.png b/assets/img/1.png
new file mode 100644
index 0000000..7d1e905
Binary files /dev/null and b/assets/img/1.png differ
diff --git a/assets/img/output_image.svg b/assets/img/output_image.svg
new file mode 100644
index 0000000..de03e59
--- /dev/null
+++ b/assets/img/output_image.svg
@@ -0,0 +1,6 @@
+
+
+
diff --git a/assets/img/output_image111.svg b/assets/img/output_image111.svg
new file mode 100644
index 0000000..e69de29
diff --git a/assets/svg/output22_image.svg b/assets/svg/output22_image.svg
new file mode 100644
index 0000000..de03e59
--- /dev/null
+++ b/assets/svg/output22_image.svg
@@ -0,0 +1,6 @@
+
+
+
diff --git a/assets/svg/output_image.svg b/assets/svg/output_image.svg
new file mode 100644
index 0000000..de03e59
--- /dev/null
+++ b/assets/svg/output_image.svg
@@ -0,0 +1,6 @@
+
+
+
diff --git a/assets/svg/output_image111.svg b/assets/svg/output_image111.svg
new file mode 100644
index 0000000..e69de29
diff --git a/controller/common/img.go b/controller/common/img.go
new file mode 100644
index 0000000..520cb33
--- /dev/null
+++ b/controller/common/img.go
@@ -0,0 +1,57 @@
+package common
+
+import (
+ "bytes"
+ "fmt"
+ "image/jpeg"
+ "log"
+ "os"
+
+ svg "github.com/ajstarks/svgo"
+)
+
+func JpgPngToSvgw(inputPAgth, outputPath string) {
+ // 加载JPG图片
+ // 加载JPEG图片
+ jpgFile, err := os.Open(inputPAgth)
+ if err != nil {
+ log.Fatalf("Error opening JPEG file: %v", err)
+ }
+ defer jpgFile.Close()
+
+ img, err := jpeg.Decode(jpgFile)
+ if err != nil {
+ log.Fatalf("Error decoding JPEG image: %v", err)
+ }
+
+ // 创建SVG画布
+ width, height := img.Bounds().Dx(), img.Bounds().Dy()
+ canvas := svg.New(bytes.NewBuffer(nil))
+ canvas.Start(width, height)
+
+ // 将JPEG图片转换为SVG路径指令
+ for y := 0; y < height; y++ {
+ for x := 0; x < width; x++ {
+ // 获取每个像素的颜色
+ r, g, b, _ := img.At(x, y).RGBA()
+ canvas.Circle(x, y, 1, fmt.Sprintf("fill=\"rgb(%d,%d,%d)\"", r, g, b))
+ }
+ }
+
+ // 结束SVG文档
+ canvas.End()
+
+ // 输出SVG文件
+ // svgData := canvas.Bytes()
+ svgFile, err := os.Create(outputPath)
+ if err != nil {
+ log.Fatalf("Error creating SVG file: %v", err)
+ }
+ defer svgFile.Close()
+
+ // _, err = svgFile.Write(canvas)
+ if err != nil {
+ log.Fatalf("Error writing SVG data: %v", err)
+ }
+
+}
diff --git a/controller/common/shiyan.go b/controller/common/shiyan.go
index f042a3a..be2e601 100644
--- a/controller/common/shiyan.go
+++ b/controller/common/shiyan.go
@@ -4,7 +4,14 @@ import (
"appNewPlatform/generalmethod"
"appNewPlatform/utils"
"appNewPlatform/utils/formatoutput"
+ "fmt"
+ "image"
+ "image/draw"
+ "image/jpeg"
+ "image/png"
+ "os"
+ svg "github.com/ajstarks/svgo"
"github.com/gin-gonic/gin"
)
@@ -36,3 +43,223 @@ func (a *ApiMethod) Index(c *gin.Context) {
func (a *ApiMethod) JieXiJwt(c *gin.Context) {
}
+
+/*
+*
+@ 作者: 秦东
+@ 时间: 2024-11-08 15:20:28
+@ 功能: 实验图片改变格式
+@ 参数
+
+ #
+
+@ 返回值
+
+ #
+
+@ 方法原型
+
+ #
+*/
+func (a *ApiMethod) JpgToSvg(c *gin.Context) {
+
+}
+
+/*
+*
+@ 作者: 秦东
+@ 时间: 2024-11-08 15:21:29
+@ 功能: 将图像转换为SVG
+@ 参数
+
+ #inputImagePath 来源
+ #outputSVGPath 目标
+
+@ 返回值
+
+ #
+
+@ 方法原型
+
+ #
+*/
+func ImageToSVG(inputImagePath, outputSVGPath string) error {
+ // 打开输入图像文件
+ inputFile, err := os.Open(inputImagePath)
+ if err != nil {
+ return fmt.Errorf("无法打开输入图像文件: %v", err)
+ }
+ defer inputFile.Close()
+
+ // 解码图像
+ var img image.Image
+ var config image.Config
+ if inputImagePath[len(inputImagePath)-3:] == "png" {
+ img, err = png.Decode(inputFile)
+ } else if inputImagePath[len(inputImagePath)-3:] == "jpg" {
+ img, err = jpeg.Decode(inputFile)
+ } else {
+ return fmt.Errorf("不支持的图像格式")
+ }
+ if err != nil {
+ return fmt.Errorf("无法解码图像: %v", err)
+ }
+
+ // 创建一个空白的RGBA图像,大小与原始图像相同
+ rgba := image.NewRGBA(image.Rect(0, 0, config.Width, config.Height))
+ draw.Draw(rgba, rgba.Bounds(), img, image.Point{0, 0}, draw.Src)
+
+ // 创建SVG文件
+ outputFile, err := os.Create(outputSVGPath)
+ if err != nil {
+ return fmt.Errorf("无法创建SVG文件: %v", err)
+ }
+ defer outputFile.Close()
+
+ // 初始化SVG绘制上下文
+ svg := svg.New(outputFile)
+ svg.Start(config.Width, config.Height)
+
+ // 遍历图像的每个像素,将其绘制到SVG中
+ for y := 0; y < config.Height; y++ {
+ for x := 0; x < config.Width; x++ {
+ r, g, b, a := rgba.At(x, y).RGBA()
+ svg.Rect(x, y, 1, 1, fmt.Sprintf("fill:rgba(%d,%d,%d,%f)", r>>8, g>>8, b>>8, float64(a)/65535))
+ }
+ }
+
+ svg.End()
+
+ return nil
+}
+
+/*
+*
+@ 作者: 秦东
+@ 时间: 2024-11-08 16:24:10
+@ 功能:
+@ 参数
+
+ #
+
+@ 返回值
+
+ #
+
+@ 方法原型
+
+ #
+*/
+// func ImgToSvg(inputImagePath, outputSVGPath string) {
+// // 打开输入的 PNG 图像文件
+// inputFile, err := os.Open("input.png")
+// if err != nil {
+// log.Fatalf("无法打开输入图像文件: %v", err)
+// }
+// defer inputFile.Close()
+
+// // 解码 PNG 图像
+// img, err := png.Decode(inputFile)
+// if err != nil {
+// log.Fatalf("无法解码 PNG 图像: %v", err)
+// }
+
+// // 获取图像的边界
+// bounds := img.Bounds()
+// width, height := bounds.Max.X, bounds.Max.Y
+
+// // 将图像转换为 RGBA 格式
+// rgbaImg := image.NewRGBA(bounds)
+// draw.Draw(rgbaImg, bounds, img, image.Point{0, 0}, draw.Src)
+
+// // 使用 go-libimagequant 进行图像量化
+// quantizer := imagequant.NewQuantizer()
+// defer quantizer.Close()
+
+// // 配置量化参数(可选,这里使用默认参数)
+// quantizer.SetMaxColors(256)
+// quantizer.SetMinQuality(75)
+
+// // 对图像进行量化
+// result, err := quantizer.Quantize(rgbaImg)
+// if err != nil {
+// log.Fatalf("图像量化失败: %v", err)
+// }
+// defer result.Close()
+
+// // 创建新的图像,使用量化后的颜色
+// quantizedImg := image.NewPaletted(bounds, result.Palette())
+// for y := 0; y < height; y++ {
+// for x := 0; x < width; x++ {
+// index := result.Image().At(x, y).(color.NRGBA).R
+// quantizedImg.Set(x, y, result.Palette()[int(index)])
+// }
+// }
+
+// // 保存量化后的图像为新的 PNG 文件
+// outputFile, err := os.Create("output.png")
+// if err != nil {
+// log.Fatalf("无法创建输出图像文件: %v", err)
+// }
+// defer outputFile.Close()
+
+// if err := png.Encode(outputFile, quantizedImg); err != nil {
+// log.Fatalf("无法保存输出图像文件: %v", err)
+// }
+
+// log.Println("图像量化完成,已保存为 output.png")
+// }
+
+/*
+*
+@ 作者: 秦东
+@ 时间: 2024-11-09 08:20:56
+@ 功能:
+@ 参数
+
+ #
+
+@ 返回值
+
+ #
+
+@ 方法原型
+
+ #
+*/
+func JpgPngToSvg(inputPAgth, outputPath string) {
+ // imgFile, err := os.Open(inputPAgth)
+ // if err != nil {
+ // log.Fatalf("Error opening image: %v", err)
+ // }
+ // defer imgFile.Close()
+
+ // img, _, err := image.Decode(imgFile)
+
+ // if err != nil {
+ // log.Fatalf("Error decoding image: %v", err)
+ // }
+
+ // // 创建一个新的SVG画布
+ // dc := gg.NewContext(img.Bounds().Dx(), img.Bounds().Dy())
+ // // 将图片绘制到SVG上下文
+ // dc.DrawImage(img, 0, 0)
+ // // 将SVG内容写入文件
+ // var buf bytes.Buffer
+
+ // if err := gg.RenderToSVG(&buf, dc.Image().Bounds(), dc.Image(), nil); err != nil { //+
+ // log.Fatalf("Error rendering to SVG: %v", err) //+
+ // } //+
+
+ // svgFile, err := os.Create("output.svg")
+ // if err != nil {
+ // log.Fatalf("Error creating SVG file: %v", err)
+ // }
+ // defer svgFile.Close()
+
+ // if _, err := io.Copy(svgFile, &buf); err != nil {
+ // log.Fatalf("Error writing SVG file: %v", err)
+ // }
+
+ // fmt.Println("Image converted to SVG successfully.")
+}
diff --git a/go.mod b/go.mod
index 801e944..3302c56 100644
--- a/go.mod
+++ b/go.mod
@@ -3,10 +3,12 @@ module appNewPlatform
go 1.21.5
require (
+ github.com/ajstarks/svgo v0.0.0-20211024235047-1546f124cd8b
+ github.com/fogleman/gg v1.3.0
github.com/fsnotify/fsnotify v1.7.0
github.com/gin-gonic/gin v1.10.0
github.com/golang-jwt/jwt v3.2.2+incompatible
- github.com/golang-jwt/jwt/v5 v5.2.1
+ github.com/otiai10/gosseract/v2 v2.4.1
github.com/redis/go-redis/v9 v9.6.1
github.com/spf13/viper v1.19.0
gorm.io/driver/mysql v1.5.7
@@ -14,14 +16,14 @@ require (
)
require (
- github.com/ajstarks/svgo v0.0.0-20211024235047-1546f124cd8b // indirect
+ github.com/Jeffail/gabs v1.4.0 // indirect
+ github.com/Jeffail/gabs/v2 v2.7.0 // indirect
github.com/bytedance/sonic v1.11.6 // indirect
github.com/bytedance/sonic/loader v0.1.1 // indirect
github.com/cespare/xxhash/v2 v2.2.0 // indirect
github.com/cloudwego/base64x v0.1.4 // indirect
github.com/cloudwego/iasm v0.2.0 // indirect
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
- github.com/disintegration/imaging v1.6.2 // indirect
github.com/gabriel-vasile/mimetype v1.4.3 // indirect
github.com/gin-contrib/sse v0.1.0 // indirect
github.com/go-playground/locales v0.14.1 // indirect
@@ -36,7 +38,6 @@ require (
github.com/json-iterator/go v1.1.12 // indirect
github.com/klauspost/cpuid/v2 v2.2.7 // indirect
github.com/leodido/go-urn v1.4.0 // indirect
- github.com/llgcode/draw2d v0.0.0-20240627062922-0ed1ff131195 // indirect
github.com/magiconair/properties v1.8.7 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/mitchellh/mapstructure v1.5.0 // indirect
diff --git a/go.sum b/go.sum
index 21f2710..071ffe0 100644
--- a/go.sum
+++ b/go.sum
@@ -1,4 +1,8 @@
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
+github.com/Jeffail/gabs v1.4.0 h1://5fYRRTq1edjfIrQGvdkcd22pkYUrHZ5YC/H2GJVAo=
+github.com/Jeffail/gabs v1.4.0/go.mod h1:6xMvQMK4k33lb7GUUpaAPh6nKMmemQeg5d4gn7/bOXc=
+github.com/Jeffail/gabs/v2 v2.7.0 h1:Y2edYaTcE8ZpRsR2AtmPu5xQdFDIthFG0jYhu5PY8kg=
+github.com/Jeffail/gabs/v2 v2.7.0/go.mod h1:dp5ocw1FvBBQYssgHsG7I1WYsiLRtkUaB1FEtSwvNUw=
github.com/ajstarks/deck v0.0.0-20200831202436-30c9fc6549a9/go.mod h1:JynElWSGnm/4RlzPXRlREEwqTHAN3T56Bv2ITsFT3gY=
github.com/ajstarks/deck/generate v0.0.0-20210309230005-c3f852c02e19/go.mod h1:T13YZdzov6OU0A1+RfKZiZN9ca6VeKdBdyDV+BY97Tk=
github.com/ajstarks/svgo v0.0.0-20211024235047-1546f124cd8b h1:slYM766cy2nI3BwyRiyQj/Ud48djTMtMebDqepE95rw=
@@ -23,8 +27,8 @@ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f h1:lO4WD4F/rVNCu3HqELle0jiPLLBs70cWOduZpkS1E78=
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f/go.mod h1:cuUVRXasLTGF7a8hSLbxyZXjz+1KgoB3wDUb6vlszIc=
-github.com/disintegration/imaging v1.6.2 h1:w1LecBlG2Lnp8B3jk5zSuNqd7b4DXhcjwek1ei82L+c=
-github.com/disintegration/imaging v1.6.2/go.mod h1:44/5580QXChDfwIclfc/PCwrr44amcmDAg8hxG0Ewe4=
+github.com/fogleman/gg v1.3.0 h1:/7zJX8F6AaYQc57WQCyN9cAIz+4bCJGO9B+dyW29am8=
+github.com/fogleman/gg v1.3.0/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k=
github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8=
github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0=
github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA=
@@ -49,8 +53,6 @@ github.com/goccy/go-json v0.10.2 h1:CrxCmQqYDkv1z7lO7Wbh2HN93uovUHgrECaO5ZrCXAU=
github.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=
github.com/golang-jwt/jwt v3.2.2+incompatible h1:IfV12K8xAKAnZqdXVzCZ+TOjboZ2keLg81eXfW3O+oY=
github.com/golang-jwt/jwt v3.2.2+incompatible/go.mod h1:8pz2t5EyA70fFQQSrl6XZXzqecmYZeUEB8OUGHkxJ+I=
-github.com/golang-jwt/jwt/v5 v5.2.1 h1:OuVbFODueb089Lh128TAcimifWaLhJwVflnrgM17wHk=
-github.com/golang-jwt/jwt/v5 v5.2.1/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk=
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0 h1:DACJavvAHhabrF08vX0COfcOBJRhZ8lUbR+ZWIs0Y5g=
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0/go.mod h1:E/TSTwGwJL78qG/PmXZO1EjYhfJinVAhrmmHX6Z8B9k=
github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=
@@ -75,8 +77,6 @@ github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
github.com/leodido/go-urn v1.4.0 h1:WT9HwE9SGECu3lg4d/dIA+jxlljEa1/ffXKmRjqdmIQ=
github.com/leodido/go-urn v1.4.0/go.mod h1:bvxc+MVxLKB4z00jd1z+Dvzr47oO32F/QSNjSBOlFxI=
-github.com/llgcode/draw2d v0.0.0-20240627062922-0ed1ff131195 h1:Vdz2cBh5Fw2MYHWi3ED2PraDQaWEUhNCr1XFHrP4N5A=
-github.com/llgcode/draw2d v0.0.0-20240627062922-0ed1ff131195/go.mod h1:1Vk0LDW6jG5cGc2D9RQUxHaE0vYhTvIwSo9mOL6K4/U=
github.com/magiconair/properties v1.8.7 h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY=
github.com/magiconair/properties v1.8.7/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0=
github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
@@ -88,6 +88,10 @@ github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
github.com/modern-go/reflect2 v1.0.2 h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=
github.com/modern-go/reflect2 v1.0.2/go.mod h1:yWuevngMOJpCy52FWWMvUC8ws7m/LJsjYzDa0/r8luk=
+github.com/otiai10/gosseract/v2 v2.4.1 h1:G8AyBpXEeSlcq8TI85LH/pM5SXk8Djy2GEXisgyblRw=
+github.com/otiai10/gosseract/v2 v2.4.1/go.mod h1:1gNWP4Hgr2o7yqWfs6r5bZxAatjOIdqWxJLWsTsembk=
+github.com/otiai10/mint v1.6.3 h1:87qsV/aw1F5as1eH1zS/yqHY85ANKVMgkDrf9rcxbQs=
+github.com/otiai10/mint v1.6.3/go.mod h1:MJm72SBthJjz8qhefc4z1PYEieWmy8Bku7CjcAqyUSM=
github.com/pelletier/go-toml/v2 v2.2.2 h1:aYUidT7k73Pcl9nb2gScu7NSrKCSHIDE89b3+6Wq+LM=
github.com/pelletier/go-toml/v2 v2.2.2/go.mod h1:1t835xjRzz80PqgE6HHgN2JOsmgYu/h4qDAS4n929Rs=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
@@ -144,9 +148,6 @@ golang.org/x/crypto v0.23.0 h1:dIJU/v2J8Mdglj/8rJ6UUOM3Zc9zLZxVZwwxMooUSAI=
golang.org/x/crypto v0.23.0/go.mod h1:CKFgDieR+mRhux2Lsu27y0fO304Db0wZe70UKqHu0v8=
golang.org/x/exp v0.0.0-20230905200255-921286631fa9 h1:GoHiUyI/Tp2nVkLI2mCxVkOjsbSXD66ic0XW0js0R9g=
golang.org/x/exp v0.0.0-20230905200255-921286631fa9/go.mod h1:S2oDrQGGwySpoQPVqRShND87VCbxmc6bL1Yd2oYrm6k=
-golang.org/x/image v0.0.0-20191009234506-e7c1f5e7dbb8/go.mod h1:FeLwcggjj3mMvU+oOTbSwawSJRM1uh48EjtB4UJZlP0=
-golang.org/x/image v0.18.0 h1:jGzIakQa/ZXI1I0Fxvaa9W7yP25TqT6cHIHn+6CqvSQ=
-golang.org/x/image v0.18.0/go.mod h1:4yyo5vMFQjVjUcVk4jEQcU9MGy/rulF5WvUILseCM2E=
golang.org/x/image v0.22.0 h1:UtK5yLUzilVrkjMAZAZ34DXGpASN8i8pj8g+O+yd10g=
golang.org/x/image v0.22.0/go.mod h1:9hPFhljd4zZ1GNSIZJ49sqbp45GKK9t6w+iXvGqZUz4=
golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA=
@@ -167,10 +168,6 @@ golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y=
golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
-golang.org/x/text v0.15.0 h1:h1V/4gjBv8v9cjcR6+AR5+/cIYK5N/WAgiv4xlsEtAk=
-golang.org/x/text v0.15.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU=
-golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4=
-golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI=
golang.org/x/text v0.20.0 h1:gK/Kv2otX8gz+wn7Rmb3vT96ZwuoxnQlY+HlJVj7Qug=
golang.org/x/text v0.20.0/go.mod h1:D4IsuqiFMhST5bX19pQ9ikHC2GsaKyk/oF+pn3ducp4=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
diff --git a/main.go b/main.go
index d40361e..5debb9c 100644
--- a/main.go
+++ b/main.go
@@ -2,6 +2,7 @@ package main
import (
"appNewPlatform/appConstant"
+ "appNewPlatform/controller/common"
"appNewPlatform/initialization"
"fmt"
"runtime"
@@ -18,6 +19,17 @@ func main() {
appConstant.MaxCpuNumber = Ncpu
fmt.Printf("设置并发服务器核心数量:%v\n", Ncpu)
runtime.GOMAXPROCS(Ncpu) //设置使用核心数量
+
+ inputImagePath := ".\\assets\\img\\1.png" // 替换为实际的输入图像路径,可支持PNG或JPEG
+ outputSVGPath := "./assets/svg/output_image1111.svg" // 替换为实际的输出SVG路径
+
+ common.JpgPngToSvgw(inputImagePath, outputSVGPath)
+ // if err != nil {
+ // fmt.Println("转换失败:", err)
+ // } else {
+ // fmt.Println("转换成功,SVG文件已生成:", outputSVGPath)
+ // }
+
//加载数据库
initialization.LoadingDatabase()
//加载Redis