Parcourir la source

perf: 字体相关代码优化

pipipi-pikachu il y a 5 ans
Parent
commit
3f75a2af94

+ 40 - 40
src/configs/font.ts

@@ -1,45 +1,45 @@
 export const SYS_FONTS = [
-  { zh: '微软雅黑', en: 'Microsoft Yahei' },
-  { zh: '宋体', en: 'SimSun' },
-  { zh: '黑体', en: 'SimHei' },
-  { zh: '楷体', en: 'KaiTi' },
-  { zh: '新宋体', en: 'NSimSun' },
-  { zh: '仿宋', en: 'FangSong' },
-  { zh: '苹方', en: 'PingFang SC' },
-  { zh: '华文黑体', en: 'STHeiti' },
-  { zh: '华文楷体', en: 'STKaiti' },
-  { zh: '华文宋体', en: 'STSong' },
-  { zh: '华文仿宋', en: 'STFangSong' },
-  { zh: '华文中宋', en: 'STZhongSong' },
-  { zh: '华文琥珀', en: 'STHupo' },
-  { zh: '华文新魏', en: 'STXinwei' },
-  { zh: '华文隶书', en: 'STLiti' },
-  { zh: '华文行楷', en: 'STXingkai' },
-  { zh: '冬青黑体简', en: 'Hiragino Sans GB' },
-  { zh: '兰亭黑-简', en: 'Lantinghei SC' },
-  { zh: '偏偏体-简', en: 'Hanzipen SC' },
-  { zh: '手札体-简', en: 'Hannotate SC' },
-  { zh: '宋体-简', en: 'Songti SC' },
-  { zh: '娃娃体-简', en: 'Wawati SC' },
-  { zh: '行楷-简', en: 'Xingkai SC' },
-  { zh: '圆体-简', en: 'Yuanti SC' },
-  { zh: '华文细黑', en: 'STXihei' },
-  { zh: '幼圆', en: 'YouYuan' },
-  { zh: '隶书', en: 'LiSu' },
-  { zh: 'Arial', en: 'Arial' },
+  { label: 'Arial', value: 'Arial' },
+  { label: '微软雅黑', value: 'Microsoft Yahei' },
+  { label: '宋体', value: 'SimSun' },
+  { label: '黑体', value: 'SimHei' },
+  { label: '楷体', value: 'KaiTi' },
+  { label: '新宋体', value: 'NSimSun' },
+  { label: '仿宋', value: 'FangSong' },
+  { label: '苹方', value: 'PingFang SC' },
+  { label: '华文黑体', value: 'STHeiti' },
+  { label: '华文楷体', value: 'STKaiti' },
+  { label: '华文宋体', value: 'STSong' },
+  { label: '华文仿宋', value: 'STFangSong' },
+  { label: '华文中宋', value: 'STZhongSong' },
+  { label: '华文琥珀', value: 'STHupo' },
+  { label: '华文新魏', value: 'STXinwei' },
+  { label: '华文隶书', value: 'STLiti' },
+  { label: '华文行楷', value: 'STXingkai' },
+  { label: '冬青黑体', value: 'Hiragino Sans GB' },
+  { label: '兰亭黑', value: 'Lantinghei SC' },
+  { label: '偏偏体', value: 'Hanzipen SC' },
+  { label: '手札体', value: 'Hannotate SC' },
+  { label: '宋体', value: 'Songti SC' },
+  { label: '娃娃体', value: 'Wawati SC' },
+  { label: '行楷', value: 'Xingkai SC' },
+  { label: '圆体', value: 'Yuanti SC' },
+  { label: '华文细黑', value: 'STXihei' },
+  { label: '幼圆', value: 'YouYuan' },
+  { label: '隶书', value: 'LiSu' },
 ]
 
 export const WEB_FONTS = [
-  { name: '仓耳小丸子' },
-  { name: '优设标题黑' },
-  { name: '峰广明锐体' },
-  { name: '摄图摩登小方体' },
-  { name: '站酷快乐体' },
-  { name: '站酷酷黑体' },
-  { name: '素材集市康康体' },
-  { name: '联盟起艺卢帅正锐黑体' },
-  { name: '谦度手写楷体' },
-  { name: '途牛类圆体' },
-  { name: '锐字真言体' },
-  { name: '问藏书房' },
+  { label: '仓耳小丸子', value: '仓耳小丸子' },
+  { label: '优设标题黑', value: '优设标题黑' },
+  { label: '峰广明锐体', value: '峰广明锐体' },
+  { label: '摄图摩登小方体', value: '摄图摩登小方体' },
+  { label: '站酷快乐体', value: '站酷快乐体' },
+  { label: '站酷酷黑体', value: '站酷酷黑体' },
+  { label: '素材集市康康体', value: '素材集市康康体' },
+  { label: '联盟起艺卢帅正锐黑体', value: '联盟起艺卢帅正锐黑体' },
+  { label: '谦度手写楷体', value: '谦度手写楷体' },
+  { label: '途牛类圆体', value: '途牛类圆体' },
+  { label: '锐字真言体', value: '锐字真言体' },
+  { label: '问藏书房', value: '问藏书房' },
 ]

+ 1 - 1
src/store/mutations.ts

@@ -61,7 +61,7 @@ export const mutations: MutationTree<State> = {
   },
 
   [MutationTypes.SET_AVAILABLE_FONTS](state) {
-    state.availableFonts = SYS_FONTS.filter(font => isSupportFontFamily(font.en))
+    state.availableFonts = SYS_FONTS.filter(font => isSupportFontFamily(font.value))
   },
 
   [MutationTypes.SET_TOOLBAR_STATE](state, type) {

+ 4 - 4
src/views/Editor/Toolbar/ElementStylePanel/TextStylePanel.vue

@@ -20,13 +20,13 @@
       >
         <template #suffixIcon><IconFontSize /></template>
         <SelectOptGroup label="系统字体">
-          <SelectOption v-for="font in availableFonts" :key="font.en" :value="font.en">
-            <span :style="{ fontFamily: font.en }">{{font.zh}}</span>
+          <SelectOption v-for="font in availableFonts" :key="font.value" :value="font.value">
+            <span :style="{ fontFamily: font.value }">{{font.label}}</span>
           </SelectOption>
         </SelectOptGroup>
         <SelectOptGroup label="在线字体">
-          <SelectOption v-for="font in webFonts" :key="font.name" :value="font.name">
-            <span>{{font.name}}</span>
+          <SelectOption v-for="font in webFonts" :key="font.value" :value="font.value">
+            <span>{{font.label}}</span>
           </SelectOption>
         </SelectOptGroup>
       </Select>

+ 4 - 4
src/views/Editor/Toolbar/SlideStylePanel.vue

@@ -107,13 +107,13 @@
         @change="value => updateTheme({ fontName: value })"
       >
         <SelectOptGroup label="系统字体">
-          <SelectOption v-for="font in availableFonts" :key="font.en" :value="font.en">
-            <span :style="{ fontFamily: font.en }">{{font.zh}}</span>
+          <SelectOption v-for="font in availableFonts" :key="font.value" :value="font.value">
+            <span :style="{ fontFamily: font.value }">{{font.label}}</span>
           </SelectOption>
         </SelectOptGroup>
         <SelectOptGroup label="在线字体">
-          <SelectOption v-for="font in webFonts" :key="font.name" :value="font.name">
-            <span>{{font.name}}</span>
+          <SelectOption v-for="font in webFonts" :key="font.value" :value="font.value">
+            <span>{{font.label}}</span>
           </SelectOption>
         </SelectOptGroup>
       </Select>