From 19a96c92a9a9e68a81619ee0f8c20f6778e4d7be Mon Sep 17 00:00:00 2001 From: wanglin2 <1013335014@qq.com> Date: Fri, 17 Mar 2023 14:43:23 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=9B=BE=E6=A0=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- web/src/assets/icon-font/demo.css | 539 -------- web/src/assets/icon-font/demo_index.html | 1453 ---------------------- web/src/assets/icon-font/iconfont.css | 54 +- web/src/assets/icon-font/iconfont.js | 1 - web/src/assets/icon-font/iconfont.json | 394 ------ web/src/assets/icon-font/iconfont.ttf | Bin 16392 -> 19360 bytes web/src/assets/icon-font/iconfont.woff | Bin 10348 -> 12148 bytes web/src/assets/icon-font/iconfont.woff2 | Bin 8832 -> 10388 bytes 8 files changed, 51 insertions(+), 2390 deletions(-) delete mode 100644 web/src/assets/icon-font/demo.css delete mode 100644 web/src/assets/icon-font/demo_index.html delete mode 100644 web/src/assets/icon-font/iconfont.js delete mode 100644 web/src/assets/icon-font/iconfont.json diff --git a/web/src/assets/icon-font/demo.css b/web/src/assets/icon-font/demo.css deleted file mode 100644 index a67054a0..00000000 --- a/web/src/assets/icon-font/demo.css +++ /dev/null @@ -1,539 +0,0 @@ -/* Logo 字体 */ -@font-face { - font-family: "iconfont logo"; - src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834'); - src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'), - url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'), - url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'), - url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg'); -} - -.logo { - font-family: "iconfont logo"; - font-size: 160px; - font-style: normal; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -/* tabs */ -.nav-tabs { - position: relative; -} - -.nav-tabs .nav-more { - position: absolute; - right: 0; - bottom: 0; - height: 42px; - line-height: 42px; - color: #666; -} - -#tabs { - border-bottom: 1px solid #eee; -} - -#tabs li { - cursor: pointer; - width: 100px; - height: 40px; - line-height: 40px; - text-align: center; - font-size: 16px; - border-bottom: 2px solid transparent; - position: relative; - z-index: 1; - margin-bottom: -1px; - color: #666; -} - - -#tabs .active { - border-bottom-color: #f00; - color: #222; -} - -.tab-container .content { - display: none; -} - -/* 页面布局 */ -.main { - padding: 30px 100px; - width: 960px; - margin: 0 auto; -} - -.main .logo { - color: #333; - text-align: left; - margin-bottom: 30px; - line-height: 1; - height: 110px; - margin-top: -50px; - overflow: hidden; - *zoom: 1; -} - -.main .logo a { - font-size: 160px; - color: #333; -} - -.helps { - margin-top: 40px; -} - -.helps pre { - padding: 20px; - margin: 10px 0; - border: solid 1px #e7e1cd; - background-color: #fffdef; - overflow: auto; -} - -.icon_lists { - width: 100% !important; - overflow: hidden; - *zoom: 1; -} - -.icon_lists li { - width: 100px; - margin-bottom: 10px; - margin-right: 20px; - text-align: center; - list-style: none !important; - cursor: default; -} - -.icon_lists li .code-name { - line-height: 1.2; -} - -.icon_lists .icon { - display: block; - height: 100px; - line-height: 100px; - font-size: 42px; - margin: 10px auto; - color: #333; - -webkit-transition: font-size 0.25s linear, width 0.25s linear; - -moz-transition: font-size 0.25s linear, width 0.25s linear; - transition: font-size 0.25s linear, width 0.25s linear; -} - -.icon_lists .icon:hover { - font-size: 100px; -} - -.icon_lists .svg-icon { - /* 通过设置 font-size 来改变图标大小 */ - width: 1em; - /* 图标和文字相邻时,垂直对齐 */ - vertical-align: -0.15em; - /* 通过设置 color 来改变 SVG 的颜色/fill */ - fill: currentColor; - /* path 和 stroke 溢出 viewBox 部分在 IE 下会显示 - normalize.css 中也包含这行 */ - overflow: hidden; -} - -.icon_lists li .name, -.icon_lists li .code-name { - color: #666; -} - -/* markdown 样式 */ -.markdown { - color: #666; - font-size: 14px; - line-height: 1.8; -} - -.highlight { - line-height: 1.5; -} - -.markdown img { - vertical-align: middle; - max-width: 100%; -} - -.markdown h1 { - color: #404040; - font-weight: 500; - line-height: 40px; - margin-bottom: 24px; -} - -.markdown h2, -.markdown h3, -.markdown h4, -.markdown h5, -.markdown h6 { - color: #404040; - margin: 1.6em 0 0.6em 0; - font-weight: 500; - clear: both; -} - -.markdown h1 { - font-size: 28px; -} - -.markdown h2 { - font-size: 22px; -} - -.markdown h3 { - font-size: 16px; -} - -.markdown h4 { - font-size: 14px; -} - -.markdown h5 { - font-size: 12px; -} - -.markdown h6 { - font-size: 12px; -} - -.markdown hr { - height: 1px; - border: 0; - background: #e9e9e9; - margin: 16px 0; - clear: both; -} - -.markdown p { - margin: 1em 0; -} - -.markdown>p, -.markdown>blockquote, -.markdown>.highlight, -.markdown>ol, -.markdown>ul { - width: 80%; -} - -.markdown ul>li { - list-style: circle; -} - -.markdown>ul li, -.markdown blockquote ul>li { - margin-left: 20px; - padding-left: 4px; -} - -.markdown>ul li p, -.markdown>ol li p { - margin: 0.6em 0; -} - -.markdown ol>li { - list-style: decimal; -} - -.markdown>ol li, -.markdown blockquote ol>li { - margin-left: 20px; - padding-left: 4px; -} - -.markdown code { - margin: 0 3px; - padding: 0 5px; - background: #eee; - border-radius: 3px; -} - -.markdown strong, -.markdown b { - font-weight: 600; -} - -.markdown>table { - border-collapse: collapse; - border-spacing: 0px; - empty-cells: show; - border: 1px solid #e9e9e9; - width: 95%; - margin-bottom: 24px; -} - -.markdown>table th { - white-space: nowrap; - color: #333; - font-weight: 600; -} - -.markdown>table th, -.markdown>table td { - border: 1px solid #e9e9e9; - padding: 8px 16px; - text-align: left; -} - -.markdown>table th { - background: #F7F7F7; -} - -.markdown blockquote { - font-size: 90%; - color: #999; - border-left: 4px solid #e9e9e9; - padding-left: 0.8em; - margin: 1em 0; -} - -.markdown blockquote p { - margin: 0; -} - -.markdown .anchor { - opacity: 0; - transition: opacity 0.3s ease; - margin-left: 8px; -} - -.markdown .waiting { - color: #ccc; -} - -.markdown h1:hover .anchor, -.markdown h2:hover .anchor, -.markdown h3:hover .anchor, -.markdown h4:hover .anchor, -.markdown h5:hover .anchor, -.markdown h6:hover .anchor { - opacity: 1; - display: inline-block; -} - -.markdown>br, -.markdown>p>br { - clear: both; -} - - -.hljs { - display: block; - background: white; - padding: 0.5em; - color: #333333; - overflow-x: auto; -} - -.hljs-comment, -.hljs-meta { - color: #969896; -} - -.hljs-string, -.hljs-variable, -.hljs-template-variable, -.hljs-strong, -.hljs-emphasis, -.hljs-quote { - color: #df5000; -} - -.hljs-keyword, -.hljs-selector-tag, -.hljs-type { - color: #a71d5d; -} - -.hljs-literal, -.hljs-symbol, -.hljs-bullet, -.hljs-attribute { - color: #0086b3; -} - -.hljs-section, -.hljs-name { - color: #63a35c; -} - -.hljs-tag { - color: #333333; -} - -.hljs-title, -.hljs-attr, -.hljs-selector-id, -.hljs-selector-class, -.hljs-selector-attr, -.hljs-selector-pseudo { - color: #795da3; -} - -.hljs-addition { - color: #55a532; - background-color: #eaffea; -} - -.hljs-deletion { - color: #bd2c00; - background-color: #ffecec; -} - -.hljs-link { - text-decoration: underline; -} - -/* 代码高亮 */ -/* PrismJS 1.15.0 -https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */ -/** - * prism.js default theme for JavaScript, CSS and HTML - * Based on dabblet (http://dabblet.com) - * @author Lea Verou - */ -code[class*="language-"], -pre[class*="language-"] { - color: black; - background: none; - text-shadow: 0 1px white; - font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; - text-align: left; - white-space: pre; - word-spacing: normal; - word-break: normal; - word-wrap: normal; - line-height: 1.5; - - -moz-tab-size: 4; - -o-tab-size: 4; - tab-size: 4; - - -webkit-hyphens: none; - -moz-hyphens: none; - -ms-hyphens: none; - hyphens: none; -} - -pre[class*="language-"]::-moz-selection, -pre[class*="language-"] ::-moz-selection, -code[class*="language-"]::-moz-selection, -code[class*="language-"] ::-moz-selection { - text-shadow: none; - background: #b3d4fc; -} - -pre[class*="language-"]::selection, -pre[class*="language-"] ::selection, -code[class*="language-"]::selection, -code[class*="language-"] ::selection { - text-shadow: none; - background: #b3d4fc; -} - -@media print { - - code[class*="language-"], - pre[class*="language-"] { - text-shadow: none; - } -} - -/* Code blocks */ -pre[class*="language-"] { - padding: 1em; - margin: .5em 0; - overflow: auto; -} - -:not(pre)>code[class*="language-"], -pre[class*="language-"] { - background: #f5f2f0; -} - -/* Inline code */ -:not(pre)>code[class*="language-"] { - padding: .1em; - border-radius: .3em; - white-space: normal; -} - -.token.comment, -.token.prolog, -.token.doctype, -.token.cdata { - color: slategray; -} - -.token.punctuation { - color: #999; -} - -.namespace { - opacity: .7; -} - -.token.property, -.token.tag, -.token.boolean, -.token.number, -.token.constant, -.token.symbol, -.token.deleted { - color: #905; -} - -.token.selector, -.token.attr-name, -.token.string, -.token.char, -.token.builtin, -.token.inserted { - color: #690; -} - -.token.operator, -.token.entity, -.token.url, -.language-css .token.string, -.style .token.string { - color: #9a6e3a; - background: hsla(0, 0%, 100%, .5); -} - -.token.atrule, -.token.attr-value, -.token.keyword { - color: #07a; -} - -.token.function, -.token.class-name { - color: #DD4A68; -} - -.token.regex, -.token.important, -.token.variable { - color: #e90; -} - -.token.important, -.token.bold { - font-weight: bold; -} - -.token.italic { - font-style: italic; -} - -.token.entity { - cursor: help; -} diff --git a/web/src/assets/icon-font/demo_index.html b/web/src/assets/icon-font/demo_index.html deleted file mode 100644 index c3e0317e..00000000 --- a/web/src/assets/icon-font/demo_index.html +++ /dev/null @@ -1,1453 +0,0 @@ - - - - - iconfont Demo - - - - - - - - - - - - - -
-

- - -

- -
-
-
    - -
  • - -
    背景颜色
    -
    &#xe6f8;
    -
  • - -
  • - -
    清除
    -
    &#xe605;
    -
  • - -
  • - -
    case
    -
    &#xe6c6;
    -
  • - -
  • - -
    形状-文字
    -
    &#xeb99;
    -
  • - -
  • - -
    字体加粗
    -
    &#xec83;
    -
  • - -
  • - -
    字体下划线
    -
    &#xec85;
    -
  • - -
  • - -
    字体斜体
    -
    &#xec86;
    -
  • - -
  • - -
    删除线
    -
    &#xe612;
    -
  • - -
  • - -
    字体颜色
    -
    &#xe854;
    -
  • - -
  • - -
    github
    -
    &#xe64f;
    -
  • - -
  • - -
    选择
    -
    &#xe6c5;
    -
  • - -
  • - -
    主题
    -
    &#xe7aa;
    -
  • - -
  • - -
    导出
    -
    &#xe63e;
    -
  • - -
  • - -
    另存为
    -
    &#xe657;
    -
  • - -
  • - -
    export
    -
    &#xe642;
    -
  • - -
  • - -
    打开
    -
    &#xebdf;
    -
  • - -
  • - -
    新建
    -
    &#xe64e;
    -
  • - -
  • - -
    剪切
    -
    &#xe601;
    -
  • - -
  • - -
    整理
    -
    &#xe83b;
    -
  • - -
  • - -
    复制
    -
    &#xe604;
    -
  • - -
  • - -
    粘贴
    -
    &#xe63f;
    -
  • - -
  • - -
    上移
    -
    &#xe6be;
    -
  • - -
  • - -
    下移
    -
    &#xe6bf;
    -
  • - -
  • - -
    概括总览
    -
    &#xe609;
    -
  • - -
  • - -
    全选
    -
    &#xf199;
    -
  • - -
  • - -
    导入
    -
    &#xe6a3;
    -
  • - -
  • - -
    后退-实
    -
    &#xe656;
    -
  • - -
  • - -
    前进
    -
    &#xe654;
    -
  • - -
  • - -
    撤回
    -
    &#xe603;
    -
  • - -
  • - -
    前进
    -
    &#xe600;
    -
  • - -
  • - -
    恢复默认
    -
    &#xe60e;
    -
  • - -
  • - -
    换行
    -
    &#xe61e;
    -
  • - -
  • - -
    缩小
    -
    &#xec13;
    -
  • - -
  • - -
    编辑
    -
    &#xe626;
    -
  • - -
  • - -
    放大
    -
    &#xe663;
    -
  • - -
  • - -
    全屏
    -
    &#xe664;
    -
  • - -
  • - -
    定位
    -
    &#xe616;
    -
  • - -
  • - -
    导航
    -
    &#xe611;
    -
  • - -
  • - -
    键盘
    -
    &#xe64d;
    -
  • - -
  • - -
    全屏
    -
    &#xe602;
    -
  • - -
  • - -
    导出
    -
    &#xe63d;
    -
  • - -
  • - -
    标签
    -
    &#xe63c;
    -
  • - -
  • - -
    流程-备注
    -
    &#xe65b;
    -
  • - -
  • - -
    超链接
    -
    &#xe6f4;
    -
  • - -
  • - -
    主题
    -
    &#xe610;
    -
  • - -
  • - -
    笑脸
    -
    &#xe60f;
    -
  • - -
  • - -
    图 片
    -
    &#xe629;
    -
  • - -
  • - -
    结构
    -
    &#xe61d;
    -
  • - -
  • - -
    样式
    -
    &#xe631;
    -
  • - -
  • - -
    符号-大纲树
    -
    &#xe71f;
    -
  • - -
  • - -
    添加子节点
    -
    &#xe622;
    -
  • - -
  • - -
    节点
    -
    &#xe655;
    -
  • - -
  • - -
    删 除
    -
    &#xe696;
    -
  • - -
  • - -
    HTSCIT_展开
    -
    &#xe64c;
    -
  • - -
  • - -
    HTSCIT_展开2
    -
    &#xe673;
    -
  • - -
-
-

Unicode 引用

-
- -

Unicode 是字体在网页端最原始的应用方式,特点是:

-
    -
  • 支持按字体的方式去动态调整图标大小,颜色等等。
  • -
  • 默认情况下不支持多色,直接添加多色图标会自动去色。
  • -
-
-

注意:新版 iconfont 支持两种方式引用多色图标:SVG symbol 引用方式和彩色字体图标模式。(使用彩色字体图标需要在「编辑项目」中开启「彩色」选项后并重新生成。)

-
-

Unicode 使用步骤如下:

-

第一步:拷贝项目下面生成的 @font-face

-
@font-face {
-  font-family: 'iconfont';
-  src: url('iconfont.woff2?t=1677478278322') format('woff2'),
-       url('iconfont.woff?t=1677478278322') format('woff'),
-       url('iconfont.ttf?t=1677478278322') format('truetype');
-}
-
-

第二步:定义使用 iconfont 的样式

-
.iconfont {
-  font-family: "iconfont" !important;
-  font-size: 16px;
-  font-style: normal;
-  -webkit-font-smoothing: antialiased;
-  -moz-osx-font-smoothing: grayscale;
-}
-
-

第三步:挑选相应图标并获取字体编码,应用于页面

-
-<span class="iconfont">&#x33;</span>
-
-
-

"iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。

-
-
-
-
-
    - -
  • - -
    - 背景颜色 -
    -
    .iconbeijingyanse -
    -
  • - -
  • - -
    - 清除 -
    -
    .iconqingchu -
    -
  • - -
  • - -
    - case -
    -
    .iconcase -
    -
  • - -
  • - -
    - 形状-文字 -
    -
    .iconxingzhuang-wenzi -
    -
  • - -
  • - -
    - 字体加粗 -
    -
    .iconzitijiacu -
    -
  • - -
  • - -
    - 字体下划线 -
    -
    .iconzitixiahuaxian -
    -
  • - -
  • - -
    - 字体斜体 -
    -
    .iconzitixieti -
    -
  • - -
  • - -
    - 删除线 -
    -
    .iconshanchuxian -
    -
  • - -
  • - -
    - 字体颜色 -
    -
    .iconzitiyanse -
    -
  • - -
  • - -
    - github -
    -
    .icongithub -
    -
  • - -
  • - -
    - 选择 -
    -
    .iconchoose1 -
    -
  • - -
  • - -
    - 主题 -
    -
    .iconzhuti -
    -
  • - -
  • - -
    - 导出 -
    -
    .icondaochu1 -
    -
  • - -
  • - -
    - 另存为 -
    -
    .iconlingcunwei -
    -
  • - -
  • - -
    - export -
    -
    .iconexport -
    -
  • - -
  • - -
    - 打开 -
    -
    .icondakai -
    -
  • - -
  • - -
    - 新建 -
    -
    .iconxinjian -
    -
  • - -
  • - -
    - 剪切 -
    -
    .iconjianqie -
    -
  • - -
  • - -
    - 整理 -
    -
    .iconzhengli -
    -
  • - -
  • - -
    - 复制 -
    -
    .iconfuzhi -
    -
  • - -
  • - -
    - 粘贴 -
    -
    .iconniantie -
    -
  • - -
  • - -
    - 上移 -
    -
    .iconshangyi -
    -
  • - -
  • - -
    - 下移 -
    -
    .iconxiayi -
    -
  • - -
  • - -
    - 概括总览 -
    -
    .icongaikuozonglan -
    -
  • - -
  • - -
    - 全选 -
    -
    .iconquanxuan -
    -
  • - -
  • - -
    - 导入 -
    -
    .icondaoru -
    -
  • - -
  • - -
    - 后退-实 -
    -
    .iconhoutui-shi -
    -
  • - -
  • - -
    - 前进 -
    -
    .iconqianjin1 -
    -
  • - -
  • - -
    - 撤回 -
    -
    .iconwithdraw -
    -
  • - -
  • - -
    - 前进 -
    -
    .iconqianjin -
    -
  • - -
  • - -
    - 恢复默认 -
    -
    .iconhuifumoren -
    -
  • - -
  • - -
    - 换行 -
    -
    .iconhuanhang -
    -
  • - -
  • - -
    - 缩小 -
    -
    .iconsuoxiao -
    -
  • - -
  • - -
    - 编辑 -
    -
    .iconbianji -
    -
  • - -
  • - -
    - 放大 -
    -
    .iconfangda -
    -
  • - -
  • - -
    - 全屏 -
    -
    .iconquanping1 -
    -
  • - -
  • - -
    - 定位 -
    -
    .icondingwei -
    -
  • - -
  • - -
    - 导航 -
    -
    .icondaohang -
    -
  • - -
  • - -
    - 键盘 -
    -
    .iconjianpan -
    -
  • - -
  • - -
    - 全屏 -
    -
    .iconquanping -
    -
  • - -
  • - -
    - 导出 -
    -
    .icondaochu -
    -
  • - -
  • - -
    - 标签 -
    -
    .iconbiaoqian -
    -
  • - -
  • - -
    - 流程-备注 -
    -
    .iconflow-Mark -
    -
  • - -
  • - -
    - 超链接 -
    -
    .iconchaolianjie -
    -
  • - -
  • - -
    - 主题 -
    -
    .iconjingzi -
    -
  • - -
  • - -
    - 笑脸 -
    -
    .iconxiaolian -
    -
  • - -
  • - -
    - 图 片 -
    -
    .iconimage -
    -
  • - -
  • - -
    - 结构 -
    -
    .iconjiegou -
    -
  • - -
  • - -
    - 样式 -
    -
    .iconyangshi -
    -
  • - -
  • - -
    - 符号-大纲树 -
    -
    .iconfuhao-dagangshu -
    -
  • - -
  • - -
    - 添加子节点 -
    -
    .icontianjiazijiedian -
    -
  • - -
  • - -
    - 节点 -
    -
    .iconjiedian -
    -
  • - -
  • - -
    - 删 除 -
    -
    .iconshanchu -
    -
  • - -
  • - -
    - HTSCIT_展开 -
    -
    .iconzhankai -
    -
  • - -
  • - -
    - HTSCIT_展开2 -
    -
    .iconzhankai1 -
    -
  • - -
-
-

font-class 引用

-
- -

font-class 是 Unicode 使用方式的一种变种,主要是解决 Unicode 书写不直观,语意不明确的问题。

-

与 Unicode 使用方式相比,具有如下特点:

-
    -
  • 相比于 Unicode 语意明确,书写更直观。可以很容易分辨这个 icon 是什么。
  • -
  • 因为使用 class 来定义图标,所以当要替换图标时,只需要修改 class 里面的 Unicode 引用。
  • -
-

使用步骤如下:

-

第一步:引入项目下面生成的 fontclass 代码:

-
<link rel="stylesheet" href="./iconfont.css">
-
-

第二步:挑选相应图标并获取类名,应用于页面:

-
<span class="iconfont iconxxx"></span>
-
-
-

" - iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。

-
-
-
-
-
    - -
  • - -
    背景颜色
    -
    #iconbeijingyanse
    -
  • - -
  • - -
    清除
    -
    #iconqingchu
    -
  • - -
  • - -
    case
    -
    #iconcase
    -
  • - -
  • - -
    形状-文字
    -
    #iconxingzhuang-wenzi
    -
  • - -
  • - -
    字体加粗
    -
    #iconzitijiacu
    -
  • - -
  • - -
    字体下划线
    -
    #iconzitixiahuaxian
    -
  • - -
  • - -
    字体斜体
    -
    #iconzitixieti
    -
  • - -
  • - -
    删除线
    -
    #iconshanchuxian
    -
  • - -
  • - -
    字体颜色
    -
    #iconzitiyanse
    -
  • - -
  • - -
    github
    -
    #icongithub
    -
  • - -
  • - -
    选择
    -
    #iconchoose1
    -
  • - -
  • - -
    主题
    -
    #iconzhuti
    -
  • - -
  • - -
    导出
    -
    #icondaochu1
    -
  • - -
  • - -
    另存为
    -
    #iconlingcunwei
    -
  • - -
  • - -
    export
    -
    #iconexport
    -
  • - -
  • - -
    打开
    -
    #icondakai
    -
  • - -
  • - -
    新建
    -
    #iconxinjian
    -
  • - -
  • - -
    剪切
    -
    #iconjianqie
    -
  • - -
  • - -
    整理
    -
    #iconzhengli
    -
  • - -
  • - -
    复制
    -
    #iconfuzhi
    -
  • - -
  • - -
    粘贴
    -
    #iconniantie
    -
  • - -
  • - -
    上移
    -
    #iconshangyi
    -
  • - -
  • - -
    下移
    -
    #iconxiayi
    -
  • - -
  • - -
    概括总览
    -
    #icongaikuozonglan
    -
  • - -
  • - -
    全选
    -
    #iconquanxuan
    -
  • - -
  • - -
    导入
    -
    #icondaoru
    -
  • - -
  • - -
    后退-实
    -
    #iconhoutui-shi
    -
  • - -
  • - -
    前进
    -
    #iconqianjin1
    -
  • - -
  • - -
    撤回
    -
    #iconwithdraw
    -
  • - -
  • - -
    前进
    -
    #iconqianjin
    -
  • - -
  • - -
    恢复默认
    -
    #iconhuifumoren
    -
  • - -
  • - -
    换行
    -
    #iconhuanhang
    -
  • - -
  • - -
    缩小
    -
    #iconsuoxiao
    -
  • - -
  • - -
    编辑
    -
    #iconbianji
    -
  • - -
  • - -
    放大
    -
    #iconfangda
    -
  • - -
  • - -
    全屏
    -
    #iconquanping1
    -
  • - -
  • - -
    定位
    -
    #icondingwei
    -
  • - -
  • - -
    导航
    -
    #icondaohang
    -
  • - -
  • - -
    键盘
    -
    #iconjianpan
    -
  • - -
  • - -
    全屏
    -
    #iconquanping
    -
  • - -
  • - -
    导出
    -
    #icondaochu
    -
  • - -
  • - -
    标签
    -
    #iconbiaoqian
    -
  • - -
  • - -
    流程-备注
    -
    #iconflow-Mark
    -
  • - -
  • - -
    超链接
    -
    #iconchaolianjie
    -
  • - -
  • - -
    主题
    -
    #iconjingzi
    -
  • - -
  • - -
    笑脸
    -
    #iconxiaolian
    -
  • - -
  • - -
    图 片
    -
    #iconimage
    -
  • - -
  • - -
    结构
    -
    #iconjiegou
    -
  • - -
  • - -
    样式
    -
    #iconyangshi
    -
  • - -
  • - -
    符号-大纲树
    -
    #iconfuhao-dagangshu
    -
  • - -
  • - -
    添加子节点
    -
    #icontianjiazijiedian
    -
  • - -
  • - -
    节点
    -
    #iconjiedian
    -
  • - -
  • - -
    删 除
    -
    #iconshanchu
    -
  • - -
  • - -
    HTSCIT_展开
    -
    #iconzhankai
    -
  • - -
  • - -
    HTSCIT_展开2
    -
    #iconzhankai1
    -
  • - -
-
-

Symbol 引用

-
- -

这是一种全新的使用方式,应该说这才是未来的主流,也是平台目前推荐的用法。相关介绍可以参考这篇文章 - 这种用法其实是做了一个 SVG 的集合,与另外两种相比具有如下特点:

-
    -
  • 支持多色图标了,不再受单色限制。
  • -
  • 通过一些技巧,支持像字体那样,通过 font-size, color 来调整样式。
  • -
  • 兼容性较差,支持 IE9+,及现代浏览器。
  • -
  • 浏览器渲染 SVG 的性能一般,还不如 png。
  • -
-

使用步骤如下:

-

第一步:引入项目下面生成的 symbol 代码:

-
<script src="./iconfont.js"></script>
-
-

第二步:加入通用 CSS 代码(引入一次就行):

-
<style>
-.icon {
-  width: 1em;
-  height: 1em;
-  vertical-align: -0.15em;
-  fill: currentColor;
-  overflow: hidden;
-}
-</style>
-
-

第三步:挑选相应图标并获取类名,应用于页面:

-
<svg class="icon" aria-hidden="true">
-  <use xlink:href="#icon-xxx"></use>
-</svg>
-
-
-
- -
-
- - - diff --git a/web/src/assets/icon-font/iconfont.css b/web/src/assets/icon-font/iconfont.css index 6a6a9c7e..93d23309 100644 --- a/web/src/assets/icon-font/iconfont.css +++ b/web/src/assets/icon-font/iconfont.css @@ -1,8 +1,8 @@ @font-face { font-family: "iconfont"; /* Project id 2479351 */ - src: url('iconfont.woff2?t=1677478278322') format('woff2'), - url('iconfont.woff?t=1677478278322') format('woff'), - url('iconfont.ttf?t=1677478278322') format('truetype'); + src: url('iconfont.woff2?t=1678955183884') format('woff2'), + url('iconfont.woff?t=1678955183884') format('woff'), + url('iconfont.ttf?t=1678955183884') format('truetype'); } .iconfont { @@ -13,6 +13,54 @@ -moz-osx-font-smoothing: grayscale; } +.iconlianjiexian:before { + content: "\e75b"; +} + +.iconbangzhu:before { + content: "\e620"; +} + +.iconshezhi:before { + content: "\e8b7"; +} + +.iconwushuju:before { + content: "\e643"; +} + +.iconzuijinliulan:before { + content: "\e62f"; +} + +.icon3zuidahua-3:before { + content: "\e692"; +} + +.iconzuixiaohua:before { + content: "\e650"; +} + +.iconzuidahua:before { + content: "\e651"; +} + +.iconguanbi:before { + content: "\e652"; +} + +.icondiannao:before { + content: "\eac0"; +} + +.iconzhuye:before { + content: "\e65c"; +} + +.iconbendi1x:before { + content: "\e606"; +} + .iconbeijingyanse:before { content: "\e6f8"; } diff --git a/web/src/assets/icon-font/iconfont.js b/web/src/assets/icon-font/iconfont.js deleted file mode 100644 index 155c1ff3..00000000 --- a/web/src/assets/icon-font/iconfont.js +++ /dev/null @@ -1 +0,0 @@ -window._iconfont_svg_string_2479351='',function(l){var c=(c=document.getElementsByTagName("script"))[c.length-1],a=c.getAttribute("data-injectcss"),c=c.getAttribute("data-disable-injectsvg");if(!c){var h,i,t,o,s,z=function(c,a){a.parentNode.insertBefore(c,a)};if(a&&!l.__iconfont__svg__cssinject__){l.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(c){console&&console.log(c)}}h=function(){var c,a=document.createElement("div");a.innerHTML=l._iconfont_svg_string_2479351,(a=a.getElementsByTagName("svg")[0])&&(a.setAttribute("aria-hidden","true"),a.style.position="absolute",a.style.width=0,a.style.height=0,a.style.overflow="hidden",a=a,(c=document.body).firstChild?z(a,c.firstChild):c.appendChild(a))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(h,0):(i=function(){document.removeEventListener("DOMContentLoaded",i,!1),h()},document.addEventListener("DOMContentLoaded",i,!1)):document.attachEvent&&(t=h,o=l.document,s=!1,d(),o.onreadystatechange=function(){"complete"==o.readyState&&(o.onreadystatechange=null,v())})}function v(){s||(s=!0,t())}function d(){try{o.documentElement.doScroll("left")}catch(c){return void setTimeout(d,50)}v()}}(window); \ No newline at end of file diff --git a/web/src/assets/icon-font/iconfont.json b/web/src/assets/icon-font/iconfont.json deleted file mode 100644 index 069c24fb..00000000 --- a/web/src/assets/icon-font/iconfont.json +++ /dev/null @@ -1,394 +0,0 @@ -{ - "id": "2479351", - "name": "思绪", - "font_family": "iconfont", - "css_prefix_text": "icon", - "description": "思维导图", - "glyphs": [ - { - "icon_id": "1790495", - "name": "背景颜色", - "font_class": "beijingyanse", - "unicode": "e6f8", - "unicode_decimal": 59128 - }, - { - "icon_id": "11321310", - "name": "清除", - "font_class": "qingchu", - "unicode": "e605", - "unicode_decimal": 58885 - }, - { - "icon_id": "586787", - "name": "case", - "font_class": "case", - "unicode": "e6c6", - "unicode_decimal": 59078 - }, - { - "icon_id": "4354254", - "name": "形状-文字", - "font_class": "xingzhuang-wenzi", - "unicode": "eb99", - "unicode_decimal": 60313 - }, - { - "icon_id": "6337466", - "name": "字体加粗", - "font_class": "zitijiacu", - "unicode": "ec83", - "unicode_decimal": 60547 - }, - { - "icon_id": "6337470", - "name": "字体下划线", - "font_class": "zitixiahuaxian", - "unicode": "ec85", - "unicode_decimal": 60549 - }, - { - "icon_id": "6337471", - "name": "字体斜体", - "font_class": "zitixieti", - "unicode": "ec86", - "unicode_decimal": 60550 - }, - { - "icon_id": "11975179", - "name": "删除线", - "font_class": "shanchuxian", - "unicode": "e612", - "unicode_decimal": 58898 - }, - { - "icon_id": "34198316", - "name": "字体颜色", - "font_class": "zitiyanse", - "unicode": "e854", - "unicode_decimal": 59476 - }, - { - "icon_id": "8760187", - "name": "github", - "font_class": "github", - "unicode": "e64f", - "unicode_decimal": 58959 - }, - { - "icon_id": "1009019", - "name": "选择", - "font_class": "choose1", - "unicode": "e6c5", - "unicode_decimal": 59077 - }, - { - "icon_id": "493507", - "name": "主题", - "font_class": "zhuti", - "unicode": "e7aa", - "unicode_decimal": 59306 - }, - { - "icon_id": "1305460", - "name": "导出", - "font_class": "daochu1", - "unicode": "e63e", - "unicode_decimal": 58942 - }, - { - "icon_id": "4784101", - "name": "另存为", - "font_class": "lingcunwei", - "unicode": "e657", - "unicode_decimal": 58967 - }, - { - "icon_id": "9929033", - "name": "export", - "font_class": "export", - "unicode": "e642", - "unicode_decimal": 58946 - }, - { - "icon_id": "4570294", - "name": "打开", - "font_class": "dakai", - "unicode": "ebdf", - "unicode_decimal": 60383 - }, - { - "icon_id": "5086088", - "name": "新建", - "font_class": "xinjian", - "unicode": "e64e", - "unicode_decimal": 58958 - }, - { - "icon_id": "1117", - "name": "剪切", - "font_class": "jianqie", - "unicode": "e601", - "unicode_decimal": 58881 - }, - { - "icon_id": "1415523", - "name": "整理", - "font_class": "zhengli", - "unicode": "e83b", - "unicode_decimal": 59451 - }, - { - "icon_id": "2815710", - "name": "复制", - "font_class": "fuzhi", - "unicode": "e604", - "unicode_decimal": 58884 - }, - { - "icon_id": "11121506", - "name": "粘贴", - "font_class": "niantie", - "unicode": "e63f", - "unicode_decimal": 58943 - }, - { - "icon_id": "11383392", - "name": "上移", - "font_class": "shangyi", - "unicode": "e6be", - "unicode_decimal": 59070 - }, - { - "icon_id": "11383396", - "name": "下移", - "font_class": "xiayi", - "unicode": "e6bf", - "unicode_decimal": 59071 - }, - { - "icon_id": "14843439", - "name": "概括总览", - "font_class": "gaikuozonglan", - "unicode": "e609", - "unicode_decimal": 58889 - }, - { - "icon_id": "19738998", - "name": "全选", - "font_class": "quanxuan", - "unicode": "f199", - "unicode_decimal": 61849 - }, - { - "icon_id": "17606306", - "name": "导入", - "font_class": "daoru", - "unicode": "e6a3", - "unicode_decimal": 59043 - }, - { - "icon_id": "5110748", - "name": "后退-实", - "font_class": "houtui-shi", - "unicode": "e656", - "unicode_decimal": 58966 - }, - { - "icon_id": "14420971", - "name": "前进", - "font_class": "qianjin1", - "unicode": "e654", - "unicode_decimal": 58964 - }, - { - "icon_id": "1368553", - "name": "撤回", - "font_class": "withdraw", - "unicode": "e603", - "unicode_decimal": 58883 - }, - { - "icon_id": "15006636", - "name": "前进", - "font_class": "qianjin", - "unicode": "e600", - "unicode_decimal": 58880 - }, - { - "icon_id": "19980541", - "name": "恢复默认", - "font_class": "huifumoren", - "unicode": "e60e", - "unicode_decimal": 58894 - }, - { - "icon_id": "1616783", - "name": "换行", - "font_class": "huanhang", - "unicode": "e61e", - "unicode_decimal": 58910 - }, - { - "icon_id": "4777227", - "name": "缩小", - "font_class": "suoxiao", - "unicode": "ec13", - "unicode_decimal": 60435 - }, - { - "icon_id": "18811980", - "name": "编辑", - "font_class": "bianji", - "unicode": "e626", - "unicode_decimal": 58918 - }, - { - "icon_id": "21188137", - "name": "放大", - "font_class": "fangda", - "unicode": "e663", - "unicode_decimal": 58979 - }, - { - "icon_id": "21189639", - "name": "全屏", - "font_class": "quanping1", - "unicode": "e664", - "unicode_decimal": 58980 - }, - { - "icon_id": "397753", - "name": "定位", - "font_class": "dingwei", - "unicode": "e616", - "unicode_decimal": 58902 - }, - { - "icon_id": "2605158", - "name": "导航", - "font_class": "daohang", - "unicode": "e611", - "unicode_decimal": 58897 - }, - { - "icon_id": "6528451", - "name": "键盘", - "font_class": "jianpan", - "unicode": "e64d", - "unicode_decimal": 58957 - }, - { - "icon_id": "7556170", - "name": "全屏", - "font_class": "quanping", - "unicode": "e602", - "unicode_decimal": 58882 - }, - { - "icon_id": "788015", - "name": "导出", - "font_class": "daochu", - "unicode": "e63d", - "unicode_decimal": 58941 - }, - { - "icon_id": "2678575", - "name": "标签", - "font_class": "biaoqian", - "unicode": "e63c", - "unicode_decimal": 58940 - }, - { - "icon_id": "6265396", - "name": "流程-备注", - "font_class": "flow-Mark", - "unicode": "e65b", - "unicode_decimal": 58971 - }, - { - "icon_id": "1790486", - "name": "超链接", - "font_class": "chaolianjie", - "unicode": "e6f4", - "unicode_decimal": 59124 - }, - { - "icon_id": "4608986", - "name": "主题", - "font_class": "jingzi", - "unicode": "e610", - "unicode_decimal": 58896 - }, - { - "icon_id": "11903017", - "name": "笑脸", - "font_class": "xiaolian", - "unicode": "e60f", - "unicode_decimal": 58895 - }, - { - "icon_id": "19657962", - "name": "图 片", - "font_class": "image", - "unicode": "e629", - "unicode_decimal": 58921 - }, - { - "icon_id": "20784489", - "name": "结构", - "font_class": "jiegou", - "unicode": "e61d", - "unicode_decimal": 58909 - }, - { - "icon_id": "15969341", - "name": "样式", - "font_class": "yangshi", - "unicode": "e631", - "unicode_decimal": 58929 - }, - { - "icon_id": "2967176", - "name": "符号-大纲树", - "font_class": "fuhao-dagangshu", - "unicode": "e71f", - "unicode_decimal": 59167 - }, - { - "icon_id": "12316668", - "name": "添加子节点", - "font_class": "tianjiazijiedian", - "unicode": "e622", - "unicode_decimal": 58914 - }, - { - "icon_id": "14435368", - "name": "节点", - "font_class": "jiedian", - "unicode": "e655", - "unicode_decimal": 58965 - }, - { - "icon_id": "15765352", - "name": "删 除", - "font_class": "shanchu", - "unicode": "e696", - "unicode_decimal": 59030 - }, - { - "icon_id": "9592600", - "name": "HTSCIT_展开", - "font_class": "zhankai", - "unicode": "e64c", - "unicode_decimal": 58956 - }, - { - "icon_id": "9900009", - "name": "HTSCIT_展开2", - "font_class": "zhankai1", - "unicode": "e673", - "unicode_decimal": 58995 - } - ] -} diff --git a/web/src/assets/icon-font/iconfont.ttf b/web/src/assets/icon-font/iconfont.ttf index 6aa6d856510f29329e23bff432b2dde076b1011b..23d59ed919f6894200ea708a1a746174ccbd1a64 100644 GIT binary patch delta 4375 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 LKL`%$&j0`bKY4Yo delta 9939 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 RCM}OMJ=|p!{RM$ozg>up=uiLv diff --git a/web/src/assets/icon-font/iconfont.woff2 b/web/src/assets/icon-font/iconfont.woff2 index 24726c1ca5311be96dbc1ea1afeeac13fc8a1ee5..8ab7141fabc0a317e5c5a71fe1788d1a86e40e3b 100644 GIT binary patch literal 10388 zcmV;FC~MbuPew8T0RR9104S6I3jhEB085|%04PHM0RR9100000000000000000000 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 literal 8832 zcmV-`B7fa?Pew8T0RR9103v_@3jhEB06+);03t8|0RR9100000000000000000000 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 CjvRRa