需要在 Musixtex 中显示大谱表,字母在音符头内,启动代码如下:
\documentclass[tikz,border=3mm]{standalone}
\usepackage[T1]{fontenc}
\usepackage{polyglossia}
\setmainlanguage{spanish}
\usepackage{tikz}
\usetikzlibrary{arrows.meta, calc}
\tikzstyle{every picture}+=[remember picture]
\usepackage{pifont} % Para usar simbolos ding
\usepackage{musicography}
\usepackage{musixtex}
\input{musixlyr}
\input {musixcho}
\input {musixdat}%fecha
\input {musixfll}
\input {musixgre}%gregoriano
\input {musixper}%percusión
\input {musixppff}
\input {musixstr}
\input {musixvbm} % experimental vectorized beams
\input {musixdbr} % lineas de barras punteadas, discontinuas y arbitrariamente discontinuas
\input {musixbm} % compatibilidad garrapateas con ganchos o con barras
\input {musixbbm} % compatibilidad semi garrapateas con ganchos o con barras
\begin{document}
The grand staff with letters inside head notes:
\begin{music}
\parindent10mm
\sepbarrules
%\curlybrackets{12}
\instrumentnumber{2}
\setstaffs1{1}
\setstaffs2{1}
\setclef20
\setclef16
\smallmusicsize
\songtop{2}
\songbottom{1}
\nobarnumbers
\startpiece%
\notes\wh{GHIJKLMNa}& \wh{*********efghijklm}\en
\Endpiece
\end{music}
\end{document}
答案1
您可以将其作为覆盖来完成:
- 四分音符
- 用白色填充的圆圈
- 圆圈内的字母文字。
要叠加,请使用宽度为 0pt 的 box-trick。例如,使用 tikz 进行叠加。也许使用\savebox
会很有用。
但是,我怀疑您的要求是否真的能带来良好的可读性,因为所有内容都会趋于相对较小。视觉效果会重叠,即填充和线宽的某些组合看起来可读性较差。
如果您只想介绍一些音阶,使用 tikz 绘制五线谱和音符可能是更好、更灵活的方法。
只是为了给你提供更多的想法,向你展示可能性和副作用。
- 宏
\nl (1 par)
在 上打印一个“x”\wh
,而\nla (2 par)
在 上打印一些字母\wh
。作为\nl
的一个特例\nla
,它只是重复使用代码。
% ~~~ a labeled note ~~~~~~~~~~~~~~~~
\newcommand\nla[2]{\raisebox{-2pt}{\zcharnote{#1}{#2}}\wh{#1}}
\newcommand\nl[1]{\nla{#1}{x}}% reusing aboves macro to just place an "x"
...
% \notes\wh{GHIJKLMNa}& \wh{*********efghijklm}\en
\notes\nla{G}{G}\nla{H}{A}\nla{I}{B}\nl{J}\nl{K}\nl{L}\nl{M}\nl{N}\nl{a}& \wh{*********}\nl{e}\nl{f}\nl{g}\nl{h}\nl{i}\nl{j}\nl{k}\nl{l}\nl{m}\en
...
然而,如果你按照从 musixtex 替换音符的路线,它们无论如何都是合适的字形/字符,你可以从中选择有趣的组合综合 LATEX 符号列表。 // 例如,您可以选择各种可用的椭圆或椭圆形之一来替换“注释”。您可以尝试使用
\textcircled{A}
semitrans 包中的椭圆。或者重用一些 lilypond 字形。等等。 // 但是,字体大小将是一个关键点。同样,它可能不会像您想要的那样可读。您还可以将标记的注释视为粗左括号、字符和粗右括号的组合。放入宏中可能可以调整字体大小。但是您可能更喜欢 tikz 路线,这会为您提供更好的机会。
答案2
现在字体缩小了,但是居中消失了。。。需要修正,代码如下:
\documentclass[tikz,border=3mm]{standalone}
\usepackage[T1]{fontenc}
\usepackage{polyglossia}
\setmainlanguage{spanish}
\usepackage{musixtex}
% ~~~ a labeled note ~~~~~~~~~~~~~~~~
\newcommand\nla[2]{\raisebox{-1.0pt}{\roffset{.35}{\zcharnote{#1}{\tiny{#2}}}}\wh{#1}}
\newcommand\nl[1]{\nla{#1}{x}}% reusing aboves macro to just place an "x"
\begin{document}
The grand staff with letters inside head notes:
\begin{music}
\parindent10mm
\sepbarrules
%\curlybrackets{12}
\instrumentnumber{2}
\setstaffs1{1}
\setstaffs2{1}
\setclef20
\setclef16
\smallmusicsize
\songtop{2}
\songbottom{1}
\nobarnumbers
\font\A=phvb8t at 3pt% second fontsize, 4pt possible, too
\startpiece%
%\notes\wh{GHIJKLMNa}& \wh{*********efghijklm}\en
\notes\nla{G}{\A G}\nla{H}{\A A}\nla{I}{\A B}\nla{J}{\A C}\nla{K}{\A D}\nla{L}{\A E}\nla{M}{\A F}\nla{N}{\A G}\nla{a}{\A A}&
\wh{*********}\nla{e}{\A E}\nla{f}{\A F}\nla{g}{\A G}\nla{h}{\A A}\nla{i}{\A B}\nla{j}{\A C}\nla{k}{\A D}\nla{l}{\A E}\nla{m}{\A F}\en
\Endpiece
\end{music}
\end{document}
输出如下(请注意,字母注释现在居中):