Ajustar márgenes y layout del reporte de etiquetas (stickers)
Los márgenes de impresión eran muy angostos y el contenido de cada etiqueta salía del área imprimible. Se amplían los márgenes del @page, se recalcula la altura útil de página acorde, se recorta el espaciado interno de la etiqueta para que entre en el nuevo espacio disponible, y se reemplaza el "margin-top: auto" (que WeasyPrint no respetaba) por un posicionamiento absoluto para anclar la línea de documento al fondo del recuadro. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
182f20d43e
commit
d900b62f33
2 files changed
+14
-9
No files matched your search
@@ -26,9 +26,10 @@ logger = logging.getLogger(__name__)
|
|||||||
# Tamaño de papel que usa cada reporte al renderizar el PDF (CSS @page.size).
|
# Tamaño de papel que usa cada reporte al renderizar el PDF (CSS @page.size).
|
||||||
PAPER_SIZES = {"A4": "A4", "Carta": "letter"}
|
PAPER_SIZES = {"A4": "A4", "Carta": "letter"}
|
||||||
|
|
||||||
# Alto útil de la página en orientación horizontal (tamaño de papel menos los
|
# Alto útil de la página en orientación horizontal (tamaño de papel menos el
|
||||||
# 0.3in de margen superior e inferior definidos en el @page de stickers.html).
|
# 1.6cm de margen superior + 1cm de margen inferior definidos en el @page de
|
||||||
PAGINA_ALTO_LANDSCAPE = {"A4": "7.67in", "Carta": "7.9in"}
|
# stickers.html).
|
||||||
|
PAGINA_ALTO_LANDSCAPE = {"A4": "18.4cm", "Carta": "18.99cm"}
|
||||||
|
|
||||||
# Query original de Crystal Reports para DLN20015, adaptada: el placeholder
|
# Query original de Crystal Reports para DLN20015, adaptada: el placeholder
|
||||||
# de Crystal `{?Dockey@}` se reemplaza por un bind param `?` de hdbcli, y cada
|
# de Crystal `{?Dockey@}` se reemplaza por un bind param `?` de hdbcli, y cada
|
||||||
|
|||||||
@@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
@page {
|
@page {
|
||||||
size: {{ paper_size }} landscape;
|
size: {{ paper_size }} landscape;
|
||||||
margin: 0.3in;
|
margin: 1.6cm 3cm 1cm 2.2cm;
|
||||||
}
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
@@ -33,8 +33,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.sticker {
|
.sticker {
|
||||||
|
height: 100%;
|
||||||
border: 2px solid #000;
|
border: 2px solid #000;
|
||||||
padding: 0.3in 0.35in;
|
padding: 0.15in 0.35in;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
position: relative;
|
position: relative;
|
||||||
display: flex;
|
display: flex;
|
||||||
@@ -47,15 +48,15 @@
|
|||||||
font-size: 20pt;
|
font-size: 20pt;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
letter-spacing: 1px;
|
letter-spacing: 1px;
|
||||||
margin-bottom: 16px;
|
margin-bottom: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.campo {
|
.campo {
|
||||||
margin-bottom: 14px;
|
margin-bottom: 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.campo-direccion {
|
.campo-direccion {
|
||||||
min-height: 0.65in;
|
min-height: 0.5in;
|
||||||
}
|
}
|
||||||
|
|
||||||
.campo-label {
|
.campo-label {
|
||||||
@@ -77,10 +78,13 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.documento-linea {
|
.documento-linea {
|
||||||
|
position: absolute;
|
||||||
|
left: 0.35in;
|
||||||
|
right: 0.35in;
|
||||||
|
bottom: 0.15in;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: flex-end;
|
align-items: flex-end;
|
||||||
margin-top: auto;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.documento-linea .campo {
|
.documento-linea .campo {
|
||||||
|
|||||||
Reference in new issue
Block a user