使用 Musixtex 的低音谱号

使用 Musixtex 的低音谱号

需要实现两个上低音谱号,基本代码如下:

\documentclass{article}
\usepackage[a4paper]{geometry}
\usepackage{tikz}
\usepackage{musixtex} 
\usepackage{lipsum} 
\usepackage{float}
\usepackage{xcolor}
    
\begin{document} 

\begin{music}
    \font\A=phvb8t at 8pt% added for letter type.
    \setclef1\treble % Clave de Sol para el Instrumento 1
    \nobarnumbers % Omite la numeración en los compases
    \nostartrule % Inicia sin barra vertical
    \startextract %inicia el fragmento musical
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Treble}\wh{c}\en%\bar
    \setclef11\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Soprano}\qsk\wh{c}\en%\bar
    \setclef12\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Mezzo}\zchar{9}{\hspace*{-0.5cm}\A Soprano}\qsk\wh{c}\en%\bar
    \setclef13\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Alto}\qsk\wh{c}\en%\bar
    \setclef14\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Tenor}\qsk\wh{c}\en%\bar
    \setclef15\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Baritone}\qsk\wh{c}\en%\bar
    \setclef1\bass\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Bass}\qsk\wh{c}\en%\bar
    \setdoublebar
    \endextract % Se finaliza el fragmento musical
\end{music}


\end{document}

当前输出如下: 当前的

期望的输出如下: 期望

答案1

一个解决方案是使用谱号替换

\documentclass{article}
\usepackage[a4paper]{geometry}
\usepackage{tikz}
\usepackage{musixtex} 
\usepackage{lipsum} 
\usepackage{float}
\usepackage{xcolor}
    
\begin{document} 

\begin{music}
    \font\A=phvb8t at 8pt% added for letter type.
    \setclef1\treble % Clave de Sol para el Instrumento 1
    \nobarnumbers % Omite la numeración en los compases
    \nostartrule % Inicia sin barra vertical
    \startextract %inicia el fragmento musical
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Treble}\wh{c}\en%\bar
    \setclef11\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Soprano}\qsk\wh{c}\en%\bar
    \setclef12\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Mezzo}\zchar{9}{\hspace*{-0.5cm}\A Soprano}\qsk\wh{c}\en%\bar
    \setclef13\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Alto}\qsk\wh{c}\en%\bar
    \setclef14\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Tenor}\qsk\wh{c}\en%\bar
    %%%%
    %%%% CHANGES BELOW
    \setclef15\Changeclefs%
    \setclef17\setclefsymbol1\smallaltoclef\Changeclefs%  NOTE1
    \setclef15\setclefsymbol1\empty\Changeclefs%  NOTE2
    \resetclefsymbols%  NOTE3
    %%%% END CHANGES
    %%%%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Baritone}\qsk\wh{c}\en%\bar
    \setclef1\bass\Changeclefs%
    \NOTEs\zchar{13}{\hspace*{-0.5cm}\A Bass}\qsk\wh{c}\en%\bar
    \setdoublebar
    \endextract % Se finaliza el fragmento musical
\end{music}


\end{document}

编译后为

在此处输入图片描述

说明/注释:

  1. 在 musixtex 中,谱号 0 是以第二线为中心的 G 谱号;谱号 1、2、3、4 是以分别以第一、第二、第三和第四线为中心的 C 谱号;谱号 5、6 和 7 是以第三、第四和第五线为中心的 F 谱号。谱号 9 是第一线的 G 谱号。您要打印的是第五线的 C 谱号。因此您可以进行谱号替换:
    • 首先\setclef17指定“第五线 F 谱号”
    • 将谱号符号替换\setclefsymbol1\smallaltoclef为,以打印 C 谱号
    • 使用以下方式激活\Changeclefs
  2. 然而,这会导致一个问题,因为 musictex 会将所有后续音符解释为相对于“第五线的 F 谱号”指定的;为了解决这个问题,我们使用 将谱号重置为低音谱号\setclef15。为了避免打印另一个谱号符号,我们\setclefsymbol1\empty在之前\Changeclefs
  3. 最后,在所有这些恶作剧之后,所有内部谱号符号都乱了,所以我们重置谱号符号,\resetclefsymbols以便您下次发出时\setclef<n><m>获得预期的输出。

答案2

这是我的解决方案,包括正确的调号、“替代”以及将名称放在调的上方,而不是音符的上方,因为它是调的名称,而音符的名称始终是“c”或“do”。此外,我推测西班牙语中的调的名称(略有)不同。

\documentclass{article}
\usepackage[a4paper]{geometry}
\usepackage{tikz}
\usepackage{musixtex} 
\usepackage{lipsum} 
\usepackage{float}
\usepackage{xcolor}
    
\begin{document} 

\begin{music}
    \font\A=phvb8t at 8pt% added for letter type.
    \setclef1\treble % Clave de Sol para el Instrumento 1
    \nobarnumbers % Omite la numeración en los compases
    \nostartrule % Inicia sin barra vertical
    \startextract %inicia el fragmento musical
    \NOTEs\cchar{13}{\bsk\A Treble}\wh{c}\en%
\NOTEs\altoclef\cchar{13}{\hbsk\A Soprano}\qsk\wh{e}\en%
    \NOTEs{\zcharnote g{\altoclef}}\qsk\cchar{14}{\A Mezzo}\cchar{10}{\A Soprano}\hsk\wh{g}\en%
    \NOTEs\zcharnote i{\altoclef}\qsk\cchar{14}{\A Alto}\hsk\wh{i}\en%
    \NOTEs\zcharnote k{\altoclef}\qsk\cchar{14}{\A Tenor}\hsk\wh{k}\en%
    \NOTEs\zcharnote M{\A alternate}\unbkt P{0.8}0\zcharnote m{\altoclef}\hsk\cchar{14}{\A Baritone}\zcharnote i{\bassclef}\qsk\hsk\wh{m}\en%
    \NOTEs\zcharnote k{\bassclef}\cchar{14}{\qsk\qsk\A Bass}\qsk\hsk\wh{o}\en%
    \setdoublebar
    \endextract % Se finaliza el fragmento musical
\end{music}


\end{document}

在此处输入图片描述

相关内容