水平方向のスペースを追加せずに musixtex でテキストを配置する

水平方向のスペースを追加せずに musixtex でテキストを配置する

私は musixtex で音楽練習帳を書いています。1 つの五線譜とその下にテキストを配置してタイプセットしようとしています。音符はなく、調号のみが変化するので、各小節に調号名を注釈として付けたいと思います。

次の 2 つの例は、私が何を達成しようとしているのかを示しています。

\documentclass[11pt,a4paper,BCOR=12mm,DIV=24,headsepline=true,parskip=half]{scrbook}

\usepackage{musixtex}

\begin{document}

% First example, right layout but text missing
\begin{music}
\generalsignature{0}
\nostartrule
\nobarnumbers
\startpiece\addspace\afterruleskip
\generalsignature{+1}\ignorenats\Changecontext
\generalsignature{+2}\ignorenats\Changecontext
\generalsignature{+3}\ignorenats\Changecontext
\generalsignature{+4}\ignorenats\Changecontext
\generalsignature{+5}\ignorenats\Changecontext
\generalsignature{-1}\ignorenats\Changecontext
\generalsignature{-2}\ignorenats\Changecontext
\generalsignature{-3}\ignorenats\Changecontext
\generalsignature{-4}\ignorenats\Changecontext
\generalsignature{-5}\ignorenats\Changecontext
\setdoublebar
\endpiece
\end{music}

% Second example, adding text messes up layout
\begin{music}
\generalsignature{0}
\nostartrule
\nobarnumbers
\startpiece\addspace\afterruleskip
\lcharnote{P}{\smalltype{C-Dur}}
\generalsignature{+1}\ignorenats\Changecontext
\lcharnote{P}{\smalltype{G-Dur}}
\generalsignature{+2}\ignorenats\Changecontext
\lcharnote{P}{\smalltype{D-Dur}}
\generalsignature{+3}\ignorenats\Changecontext
\lcharnote{P}{\smalltype{A-Dur}}
\generalsignature{+4}\ignorenats\Changecontext
\lcharnote{P}{\smalltype{E-Dur}}
\generalsignature{+5}\ignorenats\Changecontext
\lcharnote{P}{\smalltype{H-Dur}}
\generalsignature{-1}\ignorenats\Changecontext
\lcharnote{P}{\smalltype{F-Dur}}
\generalsignature{-2}\ignorenats\Changecontext
\lcharnote{P}{\smalltype{B-Dur}}
\generalsignature{-3}\ignorenats\Changecontext
\lcharnote{P}{\smalltype{Es-Dur}}
\generalsignature{-4}\ignorenats\Changecontext
\lcharnote{P}{\smalltype{As-Dur}}
\generalsignature{-5}\ignorenats\Changecontext
\lcharnote{P}{\smalltype{Des-Dur}}
\setdoublebar
\endpiece
\end{music}
\end{document}

この例は、次の 3 つの手順でコンパイルする必要があることに注意してください。

$ pdflatex example.tex
$ musixflx example.tex
$ pdflatex example.tex

ここに画像の説明を入力してください

最初の例では、レイアウトは正しいのですが、テキストがまだ含まれていません。2番目の例では、テキストを含めようとしましたが、これにより不要な水平スペースが追加され、レイアウトが乱れています。ドキュメンテーションセクション 2.6.13 では、水平方向のスペースは追加されないことが約束されています。

また、各バー内でテキストが中央に配置されると便利です。

この例を修正する方法、または同じことを実現するための別の解決策を知っている人はいますか?

ありがとう!

答え1

スペースは行末によるものと思われます

\lcharnote{P}{\smalltype{C-Dur}}

これらの行を

\lcharnote{P}{\smalltype{C-Dur}}%

両方の例の間隔は同じです。私の意見では、テキストを右側に重なるボックスに配置すると、出力はさらに良くなります。

\zcharnote{P}{\makebox[0pt][r]{\smalltype{C-Dur}}}%

ここに画像の説明を入力してください

関連情報