瀏覽代碼

打印预览转义符(<)

TonyKang 4 年之前
父節點
當前提交
2245b39be9
共有 2 個文件被更改,包括 9 次插入1 次删除
  1. 1 1
      app/public/report/js/rpt_preview_common.js
  2. 8 0
      app/public/report/js/rpt_print.js

+ 1 - 1
app/public/report/js/rpt_preview_common.js

@@ -82,7 +82,7 @@ function showPreviewData(svgArr, actAreaArr, scaleFactor, pageSize, orientation,
         }
         // let div = $('<div class="pageBreak"></div>');
         let div = $(`<div class="pageBreak" style="${paddingStr}"></div>`);
-        div.append($(svgArr[i].join("")));
+        div.append($(svgArr[i].join(" ")));
         $(div).find("svg").each(function(cIdx,elementSvg){
             elementSvg.setAttribute('height', pageHeight - offsetHeight);
             elementSvg.setAttribute('width', pageWidth - offsetWidth);

+ 8 - 0
app/public/report/js/rpt_print.js

@@ -352,6 +352,11 @@ function getProperSignatureArea(cell, control, offsetX, offsetY) {
     return rst;
 }
 
+function strReplaceAll(targetStr, FindText, RepText) {
+    let regExp = new RegExp(FindText, "gm");
+    return targetStr.replace(regExp, RepText);
+}
+
 function buildText(destRst, cell, font, control, offsetX, offsetY, adjustY, canvas, isHtoV, HtoVStr) {
     let orgFontHeight = parseInt(font[JV.FONT_PROPS[JV.FONT_PROP_IDX_HEIGHT]]);
     let fontWeight = (font[JV.FONT_PROPS[JV.FONT_PROP_IDX_BOLD]] === 'T')?"bold":"normal";
@@ -367,6 +372,9 @@ function buildText(destRst, cell, font, control, offsetX, offsetY, adjustY, canv
     let value = cell[JV.PROP_VALUE];
     if (value === undefined || value === null) {
         value = "";
+    } else if (typeof value === 'string') {
+        //注意:要把 < 符号转义 -> &lt; 否则svg会有错乱
+        value = strReplaceAll(value, '<', '&lt;');
     }
     let values = null;
     if (typeof value === "string") {