Wie erreiche ich, dass die Zahlen alle untereinanderstehen? Die Subsection-Einträge haben alle den gleichen Aufbau: Öffne in Overleaf
\documentclass[paper=A5]{scrartcl} \begin{document} \tableofcontents \addsec[short version sec]{} \addsubsectiontocentry{}{subsec 1111} \addsubsectiontocentry{}{subsecaaa 2222} \addsubsectiontocentry{}{subsecbb 3333} \addsubsectiontocentry{}{subsecccc 4444} \addsubsectiontocentry{}{subsec 5555} \addsubsectiontocentry{}{subsecdd 6666} \end{document} gefragt 16 Dez '18, 04:43 cis |
Um unterschiedlich lange Wörter gleich lang zu machen, kennt LaTeX die Anweisung:
Die Länge ist dabei ein übliche LaTeX-Länge wie Die Ausrichtung ist entweder Damit könnte man beispielsweise: Öffne in Overleaf
\documentclass[paper=A5]{scrartcl} \DeclareRobustCommand*{\subsectiontocword}[1]{% \makebox[4.5em][l]{#1}% } \begin{document} \tableofcontents \addsec[short version sec]{} \addsubsectiontocentry{}{\subsectiontocword{subsec}1111} \addsubsectiontocentry{}{\subsectiontocword{subsecaaa}2222} \addsubsectiontocentry{}{\subsectiontocword{subsecbb}3333} \addsubsectiontocentry{}{\subsectiontocword{subsecccc}4444} \addsubsectiontocentry{}{\subsectiontocword{subsec}5555} \addsubsectiontocentry{}{\subsectiontocword{subsecdd}6666} \end{document} verwenden, um die Zahlen untereinander zu bekommen. Sind die Zahlen ebenfalls unterschiedlich lang und möchte man sie rechtsbündig untereinander setzen, böte sich eine Anweisung mit zwei Argumenten an: Öffne in Overleaf
\documentclass[paper=A5]{scrartcl} \DeclareRobustCommand*{\subsectiontocword}[2]{% \makebox[4.5em][l]{#1}\makebox[2em][r]{#2}% } \begin{document} \tableofcontents \addsec[short version sec]{} \addsubsectiontocentry{}{\subsectiontocword{subsec}{1111}} \addsubsectiontocentry{}{\subsectiontocword{subsecaaa}{22}} \addsubsectiontocentry{}{\subsectiontocword{subsecbb}{333}} \addsubsectiontocentry{}{\subsectiontocword{subsecccc}{4}} \addsubsectiontocentry{}{\subsectiontocword{subsec}{5555}} \addsubsectiontocentry{}{\subsectiontocword{subsecdd}{6666}} \end{document} Ich habe in den Beispielen beantwortet 16 Dez '18, 09:45 gast3 |
Ich habe noch aufbauend der Antwort von @Ijon Tichy einen Code erstellt, der die Breite des längsten Wortes aus einer Liste (hier Monatsnamen) ermittelt und dann für die Boxbreite verwendet. Liefert: Öffne in Overleaf
\documentclass[paper=A5]{scrartcl} \setparsizes{0pt}{0pt}{0pt plus 1fil} \usepackage{calc} \usepackage{tikz} \usetikzlibrary{calendar} \begin{document} \def\Year{2018} \tableofcontents \addsec[short version sec]{} \minisec{Test Maximum} \def\MyList{1,2,5,1} MyList: \MyList \\ Maximum: \pgfmathparse{max(\MyList)}\pgfmathresult \\ \minisec{Test Liste} \newcommand{\List}{}% Name reservieren \let\List=\empty% Liste erstellen \makeatletter \foreach \Month in {0,1,2,3} {\ifx\empty\List{} \protected@xdef\List{\Month}% \else \protected@xdef\List{\List,\Month}% \fi} \makeatother Anzeigen: \List \\ \minisec{Test Monatsliste} %\pgfcalendarmonthname{9} \newlength\MonthWordWidth \settowidth\MonthWordWidth{\pgfcalendarmonthname{9}}% MonthWordWidth: \the\MonthWordWidth~ from \pgfcalendarmonthname{9} \newcommand{\MonthWordWidthList}{}% reserve name \let\MonthWordWidthList=\empty% create list \makeatletter \foreach \Month in {1,...,12} {\settowidth\MonthWordWidth{\pgfcalendarmonthname{\Month}}% \ifx\empty\MonthWordWidthList{} \protected@xdef\MonthWordWidthList{\the\MonthWordWidth}% \else \protected@xdef\MonthWordWidthList{\MonthWordWidthList,\the\MonthWordWidth}% \fi} \makeatother Show: {\tiny\MonthWordWidthList} \\ \pgfmathsetlengthmacro{\MonthWordWidthMax}{ceil(max(\MonthWordWidthList))} MonthWordWidthMax: \MonthWordWidthMax \addsec[Monate]{} \addsubsectiontocentry{}{\parbox[b]{\MonthWordWidthMax}{Test}1234} \newcommand\test[1]{\addsubsectiontocentry{}{% \parbox[b]{\MonthWordWidthMax}{#1}\,\Year}% } \test{January} \foreach \Month in {1,...,12}{% \test{\pgfcalendarmonthname{\Month}} } \end{document} beantwortet 16 Dez '18, 22:22 cis |