一つの文字を版面横幅一杯に出力しようとして、次のようにしました。
\documentclass{jarticle}\relax
\usepackage{graphics}\relax
\begin{document}
\noindent\resizebox{\textwidth}{10cm}{亜}
\end{document}
これをタイプセットすると、
Overfull \hbox
の警告が出てしまいます。
どこが間違っているのでしょうか?
次のように、小数の割り算の実装を calc パッケージのものに変えてみました。
\documentclass{jarticle}\relax \usepackage{graphics}\relax \usepackage{calc} \makeatletter %!!!!!!!!!!!!!!! TeX code BEGIN \def\Gscale@div#1#2#3{% \setlength\dimen@{#3}% \ifdim\dimen@=\z@ \PackageError{graphics}{Division by 0}\@eha \dimen@#2% \fi \edef\@tempd{\strip@pt\dimen@}% \setlength\dimen@{(#2)/\real{\@tempd}}% \edef#1{\strip@pt\dimen@}} \makeatother %!!!!!!!!!!!!!!! TeX code END \begin{document} \typeout{\the\textwidth} \noindent\resizebox{\textwidth}{10cm}{亜} \end{document}
すると以下のような結果になりました。
327.0 / 9.62216 = 33.98433
284.52756 / 7.77588 = 36.59055
そして、最終の横幅に対する誤差も 0.00272pt となり、Overfull 警告がでなくなりました。