jsbook.clsでヘッダーの文字サイズの設定

jsbook.clsでヘッダーの文字サイズの設定

- 匿名 希望 の投稿
返信数: 5
jsbook.clsを使っております.
ヘッダーの,ページ番号等の文字サイズが文章の文字サイズと同じ10ptになっていると思うのですが,これを\smallないし\footnotesize程度にしたいです.
その他の体裁は変えないで,ヘッダーの文字サイズだけを小さくする方法はありますでしょうか.
匿名 希望 への返信

Re: jsbook.clsでヘッダーの文字サイズの設定

- 帯田 木偶太 の投稿
こんなんでしょうか。

\documentclass{jarticle}\relax
\makeatletter
    \let\X@pagestyle=\pagestyle
    \def\pagestyle#1{%
        \X@pagestyle{#1}%
        \expandafter\def\expandafter\@oddhead\expandafter{%
            \expandafter\headfootfont\@oddhead
        }%
        \expandafter\def\expandafter\@oddfoot\expandafter{%
            \expandafter\headfootfont\@oddfoot
        }%
        \expandafter\def\expandafter\@evenhead\expandafter{%
            \expandafter\headfootfont\@evenhead
        }%
        \expandafter\def\expandafter\@evenfoot\expandafter{%
            \expandafter\headfootfont\@evenfoot
        }%
    }
\makeatother
%**** ヘッダー/フッターのフォントを極大のサンセリフのボールドにする
    \def\headfootfont{\Huge\sffamily\bfseries}
\pagestyle{headings}
\begin{document}
\section{ABC}
ABC
\end{document}
帯田 木偶太 への返信

Re: jsbook.clsでヘッダーの文字サイズの設定

- 匿名 希望 の投稿
帯田様

ありがとうございます.
\def\headfootfont{\Huge\sffamily\bfseries}の引数を自分好みに弄ることで目的の表示が得られました.

大変失礼ながら追加でお訊きしたい点がございます.
あまり意識していなかったのですが,デフォルトの状態ではページ番号だけがボールド体になっているのですね.
・ページ番号だけをサンセリフのボールド体にする,
或いは
・ページ番号も含めて全てをボールド体でない普通の書体にする,
といったことがしたい場合,どのようにすればよいのでしょうか.
\def\headfootfontに相当する何かを変更すればよいのでしょうか?

匿名 希望 への返信

Re: jsbook.clsでヘッダーの文字サイズの設定

- 帯田 木偶太 の投稿
》 \def\headfootfont{\Huge\sffamily\bfseries}の引数を自分好みに弄ることで

ご要望は小さめにと言うことでしたね。文書クラスも違ってたし。
質問をもっときちんと読むべきでした。申し訳なし。

》 あまり意識していなかったのですが,デフォルトの状態ではページ番号だけがボールド体になっているのですね.

jsbook.cls 特有の仕様ですね。ページスタイルとして headgins を使うのなら、
\ps@headings の定義の中にある \textbf を外せばいいんだろうと思いますので
プレアンブルで
    \makeatletter
        \if@twoside
          \def\ps@headings{%
            \let\@oddfoot\@empty
            \let\@evenfoot\@empty
            \def\@evenhead{\if@mparswitch \hss \fi
              \underline{\hbox to \fullwidth{\thepage\hfil\leftmark}}%
              \if@mparswitch\else \hss \fi}%
            \def\@oddhead{%
              \underline{%
                \hbox to \fullwidth{{\rightmark}\hfil\thepage}}\hss}%
            \let\@mkboth\markboth
            \def\sectionmark##1{\markboth{%
              \ifnum \c@secnumdepth >\z@ \thesection \hskip1zw\fi
              ##1}{}}%
            \def\subsectionmark##1{\markright{%
              \ifnum \c@secnumdepth >\@ne \thesubsection \hskip1zw\fi
              ##1}}%
          }
        \else % if not twoside
          \def\ps@headings{%
            \let\@oddfoot\@empty
            \def\@oddhead{%
              \underline{%
                \hbox to \fullwidth{{\rightmark}\hfil\thepage}}\hss}%
            \let\@mkboth\markboth
            \def\sectionmark##1{\markright{%
                \ifnum \c@secnumdepth >\z@ \thesection \hskip1zw\fi
                ##1}}}
        \fi
    \makeatother
とでも入れておけばいいんでしょうか。
あるいは先の書き込みにある \headfootfont の定義で
    \def\headfootfont{\footnotesize\let\textbf=\reolax}
なんでやっちゃう力業もありますが‥‥、これは副作用がちょっとエグいかも。
帯田 木偶太 への返信

Re: jsbook.clsでヘッダーの文字サイズの設定

- 匿名 希望 の投稿
帯田様

後者の方法だとエラーが出てコンパイルできなかったので,前者の方法を試してみました.

jsbook.clsで「ページ番号をボールド体ではなくサンセリフに,大きさを\smallに」したい場合,

\makeatletter

\if@twoside

\def\ps@headings{%

\let\@oddfoot\@empty

\let\@evenfoot\@empty

\def\@evenhead{\if@mparswitch \hss \fi

\underline{\hbox to \fullwidth{\textsf{\small\thepage}\hfil\leftmark}}%

\if@mparswitch\else \hss \fi}%

\def\@oddhead{%

\underline{%

\hbox to \fullwidth{{\rightmark}\hfil\textsf{\small\thepage}}}\hss}%

\let\@mkboth\markboth

\def\chaptermark##1{\markboth{%

\ifnum \c@secnumdepth >\z@ 第\thechapter 章 \hskip1zw\fi

##1}{}}%

\def\sectionmark##1{\markright{%

\ifnum \c@secnumdepth >\@ne \thesection \hskip1zw\fi

##1}}%

}

\else % if not twoside

\def\ps@headings{%

\let\@oddfoot\@empty

\def\@oddhead{%

\underline{%

\hbox to \fullwidth{{\rightmark}\hfil\textsf{\small\thepage}}}\hss}%

\let\@mkboth\markboth

\def\chaptermark##1{\markright{%

\ifnum \c@secnumdepth >\z@ 第\thechapter 章 \hskip1zw\fi

##1}}}

\fi

\makeatother


とするとうまくいくことがわかりました.

普通の字体にするには\textsfを外す,文字サイズを変えないなら\smallを外す,といったようにすればよいですね.

ありがとうございました.

匿名 希望 への返信

Re: jsbook.clsでヘッダーの文字サイズの設定

- 帯田 木偶太 の投稿
》 後者の方法だとエラーが出てコンパイルできなかったので,

失礼しました。タイポです。正しくは
    \def\headfootfont{\footnotesize\let\textbf=\relax}
です。

先の書き込みでも言及したように、この方法は副作用が大きい
(ヘッダー/フッター中で、ページ番号以外にボールドにすべき
部分がある場合、その部分まで非ボールドになってしまう、とか)ので、
\ps@headings の再定義の方がはるかに吉でしょう。