Просмотр исходного кода

Change inner cropmarks from 48px to 36px.

The tips of the larger cropmarks leaving black dots on the card corners.
Weiyi Lou 2 лет назад
Родитель
Сommit
b560c71551

+ 2 - 2
booklet_arranger/booklet_arranger_extension.py

@@ -222,7 +222,7 @@ class BookletArranger(Extension):
             x_diff = x_diff + offset
         else:
             x_diff = x_diff - (bds.right() + 1 - bds.left()) - offset
-        page.move(page_pos.x() + x_diff, page_pos.y() + y_diff)
+        page.move(int(page_pos.x() + x_diff), int(page_pos.y() + y_diff))
 
         # Keep pre-bleed bounds for crop marks.
         bds = page.bounds()
@@ -252,7 +252,7 @@ class BookletArranger(Extension):
             page.setPixelData(crop_mark, x, ybot, crop_mark_width, crop_mark_height)
             if page_number == 1:
                 # Specially mark centre on first page (always p1a right side)
-                x = bds.left() - 1 - offset
+                x = int(bds.left() - 1 - offset)
                 page.setPixelData(crop_mark, x, ytop, crop_mark_width, crop_mark_height)
                 page.setPixelData(crop_mark, x, ybot, crop_mark_width, crop_mark_height)
 

+ 4 - 2
bs_pnp_tools_docker/bs_pnp_tools_docker.py

@@ -185,10 +185,10 @@ class BsPnpTools(DockWidget):
         # Create inner and outer cropmarks.
         blackPixel = b'\x00\x00\x00\xff'
         cropMarkWidth = 2
-        cropMarkHeight = 48
-        cropMark = QByteArray(blackPixel * cropMarkWidth * cropMarkHeight)
 
         if self.outerCheck.checkState():
+            cropMarkHeight = 48
+            cropMark = QByteArray(blackPixel * cropMarkWidth * cropMarkHeight)
             for x in xSet:
                 layer.setPixelData(cropMark, x-1, ySet[0]-35-48, cropMarkWidth, cropMarkHeight) # top vertical line
                 layer.setPixelData(cropMark, x-1, ySet[-1]+35, cropMarkWidth, cropMarkHeight) # bottom vertical line
@@ -197,6 +197,8 @@ class BsPnpTools(DockWidget):
                 layer.setPixelData(cropMark, xSet[-1]+35, y-1, cropMarkHeight, cropMarkWidth) # right horizontal line
 
         if self.innerCheck.checkState():
+            cropMarkHeight = 36
+            cropMark = QByteArray(blackPixel * cropMarkWidth * cropMarkHeight)
             for x in xSet:
                 for y in ySet:
                     layer.setPixelData(cropMark, x-1, int(y - cropMarkHeight/2), cropMarkWidth, cropMarkHeight) # vertical line

+ 19 - 31
card_grid_generator/card_grid_generator_extension.py

@@ -199,40 +199,28 @@ class CardGridGenerator(Extension):
             root = doc.rootNode()
             root.addChildNode(layer, None)
 
-            # Create vertical cropmarks.
             blackPixel = b'\x00\x00\x00\xff'
             cropMarkWidth = 2
-            cropMarkHeight = 48
-            cropMark = QByteArray(blackPixel * cropMarkWidth * cropMarkHeight)
-            for x in xSetCardsOnly:
-                yToDo = []
-                if cropAround:
-                    yToDo.append(ySet[0] - cropMarkHeight) # top
-                    yToDo.append(ySet[-1]) # bottom
-
-                if cropBetween:
+
+            # Create outer cropmarks.
+            if cropAround:
+                cropMarkHeight = 48
+                cropMark = QByteArray(blackPixel * cropMarkWidth * cropMarkHeight)
+                for x in xSetCardsOnly:
+                    layer.setPixelData(cropMark, x-1, ySet[0]-cropMarkHeight, cropMarkWidth, cropMarkHeight) # top vertical line
+                    layer.setPixelData(cropMark, x-1, ySet[-1], cropMarkWidth, cropMarkHeight) # bottom vertical line
+                for y in ySetCardsOnly:
+                    layer.setPixelData(cropMark, xSet[0]-cropMarkHeight, y-1, cropMarkHeight, cropMarkWidth) # left horizontal line
+                    layer.setPixelData(cropMark, xSet[-1], y-1, cropMarkHeight, cropMarkWidth) # right horizontal line
+
+            # Create inner cropmarks.
+            if cropBetween:
+                cropMarkHeight = 36
+                cropMark = QByteArray(blackPixel * cropMarkWidth * cropMarkHeight)
+                for x in xSetCardsOnly:
                     for y in ySetCardsOnly:
-                        yToDo.append(int(y - cropMarkHeight/2))
-
-                for y in yToDo:
-                    layer.setPixelData(cropMark, x - 1, y, cropMarkWidth, cropMarkHeight)
-
-            # Create horizontal cropmarks.
-            cropMarkWidth = 48
-            cropMarkHeight = 2
-            cropMark = QByteArray(blackPixel * cropMarkWidth * cropMarkHeight)
-            for y in ySetCardsOnly:
-                xToDo = []
-                if cropAround:
-                    xToDo.append(xSet[0] - cropMarkWidth) # left
-                    xToDo.append(xSet[-1]) # right
-
-                if cropBetween:
-                    for x in xSetCardsOnly:
-                        xToDo.append(int(x - cropMarkWidth/2))
-
-                for x in xToDo:
-                    layer.setPixelData(cropMark, x, y - 1, cropMarkWidth, cropMarkHeight)
+                        layer.setPixelData(cropMark, x-1, int(y - cropMarkHeight/2), cropMarkWidth, cropMarkHeight) # vertical line
+                        layer.setPixelData(cropMark, int(x - cropMarkHeight/2), y-1, cropMarkHeight, cropMarkWidth) # horizontal line
 
             # Refresh the view, or the cropmarks will not be immediately shown.
             doc.refreshProjection()