Ich möchte einen ähnlichen Effekt wie die Wortgruppen links/rechts von Bytefield am unteren Ende eines Bytefields erzielen. Ich habe in der Bytefield-Dokumentation keine offensichtliche Möglichkeit gesehen, dies zu tun. Meine Kenntnisse über Latex-Makros sind nicht besonders gut. Gibt es eine gute Möglichkeit, Bytefield zu erweitern, um eine Wortgruppe oben/unten zu unterstützen?
Genaue Anfrage am besten erklärt von MWE:
\documentclass{article}
\usepackage[layout=letterpaper,margin=1in]{geometry}
\usepackage[endianness=big]{bytefield}
\bytefieldsetup{boxformatting={\centering\footnotesize}}
\begin{document}
A 32-bit piece of data is divided into a header and some subfields. The
header is further subdivided into two parts
\begin{center}
\begin{bytefield}[bitwidth=1.2em]{32}
\bitheader{0-31} \\
\bitbox{4}{Header.A}
\bitbox{4}{Header.B}
\bitbox{20}{Subfield 1}
\bitbox{4}{Subfield 2}
\end{bytefield}
\end{center}
\noindent
Word groups are the right look / style, but only go on the left/right?
\begin{center}
\begin{bytefield}[bitwidth=1.2em]{32}
\begin{leftwordgroup}{Header}
\bitheader{0-31} \\
\bitbox{4}{Header.A}
\bitbox{4}{Header.B}
\bitbox{20}{Subfield 1}
\bitbox{4}{Subfield 2}
\end{leftwordgroup}
\end{bytefield}
\end{center}
\noindent
I would like the brace / label below the whole header section, e.g.:
%
\begin{verbatim}
+-----------------------------------------
| Header.A | Header.B | Subfield 1...
+-----------------------------------------
\_ _/
--------\/--------
Header
\end{verbatim}
\end{document}
Antwort1
Sie können die Unterstrebe randlos \bitbox
unter den Header setzen.
Im folgenden Beispiel verwenden wir amsmath
für den \text
Befehl, da \underbrace
es sich um eine mathematische Konstruktion handelt:
\documentclass{article}
\usepackage[layout=letterpaper,margin=1in]{geometry}
\usepackage[endianness=big]{bytefield}
\bytefieldsetup{boxformatting={\centering\footnotesize}}
\usepackage{amsmath}
\begin{document}
\pagestyle{empty}
A 32-bit piece of data is divided into a header and some subfields. The
header is further subdivided into two parts
\begin{center}
\begin{bytefield}[bitwidth=1.2em]{32}
\bitheader{0-31} \\
\bitbox{4}{Header.A}
\bitbox{4}{Header.B}
\bitbox{20}{Subfield 1}
\bitbox{4}{Subfield 2}\\
\bitbox[t]{8}{$\underbrace{\hspace{11em}}_{\text{\normalsize Header}}$}
\end{bytefield}
\end{center}
\end{document}