柱と目次の均等割付

名前: 道産子
日時: 2006-07-25 13:00:19
IPアドレス: 61.127.131.*

過去ログで調べても分からなかったので,質問させて頂きます. jbook.cls で以下の様に柱と目次の見出しを文字数で割り付ける長さを判断す る均等割付を行いたいのですが,均等割付されません.ただ,color パッケージ を読み込まない場合は柱は均等割付になりますが, Underfull \hbox (badness 10000) detected at line 99 というエラーと割付された文字列の長さが指定したものと合っていない様に見え ます (4zw を指定しても 5zw の出力に見える). 目次の場合はどちらの場合も均等割付されません. color パッケージを読み込んでも柱と目次の見出しを (自動で) 均等割付する にはどうすれば良いのでしょうか. 環境は Vine Linux 3.2 に ptetex3-20060607.tar.gz をインストールしてい ます. ------------------------------------------------------------------------ \documentclass[tombow,b5j]{jbook} \usepackage{color} \makeatletter % 均等割付 \def\kintou#1#2{\hbox to#1{% \kanjiskip=0pt plus 1fill minus 1fill \xkanjiskip=\kanjiskip #2}} % 自動均等割付 % 2字→4字取り, 3字・4字→5字取り, 5字以上→割付なし \def\jidoukintou#1{% \settowidth{\dimen0}{#1}% \@jidoukintou{\dimen0}{#1}} \def\@jidoukintou#1#2{% \ifdim#1<1.2zw \hbox{#2}% \else\ifdim#1<2.4zw \kintou{4zw}{#2}% \else\ifdim#1<3.4zw \kintou{5zw}{#2}% \else\ifdim#1<4.4zw \kintou{5zw}{#2}% \else \hbox{#2}% \fi\fi\fi\fi} \def\@nombrefont#1#2{% \gdef\num@font{\fontsize{#1}{\z@}\selectfont#2}% \pagestyle{headings}} \@nombrefont{8}{\bfseries} \def\@hasirafont#1#2{% \gdef\head@font{\fontsize{#1}{\z@}\selectfont#2}% \pagestyle{headings}} \@hasirafont{8pt}{} \def\ps@headings{% \let\ps@jpl@in\ps@plain \let\@mkboth=\markboth \def\@oddfoot{}% \let\@oddfoot\@empty\let\@evenfoot\@empty \def\@oddhead{% \reset@font\hfil{\head@font\rightmark}\hfil\llap{\num@font\thepage}}% \def\@evenhead{% \reset@font\rlap{\num@font\thepage}\hfil{\head@font\leftmark}\hfil}% \let\@mkboth\markboth \def\chaptermark##1{\markboth{% \ifnum \c@secnumdepth >\m@ne \if@mainmatter\@chapapp\thechapter\@chappos\hskip1zw\fi % \fi##1}{}}% \fi\jidoukintou{##1}}{}}% \def\sectionmark##1{\markright{% % \ifnum\c@secnumdepth >\z@\S\,\thesection\hskip1zw\fi##1}} \ifnum\c@secnumdepth >\z@\S\,\thesection\hskip1zw\fi\jidoukintou{##1}}} } \def\@@afterheadings#1{% \@nobreaktrue \everypar{% \if@nobreak\@nobreakfalse\clubpenalty#1\relax% \else\clubpenalty \@clubpenalty\everypar{}% \fi}} \pagestyle{headings} \def\@chapter[#1]#2{% \ifnum \c@secnumdepth >\m@ne \if@mainmatter \refstepcounter{chapter}% \typeout{\@chapapp\space\thechapter\space\@chappos}% \addcontentsline{toc}{chapter}% {\protect\numberline{\@chapapp\thechapter\@chappos}#1}% \else\addcontentsline{toc}{chapter}{\jidoukintou{#1}}\fi \else \addcontentsline{toc}{chapter}{\jidoukintou{#1}}% \fi \chaptermark{\jidoukintou{#1}}% \addtocontents{lof}{\protect\addvspace{10\p@}}% \addtocontents{lot}{\protect\addvspace{10\p@}}% \@makechapterhead{\jidoukintou{#2}}\@afterheading} \def\@makechapterhead#1{\hbox{}% \vskip2\Cvs {\parindent\z@ \raggedright \reset@font\huge\bfseries \leavevmode \ifnum \c@secnumdepth >\m@ne \setlength\@tempdima{\linewidth}% \if@mainmatter \setbox\z@\hbox{\@chapapp\thechapter\@chappos\hskip1zw}% \addtolength\@tempdima{-\wd\z@}% \unhbox\z@\nobreak \fi \vtop{\hsize\@tempdima\jidoukintou{#1}}% \else \jidoukintou{#1}\relax \fi}\nobreak\vskip3\Cvs} \makeatother \begin{document} \tableofcontents \chapter{□□} \newpage \section{□□□} \newpage \section{□□□□} \newpage \section{□□□□□□} \newpage\null \end{document}

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます。適宜改行を入れてください)