|
@@ -437,45 +437,52 @@ let JpcCanvasOutput = {
|
|
|
// 约定默认长宽比例是2:1,图片分辨率是600*300
|
|
|
const rst = [0, 0, 0, 0]; // left, top, right, bottom
|
|
|
if (cell && cell[JV.PROP_AREA]) {
|
|
|
- let width = cell[JV.PROP_AREA][JV.PROP_RIGHT] - cell[JV.PROP_AREA][JV.PROP_LEFT],
|
|
|
- height = cell[JV.PROP_AREA][JV.PROP_BOTTOM] - cell[JV.PROP_AREA][JV.PROP_TOP],
|
|
|
- centerPh = (cell[JV.PROP_AREA][JV.PROP_RIGHT] + cell[JV.PROP_AREA][JV.PROP_LEFT]) / 2,
|
|
|
- centerPv = (cell[JV.PROP_AREA][JV.PROP_BOTTOM] + cell[JV.PROP_AREA][JV.PROP_TOP]) / 2
|
|
|
- ;
|
|
|
- if (width > height * 2) {
|
|
|
- width = height * 2;
|
|
|
+ if (cell.hasOwnProperty('isOrgShow') && cell.isOrgShow) {
|
|
|
+ rst[JV.IDX_LEFT] = cell[JV.PROP_AREA][JV.PROP_LEFT];
|
|
|
+ rst[JV.IDX_TOP] = cell[JV.PROP_AREA][JV.PROP_TOP];
|
|
|
+ rst[JV.IDX_RIGHT] = cell[JV.PROP_AREA][JV.PROP_RIGHT];
|
|
|
+ rst[JV.IDX_BOTTOM] = cell[JV.PROP_AREA][JV.PROP_BOTTOM];
|
|
|
} else {
|
|
|
- height = width / 2;
|
|
|
- }
|
|
|
- switch (control[JV.CONTROL_PROPS[JV.CONTROL_PROP_IDX_HORIZON]]) {
|
|
|
- case 'left':
|
|
|
- rst[JV.IDX_LEFT] = cell[JV.PROP_AREA][JV.PROP_LEFT];
|
|
|
- rst[JV.IDX_RIGHT] = rst[0] + width;
|
|
|
- break;
|
|
|
- case 'right':
|
|
|
- rst[JV.IDX_RIGHT] = cell[JV.PROP_AREA][JV.PROP_RIGHT];
|
|
|
- rst[JV.IDX_LEFT] = rst[JV.IDX_RIGHT] - width;
|
|
|
- break;
|
|
|
- default:
|
|
|
- //center
|
|
|
- rst[JV.IDX_LEFT] = centerPh - width / 2;
|
|
|
- rst[JV.IDX_RIGHT] = centerPh + width / 2;
|
|
|
- break;
|
|
|
- }
|
|
|
- switch (control[JV.CONTROL_PROPS[JV.CONTROL_PROP_IDX_VERTICAL]]) {
|
|
|
- case 'top':
|
|
|
- rst[JV.IDX_TOP] = cell[JV.PROP_AREA][JV.PROP_TOP];
|
|
|
- rst[JV.IDX_BOTTOM] = rst[JV.IDX_TOP] + height;
|
|
|
- break;
|
|
|
- case 'bottom':
|
|
|
- rst[JV.IDX_BOTTOM] = cell[JV.PROP_AREA][JV.PROP_BOTTOM];
|
|
|
- rst[JV.IDX_TOP] = rst[JV.IDX_BOTTOM] - height;
|
|
|
- break;
|
|
|
- default:
|
|
|
- //center
|
|
|
- rst[JV.IDX_TOP] = centerPv - height / 2;
|
|
|
- rst[JV.IDX_BOTTOM] = centerPv + height / 2;
|
|
|
- break;
|
|
|
+ let width = cell[JV.PROP_AREA][JV.PROP_RIGHT] - cell[JV.PROP_AREA][JV.PROP_LEFT],
|
|
|
+ height = cell[JV.PROP_AREA][JV.PROP_BOTTOM] - cell[JV.PROP_AREA][JV.PROP_TOP],
|
|
|
+ centerPh = (cell[JV.PROP_AREA][JV.PROP_RIGHT] + cell[JV.PROP_AREA][JV.PROP_LEFT]) / 2,
|
|
|
+ centerPv = (cell[JV.PROP_AREA][JV.PROP_BOTTOM] + cell[JV.PROP_AREA][JV.PROP_TOP]) / 2
|
|
|
+ ;
|
|
|
+ if (width > height * 2) {
|
|
|
+ width = height * 2;
|
|
|
+ } else {
|
|
|
+ height = width / 2;
|
|
|
+ }
|
|
|
+ switch (control[JV.CONTROL_PROPS[JV.CONTROL_PROP_IDX_HORIZON]]) {
|
|
|
+ case 'left':
|
|
|
+ rst[JV.IDX_LEFT] = cell[JV.PROP_AREA][JV.PROP_LEFT];
|
|
|
+ rst[JV.IDX_RIGHT] = rst[0] + width;
|
|
|
+ break;
|
|
|
+ case 'right':
|
|
|
+ rst[JV.IDX_RIGHT] = cell[JV.PROP_AREA][JV.PROP_RIGHT];
|
|
|
+ rst[JV.IDX_LEFT] = rst[JV.IDX_RIGHT] - width;
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ //center
|
|
|
+ rst[JV.IDX_LEFT] = centerPh - width / 2;
|
|
|
+ rst[JV.IDX_RIGHT] = centerPh + width / 2;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ switch (control[JV.CONTROL_PROPS[JV.CONTROL_PROP_IDX_VERTICAL]]) {
|
|
|
+ case 'top':
|
|
|
+ rst[JV.IDX_TOP] = cell[JV.PROP_AREA][JV.PROP_TOP];
|
|
|
+ rst[JV.IDX_BOTTOM] = rst[JV.IDX_TOP] + height;
|
|
|
+ break;
|
|
|
+ case 'bottom':
|
|
|
+ rst[JV.IDX_BOTTOM] = cell[JV.PROP_AREA][JV.PROP_BOTTOM];
|
|
|
+ rst[JV.IDX_TOP] = rst[JV.IDX_BOTTOM] - height;
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ //center
|
|
|
+ rst[JV.IDX_TOP] = centerPv - height / 2;
|
|
|
+ rst[JV.IDX_BOTTOM] = centerPv + height / 2;
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
rst[0] = rst[0] + JpcCanvasOutput.offsetX;
|