
Ich möchte einen Titel wie den folgenden erstellen:
_________________________________________________________________________________
| | | Sufix |
| Prefix unwrapped (CAPS) | Unwrapped title (Small Caps) | wraped |
| | | as needed |
=================================================================================
Ba ba Ba ba
• Sub text 1 • Sub text 2 • Sub text 3 • Sub text 4 •
Ba Black Sheep
Es muss sein:
- voll ausgestreckt mit der Seite
- farbig unterstrichen (=)
- es gibt keine Störungen oben, links, rechts oder in der Mitte (|, _)
- Untertext, der durch ein Trennzeichen (•) abgetrennt ist, zentriert oder oben ausgerichtet und für optimale Passform angepasst wird.
Bisher habe ich Folgendes getan (1. Teil des Titels/der Überschrift):
\define[3]\TITLE{\midaligned{\framed[frame=off,align=middle,bottomframe=on,framecolor=blue]
{\inframed[frame=off]{{\tfa\WORD#1}: {\tfb\sc#2}}\inframed[frame=off]{{\tfa, #3}}}}}
Dies führt jedoch nicht zu den gewünschten Ergebnissen.
Wie mache ich es?
Antwort1
Ich verstehe die Spezifikationen nicht ganz, daher werde ich versuchen, diese Frage iterativ zu beantworten.
- Ich gehe davon aus, dass die Breite von
Prefix + Title < \textwdith
. Wenn nicht, muss einer dieser beiden auch umbrechen. - Es ist nicht klar, wie
Prefix
undTitle
wie vertikal ausgerichtet werden soll. Ich habe mich für die Mittenausrichtung entschieden (waslohi
in ConTeXt so heißt).
Konzeptionell ist die einfachste Methode die Verwendung von TABLES. Das grundlegende Makro lautet also:
\define[3]\TITLE
{\startTABLE[setups=table:title]
\NC #1 \NC #2 \NC #3 \NC \NR
\stopTABLE}
Jetzt müssen wir nur noch die Einstellungen vornehmen, table:title
um die richtige Formatierung zu erhalten. Dies geht folgendermaßen:
\startsetups table:title
\setupTABLE[each][each][frame=off,bottomframe=on,rulethickness=2bp]
\setupTABLE[column][1][style=WORD, align=lohi]
\setupTABLE[column][2][style=\sc, align=lohi]
\setupTABLE[column][3][align={hyphenated,tolerant}]
\stopsetups
Das ist es!
Hier ist der vollständige Code mit der Ausgabe:
\startsetups table:title
\setupTABLE[each][each][frame=off,bottomframe=on,rulethickness=2bp]
\setupTABLE[column][1][style=WORD, align=lohi]
\setupTABLE[column][2][style=\sc, align=lohi]
\setupTABLE[column][3][align={hyphenated,tolerant}]
\stopsetups
\define[3]\TITLE
{\startTABLE[setups=table:title]
\NC #1 \NC #2 \NC #3 \NC \NR
\stopTABLE}
\showframe % To visualize the page frame
\starttext
\TITLE{prefix}{Unwrapped title}{\dorecurse{5}{A very long text\space}}
\stoptext
was gibt
Die oberen und seitlichen Rahmen dienen \showframe
lediglich dazu, anzuzeigen, dass die Tabelle bis an den Rand der Seitenbegrenzung reicht.