
Para mí, el comportamiento descrito parece ser un bytefield
error del paquete v2.2. Tal vez estoy entendiendo mal las cosas y standalone
la versión 1.2 también tiene errores. O simplemente soy yo haciendo las cosas mal.
Composición tipográfica de este ejemplo mínimo
\documentclass{standalone}
\usepackage{bytefield}
\begin{document}
\begin{bytefield}[bitwidth=2.1em]{2}
\bitheader{0-1} \\ \bitbox{1}{0} \bitbox{1}{2}
\end{bytefield}
\end{document}
El uso de pdflatex produce un campo de bits demasiado recortado:
El borde superior está demasiado ajustado, los demás bordes están demasiado ajustados ya que cortan un píxel enmarcado. Considero que esto es un bytefield
error y traté de encontrar una solución.
Como se sugiere enesta pregunta, el borde independiente se puede aumentar, lo que revela los números del campo de bytes al menos en parte:
\documentclass[border=1pt 0pt 1pt 10cm]{standalone}
produce esto:
lo que resuelve el problema en el borde inferior/izquierdo/derecho, pero no en el borde superior. Esto parece ser un standalone
error.
El uso \documentclass[border=2mm]{standalone}
extiende todos los límites como se esperaba. La solución actual sería ampliar todos los bordes aproximadamente 2 mm para que los números del campo de bytes sean visibles.
Para mí, esta solución es muy desafortunada, ya que estoy creando muchos archivos PDF utilizando la clase independiente en un entorno automatizado; solo unos pocos de ellos son campos de bytes. Por lo tanto, tendría que aumentartodobordes ya que el entorno de bytefield no acepta border
como parámetro opcional.
¿Se conoce alguna otra solución alternativa?
Respuesta1
El problema aquí es que los números de índice en la parte superior no son parte delcuadro delimitadorde la tabla de campos de bytes. Puede ver esto simplemente usando un bytefield
entorno dentro de un documento normal y agregando elementos \frame{...}
a su alrededor. El cuadro resultante también cortará los números de índice.
bytefield
Supongo que esto se debe a que el picture
entorno de inclusión no tiene en cuenta la altura del número de índice.
No hay nada standalone
ni ninguna otra herramienta TeX que pueda hacer después, ya que el tamaño oficial no está determinado por la "tinta" sino por el cuadro delimitador oficial. Sólo las herramientas de renderizado como GhostScript pueden recalcular el cuadro delimitador actual observando la "tinta" producida.
Como solución, simplemente agregue un borde alrededor. Su ejemplo de código no funciona porque necesita agregar los números entre llaves para proteger los espacios del código de procesamiento de opciones de \documentclass
.
Lo siguiente funciona (tenga en cuenta que 0,5 (=0,5 pb; puntos grandes) es el límite predeterminado):
\documentclass[border={.5 .5 .5 2mm}]{standalone}
\usepackage{bytefield}
\begin{document}
\begin{bytefield}[bitwidth=2.1em]{2}
\bitheader{0-1} \\ \bitbox{1}{0} \bitbox{1}{2}
\end{bytefield}
\end{document}