Error generating pdf with dompdf

0

When generating a pdf from a table, when the text is too large, it breaks the page at the beginning and does not display all the text at the end

//referenciar o DomPDF com namespace
use Dompdf\Dompdf;
include('template/functions/php/class-connection-bank.php');
// include autoloader
require_once("dompdf/autoload.inc.php");
session_start();
$u = $_SESSION['iduser'];
$perfil = $_SESSION['perfil'];

if(!$u){
    header("Location: index.php");
}

$id = $_GET['id'];
$pdo = conecta();
$sql = "SELECT *from ata where id = :id;";
$query = $pdo->prepare($sql);
$query->bindParam(':id', $id);
$query->execute();
$r = $query->fetch(PDO::FETCH_OBJ);

$sql2 = "SELECT *FROM diretoria WHERE id = :iddiretoria";
$query2 = $pdo->prepare($sql2);
$query2->bindParam(':iddiretoria', $r->iddiretoria);
$query2->execute();
$s = $query2->fetch(PDO::FETCH_OBJ);

$usuarios = $r->usuariospermitidos;
$usuarios = explode(',', $usuarios);
//$quebras = array("<br />","<br>","<br/>"); $r->indicadores = str_ireplace($quebras, "\r\n", $r->indicadores);

// Se o usuario for diferente de adm, entra no if para ver se foi ele quem criou, se ele tem permissao para visualizar
// se ele é uma reitoria ou com perfil calendário;
if($perfil != 7 ){
    if(!in_array($u, $usuarios) && $u != $r->iduser && $perfil != 1 && $perfil != 6){
        echo "Voce não tem acesso a essa Ata!";
        exit();
    }
}



if($r->idtiporeuniao == 1000){
    $r->idtiporeuniao = 'Alinhamento';
}else{
    $r->idtiporeuniao = 'Resultado';
}
$data =  date("d/m/Y", strtotime($r->data));


//Criando a Instancia
$dompdf = new DOMPDF();

// Carrega seu HTML
$dompdf->load_html('
        <style>
table{
    border: 1px solid black;
    border-collapse: collapse;
    width: 100%;
    font-family: arial;
    font-weight: 500;
    table-layout:fixed;
    overflow: hidden;

}
td, th, tr, table{
    text-transform: none !important;
}
input{
    text-transform: none !important;

}
textarea{
    text-transform: none !important;
}
.teste{
    height: 50px !important;
}
th{
    padding-left: 5px;
    text-align: left;
    border: 1px solid black;
    border-collapse: collapse;
    font-weight: 300;
    font-family: arial;
}
td{
    border: 1px solid black;
    border-collapse: collapse;
}

    
<table>
    <tr>
        <th style="width: 400px; height: 30px; background-color: #d4e5ff; text-align: center">Ata de Reunião - MEU</th>
    </tr>   
</table>
<table>

    <tr style="line-height: 30px;">
        <td style="background-color: #d4e5ff; width: 30%; padding-left: 10px;">Tipo de Reunião</td>
        <td style= "padding-left: 10px;">'.$r->idtiporeuniao.'</td>
    </tr>
    <tr style="line-height: 30px;">
        <td style="background-color: #d4e5ff; width: 30%; padding-left: 10px;">Área / Departamento</td>
        <td style= "padding-left: 10px;">'.utf8_encode($s->diretoria).'</td>
    </tr>
    <tr style="line-height: 30px;">
        <td style="background-color: #d4e5ff; width: 30%; padding-left: 10px;">Elaborado por:</td>
        <td style= "padding-left: 10px;">'.$r->elaboradopor.'</td>
    </tr>
    <tr style="line-height: 30px;">
        <td style="background-color: #d4e5ff; width: 30%; padding-left: 10px;">Número da Ata:</td>
        <td style= "padding-left: 10px;">'.$r->id.'</td>
    </tr>
    <tr style="line-height: 30px;">
        <td style="background-color: #d4e5ff; width: 30%; padding-left: 10px;">Data da Reunião</td>
        <td style= "padding-left: 10px;">'.$data.'</td>
    </tr>
</table>
<table style = "border-top: 0px;">
    <tr style="line-height: 30px;">

        <th style="width: 152,5px; background-color: #d4e5ff ">Local/Sala :</th><th style="width: 350px; text-align: left;">'.utf8_encode($r->localsala).'</th>

        <th style="width: 80px; background-color: #d4e5ff">
            Início</th><th style="width: 80px">'.$r->horainicio.'h</th>
    </tr>
</table>
<table>
    <tr>
        <th style="width: ; height: 50px; background-color: #d4e5ff; ">1. Tópicos Discutidos :</th>
    </tr>
    <tr>
        <th style=" width: ; vertical-align: top; padding-top: 10px;">
            '.utf8_encode($r->topicos).'
        </th>
    </tr>
    <tr>
        <th style="height: 50px; background-color: #d4e5ff">2. Definições Macros :</th>
    </tr>
    <tr>
        <th style=" vertical-align: top; padding-top: 10px;">
            '.utf8_encode($r->macros).'
        </th>
    </tr>
    <tr>
        <th style="line-height: 45px; background-color: #d4e5ff">3. Indicadores Analisados :</th>
    </tr>
    <tr>
        <th style=" width: ; vertical-align: top; padding-top: 10px;">
            '.utf8_encode($r->indicadores).'
        </th>
    </tr>
    <tr>
        <th style="width: ; line-height: 45px; background-color: #d4e5ff" class="teste">4. Participantes Presentes/Ausentes :</th>
    </tr>


    <tr>
        <table>
            <tr>
                <th style="background-color: #d4e5ff">Presentes</th><th style="background-color: #d4e5ff"">Ausentes</th> 
            </tr>
            <tr>
                <td style="width: 200px; vertical-align: top;">'.utf8_encode($r->presentes).'</td>
                <td style="width: 200px; vertical-align: top;">'.utf8_encode($r->ausentes).'</td>   
            </tr>
        </table>        
    </tr>
</table>');

//Renderizar o html
$dompdf->setPaper('A4', 'vertical');
$dompdf->render();

//Exibibir a página
$dompdf->stream(
    "relatorio_celke.pdf", 
    array(
        "Attachment" => false //Para realizar o download somente alterar para true
    )
);

? >

    
asked by anonymous 29.08.2018 / 16:56

0 answers