1

If the first page first line no nullcell, then the header bottom line no miss. If nullcell, then miss, but only on the first page, the others do not. I don't understand why. Sorry, for my poor english.

enter image description here

Full source code:

\documentclass[12pt]{article}

\usepackage{cals}

\makeatletter

\begin{document}

\begin{calstable}
\colwidths{
{100pt}
{100pt}
}
\thead{
\def\cals@borderT{0.4pt}
\def\cals@borderB{0.4pt}
\def\cals@borderL{0.4pt}
\def\cals@borderR{0.4pt}
\brow
\alignC
\cell{head1}
\cell{head2}
\def\cals@borderT{0pt}
\def\cals@borderB{0pt}
\def\cals@borderL{0pt}
\def\cals@borderR{0pt}
\erow
}
\tfoot{
\hrule width 200pt height 0.4pt depth 0pt\relax
}

%\brow
%\def\cals@borderT{0pt}
%\def\cals@borderB{0pt}
%\def\cals@borderL{0.4pt}
%\def\cals@borderR{0.4pt}
%\cell{1}
%\def\cals@borderL{0pt}
%\def\cals@borderR{0.4pt}
%\cell{text 1}
%\def\cals@borderR{0pt}
%\erow

\brow
\def\cals@borderT{0pt}
\def\cals@borderB{0pt}
\def\cals@borderL{0.4pt}
\def\cals@borderR{0.4pt}
\nullcell{ltr}
\def\cals@borderL{0pt}
\def\cals@borderR{0.4pt}
\cell{text 2}
\def\cals@borderR{0pt}
\erow

\brow
\def\cals@borderT{0pt}
\def\cals@borderB{0pt}
\def\cals@borderL{0.4pt}
\def\cals@borderR{0.4pt}
\nullcell{blr}
\spancontent{2}
\def\cals@borderL{0pt}
\def\cals@borderR{0.4pt}
\cell{text 2}
\def\cals@borderR{0pt}
\erow

\tbreak{\vfill\break}

\brow
\def\cals@borderT{0pt}
\def\cals@borderB{0pt}
\def\cals@borderL{0.4pt}
\def\cals@borderR{0.4pt}
\nullcell{ltr}
\def\cals@borderL{0pt}
\def\cals@borderR{0.4pt}
\cell{text 3}
\def\cals@borderR{0pt}
\erow

\brow
\def\cals@borderT{0pt}
\def\cals@borderB{0pt}
\def\cals@borderL{0.4pt}
\def\cals@borderR{0.4pt}
\nullcell{blr}
\spancontent{3}
\def\cals@borderL{0pt}
\def\cals@borderR{0.4pt}
\cell{text 3}
\def\cals@borderR{0pt}
\erow

\end{calstable}

\end{document}
3

I'm afraid it is a bug, which is very hard to localize. Instead, I suggest to rework the approach and avoid the use of cell width overrides. For example:

\documentclass[12pt,a5paper,landscape]{article}

\usepackage[utf8]{inputenc}
\usepackage[a5paper]{geometry}
\geometry{top=10mm, bottom=10mm, left=20mm, right=20mm}
\geometry{includemp=false}
\geometry{includehead=true,includefoot=true}
\geometry{layouthoffset=0mm, layoutvoffset=0mm}
\geometry{headsep=10pt}
\usepackage[T1]{fontenc}
\usepackage{cals}

\makeatletter

\begin{document}

\begin{calstable}
\alignC
\makeatletter
\colwidths{
{100pt}
{100pt}
{100pt}
}

\def\cals@framecs@width{.4pt }
\def\cals@framers@width{.4pt }
\def\cals@cs@width{0pt }
\def\cals@rs@width{0pt }
\def\rUp{\def\cals@borderR{0.4pt}}
\def\rDown{\let\cals@borderR=\relax}

\thead{
\brow
\rUp \cell{head1} \rDown
\nullcell{ltb}
\nullcell{tbr}
\spancontent{head2}
\erow
}

\brow
\rUp \nullcell{ltr} \rDown
\cell{222}
\cell{222}
\erow

\brow
\rUp \nullcell{blr} \rDown
\spancontent{2}
\cell{222}
\cell{222}
\erow

\tbreak{\lastrule\vfill\break}

\brow
\rUp \nullcell{ltr} \rDown
\cell{333}
\cell{333}
\erow

\brow
\rUp \nullcell{lr} \rDown
\cell{333}
\cell{333}
\erow

\brow
\rUp \nullcell{blr} \rDown
\spancontent{3}
\cell{333}
\cell{333}
\erow

\end{calstable}

\end{document}
1
  • Sorry, while I changed on the original :) The solution was good, but need: "\def\cals@bodyrs@width{0.4pt}", because the header line was too thick. Thank you! – Attila Kosa Feb 12 '14 at 15:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.