Comment obtenir un compte de page dans un document mPDF?

est-ce que quelqu'un sait comment obtenir le nombre de pages générées si un document PDF utilise la bibliothèque mPDF?

18
demandé sur Nikita Gopkalo 2012-04-23 16:31:25

6 réponses

je cherchais la même fonctionnalité tout en utilisant EYiiPdf (un wrapper pour mPDF sur Yii) et ce qui suit a fonctionné comme un charme:

$mPDF->setFooter('{PAGENO} / {nb}');

j'ai vérifié la source de mPDF et j'ai trouvé ça à mpdf.php: 1656 (version 5.4):

function AliasNbPages($alias='{nb}') {
    //Define an alias for total number of pages
    $this->aliasNbPg=$alias;
}

j'Espère que ça aide!

24
répondu Tomi Drpic 2013-02-20 04:50:30

Vous pouvez utiliser {nbpg}, comme

<div align="center"><b>{PAGENO} / {nbpg}</b></div>
12
répondu Zvonimir Burić 2013-10-21 13:29:11

La réponse peut être foound dans l'original documentation:

http://mpdf1.com/manual/index.php?tid=314

remplacement alias {nb} et {nbpg} pour le nombre total

et {PAGENO} pour le numéro de page actuel

4
répondu sr9yar 2014-06-24 08:02:45

ajoutez à cela l'un des principaux mPDF de la classe:

function getPageCount() {
    return count($this->pages);
}

puis ajouter un html-analyseur tels chaîne:

$html = str_replace('{PAGECNT}', $this->getPageCount(), $html);

après ces actions, vous pouvez insérer {PAGECNT} directement dans votre HTML pour obtenir le résultat. Cela est utile, vous devez indiquer une page:

3
répondu Nikita Gopkalo 2012-04-26 06:39:21

si vous essayez de retourner le nombre de pages de sorte que vous pouvez sauvegarder cela dans une base de données ou une autre opération en dehors de mpdf, il est facile de le tirer de cette façon.

après avoir écrit votre contenu:

$mpdf - > WriteHTML ($html);



$page_count = $ mpdf - > page;

$ mpdf - >Output ();



3
répondu John F 2014-02-28 16:01:40

Voir la ligne:

preg_replace('/\{DATE\s+(.*?)\}/e',"date('\1')",$hd);

en mpdf.pied de page de la fonction php() Il se peut que votre "{PAGENO} / {nb}" ne soit pas affiché. Il suffit de le commenter ou utiliser strpos('{DATE' > -1) pour vérifier si elle est disponible. Vous pouvez aussi avoir besoin d'ajouter:

$mpdf->ignore_invalid_utf8 = true;

et aussi, si vous ne voulez pas de ligne de pied de page:

$mpdf->defaultfooterline = false;

après ces changements, la pagination a enfin fonctionné pour moi.

0
répondu Goce Dimkovski 2016-04-06 10:16:42