字节字段和 resizebox 的问题

字节字段和 resizebox 的问题

当使用非常长的字节字段时,我想使用 resizebox 以便它适合页面。但是似乎存在不兼容性。基于此回答我认为这很容易做到,但在做的时候却遇到了错误。

平均能量损失

\documentclass{article}
\usepackage{bytefield}
\usepackage{graphicx}

\begin{document}

\begin{figure}
    \resizebox{\linewidth}{4em}{%
    \begin{bytefield}[bitwidth=2em]{29}
    \bitheader{0-29}\\
    \bitbox{1}{M} & \bitbox{6}{Start address} & \bitbox{6}{End address} & \bitbox{1}{I/D} & \bitbox{5}{I/D value} & \bitbox{6}{Initial delay} & \bitbox{2}{O.C.} & \bitbox{1}{I.C.}\\
    \end{bytefield}}
    \caption{\label{fig:basic_instruction} Basic instruction}
\end{figure}

\end{document}

答案1

环境bytefield不喜欢成为另一个命令的参数。

您可以将其存储在盒子箱中,然后可以调整其大小;不要尝试猜测垂直调整大小,而是使用它!来表示比例缩放。

\documentclass{article}
\usepackage{bytefield}
\usepackage{graphicx}

\newsavebox{\bfbox}

\begin{document}

\begin{figure}

\begin{lrbox}{\bfbox}
\begin{bytefield}[bitwidth=2em]{29}
\bitheader{0-29}\\
\bitbox{1}{M} &
  \bitbox{6}{Start address} &
  \bitbox{6}{End address} &
  \bitbox{1}{I/D} &
  \bitbox{5}{I/D value} &
  \bitbox{6}{Initial delay} &
  \bitbox{2}{O.C.} &
  \bitbox{1}{I.C.}\\
\end{bytefield}
\end{lrbox}

\resizebox{\linewidth}{!}{\usebox{\bfbox}}

\caption{Basic instruction\label{fig:basic_instruction}}

\end{figure}

\end{document}

在此处输入图片描述

相关内容