4+jcV$HPHb*Oi)eIm!>$!e
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
N0gi~kTmGk?{{yNGqu2ld
diff --git a/frontend/image-tool/public/iconfont/fonts/icomoon.woff b/frontend/image-tool/public/iconfont/fonts/icomoon.woff
deleted file mode 100644
index 4d5cdbcabdd1f6b3d5057cc5be2421e7ec9249d9..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 21332
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
diff --git a/frontend/image-tool/public/iconfont/iconfont.css b/frontend/image-tool/public/iconfont/iconfont.css
new file mode 100644
index 00000000..501ccba3
--- /dev/null
+++ b/frontend/image-tool/public/iconfont/iconfont.css
@@ -0,0 +1,183 @@
+@font-face {
+ font-family: "iconfont"; /* Project id 4374613 */
+ src: url('iconfont.woff2?t=1704191662778') format('woff2'),
+ url('iconfont.woff?t=1704191662778') format('woff'),
+ url('iconfont.ttf?t=1704191662778') format('truetype');
+}
+
+.iconfont {
+ font-family: "iconfont" !important;
+ font-size: 16px;
+ font-style: normal;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
+
+.icon-cube:before {
+ content: "\e736";
+}
+
+.icon-play:before {
+ content: "\e741";
+}
+
+.icon-replay:before {
+ content: "\e743";
+}
+
+.icon-backup:before {
+ content: "\e745";
+}
+
+.icon-forward:before {
+ content: "\e746";
+}
+
+.icon-Frame23:before {
+ content: "\e750";
+}
+
+.icon-crop-non-first:before {
+ content: "\e769";
+}
+
+.icon-crop-first:before {
+ content: "\e76a";
+}
+
+.icon-transform:before {
+ content: "\e621";
+}
+
+.icon-point:before {
+ content: "\e60d";
+}
+
+.icon-reset:before {
+ content: "\e61a";
+}
+
+.icon-rotate90:before {
+ content: "\e6de";
+}
+
+.icon-rotate270:before {
+ content: "\e6e0";
+}
+
+.icon-information:before {
+ content: "\e6fe";
+}
+
+.icon-hollow:before {
+ content: "\e620";
+}
+
+.icon-cancel-hollow:before {
+ content: "\e752";
+}
+
+.icon-hotkey:before {
+ content: "\e767";
+}
+
+.icon-rect:before {
+ content: "\e67c";
+}
+
+.icon-save:before {
+ content: "\e703";
+}
+
+.icon-help:before {
+ content: "\e704";
+}
+
+.icon-fullscreen:before {
+ content: "\e705";
+}
+
+.icon-exitfullscreen:before {
+ content: "\e706";
+}
+
+.icon-info:before {
+ content: "\e70b";
+}
+
+.icon-setting:before {
+ content: "\e70c";
+}
+
+.icon-toleft:before {
+ content: "\e712";
+}
+
+.icon-toright:before {
+ content: "\e713";
+}
+
+.icon-remind:before {
+ content: "\e71a";
+}
+
+.icon-view:before {
+ content: "\e71f";
+}
+
+.icon-delete:before {
+ content: "\e721";
+}
+
+.icon-editlabel:before {
+ content: "\e722";
+}
+
+.icon-filter:before {
+ content: "\e724";
+}
+
+.icon-more:before {
+ content: "\e72d";
+}
+
+.icon-hidden:before {
+ content: "\e72f";
+}
+
+.icon-left:before {
+ content: "\e730";
+}
+
+.icon-right:before {
+ content: "\e731";
+}
+
+.icon-loading:before {
+ content: "\e737";
+}
+
+.icon-model:before {
+ content: "\e738";
+}
+
+.icon-arrow:before {
+ content: "\e751";
+}
+
+.icon-ai:before {
+ content: "\e764";
+}
+
+.icon-smart:before {
+ content: "\e766";
+}
+
+.icon-polygon:before {
+ content: "\e601";
+}
+
+.icon-polyline:before {
+ content: "\e602";
+}
+
diff --git a/frontend/image-tool/public/iconfont/iconfont.js b/frontend/image-tool/public/iconfont/iconfont.js
new file mode 100644
index 00000000..6769921b
--- /dev/null
+++ b/frontend/image-tool/public/iconfont/iconfont.js
@@ -0,0 +1 @@
+window._iconfont_svg_string_4374613='',function(h){var a=(a=document.getElementsByTagName("script"))[a.length-1],l=a.getAttribute("data-injectcss"),a=a.getAttribute("data-disable-injectsvg");if(!a){var c,t,o,v,z,m=function(a,l){l.parentNode.insertBefore(a,l)};if(l&&!h.__iconfont__svg__cssinject__){h.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(a){console&&console.log(a)}}c=function(){var a,l=document.createElement("div");l.innerHTML=h._iconfont_svg_string_4374613,(l=l.getElementsByTagName("svg")[0])&&(l.setAttribute("aria-hidden","true"),l.style.position="absolute",l.style.width=0,l.style.height=0,l.style.overflow="hidden",l=l,(a=document.body).firstChild?m(l,a.firstChild):a.appendChild(l))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(c,0):(t=function(){document.removeEventListener("DOMContentLoaded",t,!1),c()},document.addEventListener("DOMContentLoaded",t,!1)):document.attachEvent&&(o=c,v=h.document,z=!1,e(),v.onreadystatechange=function(){"complete"==v.readyState&&(v.onreadystatechange=null,i())})}function i(){z||(z=!0,o())}function e(){try{v.documentElement.doScroll("left")}catch(a){return void setTimeout(e,50)}i()}}(window);
\ No newline at end of file
diff --git a/frontend/image-tool/public/iconfont/iconfont.json b/frontend/image-tool/public/iconfont/iconfont.json
new file mode 100644
index 00000000..aede06d0
--- /dev/null
+++ b/frontend/image-tool/public/iconfont/iconfont.json
@@ -0,0 +1,303 @@
+{
+ "id": "4374613",
+ "name": "image-tool-open",
+ "font_family": "iconfont",
+ "css_prefix_text": "icon-",
+ "description": "图片工具开源",
+ "glyphs": [
+ {
+ "icon_id": "29769749",
+ "name": "cube",
+ "font_class": "cube",
+ "unicode": "e736",
+ "unicode_decimal": 59190
+ },
+ {
+ "icon_id": "32271488",
+ "name": "play",
+ "font_class": "play",
+ "unicode": "e741",
+ "unicode_decimal": 59201
+ },
+ {
+ "icon_id": "32271490",
+ "name": "replay",
+ "font_class": "replay",
+ "unicode": "e743",
+ "unicode_decimal": 59203
+ },
+ {
+ "icon_id": "32271492",
+ "name": "backup",
+ "font_class": "backup",
+ "unicode": "e745",
+ "unicode_decimal": 59205
+ },
+ {
+ "icon_id": "32271493",
+ "name": "forward",
+ "font_class": "forward",
+ "unicode": "e746",
+ "unicode_decimal": 59206
+ },
+ {
+ "icon_id": "32608846",
+ "name": "ongoing",
+ "font_class": "Frame23",
+ "unicode": "e750",
+ "unicode_decimal": 59216
+ },
+ {
+ "icon_id": "34058418",
+ "name": "Crop non-first",
+ "font_class": "crop-non-first",
+ "unicode": "e769",
+ "unicode_decimal": 59241
+ },
+ {
+ "icon_id": "34058419",
+ "name": "Crop the first",
+ "font_class": "crop-first",
+ "unicode": "e76a",
+ "unicode_decimal": 59242
+ },
+ {
+ "icon_id": "553250",
+ "name": "transform",
+ "font_class": "transform",
+ "unicode": "e621",
+ "unicode_decimal": 58913
+ },
+ {
+ "icon_id": "16082215",
+ "name": "point",
+ "font_class": "point",
+ "unicode": "e60d",
+ "unicode_decimal": 58893
+ },
+ {
+ "icon_id": "23422758",
+ "name": "reset",
+ "font_class": "reset",
+ "unicode": "e61a",
+ "unicode_decimal": 58906
+ },
+ {
+ "icon_id": "26196680",
+ "name": "rotate-right",
+ "font_class": "rotate90",
+ "unicode": "e6de",
+ "unicode_decimal": 59102
+ },
+ {
+ "icon_id": "26196684",
+ "name": "rotate-left",
+ "font_class": "rotate270",
+ "unicode": "e6e0",
+ "unicode_decimal": 59104
+ },
+ {
+ "icon_id": "28765080",
+ "name": "information",
+ "font_class": "information",
+ "unicode": "e6fe",
+ "unicode_decimal": 59134
+ },
+ {
+ "icon_id": "32195920",
+ "name": "hollow",
+ "font_class": "hollow",
+ "unicode": "e620",
+ "unicode_decimal": 58912
+ },
+ {
+ "icon_id": "34047962",
+ "name": "cancel-hollow",
+ "font_class": "cancel-hollow",
+ "unicode": "e752",
+ "unicode_decimal": 59218
+ },
+ {
+ "icon_id": "34059152",
+ "name": "hotkey",
+ "font_class": "hotkey",
+ "unicode": "e767",
+ "unicode_decimal": 59239
+ },
+ {
+ "icon_id": "7405528",
+ "name": "rect",
+ "font_class": "rect",
+ "unicode": "e67c",
+ "unicode_decimal": 59004
+ },
+ {
+ "icon_id": "28765334",
+ "name": "save",
+ "font_class": "save",
+ "unicode": "e703",
+ "unicode_decimal": 59139
+ },
+ {
+ "icon_id": "28765336",
+ "name": "help",
+ "font_class": "help",
+ "unicode": "e704",
+ "unicode_decimal": 59140
+ },
+ {
+ "icon_id": "28765362",
+ "name": "fullscreen",
+ "font_class": "fullscreen",
+ "unicode": "e705",
+ "unicode_decimal": 59141
+ },
+ {
+ "icon_id": "28765402",
+ "name": "exitfullscreen",
+ "font_class": "exitfullscreen",
+ "unicode": "e706",
+ "unicode_decimal": 59142
+ },
+ {
+ "icon_id": "28766072",
+ "name": "info",
+ "font_class": "info",
+ "unicode": "e70b",
+ "unicode_decimal": 59147
+ },
+ {
+ "icon_id": "28766074",
+ "name": "setting",
+ "font_class": "setting",
+ "unicode": "e70c",
+ "unicode_decimal": 59148
+ },
+ {
+ "icon_id": "28766268",
+ "name": "toleft",
+ "font_class": "toleft",
+ "unicode": "e712",
+ "unicode_decimal": 59154
+ },
+ {
+ "icon_id": "28766291",
+ "name": "toright",
+ "font_class": "toright",
+ "unicode": "e713",
+ "unicode_decimal": 59155
+ },
+ {
+ "icon_id": "28766446",
+ "name": "remind",
+ "font_class": "remind",
+ "unicode": "e71a",
+ "unicode_decimal": 59162
+ },
+ {
+ "icon_id": "28766552",
+ "name": "view",
+ "font_class": "view",
+ "unicode": "e71f",
+ "unicode_decimal": 59167
+ },
+ {
+ "icon_id": "28766555",
+ "name": "delete",
+ "font_class": "delete",
+ "unicode": "e721",
+ "unicode_decimal": 59169
+ },
+ {
+ "icon_id": "28766569",
+ "name": "editlabel",
+ "font_class": "editlabel",
+ "unicode": "e722",
+ "unicode_decimal": 59170
+ },
+ {
+ "icon_id": "28766583",
+ "name": "filter",
+ "font_class": "filter",
+ "unicode": "e724",
+ "unicode_decimal": 59172
+ },
+ {
+ "icon_id": "28940596",
+ "name": "more",
+ "font_class": "more",
+ "unicode": "e72d",
+ "unicode_decimal": 59181
+ },
+ {
+ "icon_id": "28941931",
+ "name": "hidden",
+ "font_class": "hidden",
+ "unicode": "e72f",
+ "unicode_decimal": 59183
+ },
+ {
+ "icon_id": "28942286",
+ "name": "left",
+ "font_class": "left",
+ "unicode": "e730",
+ "unicode_decimal": 59184
+ },
+ {
+ "icon_id": "28942378",
+ "name": "right",
+ "font_class": "right",
+ "unicode": "e731",
+ "unicode_decimal": 59185
+ },
+ {
+ "icon_id": "29769750",
+ "name": "loading ",
+ "font_class": "loading",
+ "unicode": "e737",
+ "unicode_decimal": 59191
+ },
+ {
+ "icon_id": "29769751",
+ "name": "model",
+ "font_class": "model",
+ "unicode": "e738",
+ "unicode_decimal": 59192
+ },
+ {
+ "icon_id": "33261081",
+ "name": "arrow",
+ "font_class": "arrow",
+ "unicode": "e751",
+ "unicode_decimal": 59217
+ },
+ {
+ "icon_id": "34058413",
+ "name": "ai",
+ "font_class": "ai",
+ "unicode": "e764",
+ "unicode_decimal": 59236
+ },
+ {
+ "icon_id": "34058415",
+ "name": "smart",
+ "font_class": "smart",
+ "unicode": "e766",
+ "unicode_decimal": 59238
+ },
+ {
+ "icon_id": "36275522",
+ "name": "polygon",
+ "font_class": "polygon",
+ "unicode": "e601",
+ "unicode_decimal": 58881
+ },
+ {
+ "icon_id": "36275575",
+ "name": "polyline",
+ "font_class": "polyline",
+ "unicode": "e602",
+ "unicode_decimal": 58882
+ }
+ ]
+}
diff --git a/frontend/image-tool/public/iconfont/iconfont.ttf b/frontend/image-tool/public/iconfont/iconfont.ttf
new file mode 100644
index 0000000000000000000000000000000000000000..18f61e1a5290f5b3d2f5f8bc0bf1c9f8e2bc9911
GIT binary patch
literal 15312
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