Oto prosty kod LaTeXa, który ma w zamierzeniu spowodować wydrukowanie kolorowego paska o długości 44mm:
\documentclass{article}
\usepackage{graphicx,color}
\begin{document}
\definecolor{Xrudy}{rgb}{0.8,0.34,0.0}
\colorbox{Xrudy}{\strut\vrule width44mm height1pt}
\end{document}
Niestety kolorowy pasek wcale nie jest długi na 44mm tylko dłuższy (co widać na rysunku obok: rudy pasek jest dłuższy od czarnej kreski, która faktycznie ma 44mm).
Konsultacja z dokumentacją wyjaśnia, że LaTeX dokłada pewne rzeczy od siebie:
\documentclass{article}
\usepackage{graphicx,color}
\begin{document}
\showthe\fboxrule %% wyświetl wartość parametru \fboxrule
\showthe\fboxsep %% wyświetl wartość parametru \fboxsep
\end{document}
Każde \showthe\parametr
powoduje że LaTeX, zatrzymuje kompilację wyświetlając na ekranie wartość parametru (aby kontynuować kompilację należy nacisnąć klawisza ENTER):
> 0.4pt.
l.31 \showthe\fboxrule
?
> 3.0pt.
l.32 \showthe\fboxsep
Czyli ramka ma domyślą grubość 0,4pt a margines wewnętrzny jest szeroki na 3,0 pt.
Aby się pozbyć dodatkowych odstępów należy zapodać:
\fboxsep=0pt
Można sprawdzić, że to faktycznie działa:
\documentclass{article}
\usepackage{graphicx,color}
\begin{document}
\definecolor{Xrudy}{rgb}{0.8,0.34,0.0}
\setbox0\hbox{% zapisujemy do pudełka zero żeby je potem zmierzyć
\colorbox{Xrudy}{\strut\vrule width44mm height1pt}}
\showthe\wd0 %% szerokość pudełka zero zdefiniowanego wyżej
\fboxsep=0pt
\setbox0\hbox{\colorbox{Xrudy}{\strut\vrule width44mm height1pt}}
\showthe\wd0
\end{document}
W rezultacie LaTeX wyświetli podczas kompilacji:
> 131.19212pt.
l.30 \showthe\wd0
?
> 125.19212pt.
l.36 \showthe\wd0
131,19212pt - 125,19212pt = 6,000 pt jak w mordę...
Brak komentarzy:
Prześlij komentarz