瀏覽代碼

可视化 - 账单式 自定义字体初始化

TonyKang 6 年之前
父節點
當前提交
e891287812
共有 1 個文件被更改,包括 24 次插入4 次删除
  1. 24 4
      web/maintain/report/js/rpt_tpl_vis_common.js

+ 24 - 4
web/maintain/report/js/rpt_tpl_vis_common.js

@@ -274,12 +274,32 @@ let visualCommonOprObj = {
         }
     },
     private_setCellFont: function (cell, textNode) {
-        for (let font of rpt_tpl_cfg_helper.reportCfg.fonts) {
-            if (font.ID === textNode[JV.PROP_FONT]) {
-                cell.font(Math.round(font[JV.FONT_PROPS[JV.FONT_PROP_IDX_HEIGHT]] * 3 / 4) + 'pt ' + font[JV.FONT_PROPS[JV.FONT_PROP_IDX_NAME]]);
-                break;
+        let fontAttr;
+        if (typeof textNode[JV.PROP_FONT] === 'string') {
+            for (let font of rpt_tpl_cfg_helper.reportCfg.fonts) {
+                if (font.ID === textNode[JV.PROP_FONT]) {
+                    fontAttr = font;
+                    // cell.font(Math.round(font[JV.FONT_PROPS[JV.FONT_PROP_IDX_HEIGHT]] * 3 / 4) + 'pt ' + font[JV.FONT_PROPS[JV.FONT_PROP_IDX_NAME]]);
+                    break;
+                }
             }
+        } else {
+            fontAttr = textNode[JV.PROP_FONT];
+        }
+        let fontStr = "";
+        if (stringUtil.convertStrToBoolean(fontAttr[JV.FONT_PROPS[JV.FONT_PROP_IDX_BOLD]])) {
+            fontStr = 'bold ' + fontStr;
+        }
+        if (stringUtil.convertStrToBoolean(fontAttr[JV.FONT_PROPS[JV.FONT_PROP_IDX_ITALIC]])) {
+            fontStr = 'italic ' + fontStr;
+        }
+        fontStr = fontStr + Math.round(fontAttr[JV.FONT_PROPS[JV.FONT_PROP_IDX_HEIGHT]] * 3 / 4) + 'pt ' + fontAttr[JV.FONT_PROPS[JV.FONT_PROP_IDX_NAME]];
+        if (stringUtil.convertStrToBoolean(fontAttr[JV.FONT_PROPS[JV.FONT_PROP_IDX_UNDERLINE]])) {
+            cell.textDecoration(GC.Spread.Sheets.TextDecorationType.underline);
+        } else {
+            cell.textDecoration(GC.Spread.Sheets.TextDecorationType.none);
         }
+        cell.font(fontStr);
     },
     getSelectedFields: function (rptTpl) {
         let rst = [];