角カッコの横線を長くしたい

角カッコの横線を長くしたい

- TAKENO Shigeharu の投稿
返信数: 8

個人的な意見ですが、数式内の標準の丸かっこ (開区間など) は特に問題ないのですが、標準の角カッコ (閉区間など) は、横線が短か過ぎて、縦線と見間違えそうです。

「LaTeX2e 美文書作成入門」、「LaTeX2e 標準コマンドポケットリファレンス」にある数式用フォントのパッケージを試した感じでは、mathabx のフォントが比較的横線が長めなのですが、もっと極端に長いものがあってもよさそうに思います。

そこで、数式の角カッコの横線が長いフォントをご存知でしたら教えていただきたいです。または、自作などの他の方法で角カッコの横線を長くする方法でも結構です。

なお、角カッコ部分だけを拝借しようと、以下のようにやったのですが、他のパッケージでは同様にして拝借できるようですが (arev, euer, lxfonts 等)、mathabx はうまくいかず、カッコ部分がカッコになりません。\usepackage{mathabx} も同時に指定すればちゃんとカッコになるのですが、それがないとうまくいかないようです。これについても、何かご存知の方は教えていただけるとありがたいです。

    \DeclareSymbolFont{abxsym}{U}{matha}{m}{n}
    \DeclareSymbolFont{abxlarge}{U}{mathx}{m}{n}  
    \DeclareMathDelimiter{\kakul}{\mathopen}{abxsym}{"72}{abxlarge}{"10}
    \DeclareMathDelimiter{\kakur}{\mathclose}{abxsym}{"73}{abxlarge}{"18}
    \begin{document}
     \begin{displaymath}
     \kakul 3,5\kakur,\ \bigl\kakul 3,5\bigr\kakur,
     \ \Bigl\kakul 3,5\Bigr\kakur,\ \biggl\kakul 3,5\biggl\kakur,
     \ \Biggl\kakul 3,5\Biggr\kakur
     \end{displaymath}

以上、よろしくお願いいたします。

TAKENO Shigeharu への返信

Re: 角カッコの横線を長くしたい

- しっぽ 愛好家 の投稿

私の手元(TeX Live 2018,非 LuaTeX)では,次のような警告が生じますが,
それに応じた対処は施しましたか?

LaTeX Font Warning: Font shape `U/matha/m/n' undefined
(Font)              using `U/cmr/m/n' instead on input line 13.

LaTeX Font Warning: Font shape `U/mathx/m/n' undefined
(Font)              using `U/cmr/m/n' instead on input line 13.

log ファイルには

LaTeX Font Info:    Try loading font information for U+matha on input line 13.
LaTeX Font Info:    No file Umatha.fd. on input line 13.

LaTeX Font Info:    Try loading font information for U+mathx on input line 13.
LaTeX Font Info:    No file Umathx.fd. on input line 13.

のような追加情報もあったので,必要なフォント定義は(私が用いているバージョンの
mathabx では)fd ファイル経由で与えているのではないわけですが,
どこか(可能性が高いのは mathabx.sty 本体の中)にはあるはずですね.

しっぽ 愛好家 への返信

Re: 角カッコの横線を長くしたい

- TAKENO Shigeharu の投稿

早々にご回答ありがとうございます。そうですね。場合分けとか入ってるので結構見づらいですが、mathabx.sty をもう少し勉強してみます。どうもありがとうございました。

TAKENO Shigeharu への返信

Re: 角カッコの横線を長くしたい

- TAKENO Shigeharu の投稿
事後報告です。
mathabx.sty にかかれている DeclareFontFamily, DeclareFontShape も移設したら使えるようになりました。あとで、本田さんの「ポケットリファレンス」に、mathabx は .fd ファイルを使ってない、とも書いてあることに気がつきました。

なお、mathabx の角カッコは水平線がやや細く、個人的にはまだ水平線が短いため、別の方策を考えることにしました。どうもありがとうございました。
TAKENO Shigeharu への返信

Re: 角カッコの横線を長くしたい

- 和田 勇 の投稿

自作などの他の方法で角カッコの横線を長くする方法

不得手な分野ですが Making square brackets more similar to \lfloor では \lfloor \lceil \rfloor \rceil を利用して合字化で対応してるように見受けられます。

TAKENO さんが示されたコーディング例と同じくらいの横線が長く見えるようです。が、コーディングはちょっとみ辛いかもしれません。

和田 勇 への返信

Re: 角カッコの横線を長くしたい

- TAKENO Shigeharu の投稿
早々にご回答ありがとうございます。そちらのものも勉強してみて試したいと思います。どうも情報ありがとうございました。
TAKENO Shigeharu への返信

Re: 角カッコの横線を長くしたい

- TAKENO Shigeharu の投稿
事後報告です。
教えていただいた \{l,r}floor, \{l,r}ceil を重ねる方法で作る記号は、mathabx の角カッコより水平線も長く、それなりにいいと思ったのですが、これは固定サイズのカッコ (\big や \Big 等) にしか使えず、\left, \right で作る行列のような大きなカッコは作れないし、個人的にはこれでもまだ角カッコの水平線が短く感じたので、別な方策を取ることにしました。どうもありがとうございました。

なお、他にも色々フォントを探してみたのですが満足するものはなく、結局は cmex10.mf や cmr10.mf (が読み込むファイル) の metafont ソースの角カッコ部分のパラメータを少し修正して角カッコの水平線を伸ばした自分用のフォントを作って、それを使うことにしました。
これなら \big 等の固定サイズのものも使えるし、\left, \right による部品の重ね合わせによる大きなカッコも使えますし、長さも自分好みに変更できます。
TAKENO Shigeharu への返信

Re: 角カッコの横線を長くしたい

- しっぽ 愛好家 の投稿

>教えていただいた \{l,r}floor, \{l,r}ceil を重ねる方法で作る記号は、
>(中略)
>これは固定サイズのカッコ (\big や \Big 等) にしか使えず、
>\left, \right で作る行列のような大きなカッコは作れない
そういうときには仮想フォントを使うという手があります.

ひとまず,(amssymb の)\ulcorner などを角括弧のパーツとして借用してみたサンプルを添付しています.

しっぽ 愛好家 への返信

Re: 角カッコの横線を長くしたい

- TAKENO Shigeharu の投稿
サンプル、どうもありがとうございます。丁度私が作った角カッコの水平線もほぼ同様の長さです。vf という手もあるのですね。知りませんでした。それも何かのときに使えるかもしれませんので、時間のあるときにでも調べてみたいと思います。

どうもありがとうございました。