|
|
|
@ -20,6 +20,7 @@ import { selectHightlightShow, selectIsOverlap, selectionCopyShow, luckysheet_co |
|
|
|
import selection from './selection'; |
|
|
|
import controlHistory from './controlHistory'; |
|
|
|
import splitColumn from './splitColumn'; |
|
|
|
import { luckysheetdefaultstyle } from './constant'; |
|
|
|
|
|
|
|
import { |
|
|
|
replaceHtml, |
|
|
|
@ -3260,7 +3261,7 @@ export default function luckysheetHandler() { |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
//复制范围内包含部分合并单元格,提示
|
|
|
|
//截图范围内包含部分合并单元格,提示
|
|
|
|
if (Store.config["merge"] != null) { |
|
|
|
let has_PartMC = false; |
|
|
|
|
|
|
|
@ -3293,14 +3294,6 @@ export default function luckysheetHandler() { |
|
|
|
let st_c = Store.luckysheet_select_save[0].column[0], |
|
|
|
ed_c = Store.luckysheet_select_save[0].column[1]; |
|
|
|
|
|
|
|
let shotData = datagridgrowth([], ed_r + 1, ed_c + 1); |
|
|
|
|
|
|
|
for (let r = st_r; r <= ed_r; r++) { |
|
|
|
for (let c = st_c; c <= ed_c; c++) { |
|
|
|
shotData[r][c] = Store.flowdata[r][c]; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
let scrollHeight, rh_height; |
|
|
|
if (st_r - 1 < 0) { |
|
|
|
scrollHeight = 0; |
|
|
|
@ -3326,13 +3319,37 @@ export default function luckysheetHandler() { |
|
|
|
height: Math.ceil(rh_height * devicePixelRatio) |
|
|
|
}).css({ width: ch_width, height: rh_height }); |
|
|
|
|
|
|
|
let d = Store.flowdata; |
|
|
|
Store.flowdata = shotData; |
|
|
|
|
|
|
|
luckysheetDrawMain(scrollWidth, scrollHeight, ch_width, rh_height, 1, 1, null, null, newCanvas); |
|
|
|
|
|
|
|
Store.flowdata = d; |
|
|
|
editor.webWorkerFlowDataCache(Store.flowdata);//worker存数据
|
|
|
|
let ctx_newCanvas = newCanvas.get(0).getContext("2d"); |
|
|
|
|
|
|
|
//补上 左边框和上边框
|
|
|
|
ctx_newCanvas.beginPath(); |
|
|
|
ctx_newCanvas.moveTo( |
|
|
|
0, |
|
|
|
0 |
|
|
|
); |
|
|
|
ctx_newCanvas.lineTo( |
|
|
|
0, |
|
|
|
Store.devicePixelRatio * rh_height |
|
|
|
); |
|
|
|
ctx_newCanvas.lineWidth = Store.devicePixelRatio * 2; |
|
|
|
ctx_newCanvas.strokeStyle = luckysheetdefaultstyle.strokeStyle; |
|
|
|
ctx_newCanvas.stroke(); |
|
|
|
ctx_newCanvas.closePath(); |
|
|
|
|
|
|
|
ctx_newCanvas.beginPath(); |
|
|
|
ctx_newCanvas.moveTo( |
|
|
|
0, |
|
|
|
0 |
|
|
|
); |
|
|
|
ctx_newCanvas.lineTo( |
|
|
|
Store.devicePixelRatio * ch_width, |
|
|
|
0 |
|
|
|
); |
|
|
|
ctx_newCanvas.lineWidth = Store.devicePixelRatio * 2; |
|
|
|
ctx_newCanvas.strokeStyle = luckysheetdefaultstyle.strokeStyle; |
|
|
|
ctx_newCanvas.stroke(); |
|
|
|
ctx_newCanvas.closePath(); |
|
|
|
|
|
|
|
let image = new Image(); |
|
|
|
let url = newCanvas.get(0).toDataURL("image/png"); |
|
|
|
|