PHP - Cómo evitar que parte de la segunda columna DomPdf pase a la segunda página

 
Vista:
sin imagen de perfil

Cómo evitar que parte de la segunda columna DomPdf pase a la segunda página

Publicado por Gabriela (2 intervenciones) el 04/09/2023 02:33:31
Hola. Estoy comenzando en esto del desarrollo web.

Debo generar un Pdf que servirá para completar un comprobante genérico impreso.

El texto a imprimir se encuentra dividido en dos columnas de idéntico contenido.

Tomé un modelo de css y lo adapté. El problema es que la primer columna se muestra bien y la segunda, en cambio, se muestra cortada, y parte de la segunda columna se muestra en una segunda página.

Este es el css

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
<style type="text/css">
 
@page {
    margin-left: 1cm;
    margin-right: 1cm;
    margin-top: 0.8cm;
    margin-bottom: 0.1cm;
 
}
    * {  box-sizing: border-box;
    }
 
body {  font-family: Arial, Helvetica, sans-serif;  font-size: 12px; }
 
.header {
  padding-left: 30px;
  padding-right: 5px;
  text-align: center;
  height: 196.54px;
}
 
.panelIzquierdo  {
  float: left;
  width: 49%;
  padding: 10px;
  text-align: center;
}
 
.panelDerecho {
  float: right;
  width: 51%;
  padding: 10px;
  text-align: center;
  height: 145px;
}
 
.row:after {
  content: "";
  display: table;
  clear: both;
}
 
 
@media {
  .column {
    width: 100%;
  }
 
}
</style>

Este es el html:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<div class="header">
    <br><br><br><br>
    <table width="100%" >
        <tr>
            <td width="300px" style="padding-left: 80px;"> Apellido Nombre Segundo </td>
            <td align="center" >  000000 </td>
        </tr>
        <tr>
            <td colspan="2"><br></td>
        </tr>
        <tr>
            <td width="20px" colspan="2" style="padding-left: 300px; padding-top: 12px;">Cobrador </td>
        </tr>
        <tr>
            <td width="20px" colspan="2" style="padding-left: 270px; padding-top: 17px;">2023 </td>
        </tr>
    </table>
 
</div>
<br><br><br><br>
<div class="row">
  <div class="panelIzquierdo" >
    <table width="100%" border="0">
        <br>
        <tr>
            <td colspan="2" style="padding-left: 25px; padding-top: 4px;">Nombre</td>
        </tr>
        <tr>
            <td align="left" style="padding-left: 20px; padding-top: 5px;">000000</td>
            <td align="left" style="padding-left: 23px; padding-top: 12px;"><2023</td>
        </tr>
         <tr>
            <td align="left" style="padding-top: 12px;" rowspan="2">0000,00.-</td>
            <td align="left" style="padding-top: 5px; padding-left: 10px;">dd/mm</td>
        </tr>
    </table>
  </div>
 
  <div class="panelDerecho" >
 
       <table width="100%" border="0">
        <br>
        <tr>
            <td colspan="2" style="padding-left: 80px; padding-top: 4px;">Nombre</td>
        </tr>
        <tr>
            <td align="left" style="padding-left: 75px; padding-top: 8px;">000000</td>
            <td align="left" style="padding-left: 70px; padding-top: 12px;"><2023</td>
        </tr>
         <tr>
            <td align="left" style="padding-top: 12px; padding-left: 50px;" rowspan="2">0000,00.-</td>
            <td align="left" style="padding-top: 5px; padding-left: 70px;">dd/mm</td>
        </tr>
    </table>
 
  </div>
</div>
 
<br>
<div class="row">
  <div class="panelIzquierdo" >
    <table width="100%" border="0">
        <br>
        <tr>
            <td colspan="2" style="padding-left: 25px; padding-top: 4px;">Nombre</td>
        </tr>
        <tr>
            <td align="left" style="padding-left: 20px; padding-top: 5px;">000000</td>
            <td align="left" style="padding-left: 23px; padding-top: 12px;"><2023</td>
        </tr>
         <tr>
            <td align="left" style="padding-top: 12px;" rowspan="2">0000,00.-</td>
            <td align="left" style="padding-top: 5px; padding-left: 10px;">dd/mm</td>
        </tr>
    </table>
    </div>
 
 <div class="panelDerecho" >
       <table width="100%" border="0">
        <br>
        <tr>
            <td colspan="2" style="padding-left: 80px; padding-top: 4px;">Nombre</td>
        </tr>
        <tr>
            <td align="left" style="padding-left: 75px; padding-top: 8px;">000000</td>
            <td align="left" style="padding-left: 70px; padding-top: 12px;"><2023</td>
        </tr>
         <tr>
            <td align="left" style="padding-top: 12px; padding-left: 50px;" rowspan="2">0000,00.-</td>
            <td align="left" style="padding-top: 5px; padding-left: 70px;">dd/mm</td>
        </tr>
    </table>
 
  </div>
</div>
 
<div class="row">
  <div class="panelIzquierdo" >
    <table width="100%" border="0">
        <br>
        <tr>
            <td colspan="2" style="padding-left: 25px; padding-top: 4px;">Nombre</td>
        </tr>
        <tr>
            <td align="left" style="padding-left: 20px; padding-top: 5px;">000000</td>
            <td align="left" style="padding-left: 23px; padding-top: 12px;"><2023</td>
        </tr>
         <tr>
            <td align="left" style="padding-top: 12px;" rowspan="2">0000,00.-</td>
            <td align="left" style="padding-top: 5px; padding-left: 10px;">dd/mm</td>
        </tr>
    </table>
 </div>
 
  <div class="panelDerecho" >
       <table width="100%" border="0">
        <br>
        <tr>
            <td colspan="2" style="padding-left: 80px; padding-top: 4px;">Nombre</td>
        </tr>
        <tr>
            <td align="left" style="padding-left: 75px; padding-top: 8px;">000000</td>
            <td align="left" style="padding-left: 70px; padding-top: 12px;"><2023</td>
        </tr>
         <tr>
            <td align="left" style="padding-top: 12px; padding-left: 50px;" rowspan="2">0000,00.-</td>
            <td align="left" style="padding-top: 5px; padding-left: 70px;">dd/mm</td>
        </tr>
    </table>
  </div>
</div>

Este es el resultado que estoy obteniendo.

pdf_exceso

Necesito que se imprima en una sola página.
Desde ya, agradezco todo tipo de ayuda y el tiempo que se tomaron en leer esta pregunta
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Cómo evitar que parte de la segunda columna DomPdf pase a la segunda página

Publicado por Gabriela (2 intervenciones) el 04/09/2023 04:15:35
Pude solucionar el inconveniente, especificando el alto de las distintas seccionesss
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar