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:
GeorgeandClaude Sonnet 5 committed 2026-09-04 16:44:45 -05:00
1 parent 182f20d43e
commit d900b62f33
2 files changed
+14 -9

No files matched your search

+4 -3
View File
@@ -26,9 +26,10 @@ logger = logging.getLogger(__name__)
# Tamaño de papel que usa cada reporte al renderizar el PDF (CSS @page.size).
PAPER_SIZES = {"A4": "A4", "Carta": "letter"}
# Alto útil de la página en orientación horizontal (tamaño de papel menos los
# 0.3in de margen superior e inferior definidos en el @page de stickers.html).
PAGINA_ALTO_LANDSCAPE = {"A4": "7.67in", "Carta": "7.9in"}
# Alto útil de la página en orientación horizontal (tamaño de papel menos el
# 1.6cm de margen superior + 1cm de margen inferior definidos en el @page de
# stickers.html).
PAGINA_ALTO_LANDSCAPE = {"A4": "18.4cm", "Carta": "18.99cm"}
# Query original de Crystal Reports para DLN20015, adaptada: el placeholder
# de Crystal `{?Dockey@}` se reemplaza por un bind param `?` de hdbcli, y cada
+10 -6
View File
@@ -10,7 +10,7 @@
@page {
size: {{ paper_size }} landscape;
margin: 0.3in;
margin: 1.6cm 3cm 1cm 2.2cm;
}
body {
@@ -33,8 +33,9 @@
}
.sticker {
height: 100%;
border: 2px solid #000;
padding: 0.3in 0.35in;
padding: 0.15in 0.35in;
box-sizing: border-box;
position: relative;
display: flex;
@@ -47,15 +48,15 @@
font-size: 20pt;
font-weight: bold;
letter-spacing: 1px;
margin-bottom: 16px;
margin-bottom: 10px;
}
.campo {
margin-bottom: 14px;
margin-bottom: 8px;
}
.campo-direccion {
min-height: 0.65in;
min-height: 0.5in;
}
.campo-label {
@@ -77,10 +78,13 @@
}
.documento-linea {
position: absolute;
left: 0.35in;
right: 0.35in;
bottom: 0.15in;
display: flex;
justify-content: space-between;
align-items: flex-end;
margin-top: auto;
}
.documento-linea .campo {