Closed aminophen closed 7 years ago
jsarticle で等価と思われる
geometry を使った時点で一度「geometry のデフォルト」にリセットされるので、少なくとも、等価ではないですよね……。
おっと違った、 *
付きだったか。
寧ろ「geometryが何でもかんでもリセットする」と考えるのがマチガイで、 実際には“geometryのデフォルト”が適用されるのは次のパラメタに限られるようです。
\textwidth
\textheight
\oddsidemargin
\evensidemargin
\topmargin
つまり、これ以外は「geometry読込前の値」が“初期値”と見なされる、
つまり reset
した場合はその値に戻る、と考えられます。
そして、その初期値がjsarticleとbxjsarticleで異なる。
つまり、JSクラスと異なり、BXJSクラスではほとんどのパラメタを“geometryにより”設定している、
従って、geometryでreset
した直後は、多くのパラメタが“無意味な”値になっている。
(例えば \footskip
の値がゼロになっている。)
この挙動は“意図通り”といって良いと思いますがどうでしょう……。
BXJSクラスではほとんどのパラメタを“geometryにより”設定している、 従って、geometryで reset した直後は、多くのパラメタが“無意味な”値になっている。
なるほど…
\RequirePackage{filehook}
\AtBeginOfPackageFile{geometry}{\typeout{\the\footskip}}
\documentclass[twocolumn,platex,dvipdfmx,ja=standard]{bxjsarticle}
\typeout{\the\footskip}
\setpagelayout*{margin=15truemm}
\typeout{\the\footskip}
たしかに \footskip の初期値は 0pt ですし、「ほとんどのパラメタを“geometryにより”設定している」のですから、reset すると無意味になるのは確かに意図どおり、という気がしてきました。
ちなみに、マニュアルでは各クラスについて 「どのようなgeometryのパラメタを設定しているのか」 を具体的に記載しているのですが、この目的は 「元々のレイアウトを少し変えた奴を作りたい」 と思ったユーザが正しい設定に行き着けるようにするため、なんですね。
参照:
https://twitter.com/re_easy2/status/760114749128396800?lang=ja
#他人のツイートを借りる奴
記載してあるのは \bxjs@layout
の中身ですね。これが“初期値”だと勘違いしていました。
「2. geometry で」と書いてあるのを読んだ時点で気づくべきでしたね…(geometry ムズカシイ)
# ふと思い出して試してみたら、v1.2a でも状況が同じだったので。
twitter:697919431884713984 の話です。
このレイアウトが、jsarticle で等価と思われる以下のソースと異なり、分割線とページ番号が重なってしまいます。これは意図どおりなのでしょうか。
bxjsbook に関する残念な話とはまた別だ、と思っています。