Browse Source

fix(bug fix): sparkLines, pivot Table, change to sheet

master
liuyang 5 years ago
parent
commit
69aee1aec3
  1. 7
      src/controllers/constant.js
  2. 2
      src/controllers/menuButton.js
  3. 2
      src/controllers/sheetmanage.js
  4. 10
      src/controllers/sparkline.js
  5. 410
      src/global/draw.js
  6. 4
      src/utils/util.js

7
src/controllers/constant.js

File diff suppressed because one or more lines are too long

2
src/controllers/menuButton.js

@ -467,7 +467,7 @@ const menuButton = {
let fItem = locale_fontarray[a]; let fItem = locale_fontarray[a];
let ret = {}; let ret = {};
ret.value = a; ret.value = a;
ret.text = "<span class='luckysheet-mousedown-cancel' style='font-size:16px;font-family:"+fItem+"'>"+fItem+"</span>"; ret.text = "<span class='luckysheet-mousedown-cancel' style='font-size:11px;font-family:"+fItem+"'>"+fItem+"</span>";
ret.example = ""; ret.example = "";
itemdata.push(ret); itemdata.push(ret);
} }

2
src/controllers/sheetmanage.js

@ -841,7 +841,7 @@ const sheetmanage = {
pivotTable.changePivotTable(index); pivotTable.changePivotTable(index);
} }
} }
else { else if($("#luckysheet-modal-dialog-slider-pivot").is(":visible")) {
Store.luckysheetcurrentisPivotTable = false; Store.luckysheetcurrentisPivotTable = false;
$("#luckysheet-modal-dialog-slider-pivot").hide(); $("#luckysheet-modal-dialog-slider-pivot").hide();
luckysheetsizeauto(); luckysheetsizeauto();

10
src/controllers/sparkline.js

@ -1,3 +1,5 @@
import Store from "../store";
//sparkline设置 //sparkline设置
let createClass = function (/* [baseclass, [mixin, ...]], definition */) { let createClass = function (/* [baseclass, [mixin, ...]], definition */) {
let Class, args; let Class, args;
@ -1283,8 +1285,8 @@ const luckysheetSparkline = {
this.canvasWidth = el.mergedOptions.width; this.canvasWidth = el.mergedOptions.width;
this.canvasHeight = el.mergedOptions.height; this.canvasHeight = el.mergedOptions.height;
let barWidth = parseInt(options.get('barWidth'), 10), let barWidth = parseInt(options.get('barWidth'), 10)*Store.devicePixelRatio,
barSpacing = parseInt(options.get('barSpacing'), 10); barSpacing = parseInt(options.get('barSpacing'), 10)*Store.devicePixelRatio;
//tristate._super.init.call(this, el, values, options, width, height); //tristate._super.init.call(this, el, values, options, width, height);
this.regionShapes = {}; this.regionShapes = {};
@ -1905,8 +1907,8 @@ const luckysheetSparkline = {
_this.lastShapeId = null; _this.lastShapeId = null;
_this.mergedOptions = $.extend({}, base, extendedOptions, userOptions); _this.mergedOptions = $.extend({}, base, extendedOptions, userOptions);
_this.mergedOptions.width = devicePixelRatio * _this.mergedOptions.width; _this.mergedOptions.width = Store.devicePixelRatio * _this.mergedOptions.width;
_this.mergedOptions.height = devicePixelRatio * _this.mergedOptions.height; _this.mergedOptions.height = Store.devicePixelRatio * _this.mergedOptions.height;
_this[_this.mergedOptions.type].render(_this, userValues); _this[_this.mergedOptions.type].render(_this, userValues);
return { shapes:_this.shapes, shapeseq:_this.shapeseq, offsetX:_this.mergedOptions.offsetX, offsetY:_this.mergedOptions.offsetY, pixelWidth:_this.mergedOptions.width, pixelHeight:_this.mergedOptions.height}; return { shapes:_this.shapes, shapeseq:_this.shapeseq, offsetX:_this.mergedOptions.offsetX, offsetY:_this.mergedOptions.offsetY, pixelWidth:_this.mergedOptions.width, pixelHeight:_this.mergedOptions.height};

410
src/global/draw.js

@ -3,7 +3,7 @@ import conditionformat from '../controllers/conditionformat';
import alternateformat from '../controllers/alternateformat'; import alternateformat from '../controllers/alternateformat';
import luckysheetSparkline from '../controllers/sparkline'; import luckysheetSparkline from '../controllers/sparkline';
import menuButton from '../controllers/menuButton'; import menuButton from '../controllers/menuButton';
import { luckysheetdefaultstyle, luckysheet_CFiconsImg } from '../controllers/constant'; import { luckysheetdefaultstyle, luckysheet_CFiconsImg,luckysheetdefaultFont } from '../controllers/constant';
import { luckysheet_searcharray } from '../controllers/sheetSearch'; import { luckysheet_searcharray } from '../controllers/sheetSearch';
import { dynamicArrayCompute } from './dynamicArray'; import { dynamicArrayCompute } from './dynamicArray';
import browser from './browser'; import browser from './browser';
@ -20,12 +20,12 @@ function luckysheetDrawgrid(scrollWidth, scrollHeight, drawWidth, drawHeight, of
return; return;
} }
if(Store.luckysheetfile[getSheetIndex(Store.currentSheetIndex)]["isPivotTable"]){ // if(Store.luckysheetfile[getSheetIndex(Store.currentSheetIndex)]["isPivotTable"]){
luckysheetDrawMain_back(scrollWidth, scrollHeight, drawWidth, drawHeight, offsetLeft, offsetTop); // luckysheetDrawMain_back(scrollWidth, scrollHeight, drawWidth, drawHeight, offsetLeft, offsetTop);
} // }
else{ // else{
luckysheetDrawMain(scrollWidth, scrollHeight, drawWidth, drawHeight, offsetLeft, offsetTop); luckysheetDrawMain(scrollWidth, scrollHeight, drawWidth, drawHeight, offsetLeft, offsetTop);
} // }
$("#luckysheetTableContent").get(0).getContext("2d").clearRect(0, 0, 46, 20); $("#luckysheetTableContent").get(0).getContext("2d").clearRect(0, 0, 46, 20);
@ -54,7 +54,7 @@ function luckysheetDrawgridRowTitle(scrollHeight, drawHeight, offsetTop) {
drawHeight * Store.devicePixelRatio drawHeight * Store.devicePixelRatio
); );
luckysheetTableContent.font = luckysheetdefaultstyle.font; luckysheetTableContent.font = luckysheetdefaultFont();
luckysheetTableContent.textBaseline = luckysheetdefaultstyle.textBaseline; //基准线 垂直居中 luckysheetTableContent.textBaseline = luckysheetdefaultstyle.textBaseline; //基准线 垂直居中
luckysheetTableContent.fillStyle = luckysheetdefaultstyle.fillStyle; luckysheetTableContent.fillStyle = luckysheetdefaultstyle.fillStyle;
@ -156,7 +156,7 @@ function luckysheetDrawgridColumnTitle(scrollWidth, drawWidth, offsetLeft) {
); );
luckysheetTableContent.font = luckysheetdefaultstyle.font; luckysheetTableContent.font = luckysheetdefaultFont();
luckysheetTableContent.textBaseline = luckysheetdefaultstyle.textBaseline; //基准线 垂直居中 luckysheetTableContent.textBaseline = luckysheetdefaultstyle.textBaseline; //基准线 垂直居中
luckysheetTableContent.fillStyle = luckysheetdefaultstyle.fillStyle; luckysheetTableContent.fillStyle = luckysheetdefaultstyle.fillStyle;
@ -369,7 +369,7 @@ function luckysheetDrawMain(scrollWidth, scrollHeight, drawWidth, drawHeight, of
(fill_col_ed - scrollWidth) * Store.devicePixelRatio, (fill_col_ed - scrollWidth) * Store.devicePixelRatio,
(fill_row_ed - scrollHeight) * Store.devicePixelRatio (fill_row_ed - scrollHeight) * Store.devicePixelRatio
); );
luckysheetTableContent.font = luckysheetdefaultstyle.font; luckysheetTableContent.font = luckysheetdefaultFont();
luckysheetTableContent.textBaseline = "top"; luckysheetTableContent.textBaseline = "top";
luckysheetTableContent.fillStyle = luckysheetdefaultstyle.fillStyle; luckysheetTableContent.fillStyle = luckysheetdefaultstyle.fillStyle;
@ -399,80 +399,6 @@ function luckysheetDrawMain(scrollWidth, scrollHeight, drawWidth, drawHeight, of
} }
let end_c = Store.visibledatacolumn[c] - scrollWidth; let end_c = Store.visibledatacolumn[c] - scrollWidth;
//数据透视表
if (!!Store.luckysheetcurrentisPivotTable && pivotTable.drawPivotTable) {
if ((c == 0 || c == 5) && r <= 11) {
luckysheetTableContent.beginPath();
luckysheetTableContent.moveTo(
Store.devicePixelRatio * (end_c - 2 + 0.5 + offsetLeft),
Store.devicePixelRatio * (start_r + offsetTop)
);
luckysheetTableContent.lineTo(
Store.devicePixelRatio * (end_c - 2 + 0.5 + offsetLeft),
Store.devicePixelRatio * (end_r - 2 + offsetTop)
);
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
luckysheetTableContent.strokeStyle = "#000000";
luckysheetTableContent.closePath();
luckysheetTableContent.stroke();
}
if ((r == 2 || r == 11) && c <= 5) {
luckysheetTableContent.beginPath();
luckysheetTableContent.moveTo(
Store.devicePixelRatio * (start_c - 1 + offsetLeft),
Store.devicePixelRatio * (end_r - 2 + 0.5 + offsetTop)
);
luckysheetTableContent.lineTo(
Store.devicePixelRatio * (end_c - 2 + offsetLeft),
Store.devicePixelRatio * (end_r - 2 + 0.5 + offsetTop)
);
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
luckysheetTableContent.strokeStyle = "#000000";
luckysheetTableContent.closePath();
luckysheetTableContent.stroke();
}
if (r == 6 && c == 3) {
luckysheetTableContent.fillText(
"数据透视表",
Store.devicePixelRatio * (start_c + 4 + offsetLeft),
Store.devicePixelRatio *(start_r + (end_r - start_r) / 2 - 1 + offsetTop)
);
}
}
else if (!!Store.luckysheetcurrentisPivotTable) {
if (c < pivotTable.pivotTableBoundary[1] && r < pivotTable.pivotTableBoundary[0]) {
luckysheetTableContent.beginPath();
luckysheetTableContent.moveTo(
Store.devicePixelRatio*(end_c - 2 + 0.5 + offsetLeft),
Store.devicePixelRatio*(start_r + offsetTop)
);
luckysheetTableContent.lineTo(
Store.devicePixelRatio*(end_c - 2 + 0.5 + offsetLeft),
Store.devicePixelRatio*(end_r - 2 + offsetTop)
);
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
luckysheetTableContent.strokeStyle = "#000000";
luckysheetTableContent.closePath();
luckysheetTableContent.stroke();
luckysheetTableContent.beginPath();
luckysheetTableContent.moveTo(
Store.devicePixelRatio*(start_c - 1 + offsetLeft),
Store.devicePixelRatio*(end_r - 2 + 0.5 + offsetTop)
);
luckysheetTableContent.lineTo(
Store.devicePixelRatio*(end_c - 2 + offsetLeft),
Store.devicePixelRatio*(end_r - 2 + 0.5 + offsetTop)
);
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
luckysheetTableContent.strokeStyle = "#000000";
luckysheetTableContent.closePath();
luckysheetTableContent.stroke();
}
}
if (Store.config["rowhidden"] != null && Store.config["rowhidden"][r] != null) { if (Store.config["rowhidden"] != null && Store.config["rowhidden"][r] != null) {
@ -581,8 +507,8 @@ function luckysheetDrawMain(scrollWidth, scrollHeight, drawWidth, drawHeight, of
temp1.shapes, temp1.shapes,
offsetX + x, offsetX + x,
offsetY + y, offsetY + y,
temp1.pixelWidth, temp1.pixelWidth*Store.devicePixelRatio,
temp1.pixelHeight, temp1.pixelHeight*Store.devicePixelRatio,
canvasid, canvasid,
ctx ctx
); );
@ -644,7 +570,7 @@ function luckysheetDrawMain(scrollWidth, scrollHeight, drawWidth, drawHeight, of
luckysheetTableContent.fillStyle = "#000000"; luckysheetTableContent.fillStyle = "#000000";
//文本宽度和高度 //文本宽度和高度
let fontset = luckysheetdefaultstyle.font; let fontset = luckysheetdefaultFont();
luckysheetTableContent.font = fontset; luckysheetTableContent.font = fontset;
let textMetrics = luckysheetTableContent.measureText(value).width; let textMetrics = luckysheetTableContent.measureText(value).width;
@ -673,48 +599,44 @@ function luckysheetDrawMain(scrollWidth, scrollHeight, drawWidth, drawHeight, of
} }
//右边框 //右边框
luckysheetTableContent.beginPath(); if(!Store.luckysheetcurrentisPivotTable){
luckysheetTableContent.moveTo( luckysheetTableContent.beginPath();
Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5), luckysheetTableContent.moveTo(
Store.devicePixelRatio * (start_r + offsetTop - 2) Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5),
); Store.devicePixelRatio * (start_r + offsetTop - 2)
luckysheetTableContent.lineTo( );
Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5), luckysheetTableContent.lineTo(
Store.devicePixelRatio * (end_r + offsetTop - 2) Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5),
); Store.devicePixelRatio * (end_r + offsetTop - 2)
luckysheetTableContent.lineWidth = Store.devicePixelRatio; );
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
if (!!Store.luckysheetcurrentisPivotTable && !pivotTable.drawPivotTable) {
luckysheetTableContent.strokeStyle = "#000000";
}
else{
luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle; luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle;
luckysheetTableContent.stroke();
luckysheetTableContent.closePath();
} }
luckysheetTableContent.stroke();
luckysheetTableContent.closePath();
//下边框 //下边框
luckysheetTableContent.beginPath(); if(!Store.luckysheetcurrentisPivotTable){
luckysheetTableContent.moveTo( luckysheetTableContent.beginPath();
Store.devicePixelRatio * (start_c + offsetLeft - 2), luckysheetTableContent.moveTo(
Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5) Store.devicePixelRatio * (start_c + offsetLeft - 2),
); Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5)
luckysheetTableContent.lineTo( );
Store.devicePixelRatio * (end_c + offsetLeft - 2), luckysheetTableContent.lineTo(
Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5) Store.devicePixelRatio * (end_c + offsetLeft - 2),
); Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5)
luckysheetTableContent.lineWidth = Store.devicePixelRatio; );
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
if (!!Store.luckysheetcurrentisPivotTable && !pivotTable.drawPivotTable) { luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle;
luckysheetTableContent.strokeStyle = "#000000"; luckysheetTableContent.stroke();
} luckysheetTableContent.closePath();
else{
luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle;
} }
luckysheetTableContent.stroke();
luckysheetTableContent.closePath();
} }
//非空白单元格渲染 //非空白单元格渲染
@ -1592,11 +1514,17 @@ function luckysheetDrawMain(scrollWidth, scrollHeight, drawWidth, drawHeight, of
luckysheetTableContent.textBaseline = "top"; luckysheetTableContent.textBaseline = "top";
} }
//若单元格有条件格式图标集 //若单元格有条件格式图标集410 × 384
if(checksCF != null && checksCF["icons"] != null){ if(checksCF != null && checksCF["icons"] != null){
let l = checksCF["icons"]["left"]; let l = checksCF["icons"]["left"];
let t = checksCF["icons"]["top"]; let t = checksCF["icons"]["top"];
// let scaleY = oneLineTextHeight/32;
// luckysheet_CFiconsImg.height = scaleY*384;
// let l = checksCF["icons"]["left"]*scaleY;
// let t = checksCF["icons"]["top"]*scaleY;
luckysheetTableContent.drawImage( luckysheetTableContent.drawImage(
luckysheet_CFiconsImg, luckysheet_CFiconsImg,
l * 42, l * 42,
@ -1933,48 +1861,42 @@ function luckysheetDrawMain(scrollWidth, scrollHeight, drawWidth, drawHeight, of
} }
//右边框重绘 //右边框重绘
luckysheetTableContent.beginPath(); if(!Store.luckysheetcurrentisPivotTable){
luckysheetTableContent.moveTo( luckysheetTableContent.beginPath();
Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5), luckysheetTableContent.moveTo(
Store.devicePixelRatio * (start_r + offsetTop - 2) Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5),
); Store.devicePixelRatio * (start_r + offsetTop - 2)
luckysheetTableContent.lineTo( );
Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5), luckysheetTableContent.lineTo(
Store.devicePixelRatio * (end_r + offsetTop - 2) Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5),
); Store.devicePixelRatio * (end_r + offsetTop - 2)
luckysheetTableContent.lineWidth = Store.devicePixelRatio; );
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
if (!!Store.luckysheetcurrentisPivotTable && !pivotTable.drawPivotTable) {
luckysheetTableContent.strokeStyle = "#000000";
}
else{
luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle; luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle;
luckysheetTableContent.stroke();
luckysheetTableContent.closePath();
} }
luckysheetTableContent.stroke();
luckysheetTableContent.closePath();
//下边框重绘 //下边框重绘
luckysheetTableContent.beginPath(); if(!Store.luckysheetcurrentisPivotTable){
luckysheetTableContent.moveTo( luckysheetTableContent.beginPath();
Store.devicePixelRatio * (start_c + offsetLeft - 2), luckysheetTableContent.moveTo(
Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5) Store.devicePixelRatio * (start_c + offsetLeft - 2),
); Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5)
luckysheetTableContent.lineTo( );
Store.devicePixelRatio * (end_c + offsetLeft - 2), luckysheetTableContent.lineTo(
Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5) Store.devicePixelRatio * (end_c + offsetLeft - 2),
); Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5)
luckysheetTableContent.lineWidth = Store.devicePixelRatio; );
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
if (!!Store.luckysheetcurrentisPivotTable && !pivotTable.drawPivotTable) { luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle;
luckysheetTableContent.strokeStyle = "#000000"; luckysheetTableContent.stroke();
} luckysheetTableContent.closePath();
else{
luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle;
} }
luckysheetTableContent.stroke();
luckysheetTableContent.closePath();
} }
let mcArr = []; let mcArr = [];
@ -2127,6 +2049,106 @@ function luckysheetDrawMain(scrollWidth, scrollHeight, drawWidth, drawHeight, of
} }
} }
//数据透视表边框渲染
for (let r = dataset_row_st; r <= dataset_row_ed; r++) {
let start_r;
if (r == 0) {
start_r = -scrollHeight - 1;
}
else {
start_r = Store.visibledatarow[r - 1] - scrollHeight - 1;
}
let end_r = Store.visibledatarow[r] - scrollHeight;
for (let c = dataset_col_st; c <= dataset_col_ed; c++) {
let start_c;
if (c == 0) {
start_c = -scrollWidth;
}
else {
start_c = Store.visibledatacolumn[c - 1] - scrollWidth;
}
let end_c = Store.visibledatacolumn[c] - scrollWidth;
//数据透视表\
if (!!Store.luckysheetcurrentisPivotTable && pivotTable.drawPivotTable) {
if ((c == 0 || c == 5) && r <= 11) {
luckysheetTableContent.beginPath();
luckysheetTableContent.moveTo(
Store.devicePixelRatio * (end_c - 2 + 0.5 + offsetLeft),
Store.devicePixelRatio * (start_r + offsetTop)
);
luckysheetTableContent.lineTo(
Store.devicePixelRatio * (end_c - 2 + 0.5 + offsetLeft),
Store.devicePixelRatio * (end_r - 2 + offsetTop)
);
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
luckysheetTableContent.strokeStyle = "#000000";
luckysheetTableContent.closePath();
luckysheetTableContent.stroke();
}
if ((r == 2 || r == 11) && c <= 5) {
luckysheetTableContent.beginPath();
luckysheetTableContent.moveTo(
Store.devicePixelRatio * (start_c - 1 + offsetLeft),
Store.devicePixelRatio * (end_r - 2 + 0.5 + offsetTop)
);
luckysheetTableContent.lineTo(
Store.devicePixelRatio * (end_c - 2 + offsetLeft),
Store.devicePixelRatio * (end_r - 2 + 0.5 + offsetTop)
);
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
luckysheetTableContent.strokeStyle = "#000000";
luckysheetTableContent.closePath();
luckysheetTableContent.stroke();
}
if (r == 6 && c == 3) {
luckysheetTableContent.fillText(
"数据透视表",
Store.devicePixelRatio * (start_c + 4 + offsetLeft),
Store.devicePixelRatio *(start_r + (end_r - start_r) / 2 - 1 + offsetTop)
);
}
}
else if (!!Store.luckysheetcurrentisPivotTable) {
if (c < pivotTable.pivotTableBoundary[1] && r < pivotTable.pivotTableBoundary[0]) {
luckysheetTableContent.beginPath();
luckysheetTableContent.moveTo(
Store.devicePixelRatio*(end_c - 2 + 0.5 + offsetLeft),
Store.devicePixelRatio*(start_r + offsetTop)
);
luckysheetTableContent.lineTo(
Store.devicePixelRatio*(end_c - 2 + 0.5 + offsetLeft),
Store.devicePixelRatio*(end_r - 2 + offsetTop)
);
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
luckysheetTableContent.strokeStyle = "#000000";
luckysheetTableContent.closePath();
luckysheetTableContent.stroke();
luckysheetTableContent.beginPath();
luckysheetTableContent.moveTo(
Store.devicePixelRatio*(start_c - 1 + offsetLeft),
Store.devicePixelRatio*(end_r - 2 + 0.5 + offsetTop)
);
luckysheetTableContent.lineTo(
Store.devicePixelRatio*(end_c - 2 + offsetLeft),
Store.devicePixelRatio*(end_r - 2 + 0.5 + offsetTop)
);
luckysheetTableContent.lineWidth = Store.devicePixelRatio;
luckysheetTableContent.strokeStyle = "#000000";
luckysheetTableContent.closePath();
luckysheetTableContent.stroke();
}
}
}
}
//边框单独渲染 //边框单独渲染
if(Store.config["borderInfo"] != null && Store.config["borderInfo"].length > 0){ if(Store.config["borderInfo"] != null && Store.config["borderInfo"].length > 0){
//边框渲染 //边框渲染
@ -2367,7 +2389,7 @@ function luckysheetDrawMain_back(scrollWidth, scrollHeight, drawWidth, drawHeigh
Store.luckysheetTableContentHW[1] * Store.devicePixelRatio Store.luckysheetTableContentHW[1] * Store.devicePixelRatio
); );
offlinecanvas.font = luckysheetdefaultstyle.font; offlinecanvas.font = luckysheetdefaultFont();
offlinecanvas.textBaseline = "top"; offlinecanvas.textBaseline = "top";
offlinecanvas.fillStyle = luckysheetdefaultstyle.fillStyle; offlinecanvas.fillStyle = luckysheetdefaultstyle.fillStyle;
@ -2460,43 +2482,43 @@ function luckysheetDrawMain_back(scrollWidth, scrollHeight, drawWidth, drawHeigh
} }
end_c = Store.visibledatacolumn[c] - scrollWidth; end_c = Store.visibledatacolumn[c] - scrollWidth;
if(c==dataset_col_ed){ // if(c==dataset_col_ed){
if (!Store.luckysheetcurrentisPivotTable && end_r <= drawHeight && start_r >= -1) { // if (!Store.luckysheetcurrentisPivotTable && end_r <= drawHeight && start_r >= -1) {
//行 // //行
luckysheetTableContent.beginPath(); // luckysheetTableContent.beginPath();
luckysheetTableContent.moveTo( // luckysheetTableContent.moveTo(
Store.devicePixelRatio * (offsetLeft - 1), // Store.devicePixelRatio * (offsetLeft - 1),
Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5) // Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5)
); // );
luckysheetTableContent.lineTo( // luckysheetTableContent.lineTo(
Store.devicePixelRatio * (end_c + offsetLeft-2), // Store.devicePixelRatio * (end_c + offsetLeft-2),
Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5) // Store.devicePixelRatio * (end_r + offsetTop - 2 + 0.5)
); // );
luckysheetTableContent.lineWidth = Store.devicePixelRatio; // luckysheetTableContent.lineWidth = Store.devicePixelRatio;
luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle; // luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle;
luckysheetTableContent.closePath(); // luckysheetTableContent.closePath();
luckysheetTableContent.stroke(); // luckysheetTableContent.stroke();
} // }
} // }
if (r == dataset_row_st) { // if (r == dataset_row_st) {
if (!Store.luckysheetcurrentisPivotTable && end_c <= drawWidth + 18 && start_c >= -1) { // if (!Store.luckysheetcurrentisPivotTable && end_c <= drawWidth + 18 && start_c >= -1) {
//列 // //列
luckysheetTableContent.beginPath(); // luckysheetTableContent.beginPath();
luckysheetTableContent.moveTo( // luckysheetTableContent.moveTo(
Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5), // Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5),
Store.devicePixelRatio * (offsetTop - 1) // Store.devicePixelRatio * (offsetTop - 1)
); // );
luckysheetTableContent.lineTo( // luckysheetTableContent.lineTo(
Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5), // Store.devicePixelRatio * (end_c + offsetLeft - 2 + 0.5),
Store.devicePixelRatio * (fill_row_ed - fill_row_st + offsetTop-2) // Store.devicePixelRatio * (fill_row_ed - fill_row_st + offsetTop-2)
); // );
luckysheetTableContent.lineWidth = Store.devicePixelRatio; // luckysheetTableContent.lineWidth = Store.devicePixelRatio;
luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle; // luckysheetTableContent.strokeStyle = luckysheetdefaultstyle.strokeStyle;
luckysheetTableContent.closePath(); // luckysheetTableContent.closePath();
luckysheetTableContent.stroke(); // luckysheetTableContent.stroke();
} // }
} // }
if (!!Store.luckysheetcurrentisPivotTable && pivotTable.drawPivotTable) { if (!!Store.luckysheetcurrentisPivotTable && pivotTable.drawPivotTable) {
if ((c == 0 || c == 5) && r <= 11) { if ((c == 0 || c == 5) && r <= 11) {
@ -2983,7 +3005,7 @@ function luckysheetDrawMain_back(scrollWidth, scrollHeight, drawWidth, drawHeigh
} }
} }
offlinecanvas.font = luckysheetdefaultstyle.font; offlinecanvas.font = luckysheetdefaultFont();
luckysheetTableContent.drawImage($("#luckysheetTableContentF").get(0), cellsize[0], cellsize[1], cellsize[2], cellsize[3], cellsize[0], cellsize[1], cellsize[2], cellsize[3]); luckysheetTableContent.drawImage($("#luckysheetTableContentF").get(0), cellsize[0], cellsize[1], cellsize[2], cellsize[3], cellsize[0], cellsize[1], cellsize[2], cellsize[3]);

4
src/utils/util.js

@ -1,4 +1,4 @@
import { columeHeader_word, columeHeader_word_index, luckysheetdefaultstyle } from '../controllers/constant'; import { columeHeader_word, columeHeader_word_index,luckysheetdefaultFont } from '../controllers/constant';
import menuButton from '../controllers/menuButton'; import menuButton from '../controllers/menuButton';
import { isdatatype, isdatatypemulti } from '../global/datecontroll'; import { isdatatype, isdatatypemulti } from '../global/datecontroll';
import { hasChinaword } from '../global/validate'; import { hasChinaword } from '../global/validate';
@ -349,7 +349,7 @@ function luckysheetfontformat(format) {
return font; return font;
} }
else { else {
return luckysheetdefaultstyle.font; return luckysheetdefaultFont();
} }
} }

Loading…
Cancel
Save