zhangjie 2 роки тому
батько
коміт
f050a84fa9

+ 7 - 0
src/modules/card/assets/styles/card-preview.scss

@@ -845,6 +845,13 @@
         margin: 0 2px;
       }
     }
+
+    &::after {
+      content: "";
+      display: inline-block;
+      width: 100%;
+      height: 0;
+    }
   }
   &.is-side {
     -webkit-transform: rotate(-90deg);

+ 18 - 0
src/modules/card/assets/styles/card-temp.css

@@ -790,6 +790,20 @@
   margin: 0 2px;
 }
 
+.elem-text .text-body::after {
+  content: "";
+  display: inline-block;
+  width: 100%;
+  height: 0;
+}
+
+.elem-text.is-side {
+  -webkit-transform: rotate(-90deg);
+  transform: rotate(-90deg);
+  -webkit-transform-origin: 0 100%;
+  transform-origin: 0 100%;
+}
+
 .elem-barcode {
   height: 100%;
   border-color: transparent;
@@ -1174,10 +1188,14 @@
   overflow: hidden;
   font-size: 0;
 }
+
 .elem-fill-field.is-side {
+  -webkit-transform: rotate(-90deg);
   transform: rotate(-90deg);
+  -webkit-transform-origin: 0 100%;
   transform-origin: 0 100%;
 }
+
 .fill-field-item {
   display: inline-block;
   padding: 0 10px;

Різницю між файлами не показано, бо вона завелика
+ 0 - 0
src/modules/card/previewTemp.js


+ 5 - 2
src/modules/paper-export/assets/styles/paper-temp-preview.scss

@@ -116,13 +116,13 @@
 // elem-paper-struct
 .elem-paper-struct {
   ol {
-    padding-left: 15px;
+    padding-left: 20px;
   }
   li {
     list-style: decimal;
   }
 }
-.paper-template-build {
+.paper-template-view {
   .element-item-paper-struct {
     height: auto !important;
   }
@@ -133,4 +133,7 @@
   .elem-rich-text {
     font-size: 14px;
   }
+  .topic-element-preview {
+    font-size: 14px;
+  }
 }

Різницю між файлами не показано, бо вона завелика
+ 0 - 0
src/modules/paper-export/previewTemp.js


+ 59 - 48
src/modules/paper-export/views/PaperTemplateBuild.vue

@@ -452,6 +452,7 @@ export default {
     },
     buildReleasePages() {
       this.resetRenderStructSize();
+      // console.log(this.renderStructList);
       this.buildPageAutoPage();
     },
     resetRenderStructSize() {
@@ -511,74 +512,84 @@ export default {
         curColumnNo = 0,
         curColumnHeight = 0;
       let curLinePercent = 0;
+      let groups = [],
+        curGroup = [];
 
+      // 分组自动分页 选项分组
       const getNextElem = () => {
         return this.renderStructList.shift();
       };
 
       curElem = getNextElem();
       while (curElem) {
-        if (!curPage) {
-          curPage = this.getNewPageModel(pages.length);
-        }
-
-        if (!curColumn) {
-          curColumn = curPage.columns[curColumnNo++];
-          curColumnHeight = this.calcInitColumnHeight(curColumn);
-        }
-
         if (
           curElem.contType !== "option" ||
           (curElem.contType === "option" && curElem._percent === 1)
         ) {
-          // 非选项,单独占整行
-          curLinePercent = 1;
-          if (curElem.h + curColumnHeight > this.maxColumnHeight) {
-            // 当前栏满了
-            if (curColumnNo >= curPage.columnNumber) {
-              // 当前页满了
-              pages.push(curPage);
-              curPage = null;
-              curColumnNo = null;
-            }
-            curColumn = null;
-            curColumnHeight = 0;
-          } else {
-            // 当前栏未满
-            curColumnHeight += curElem.h;
-            curColumn.texts.push(curElem);
-            curElem = getNextElem();
+          if (curGroup.length) {
+            groups.push(curGroup);
+            curGroup = [];
+            curLinePercent = 0;
           }
+
+          groups.push([curElem]);
+          curElem = getNextElem();
         } else {
-          // 选项的处理
           if (curLinePercent + curElem._percent > 1) {
-            // 行满了,放下一行
-            if (curElem.h + curColumnHeight > this.maxColumnHeight) {
-              curLinePercent = 1;
-              // 当前栏满了
-              if (curColumnNo >= curPage.columnNumber) {
-                // 当前页满了
-                pages.push(curPage);
-                curPage = null;
-                curColumnNo = null;
-              }
-              curColumn = null;
-              curColumnHeight = 0;
-            } else {
-              // 当前栏未满,放下一行
-              curLinePercent = curElem._percent;
-              curColumnHeight += curElem.h;
-              curColumn.texts.push(curElem);
-              curElem = getNextElem();
-            }
+            groups.push(curGroup);
+            curGroup = [];
+            curLinePercent = 0;
           } else {
-            // 行未满,放当前行
+            curGroup.push(curElem);
             curLinePercent += curElem._percent;
-            curColumn.texts.push(curElem);
             curElem = getNextElem();
           }
         }
       }
+      if (curGroup.length) {
+        groups.push(curGroup);
+        curGroup = [];
+      }
+
+      const getNextGroup = () => {
+        return groups.shift();
+      };
+      curGroup = getNextGroup();
+      while (curGroup) {
+        if (!curPage) {
+          curPage = this.getNewPageModel(pages.length);
+        }
+
+        if (!curColumn) {
+          curColumn = curPage.columns[curColumnNo++];
+          curColumnHeight = this.calcInitColumnHeight(curColumn);
+        }
+
+        let curGroupHeigth =
+          groups.length === 1
+            ? curGroup[0].h
+            : Math.max.apply(
+                null,
+                curGroup.map((item) => item.h)
+              );
+
+        if (curGroupHeigth + curColumnHeight > this.maxColumnHeight) {
+          // 当前栏满了
+          if (curColumnNo >= curPage.columnNumber) {
+            // 当前页满了
+            pages.push(curPage);
+            curPage = null;
+            curColumnNo = null;
+          }
+          curColumn = null;
+          curColumnHeight = 0;
+        } else {
+          // 当前栏未满
+          curColumnHeight += curGroupHeigth;
+          curColumn.texts.push(...curGroup);
+          curGroup = getNextGroup();
+        }
+      }
 
       if (curPage) {
         pages.push(curPage);

Деякі файли не було показано, через те що забагато файлів було змінено