Longtabu example

This example shows the functionality of the MiniPage element.

It creates a sample page filled with labels using the MiniPage element.

The code

from pylatex import Document, LongTabu, HFill
from pylatex.utils import bold


def genenerate_longtabu():
    geometry_options = {
        "landscape": True,
        "margin": "0.5in",
        "headheight": "20pt",
        "headsep": "10pt",
        "includeheadfoot": True
    }
    doc = Document(page_numbers=True, geometry_options=geometry_options)

    # Generate data table
    with doc.create(LongTabu("X[r] X[r] X[r] X[r] X[r] X[r]")) as data_table:
        header_row1 = ["Prov", "Num", "CurBal", "IntPay", "Total", "IntR"]
        data_table.add_row(header_row1, mapper=[bold])
        data_table.add_hline()
        data_table.add_empty_row()
        data_table.end_table_header()
        data_table.add_row(["Prov", "Num", "CurBal", "IntPay", "Total",
                            "IntR"])
        row = ["PA", "9", "$100", "%10", "$1000", "Test"]
        for i in range(50):
            data_table.add_row(row)

    doc.append(bold("Grand Total:"))
    doc.append(HFill())
    doc.append(bold("Total"))

    doc.generate_pdf("longtabu", clean_tex=False)

genenerate_longtabu()

The generated files

longtabu.tex
 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
\documentclass{article}%
\usepackage[T1]{fontenc}%
\usepackage[utf8]{inputenc}%
\usepackage{lmodern}%
\usepackage{textcomp}%
\usepackage{lastpage}%
\usepackage[landscape=True,margin=0.5in,headheight=20pt,headsep=10pt,includeheadfoot=True]{geometry}%
\usepackage{longtable}%
\usepackage{tabu}%
%
%
%
\begin{document}%
\normalsize%
\begin{longtabu}{X[r] X[r] X[r] X[r] X[r] X[r]}%
\textbf{Prov}&\textbf{Num}&\textbf{CurBal}&\textbf{IntPay}&\textbf{Total}&\textbf{IntR}\\%
\hline%
&&&&&\\%
\endhead%
Prov&Num&CurBal&IntPay&Total&IntR\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
PA&9&\$100&\%10&\$1000&Test\\%
\end{longtabu}%
\textbf{Grand Total:}%
\hfill%
\textbf{Total}%
\end{document}

longtabu.pdf

../_images/longtabu.pdf-0.png
../_images/longtabu.pdf-1.png