diff --git a/README-zh.md b/README-zh.md
index 4803cc8..02f4c65 100644
--- a/README-zh.md
+++ b/README-zh.md
@@ -91,12 +91,12 @@
+ **截图** (把选区的内容进行截图展示)
+ **复制到其他格式** (右键菜单的"复制为", 支持复制为json、array、对角线数据、去重等)
+ **EXCEL,CSV,TXT 导入及导出** (专为Luckysheet打造的导入导出插件,支持密码、水印、公式等的本地导入导出)
++ **插入图片和svg形状** (支持JPG,PNG,SVG,Pen tool的插入、修改和删除,并且随表格的变动而产生变化)
++ **数据验证(表单功能)** (支持Checkbox, drop-down list, datePicker)
++ **单元格内多样式** (Alt+Enter单元格内换行、上标、下标、单元格内科定义每个文字的不同样式)
### ⏱️未来开发计划
-+ **插入图表和svg形状** (支持JPG,PNG,SVG,Pen tool的插入、修改和删除,并且随表格的变动而产生变化)
-+ **数据验证(表单功能)** (支持Checkbox, drop-down list, datePicker)
+ **打印及设置** (像excel一样进行打印设置,并导出为图片或者PDF)
-+ **单元格内多样式** (Alt+Enter单元格内换行、上标、下标、单元格内科定义每个文字的不同样式)
+ **树形菜单** (类似excel中的分级显示(分组))
+ **表格新功能** (类似excel中表格的筛选器和切片器)
+ **文档** (完善文档和API)
diff --git a/README.md b/README.md
index fb19666..3be4bae 100644
--- a/README.md
+++ b/README.md
@@ -97,12 +97,12 @@ English| [简体中文](./README-zh.md)
+ **Screenshot** (Take a screenshot with selection)
+ **Copy to** (In the right-click menu, copy selection to json, array etc.)
+ **EXCEL,CSV,TXT import/export** (Specially adapted to Luckysheet)
-
-### ⏱️Coming soon
+ **Insert picture and Shapes** (JPG,PNG,SVG,Pen tool and so on)
+ **Data validation** (Checkbox, drop-down list, datePicker)
-+ **Print** (Like excel print option, save to PDF)
+ **Cell segmentation style** (Alt+Enter line break, sub,super, in-cell style)
+
+### ⏱️Coming soon
++ **Print** (Like excel print option, save to PDF)
+ **Tree menu** (Just like the outline (group) function of excel)
+ **Table new Features** (filter, slicer)
+ **Documentation** (Improve documentation and API)
diff --git a/docs/guide/README.md b/docs/guide/README.md
index 054acd4..d44261f 100644
--- a/docs/guide/README.md
+++ b/docs/guide/README.md
@@ -77,15 +77,15 @@ Luckysheet is an online spreadsheet like excel that is powerful, simple to confi
+ **Matrix operation** (Operate selection through the right-click menu: transpose, rotate, numerical calculation)
+ **Screenshot** (Take a screenshot with selection)
+ **Copy to** (In the right-click menu, copy selection to json, array etc.)
-
-### Coming soon
++ **EXCEL,CSV,TXT import/export** (Specially adapted to luckysheet)
+ **Insert picture and Shapes** (JPG,PNG,SVG,Pen tool and so on)
+ **Data validation** (Checkbox, drop-down list, datePicker)
-+ **Print** (Like excel print option, save to PDF)
+ **Cell segmentation style** (Alt+Enter line break, sub,super, in-cell style)
+
+### Coming soon
++ **Print** (Like excel print option, save to PDF)
+ **Tree menu** (Just like the outline (group) function of excel)
+ **Table new Features** (filter, slicer)
-+ **EXCEL,CSV,TXT import/export** (Specially adapted to luckysheet)
+ **Documentation** (Improve documentation and API)
+ **More...** (Please advise us)
diff --git a/docs/guide/config.md b/docs/guide/config.md
index 0fa6c7b..e50abcc 100644
--- a/docs/guide/config.md
+++ b/docs/guide/config.md
@@ -71,6 +71,12 @@
- Default: true
- Usage: Whether to allow copying
+------------
+## showGridLines
+- Type: Number
+- Default: 1
+- Usage: Whether to show grid lines, `1` means show,`0` means hide
+
------------
## showtoolbar
- Type: Boolean
diff --git a/docs/zh/guide/README.md b/docs/zh/guide/README.md
index 93bd0e2..315eca3 100644
--- a/docs/zh/guide/README.md
+++ b/docs/zh/guide/README.md
@@ -77,15 +77,15 @@ Luckysheet ,一款纯前端类似excel的在线表格,功能强大、配置
+ **矩阵计算** (通过右键菜单进行支持:对选区内的数据进行转置、旋转、数值计算)
+ **截图** (把选区的内容进行截图展示)
+ **复制到其他格式** (右键菜单的"复制为", 支持复制为json、array、对角线数据、去重等)
++ **EXCEL,CSV,TXT 导入及导出** (专为luckysheet打造的导入导出插件,支持密码、水印、公式等的本地导入导出)
++ **插入图片和svg形状** (支持JPG,PNG,SVG,Pen tool的插入、修改和删除,并且随表格的变动而产生变化)
++ **数据验证(表单功能)** (支持Checkbox, drop-down list, datePicker)
++ **单元格内多样式** (Alt+Enter单元格内换行、上标、下标、单元格内科定义每个文字的不同样式)
### 未来开发计划
-+ **插入图表和svg形状** (支持JPG,PNG,SVG,Pen tool的插入、修改和删除,并且随表格的变动而产生变化)
-+ **数据验证(表单功能)** (支持Checkbox, drop-down list, datePicker)
+ **打印及设置** (像excel一样进行打印设置,并导出为图片或者PDF)
-+ **单元格内多样式** (Alt+Enter单元格内换行、上标、下标、单元格内科定义每个文字的不同样式)
+ **树形菜单** (类似excel中的分级显示(分组))
+ **表格新功能** (类似excel中表格的筛选器和切片器)
-+ **EXCEL,CSV,TXT 导入及导出** (专为luckysheet打造的导入导出插件,支持密码、水印、公式等的本地导入导出)
+ **文档** (完善文档和API)
+ **敬请期待...** (可以提出好的建议给我们)
diff --git a/docs/zh/guide/api.md b/docs/zh/guide/api.md
index f667f9d..a0ad62e 100644
--- a/docs/zh/guide/api.md
+++ b/docs/zh/guide/api.md
@@ -1683,12 +1683,11 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
[todo]
-
- **说明**:
-
- 返回所有工作表配置,格式同[工作表配置](/zh/guide/sheet.html),得到的结果可用于表格初始化时作为`options.data`使用。
- 所以此API适用于,手动操作配置完一个表格后,将所有工作表信息取出来自行保存,再用于其他地方的表格创建。
+ 返回所有工作表配置,格式同工作表配置,得到的结果可用于表格初始化时作为options.data使用。
+
+ 所以此API适用于,手动操作配置完一个表格后,将所有工作表信息取出来自行保存,再用于其他地方的表格创建。如果想得到包括工作簿配置在内的所有工作簿数据,可以使用 [toJson](#toJson())
- **示例**:
@@ -1701,7 +1700,6 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
[todo]
-
- **参数**:
- {PlainObject} [setting]: 可选参数
@@ -1718,6 +1716,23 @@ Luckysheet针对常用的数据操作需求,开放了主要功能的API,开
------------
+### getSheet([setting])
+
+[todo]
+
+- **参数**:
+
+ - {PlainObject} [setting]: 可选参数
+ + {Number} [index]: 工作表索引;默认值为当前工作表索引
+ + {Number} [order]: 工作表顺序;默认值为当前工作表顺序
+ + {Number} [name]: 工作表名称;默认值为当前工作表名称
+
+- **说明**:
+
+ 根据index/order/name,快捷返回指定工作表的配置,同 `luckysheetfile[i]`。如果设置多个参数,优先级为:index > order > name。
+
+------------
+
### getSheetData([setting])
[todo]
diff --git a/docs/zh/guide/config.md b/docs/zh/guide/config.md
index 0b0e1be..2d7fbb8 100644
--- a/docs/zh/guide/config.md
+++ b/docs/zh/guide/config.md
@@ -53,6 +53,7 @@ Luckysheet开放了更细致的自定义配置选项,分别有
- 亿万格式 [autoFormatw](#autoFormatw)
- 精度 [accuracy](#accuracy)
- 允许复制 [allowCopy](#allowCopy)
+- 网格线 [showGridLines](#showGridLines)
- 工具栏 [showtoolbar](#showtoolbar)
- 自定义工具栏[showtoolbarConfig](#showtoolbarConfig)
- 名称栏 [showinfobar](#showinfobar)
@@ -171,6 +172,12 @@ Luckysheet开放了更细致的自定义配置选项,分别有
- 默认值:true
- 作用:是否允许拷贝
+------------
+### showGridLines
+- 类型:Number
+- 默认值:1
+- 作用:是否显示网格线,`1`表示显示,`0`表示隐藏
+
------------
### showtoolbar
- 类型:Boolean
diff --git a/gulpfile.js b/gulpfile.js
index 2ac9305..ae08e0e 100644
--- a/gulpfile.js
+++ b/gulpfile.js
@@ -52,6 +52,7 @@ const paths = {
// static resources,contains index.html, fonts and images,and extension plugins dependency
staticHtml: ['src/*.html'],
staticFonts: ['src/fonts/**'],
+ staticAssets: ['src/assets/**'],
staticImages: ['src/plugins/images/*.png'],
staticExpendPlugins: ['src/expendPlugins/**', '!src/expendPlugins/**/plugin.js'],
staticDemoData: ['src/demoData/*.js'],
@@ -60,6 +61,7 @@ const paths = {
// static resources dest
destStaticHtml: ['dist'],
destStaticFonts: ['dist/fonts'],
+ destStaticAssets: ['dist/assets'],
destStaticImages: ['dist/plugins/images'],
destStaticExpendPlugins: ['dist/expendPlugins'],
destStaticDemoData: ['dist/demoData'],
@@ -133,6 +135,7 @@ function watcher(done) {
// watch static
watch(paths.staticHtml,{ delay: 500 }, series(copyStaticHtml, reloadBrowser));
watch(paths.staticFonts,{ delay: 500 }, series(copyStaticFonts, reloadBrowser));
+ watch(paths.staticAssets,{ delay: 500 }, series(copyStaticAssets, reloadBrowser));
watch(paths.staticImages,{ delay: 500 }, series(copyStaticImages, reloadBrowser));
watch(paths.staticExpendPlugins,{ delay: 500 }, series(copyStaticExpendPlugins, reloadBrowser));
watch(paths.staticDemoData,{ delay: 500 }, series(copyStaticDemoData, reloadBrowser));
@@ -222,6 +225,10 @@ function copyStaticFonts(){
return src(paths.staticFonts)
.pipe(dest(paths.destStaticFonts));
}
+function copyStaticAssets(){
+ return src(paths.staticAssets)
+ .pipe(dest(paths.destStaticAssets));
+}
function copyStaticImages(){
return src(paths.staticImages)
.pipe(dest(paths.destStaticImages));
@@ -239,8 +246,8 @@ function copyStaticCssImages(){
.pipe(dest(paths.destStaticCssImages));
}
-const dev = series(clean, parallel(pluginsCss, plugins, css, pluginsJs, copyStaticHtml, copyStaticFonts, copyStaticImages, copyStaticExpendPlugins, copyStaticDemoData, copyStaticCssImages, core), watcher, serve);
-const build = series(clean, parallel(pluginsCss, plugins, css, pluginsJs, copyStaticHtml, copyStaticFonts, copyStaticImages, copyStaticExpendPlugins, copyStaticDemoData, copyStaticCssImages, core));
+const dev = series(clean, parallel(pluginsCss, plugins, css, pluginsJs, copyStaticHtml, copyStaticFonts, copyStaticAssets, copyStaticImages, copyStaticExpendPlugins, copyStaticDemoData, copyStaticCssImages, core), watcher, serve);
+const build = series(clean, parallel(pluginsCss, plugins, css, pluginsJs, copyStaticHtml, copyStaticFonts, copyStaticAssets, copyStaticImages, copyStaticExpendPlugins, copyStaticDemoData, copyStaticCssImages, core));
exports.dev = dev;
exports.build = build;
diff --git a/src/assets/iconfont/demo.css b/src/assets/iconfont/demo.css
new file mode 100644
index 0000000..a67054a
--- /dev/null
+++ b/src/assets/iconfont/demo.css
@@ -0,0 +1,539 @@
+/* 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/src/assets/iconfont/demo_index.html b/src/assets/iconfont/demo_index.html
new file mode 100644
index 0000000..eda98e9
--- /dev/null
+++ b/src/assets/iconfont/demo_index.html
@@ -0,0 +1,2148 @@
+
+
+
+
+ IconFont Demo
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ - Unicode
+ - Font class
+ - Symbol
+
+
+
查看项目
+
+
+
+
+
+
+ -
+
+
logo2
+ 
+
+
+ -
+
+
logo
+ 
+
+
+ -
+
+
文本倾斜
+ 
+
+
+ -
+
+
加粗
+ 
+
+
+ -
+
+
搜索
+ 
+
+
+ -
+
+
关闭
+ 
+
+
+ -
+
+
下一个
+ 
+
+
+ -
+
+
下拉
+ 
+
+
+ -
+
+
文本颜色
+ 
+
+
+ -
+
+
上一个
+ 
+
+
+ -
+
+
数据透视
+ 
+
+
+ -
+
+
填充
+ 
+
+
+ -
+
+
增加小数位
+ 
+
+
+ -
+
+
编辑2
+ 
+
+
+ -
+
+
截屏
+ 
+
+
+ -
+
+
减小小数位
+ 
+
+
+ -
+
+
菜单
+ 
+
+
+ -
+
+
数据库
+ 
+
+
+ -
+
+
无边框
+ 
+
+
+ -
+
+
编辑
+ 
+
+
+ -
+
+
清除样式
+ 
+
+
+ -
+
+
删除
+ 
+
+
+ -
+
+
文本居中对齐
+ 
+
+
+ -
+
+
打印
+ 
+
+
+ -
+
+
文本分割
+ 
+
+
+ -
+
+
函数‘
+ 
+
+
+ -
+
+
降序
+ 
+
+
+ -
+
+
顶部对齐
+ 
+
+
+ -
+
+
图片
+ 
+
+
+ -
+
+
向下90
+ 
+
+
+ -
+
+
竖排文字
+ 
+
+
+ -
+
+
全加边框
+ 
+
+
+ -
+
+
升序
+ 
+
+
+ -
+
+
裁剪
+ 
+
+
+ -
+
+
金额
+ 
+
+
+ -
+
+
菜单1
+ 
+
+
+ -
+
+
取消合并
+ 
+
+
+ -
+
+
文本下划线
+ 
+
+
+ -
+
+
上边框
+ 
+
+
+ -
+
+
定位
+ 
+
+
+ -
+
+
四周加边框
+ 
+
+
+ -
+
+
侧边栏收起
+ 
+
+
+ -
+
+
合并
+ 
+
+
+ -
+
+
向上倾斜
+ 
+
+
+ -
+
+
水平对齐
+ 
+
+
+ -
+
+
文本删除线
+ 
+
+
+ -
+
+
文本右对齐
+ 
+
+
+ -
+
+
前进
+ 
+
+
+ -
+
+
图表
+ 
+
+
+ -
+
+
右边框
+ 
+
+
+ -
+
+
百分号
+ 
+
+
+ -
+
+
格式刷
+ 
+
+
+ -
+
+
保存
+ 
+
+
+ -
+
+
数据验证
+ 
+
+
+ -
+
+
截断
+ 
+
+
+ -
+
+
格式条件
+ 
+
+
+ -
+
+
自动换行
+ 
+
+
+ -
+
+
侧边栏展开
+ 
+
+
+ -
+
+
筛选2
+ 
+
+
+ -
+
+
向下倾斜
+ 
+
+
+ -
+
+
溢出
+ 
+
+
+ -
+
+
垂直合并
+ 
+
+
+ -
+
+
文本分散对齐
+ 
+
+
+ -
+
+
左边框
+ 
+
+
+ -
+
+
分页查看
+ 
+
+
+ -
+
+
运行
+ 
+
+
+ -
+
+
列
+ 
+
+
+ -
+
+
全屏
+ 
+
+
+ -
+
+
筛选
+ 
+
+
+ -
+
+
更新
+ 
+
+
+ -
+
+
清除
+ 
+
+
+ -
+
+
行
+ 
+
+
+ -
+
+
注释
+ 
+
+
+ -
+
+
剪
+ 
+
+
+ -
+
+
计算
+ 
+
+
+ -
+
+
加
+ 
+
+
+ -
+
+
底部对齐
+ 
+
+
+ -
+
+
向上90
+ 
+
+
+ -
+
+
无选装
+ 
+
+
+ -
+
+
显示隐藏网格
+ 
+
+
+ -
+
+
冻结
+ 
+
+
+ -
+
+
文本左对齐
+ 
+
+
+ -
+
+
后退
+ 
+
+
+ -
+
+
水平合并
+ 
+
+
+ -
+
+
下边框
+ 
+
+
+ -
+
+
设置
+ 
+
+
+
+
+
Unicode 引用
+
+
+
Unicode 是字体在网页端最原始的应用方式,特点是:
+
+ - 兼容性最好,支持 IE6+,及所有现代浏览器。
+ - 支持按字体的方式去动态调整图标大小,颜色等等。
+ - 但是因为是字体,所以不支持多色。只能使用平台里单色的图标,就算项目里有多色图标也会自动去色。
+
+
+ 注意:新版 iconfont 支持多色图标,这些多色图标在 Unicode 模式下将不能使用,如果有需求建议使用symbol 的引用方式
+
+
Unicode 使用步骤如下:
+
第一步:拷贝项目下面生成的 @font-face
+
@font-face {
+ font-family: 'iconfont';
+ src: url('iconfont.eot');
+ src: url('iconfont.eot?#iefix') format('embedded-opentype'),
+ url('iconfont.woff2') format('woff2'),
+ url('iconfont.woff') format('woff'),
+ url('iconfont.ttf') format('truetype'),
+ url('iconfont.svg#iconfont') format('svg');
+}
+
+
第二步:定义使用 iconfont 的样式
+
.iconfont {
+ font-family: "iconfont" !important;
+ font-size: 16px;
+ font-style: normal;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
+
+
第三步:挑选相应图标并获取字体编码,应用于页面
+
+<span class="iconfont">3</span>
+
+
+ "iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。
+
+
+
+
+
+
+ -
+
+
+ logo2
+
+ .icon-logo2
+
+
+
+ -
+
+
+ logo
+
+ .icon-logo
+
+
+
+ -
+
+
+ 文本倾斜
+
+ .icon-wenbenqingxie1
+
+
+
+ -
+
+
+ 加粗
+
+ .icon-jiacu
+
+
+
+ -
+
+
+ 搜索
+
+ .icon-sousuo
+
+
+
+ -
+
+
+ 关闭
+
+ .icon-guanbi
+
+
+
+ -
+
+
+ 下一个
+
+ .icon-xiayige
+
+
+
+ -
+
+
+ 下拉
+
+ .icon-xiala
+
+
+
+ -
+
+
+ 文本颜色
+
+ .icon-wenbenyanse
+
+
+
+ -
+
+
+ 上一个
+
+ .icon-shangyige
+
+
+
+ -
+
+
+ 数据透视
+
+ .icon-shujutoushi
+
+
+
+ -
+
+
+ 填充
+
+ .icon-tianchong
+
+
+
+ -
+
+
+ 增加小数位
+
+ .icon-zengjiaxiaoshuwei
+
+
+
+ -
+
+
+ 编辑2
+
+ .icon-bianji2
+
+
+
+ -
+
+
+ 截屏
+
+ .icon-jieping
+
+
+
+ -
+
+
+ 减小小数位
+
+ .icon-jianxiaoxiaoshuwei
+
+
+
+ -
+
+
+ 菜单
+
+ .icon-caidan
+
+
+
+ -
+
+
+ 数据库
+
+ .icon-shujuku
+
+
+
+ -
+
+
+ 无边框
+
+ .icon-wubiankuang
+
+
+
+ -
+
+
+ 编辑
+
+ .icon-bianji
+
+
+
+ -
+
+
+ 清除样式
+
+ .icon-qingchuyangshi
+
+
+
+ -
+
+
+ 删除
+
+ .icon-shanchu
+
+
+
+ -
+
+
+ 文本居中对齐
+
+ .icon-wenbenjuzhongduiqi
+
+
+
+ -
+
+
+ 打印
+
+ .icon-dayin
+
+
+
+ -
+
+
+ 文本分割
+
+ .icon-wenbenfenge
+
+
+
+ -
+
+
+ 函数‘
+
+ .icon-hanshu
+
+
+
+ -
+
+
+ 降序
+
+ .icon-jiangxu
+
+
+
+ -
+
+
+ 顶部对齐
+
+ .icon-dingbuduiqi
+
+
+
+ -
+
+
+ 图片
+
+ .icon-tupian
+
+
+
+ -
+
+
+ 向下90
+
+ .icon-xiangxia90
+
+
+
+ -
+
+
+ 竖排文字
+
+ .icon-shupaiwenzi
+
+
+
+ -
+
+
+ 全加边框
+
+ .icon-quanjiabiankuang
+
+
+
+ -
+
+
+ 升序
+
+ .icon-shengxu
+
+
+
+ -
+
+
+ 裁剪
+
+ .icon-caijian
+
+
+
+ -
+
+
+ 金额
+
+ .icon-jine
+
+
+
+ -
+
+
+ 菜单1
+
+ .icon-caidan1
+
+
+
+ -
+
+
+ 取消合并
+
+ .icon-quxiaohebing
+
+
+
+ -
+
+
+ 文本下划线
+
+ .icon-wenbenxiahuaxian
+
+
+
+ -
+
+
+ 上边框
+
+ .icon-shangbiankuang
+
+
+
+ -
+
+
+ 定位
+
+ .icon-dingwei
+
+
+
+ -
+
+
+ 四周加边框
+
+ .icon-sizhoujiabiankuang
+
+
+
+ -
+
+
+ 侧边栏收起
+
+ .icon-cebianlanshouqi
+
+
+
+ -
+
+
+ 合并
+
+ .icon-hebing
+
+
+
+ -
+
+
+ 向上倾斜
+
+ .icon-xiangshangqingxie
+
+
+
+ -
+
+
+ 水平对齐
+
+ .icon-shuipingduiqi
+
+
+
+ -
+
+
+ 文本删除线
+
+ .icon-wenbenshanchuxian
+
+
+
+ -
+
+
+ 文本右对齐
+
+ .icon-wenbenyouduiqi
+
+
+
+ -
+
+
+ 前进
+
+ .icon-qianjin
+
+
+
+ -
+
+
+ 图表
+
+ .icon-tubiao
+
+
+
+ -
+
+
+ 右边框
+
+ .icon-youbiankuang
+
+
+
+ -
+
+
+ 百分号
+
+ .icon-baifenhao
+
+
+
+ -
+
+
+ 格式刷
+
+ .icon-geshishua
+
+
+
+ -
+
+
+ 保存
+
+ .icon-baocun
+
+
+
+ -
+
+
+ 数据验证
+
+ .icon-shujuyanzheng
+
+
+
+ -
+
+
+ 截断
+
+ .icon-jieduan
+
+
+
+ -
+
+
+ 格式条件
+
+ .icon-geshitiaojian
+
+
+
+ -
+
+
+ 自动换行
+
+ .icon-zidonghuanhang
+
+
+
+ -
+
+
+ 侧边栏展开
+
+ .icon-cebianlanzhankai
+
+
+
+ -
+
+
+ 筛选2
+
+ .icon-shaixuan2
+
+
+
+ -
+
+
+ 向下倾斜
+
+ .icon-xiangxiaqingxie
+
+
+
+ -
+
+
+ 溢出
+
+ .icon-yichu
+
+
+
+ -
+
+
+ 垂直合并
+
+ .icon-chuizhihebing
+
+
+
+ -
+
+
+ 文本分散对齐
+
+ .icon-wenbenfensanduiqi
+
+
+
+ -
+
+
+ 左边框
+
+ .icon-zuobiankuang
+
+
+
+ -
+
+
+ 分页查看
+
+ .icon-fenyechakan
+
+
+
+ -
+
+
+ 运行
+
+ .icon-yunhang
+
+
+
+ -
+
+
+ 列
+
+ .icon-lie
+
+
+
+ -
+
+
+ 全屏
+
+ .icon-quanping
+
+
+
+ -
+
+
+ 筛选
+
+ .icon-shaixuan
+
+
+
+ -
+
+
+ 更新
+
+ .icon-gengxin
+
+
+
+ -
+
+
+ 清除
+
+ .icon-qingchu
+
+
+
+ -
+
+
+ 行
+
+ .icon-hang
+
+
+
+ -
+
+
+ 注释
+
+ .icon-zhushi
+
+
+
+ -
+
+
+ 剪
+
+ .icon-jian
+
+
+
+ -
+
+
+ 计算
+
+ .icon-jisuan
+
+
+
+ -
+
+
+ 加
+
+ .icon-jia
+
+
+
+ -
+
+
+ 底部对齐
+
+ .icon-dibuduiqi
+
+
+
+ -
+
+
+ 向上90
+
+ .icon-xiangshang90
+
+
+
+ -
+
+
+ 无选装
+
+ .icon-wuxuanzhuang
+
+
+
+ -
+
+
+ 显示隐藏网格
+
+ .icon-xianshiyincangwangge
+
+
+
+ -
+
+
+ 冻结
+
+ .icon-dongjie
+
+
+
+ -
+
+
+ 文本左对齐
+
+ .icon-wenbenzuoduiqi
+
+
+
+ -
+
+
+ 后退
+
+ .icon-houtui
+
+
+
+ -
+
+
+ 水平合并
+
+ .icon-shuipinghebing
+
+
+
+ -
+
+
+ 下边框
+
+ .icon-xiabiankuang
+
+
+
+ -
+
+
+ 设置
+
+ .icon-shezhi
+
+
+
+
+
+
font-class 引用
+
+
+
font-class 是 Unicode 使用方式的一种变种,主要是解决 Unicode 书写不直观,语意不明确的问题。
+
与 Unicode 使用方式相比,具有如下特点:
+
+ - 兼容性良好,支持 IE8+,及所有现代浏览器。
+ - 相比于 Unicode 语意明确,书写更直观。可以很容易分辨这个 icon 是什么。
+ - 因为使用 class 来定义图标,所以当要替换图标时,只需要修改 class 里面的 Unicode 引用。
+ - 不过因为本质上还是使用的字体,所以多色图标还是不支持的。
+
+
使用步骤如下:
+
第一步:引入项目下面生成的 fontclass 代码:
+
<link rel="stylesheet" href="./iconfont.css">
+
+
第二步:挑选相应图标并获取类名,应用于页面:
+
<span class="iconfont icon-xxx"></span>
+
+
+ "
+ iconfont" 是你项目下的 font-family。可以通过编辑项目查看,默认是 "iconfont"。
+
+
+
+
+
+
+
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/src/assets/iconfont/iconfont.css b/src/assets/iconfont/iconfont.css
new file mode 100644
index 0000000..c491041
--- /dev/null
+++ b/src/assets/iconfont/iconfont.css
@@ -0,0 +1,361 @@
+@font-face {font-family: "iconfont";
+ src: url('iconfont.eot?t=1600168545018'); /* IE9 */
+ src: url('iconfont.eot?t=1600168545018#iefix') format('embedded-opentype'), /* IE6-IE8 */
+ url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'),
+ url('iconfont.woff?t=1600168545018') format('woff'),
+ url('iconfont.ttf?t=1600168545018') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */
+ url('iconfont.svg?t=1600168545018#iconfont') format('svg'); /* iOS 4.1- */
+}
+
+.iconfont {
+ font-family: "iconfont" !important;
+ font-size: 16px;
+ font-style: normal;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
+
+.icon-logo2:before {
+ content: "\e7df";
+}
+
+.icon-logo:before {
+ content: "\e7e0";
+}
+
+.icon-wenbenqingxie1:before {
+ content: "\e7de";
+}
+
+.icon-jiacu:before {
+ content: "\e7d9";
+}
+
+.icon-sousuo:before {
+ content: "\e78a";
+}
+
+.icon-guanbi:before {
+ content: "\e78b";
+}
+
+.icon-xiayige:before {
+ content: "\e78c";
+}
+
+.icon-xiala:before {
+ content: "\e78d";
+}
+
+.icon-wenbenyanse:before {
+ content: "\e78e";
+}
+
+.icon-shangyige:before {
+ content: "\e78f";
+}
+
+.icon-shujutoushi:before {
+ content: "\e790";
+}
+
+.icon-tianchong:before {
+ content: "\e791";
+}
+
+.icon-zengjiaxiaoshuwei:before {
+ content: "\e792";
+}
+
+.icon-bianji2:before {
+ content: "\e793";
+}
+
+.icon-jieping:before {
+ content: "\e794";
+}
+
+.icon-jianxiaoxiaoshuwei:before {
+ content: "\e796";
+}
+
+.icon-caidan:before {
+ content: "\e797";
+}
+
+.icon-shujuku:before {
+ content: "\e798";
+}
+
+.icon-wubiankuang:before {
+ content: "\e799";
+}
+
+.icon-bianji:before {
+ content: "\e79a";
+}
+
+.icon-qingchuyangshi:before {
+ content: "\e79b";
+}
+
+.icon-shanchu:before {
+ content: "\e79c";
+}
+
+.icon-wenbenjuzhongduiqi:before {
+ content: "\e79d";
+}
+
+.icon-dayin:before {
+ content: "\e79e";
+}
+
+.icon-wenbenfenge:before {
+ content: "\e79f";
+}
+
+.icon-hanshu:before {
+ content: "\e7a0";
+}
+
+.icon-jiangxu:before {
+ content: "\e7a1";
+}
+
+.icon-dingbuduiqi:before {
+ content: "\e7a2";
+}
+
+.icon-tupian:before {
+ content: "\e7a3";
+}
+
+.icon-xiangxia90:before {
+ content: "\e7a4";
+}
+
+.icon-shupaiwenzi:before {
+ content: "\e7a5";
+}
+
+.icon-quanjiabiankuang:before {
+ content: "\e7a6";
+}
+
+.icon-shengxu:before {
+ content: "\e7a7";
+}
+
+.icon-caijian:before {
+ content: "\e7a8";
+}
+
+.icon-jine:before {
+ content: "\e7a9";
+}
+
+.icon-caidan1:before {
+ content: "\e7aa";
+}
+
+.icon-quxiaohebing:before {
+ content: "\e7ab";
+}
+
+.icon-wenbenxiahuaxian:before {
+ content: "\e7ac";
+}
+
+.icon-shangbiankuang:before {
+ content: "\e7ad";
+}
+
+.icon-dingwei:before {
+ content: "\e7ae";
+}
+
+.icon-sizhoujiabiankuang:before {
+ content: "\e7af";
+}
+
+.icon-cebianlanshouqi:before {
+ content: "\e7b0";
+}
+
+.icon-hebing:before {
+ content: "\e7b1";
+}
+
+.icon-xiangshangqingxie:before {
+ content: "\e7b2";
+}
+
+.icon-shuipingduiqi:before {
+ content: "\e7b3";
+}
+
+.icon-wenbenshanchuxian:before {
+ content: "\e7b4";
+}
+
+.icon-wenbenyouduiqi:before {
+ content: "\e7b5";
+}
+
+.icon-qianjin:before {
+ content: "\e7b6";
+}
+
+.icon-tubiao:before {
+ content: "\e7b7";
+}
+
+.icon-youbiankuang:before {
+ content: "\e7b8";
+}
+
+.icon-baifenhao:before {
+ content: "\e7b9";
+}
+
+.icon-geshishua:before {
+ content: "\e7ba";
+}
+
+.icon-baocun:before {
+ content: "\e7bb";
+}
+
+.icon-shujuyanzheng:before {
+ content: "\e7bc";
+}
+
+.icon-jieduan:before {
+ content: "\e7bd";
+}
+
+.icon-geshitiaojian:before {
+ content: "\e7be";
+}
+
+.icon-zidonghuanhang:before {
+ content: "\e7bf";
+}
+
+.icon-cebianlanzhankai:before {
+ content: "\e7c0";
+}
+
+.icon-shaixuan2:before {
+ content: "\e7c1";
+}
+
+.icon-xiangxiaqingxie:before {
+ content: "\e7c2";
+}
+
+.icon-yichu:before {
+ content: "\e7c3";
+}
+
+.icon-chuizhihebing:before {
+ content: "\e7c4";
+}
+
+.icon-wenbenfensanduiqi:before {
+ content: "\e7c5";
+}
+
+.icon-zuobiankuang:before {
+ content: "\e7c6";
+}
+
+.icon-fenyechakan:before {
+ content: "\e7c7";
+}
+
+.icon-yunhang:before {
+ content: "\e7c8";
+}
+
+.icon-lie:before {
+ content: "\e7c9";
+}
+
+.icon-quanping:before {
+ content: "\e7ca";
+}
+
+.icon-shaixuan:before {
+ content: "\e7cb";
+}
+
+.icon-gengxin:before {
+ content: "\e7cc";
+}
+
+.icon-qingchu:before {
+ content: "\e7cd";
+}
+
+.icon-hang:before {
+ content: "\e7ce";
+}
+
+.icon-zhushi:before {
+ content: "\e7cf";
+}
+
+.icon-jian:before {
+ content: "\e7d0";
+}
+
+.icon-jisuan:before {
+ content: "\e7d1";
+}
+
+.icon-jia:before {
+ content: "\e7d2";
+}
+
+.icon-dibuduiqi:before {
+ content: "\e7d3";
+}
+
+.icon-xiangshang90:before {
+ content: "\e7d4";
+}
+
+.icon-wuxuanzhuang:before {
+ content: "\e7d5";
+}
+
+.icon-xianshiyincangwangge:before {
+ content: "\e7d6";
+}
+
+.icon-dongjie:before {
+ content: "\e7d7";
+}
+
+.icon-wenbenzuoduiqi:before {
+ content: "\e7d8";
+}
+
+.icon-houtui:before {
+ content: "\e7da";
+}
+
+.icon-shuipinghebing:before {
+ content: "\e7db";
+}
+
+.icon-xiabiankuang:before {
+ content: "\e7dc";
+}
+
+.icon-shezhi:before {
+ content: "\e7dd";
+}
+
diff --git a/src/assets/iconfont/iconfont.eot b/src/assets/iconfont/iconfont.eot
new file mode 100644
index 0000000..161d37f
Binary files /dev/null and b/src/assets/iconfont/iconfont.eot differ
diff --git a/src/assets/iconfont/iconfont.js b/src/assets/iconfont/iconfont.js
new file mode 100644
index 0000000..57043f6
--- /dev/null
+++ b/src/assets/iconfont/iconfont.js
@@ -0,0 +1 @@
+!function(h){var a,l,v,i,z,t,o,M='',p=(a=document.getElementsByTagName("script"))[a.length-1].getAttribute("data-injectcss");if(p&&!h.__iconfont__svg__cssinject__){h.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(h){console&&console.log(h)}}function m(){t||(t=!0,i())}l=function(){var h,a,l,v,i,z=document.createElement("div");z.innerHTML=M,M=null,(h=z.getElementsByTagName("svg")[0])&&(h.setAttribute("aria-hidden","true"),h.style.position="absolute",h.style.width=0,h.style.height=0,h.style.overflow="hidden",a=h,(l=document.body).firstChild?(v=a,(i=l.firstChild).parentNode.insertBefore(v,i)):l.appendChild(a))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(l,0):(v=function(){document.removeEventListener("DOMContentLoaded",v,!1),l()},document.addEventListener("DOMContentLoaded",v,!1)):document.attachEvent&&(i=l,z=h.document,t=!1,(o=function(){try{z.documentElement.doScroll("left")}catch(h){return void setTimeout(o,50)}m()})(),z.onreadystatechange=function(){"complete"==z.readyState&&(z.onreadystatechange=null,m())})}(window);
\ No newline at end of file
diff --git a/src/assets/iconfont/iconfont.json b/src/assets/iconfont/iconfont.json
new file mode 100644
index 0000000..5be4a10
--- /dev/null
+++ b/src/assets/iconfont/iconfont.json
@@ -0,0 +1,611 @@
+{
+ "id": "1990368",
+ "name": "lucksheet",
+ "font_family": "iconfont",
+ "css_prefix_text": "icon-",
+ "description": "",
+ "glyphs": [
+ {
+ "icon_id": "16746498",
+ "name": "logo2",
+ "font_class": "logo2",
+ "unicode": "e7df",
+ "unicode_decimal": 59359
+ },
+ {
+ "icon_id": "16746532",
+ "name": "logo",
+ "font_class": "logo",
+ "unicode": "e7e0",
+ "unicode_decimal": 59360
+ },
+ {
+ "icon_id": "16730159",
+ "name": "文本倾斜",
+ "font_class": "wenbenqingxie1",
+ "unicode": "e7de",
+ "unicode_decimal": 59358
+ },
+ {
+ "icon_id": "16728412",
+ "name": "加粗",
+ "font_class": "jiacu",
+ "unicode": "e7d9",
+ "unicode_decimal": 59353
+ },
+ {
+ "icon_id": "16728080",
+ "name": "搜索",
+ "font_class": "sousuo",
+ "unicode": "e78a",
+ "unicode_decimal": 59274
+ },
+ {
+ "icon_id": "16728081",
+ "name": "关闭",
+ "font_class": "guanbi",
+ "unicode": "e78b",
+ "unicode_decimal": 59275
+ },
+ {
+ "icon_id": "16728082",
+ "name": "下一个",
+ "font_class": "xiayige",
+ "unicode": "e78c",
+ "unicode_decimal": 59276
+ },
+ {
+ "icon_id": "16728083",
+ "name": "下拉",
+ "font_class": "xiala",
+ "unicode": "e78d",
+ "unicode_decimal": 59277
+ },
+ {
+ "icon_id": "16728084",
+ "name": "文本颜色",
+ "font_class": "wenbenyanse",
+ "unicode": "e78e",
+ "unicode_decimal": 59278
+ },
+ {
+ "icon_id": "16728085",
+ "name": "上一个",
+ "font_class": "shangyige",
+ "unicode": "e78f",
+ "unicode_decimal": 59279
+ },
+ {
+ "icon_id": "16728086",
+ "name": "数据透视",
+ "font_class": "shujutoushi",
+ "unicode": "e790",
+ "unicode_decimal": 59280
+ },
+ {
+ "icon_id": "16728087",
+ "name": "填充",
+ "font_class": "tianchong",
+ "unicode": "e791",
+ "unicode_decimal": 59281
+ },
+ {
+ "icon_id": "16728088",
+ "name": "增加小数位",
+ "font_class": "zengjiaxiaoshuwei",
+ "unicode": "e792",
+ "unicode_decimal": 59282
+ },
+ {
+ "icon_id": "16728089",
+ "name": "编辑2",
+ "font_class": "bianji2",
+ "unicode": "e793",
+ "unicode_decimal": 59283
+ },
+ {
+ "icon_id": "16728090",
+ "name": "截屏",
+ "font_class": "jieping",
+ "unicode": "e794",
+ "unicode_decimal": 59284
+ },
+ {
+ "icon_id": "16728092",
+ "name": "减小小数位",
+ "font_class": "jianxiaoxiaoshuwei",
+ "unicode": "e796",
+ "unicode_decimal": 59286
+ },
+ {
+ "icon_id": "16728093",
+ "name": "菜单",
+ "font_class": "caidan",
+ "unicode": "e797",
+ "unicode_decimal": 59287
+ },
+ {
+ "icon_id": "16728094",
+ "name": "数据库",
+ "font_class": "shujuku",
+ "unicode": "e798",
+ "unicode_decimal": 59288
+ },
+ {
+ "icon_id": "16728095",
+ "name": "无边框",
+ "font_class": "wubiankuang",
+ "unicode": "e799",
+ "unicode_decimal": 59289
+ },
+ {
+ "icon_id": "16728096",
+ "name": "编辑",
+ "font_class": "bianji",
+ "unicode": "e79a",
+ "unicode_decimal": 59290
+ },
+ {
+ "icon_id": "16728097",
+ "name": "清除样式",
+ "font_class": "qingchuyangshi",
+ "unicode": "e79b",
+ "unicode_decimal": 59291
+ },
+ {
+ "icon_id": "16728099",
+ "name": "删除",
+ "font_class": "shanchu",
+ "unicode": "e79c",
+ "unicode_decimal": 59292
+ },
+ {
+ "icon_id": "16728100",
+ "name": "文本居中对齐",
+ "font_class": "wenbenjuzhongduiqi",
+ "unicode": "e79d",
+ "unicode_decimal": 59293
+ },
+ {
+ "icon_id": "16728101",
+ "name": "打印",
+ "font_class": "dayin",
+ "unicode": "e79e",
+ "unicode_decimal": 59294
+ },
+ {
+ "icon_id": "16728102",
+ "name": "文本分割",
+ "font_class": "wenbenfenge",
+ "unicode": "e79f",
+ "unicode_decimal": 59295
+ },
+ {
+ "icon_id": "16728103",
+ "name": "函数‘",
+ "font_class": "hanshu",
+ "unicode": "e7a0",
+ "unicode_decimal": 59296
+ },
+ {
+ "icon_id": "16728104",
+ "name": "降序",
+ "font_class": "jiangxu",
+ "unicode": "e7a1",
+ "unicode_decimal": 59297
+ },
+ {
+ "icon_id": "16728105",
+ "name": "顶部对齐",
+ "font_class": "dingbuduiqi",
+ "unicode": "e7a2",
+ "unicode_decimal": 59298
+ },
+ {
+ "icon_id": "16728106",
+ "name": "图片",
+ "font_class": "tupian",
+ "unicode": "e7a3",
+ "unicode_decimal": 59299
+ },
+ {
+ "icon_id": "16728107",
+ "name": "向下90",
+ "font_class": "xiangxia90",
+ "unicode": "e7a4",
+ "unicode_decimal": 59300
+ },
+ {
+ "icon_id": "16728108",
+ "name": "竖排文字",
+ "font_class": "shupaiwenzi",
+ "unicode": "e7a5",
+ "unicode_decimal": 59301
+ },
+ {
+ "icon_id": "16728109",
+ "name": "全加边框",
+ "font_class": "quanjiabiankuang",
+ "unicode": "e7a6",
+ "unicode_decimal": 59302
+ },
+ {
+ "icon_id": "16728110",
+ "name": "升序",
+ "font_class": "shengxu",
+ "unicode": "e7a7",
+ "unicode_decimal": 59303
+ },
+ {
+ "icon_id": "16728111",
+ "name": "裁剪",
+ "font_class": "caijian",
+ "unicode": "e7a8",
+ "unicode_decimal": 59304
+ },
+ {
+ "icon_id": "16728112",
+ "name": "金额",
+ "font_class": "jine",
+ "unicode": "e7a9",
+ "unicode_decimal": 59305
+ },
+ {
+ "icon_id": "16728113",
+ "name": "菜单1",
+ "font_class": "caidan1",
+ "unicode": "e7aa",
+ "unicode_decimal": 59306
+ },
+ {
+ "icon_id": "16728114",
+ "name": "取消合并",
+ "font_class": "quxiaohebing",
+ "unicode": "e7ab",
+ "unicode_decimal": 59307
+ },
+ {
+ "icon_id": "16728115",
+ "name": "文本下划线",
+ "font_class": "wenbenxiahuaxian",
+ "unicode": "e7ac",
+ "unicode_decimal": 59308
+ },
+ {
+ "icon_id": "16728116",
+ "name": "上边框",
+ "font_class": "shangbiankuang",
+ "unicode": "e7ad",
+ "unicode_decimal": 59309
+ },
+ {
+ "icon_id": "16728117",
+ "name": "定位",
+ "font_class": "dingwei",
+ "unicode": "e7ae",
+ "unicode_decimal": 59310
+ },
+ {
+ "icon_id": "16728118",
+ "name": "四周加边框",
+ "font_class": "sizhoujiabiankuang",
+ "unicode": "e7af",
+ "unicode_decimal": 59311
+ },
+ {
+ "icon_id": "16728119",
+ "name": "侧边栏收起",
+ "font_class": "cebianlanshouqi",
+ "unicode": "e7b0",
+ "unicode_decimal": 59312
+ },
+ {
+ "icon_id": "16728120",
+ "name": "合并",
+ "font_class": "hebing",
+ "unicode": "e7b1",
+ "unicode_decimal": 59313
+ },
+ {
+ "icon_id": "16728121",
+ "name": "向上倾斜",
+ "font_class": "xiangshangqingxie",
+ "unicode": "e7b2",
+ "unicode_decimal": 59314
+ },
+ {
+ "icon_id": "16728122",
+ "name": "水平对齐",
+ "font_class": "shuipingduiqi",
+ "unicode": "e7b3",
+ "unicode_decimal": 59315
+ },
+ {
+ "icon_id": "16728123",
+ "name": "文本删除线",
+ "font_class": "wenbenshanchuxian",
+ "unicode": "e7b4",
+ "unicode_decimal": 59316
+ },
+ {
+ "icon_id": "16728124",
+ "name": "文本右对齐",
+ "font_class": "wenbenyouduiqi",
+ "unicode": "e7b5",
+ "unicode_decimal": 59317
+ },
+ {
+ "icon_id": "16728125",
+ "name": "前进",
+ "font_class": "qianjin",
+ "unicode": "e7b6",
+ "unicode_decimal": 59318
+ },
+ {
+ "icon_id": "16728126",
+ "name": "图表",
+ "font_class": "tubiao",
+ "unicode": "e7b7",
+ "unicode_decimal": 59319
+ },
+ {
+ "icon_id": "16728127",
+ "name": "右边框",
+ "font_class": "youbiankuang",
+ "unicode": "e7b8",
+ "unicode_decimal": 59320
+ },
+ {
+ "icon_id": "16728128",
+ "name": "百分号",
+ "font_class": "baifenhao",
+ "unicode": "e7b9",
+ "unicode_decimal": 59321
+ },
+ {
+ "icon_id": "16728129",
+ "name": "格式刷",
+ "font_class": "geshishua",
+ "unicode": "e7ba",
+ "unicode_decimal": 59322
+ },
+ {
+ "icon_id": "16728130",
+ "name": "保存",
+ "font_class": "baocun",
+ "unicode": "e7bb",
+ "unicode_decimal": 59323
+ },
+ {
+ "icon_id": "16728131",
+ "name": "数据验证",
+ "font_class": "shujuyanzheng",
+ "unicode": "e7bc",
+ "unicode_decimal": 59324
+ },
+ {
+ "icon_id": "16728132",
+ "name": "截断",
+ "font_class": "jieduan",
+ "unicode": "e7bd",
+ "unicode_decimal": 59325
+ },
+ {
+ "icon_id": "16728133",
+ "name": "格式条件",
+ "font_class": "geshitiaojian",
+ "unicode": "e7be",
+ "unicode_decimal": 59326
+ },
+ {
+ "icon_id": "16728134",
+ "name": "自动换行",
+ "font_class": "zidonghuanhang",
+ "unicode": "e7bf",
+ "unicode_decimal": 59327
+ },
+ {
+ "icon_id": "16728135",
+ "name": "侧边栏展开",
+ "font_class": "cebianlanzhankai",
+ "unicode": "e7c0",
+ "unicode_decimal": 59328
+ },
+ {
+ "icon_id": "16728136",
+ "name": "筛选2",
+ "font_class": "shaixuan2",
+ "unicode": "e7c1",
+ "unicode_decimal": 59329
+ },
+ {
+ "icon_id": "16728137",
+ "name": "向下倾斜",
+ "font_class": "xiangxiaqingxie",
+ "unicode": "e7c2",
+ "unicode_decimal": 59330
+ },
+ {
+ "icon_id": "16728138",
+ "name": "溢出",
+ "font_class": "yichu",
+ "unicode": "e7c3",
+ "unicode_decimal": 59331
+ },
+ {
+ "icon_id": "16728139",
+ "name": "垂直合并",
+ "font_class": "chuizhihebing",
+ "unicode": "e7c4",
+ "unicode_decimal": 59332
+ },
+ {
+ "icon_id": "16728140",
+ "name": "文本分散对齐",
+ "font_class": "wenbenfensanduiqi",
+ "unicode": "e7c5",
+ "unicode_decimal": 59333
+ },
+ {
+ "icon_id": "16728141",
+ "name": "左边框",
+ "font_class": "zuobiankuang",
+ "unicode": "e7c6",
+ "unicode_decimal": 59334
+ },
+ {
+ "icon_id": "16728142",
+ "name": "分页查看",
+ "font_class": "fenyechakan",
+ "unicode": "e7c7",
+ "unicode_decimal": 59335
+ },
+ {
+ "icon_id": "16728143",
+ "name": "运行",
+ "font_class": "yunhang",
+ "unicode": "e7c8",
+ "unicode_decimal": 59336
+ },
+ {
+ "icon_id": "16728144",
+ "name": "列",
+ "font_class": "lie",
+ "unicode": "e7c9",
+ "unicode_decimal": 59337
+ },
+ {
+ "icon_id": "16728145",
+ "name": "全屏",
+ "font_class": "quanping",
+ "unicode": "e7ca",
+ "unicode_decimal": 59338
+ },
+ {
+ "icon_id": "16728146",
+ "name": "筛选",
+ "font_class": "shaixuan",
+ "unicode": "e7cb",
+ "unicode_decimal": 59339
+ },
+ {
+ "icon_id": "16728147",
+ "name": "更新",
+ "font_class": "gengxin",
+ "unicode": "e7cc",
+ "unicode_decimal": 59340
+ },
+ {
+ "icon_id": "16728148",
+ "name": "清除",
+ "font_class": "qingchu",
+ "unicode": "e7cd",
+ "unicode_decimal": 59341
+ },
+ {
+ "icon_id": "16728149",
+ "name": "行",
+ "font_class": "hang",
+ "unicode": "e7ce",
+ "unicode_decimal": 59342
+ },
+ {
+ "icon_id": "16728150",
+ "name": "注释",
+ "font_class": "zhushi",
+ "unicode": "e7cf",
+ "unicode_decimal": 59343
+ },
+ {
+ "icon_id": "16728151",
+ "name": "剪",
+ "font_class": "jian",
+ "unicode": "e7d0",
+ "unicode_decimal": 59344
+ },
+ {
+ "icon_id": "16728152",
+ "name": "计算",
+ "font_class": "jisuan",
+ "unicode": "e7d1",
+ "unicode_decimal": 59345
+ },
+ {
+ "icon_id": "16728153",
+ "name": "加",
+ "font_class": "jia",
+ "unicode": "e7d2",
+ "unicode_decimal": 59346
+ },
+ {
+ "icon_id": "16728154",
+ "name": "底部对齐",
+ "font_class": "dibuduiqi",
+ "unicode": "e7d3",
+ "unicode_decimal": 59347
+ },
+ {
+ "icon_id": "16728155",
+ "name": "向上90",
+ "font_class": "xiangshang90",
+ "unicode": "e7d4",
+ "unicode_decimal": 59348
+ },
+ {
+ "icon_id": "16728156",
+ "name": "无选装",
+ "font_class": "wuxuanzhuang",
+ "unicode": "e7d5",
+ "unicode_decimal": 59349
+ },
+ {
+ "icon_id": "16728157",
+ "name": "显示隐藏网格",
+ "font_class": "xianshiyincangwangge",
+ "unicode": "e7d6",
+ "unicode_decimal": 59350
+ },
+ {
+ "icon_id": "16728158",
+ "name": "冻结",
+ "font_class": "dongjie",
+ "unicode": "e7d7",
+ "unicode_decimal": 59351
+ },
+ {
+ "icon_id": "16728159",
+ "name": "文本左对齐",
+ "font_class": "wenbenzuoduiqi",
+ "unicode": "e7d8",
+ "unicode_decimal": 59352
+ },
+ {
+ "icon_id": "16728161",
+ "name": "后退",
+ "font_class": "houtui",
+ "unicode": "e7da",
+ "unicode_decimal": 59354
+ },
+ {
+ "icon_id": "16728162",
+ "name": "水平合并",
+ "font_class": "shuipinghebing",
+ "unicode": "e7db",
+ "unicode_decimal": 59355
+ },
+ {
+ "icon_id": "16728163",
+ "name": "下边框",
+ "font_class": "xiabiankuang",
+ "unicode": "e7dc",
+ "unicode_decimal": 59356
+ },
+ {
+ "icon_id": "16728164",
+ "name": "设置",
+ "font_class": "shezhi",
+ "unicode": "e7dd",
+ "unicode_decimal": 59357
+ }
+ ]
+}
diff --git a/src/assets/iconfont/iconfont.svg b/src/assets/iconfont/iconfont.svg
new file mode 100644
index 0000000..0fb078f
--- /dev/null
+++ b/src/assets/iconfont/iconfont.svg
@@ -0,0 +1,284 @@
+
+
+
+
diff --git a/src/assets/iconfont/iconfont.ttf b/src/assets/iconfont/iconfont.ttf
new file mode 100644
index 0000000..2600647
Binary files /dev/null and b/src/assets/iconfont/iconfont.ttf differ
diff --git a/src/assets/iconfont/iconfont.woff b/src/assets/iconfont/iconfont.woff
new file mode 100644
index 0000000..7a7a19e
Binary files /dev/null and b/src/assets/iconfont/iconfont.woff differ
diff --git a/src/assets/iconfont/iconfont.woff2 b/src/assets/iconfont/iconfont.woff2
new file mode 100644
index 0000000..726bdea
Binary files /dev/null and b/src/assets/iconfont/iconfont.woff2 differ
diff --git a/src/controllers/constant.js b/src/controllers/constant.js
index 52c8528..e79f2f9 100644
--- a/src/controllers/constant.js
+++ b/src/controllers/constant.js
@@ -21,7 +21,7 @@ const gridHTML = function(){
${locale_info.wait}
\${functionButton}
- \${menu}
+ \${menu}
@@ -190,8 +190,8 @@ const gridHTML = function(){
-
-
+
+
@@ -205,8 +205,8 @@ const gridHTML = function(){
-
-
+
+
@@ -601,7 +601,38 @@ function sheetconfigHTML(){
const luckysheetPivotTableHTML = function(){
const _locale = locale();
const locale_pivotTable = _locale.pivotTable;
- return '
'+locale_pivotTable.title+'
'+locale_pivotTable.editRange+'
'+locale_pivotTable.tipPivotFieldSelected+' '+locale_pivotTable.btnClearSelectedField+'
'+locale_pivotTable.btnFilter+'
'+locale_pivotTable.titleRow+'
'+locale_pivotTable.titleColumn+'
';
+ // return '
'+locale_pivotTable.title+'
'+locale_pivotTable.editRange+'
'+locale_pivotTable.tipPivotFieldSelected+' '+locale_pivotTable.btnClearSelectedField+'
'+locale_pivotTable.btnFilter+'
'+locale_pivotTable.titleRow+'
'+locale_pivotTable.titleColumn+'
';
+ return `
+
+
${locale_pivotTable.title}
+
+
+
+
${locale_pivotTable.editRange}
+
+
${locale_pivotTable.tipPivotFieldSelected} ${locale_pivotTable.btnClearSelectedField}
+
+
+
+
${locale_pivotTable.btnFilter}
+
+
+
+
${locale_pivotTable.titleRow}
+
+
+
+
${locale_pivotTable.titleColumn}
+
+
+
+
+
+
+ `;
}
function filtermenuHTML() {
@@ -685,6 +716,8 @@ const luckysheetToolHTML = '
-
-
-
-