|
@@ -45,7 +45,7 @@ function printPageLoading() {
|
|
|
|
|
|
function showPreviewData(svgArr, actAreaArr, scaleFactor, pageSize, orientation, orgPixelSize) {
|
|
function showPreviewData(svgArr, actAreaArr, scaleFactor, pageSize, orientation, orgPixelSize) {
|
|
let orgHeight = 793, orgWidth = 1122;
|
|
let orgHeight = 793, orgWidth = 1122;
|
|
- let DFT_MARGIN = 5;
|
|
|
|
|
|
+ let DFT_MARGIN = 2;
|
|
if (pageSize === 'A3') {
|
|
if (pageSize === 'A3') {
|
|
orgHeight = 1122;
|
|
orgHeight = 1122;
|
|
orgWidth = 793 * 2;
|
|
orgWidth = 793 * 2;
|
|
@@ -62,17 +62,26 @@ function showPreviewData(svgArr, actAreaArr, scaleFactor, pageSize, orientation,
|
|
|
|
|
|
for (let i = 0; i < svgArr.length; i++) {
|
|
for (let i = 0; i < svgArr.length; i++) {
|
|
let offsetHeight = 0, offsetWidth = 0;
|
|
let offsetHeight = 0, offsetWidth = 0;
|
|
|
|
+ let paddingStr = '';
|
|
if (actAreaArr) {
|
|
if (actAreaArr) {
|
|
|
|
+ paddingStr = `padding: ${actAreaArr[i].Top}px 0px 0px ${actAreaArr[i].Left}px`;
|
|
|
|
+ if (actAreaArr[i].Right > actAreaArr[i].Bottom) {
|
|
|
|
+ //横向,需要重新调整padding
|
|
|
|
+ paddingStr = `padding: ${actAreaArr[i].Left}px 0px 0px ${orgHeight - actAreaArr[i].Bottom}px`;
|
|
|
|
+ }
|
|
offsetWidth = actAreaArr[i].Left + (pageWidth - actAreaArr[i].Right) - DFT_MARGIN;
|
|
offsetWidth = actAreaArr[i].Left + (pageWidth - actAreaArr[i].Right) - DFT_MARGIN;
|
|
offsetHeight = actAreaArr[i].Top + (pageHeight - actAreaArr[i].Bottom) - DFT_MARGIN;
|
|
offsetHeight = actAreaArr[i].Top + (pageHeight - actAreaArr[i].Bottom) - DFT_MARGIN;
|
|
if (orgPixelSize[0] > orgPixelSize[1]) {
|
|
if (orgPixelSize[0] > orgPixelSize[1]) {
|
|
//横向强制改纵向(系统是以纵向为准),那么计算offset的方式会有所不同
|
|
//横向强制改纵向(系统是以纵向为准),那么计算offset的方式会有所不同
|
|
offsetWidth = actAreaArr[i].Top + (pageWidth - actAreaArr[i].Bottom) - DFT_MARGIN;
|
|
offsetWidth = actAreaArr[i].Top + (pageWidth - actAreaArr[i].Bottom) - DFT_MARGIN;
|
|
//横向转纵向时,还得考虑左上角转右上角的Left与Top之间的差,否则坐标还是会有偏差
|
|
//横向转纵向时,还得考虑左上角转右上角的Left与Top之间的差,否则坐标还是会有偏差
|
|
- offsetHeight = actAreaArr[i].Left + (pageHeight - actAreaArr[i].Right) - (actAreaArr[i].Left - actAreaArr[i].Top) - DFT_MARGIN;
|
|
|
|
|
|
+ // offsetHeight = actAreaArr[i].Left + (pageHeight - actAreaArr[i].Right) - (actAreaArr[i].Left - actAreaArr[i].Top) - DFT_MARGIN;
|
|
|
|
+ //新方式下,没那么复杂了
|
|
|
|
+ offsetHeight = actAreaArr[i].Left + (pageHeight - actAreaArr[i].Right) - DFT_MARGIN;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- let div = $('<div class="pageBreak"></div>');
|
|
|
|
|
|
+ // 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){
|
|
$(div).find("svg").each(function(cIdx,elementSvg){
|
|
elementSvg.setAttribute('height', pageHeight - offsetHeight);
|
|
elementSvg.setAttribute('height', pageHeight - offsetHeight);
|