简体   繁体   中英

Barryvdh\DomPDF how to break page inside a table

I use Barryvdh\\DomPDF to create my pdf from a "laravel" view.

I want to get the same title on each page. To do that, my code is :

    <!DOCTYPE html>
<html lang="fr">
    <head>
        <meta charset="utf-8">
        <title>Liste des personnes</title>
        <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
        <style>
        .header,
        .footer {
        width: 100%;
        text-align: center;
        position: fixed;
        }
        .header {
        top: 0px;
        }
        .footer {
        bottom: 0px;
        }
        .pagenum:before {
        content: counter(page);
        }

        </style>
    </head>
    <body>

        {{-- -------------------------------------------------------- --}}
        {{-- pour ajouter une entete et un pied de page au pdf généré --}}
        {{-- -------------------------------------------------------- --}}

        <div class="header">
            <h2>Liste des personnes</h2>
            <hr>    
        </div>
        <div class="footer">
            Page <span class="pagenum"></span>
        </div>
        <div style="page-break-after:always;">

        <table class="table table-striped" style="margin-top:30mm">
            <tbody>

                @foreach($liste_personnes as $personne)

                <tr>
                    <td class="text-center">
                        <img style="height: 100px"  src="{{ asset($personne->nom_photo_vignette) }}" alt="pas de photo">
                    </td>
                    <td>
                        <strong>{{ $personne->nom.' '.$personne->prenom }}</strong><br>
                        {{ $personne->adresse1 }}<br>
                        {{ $personne->code_postal.' '.$personne->commune }}
                    </td>
                    <td>
                        né(e) le {{ $personne->date_naissance_dmY }}<br>
                        {{ $personne->libelle_role }}
                    </td>
                </tr>
                @endforeach
            </tbody>
        </table>
        </div>
    </body>
</html>

But the result is this one :

在此处输入图片说明

As you can see, the header and footer are fine on the 1st page .But not for the next pages.

How to add some spaces for each new first row on each new page ?

thanks for your help. Merci Dom

Resolved like that :

    <!DOCTYPE html>
<html lang="fr">
    <head>
        <meta charset="utf-8">
        <title>Liste des personnes</title>
        <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet">
        <style>
        @page { margin: 100px 50px; }
        .header { position: fixed; left: 0px; top: -100px; right: 0px; height: 100px; text-align: center; }
        .footer { position: fixed; left: 0px; bottom: -50px; right: 0px; height: 50px;text-align: center;}
        .footer .pagenum:before { content: counter(page); }
        </style>

    </head>
    <body>
        {{-- -------------------------------------------------------- --}}
        {{-- pour ajouter une entete et un pied de page au pdf généré --}}
        {{-- -------------------------------------------------------- --}}
        <div class="header">
            <h2>Liste des personnes</h2>
        </div>
        <div class="footer">

            Page <span class="pagenum"></span>
        </div>

        <table class="table table-striped">
            <tbody>

                @foreach($liste_personnes as $personne)

                <tr>
                    <td class="text-center">
                        <img style="height: 80px"  src="{{ asset($personne->nom_photo_vignette) }}" alt="pas de photo">
                    </td>
                    <td>
                        <strong>{{ $personne->nom.' '.$personne->prenom }}</strong><br>
                        {{ $personne->adresse1 }}<br>
                        {{ $personne->code_postal.' '.$personne->commune }}
                    </td>
                    <td>
                        né(e) le {{ $personne->date_naissance_dmY }}<br>
                        {{ $personne->libelle_role }}
                    </td>
                </tr>
                @endforeach
            </tbody>
        </table>

    </body>
</html>

在此处输入图片说明

Hope it will help some other persons. Dom

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM