在 PDFTeX 中,如何将 \footnote 符号本地更改为音乐符号/音符?

在 PDFTeX 中,如何将 \footnote 符号本地更改为音乐符号/音符?

这与之前的问题相关如何将 \footnote 符号本地更改为音乐符号/音符?

我希望改变下面的 \symfootnote * 和 \dagger 定义

  1. \sharp 和 \flat 音乐符号。

或者

  1. G 谱号(高音谱号)和 F 谱号(低音谱号)符号。

而枚举的其他部分对我来说完全没问题。

如果您能做到 1,那么对我来说这是一个非常好的答案。

如果你能做到 2,对我来说是一个奖励,但这不是必要的。

我如何在 PDFLaTeX 中做到这一点(不使用 XeLaTeX 或 LuaLaTeX),就像@Alan Munn 所做的那样如何将 \footnote 符号本地更改为音乐符号/音符?

在此处输入图片描述

这是我迄今为止失败的尝试:

\documentclass{article}


\newcommand{\symfootnote}[1]{%
\let\oldthefootnote=\thefootnote%
\stepcounter{mpfootnote}%
\addtocounter{footnote}{-1}%
\renewcommand{\thefootnote}{\fnsymbol{\sharp\flat}}%
\footnote{#1}%
\let\thefootnote=\oldthefootnote%
}

\begin{document}

This document\footnote{first letter} may have 
several\footnote{second letter} 
footnotes\symfootnote{first symbol}. 

While most of them\footnote{third letter} are 
alphabetical\footnote{fourth letter}, some are 
symbolic\symfootnote{second symbol} also, to 
preserve variety\footnote{fifth letter}.

\end{document}

像这样的结果PDFLaTeX(不使用 XeLaTeX 或 LuaLaTeX)也是一个很好的答案!

在此处输入图片描述

答案1

通常,当使用多个脚注装置时,一个用于每页,另一个用于更全局的编号系统(每章或每份文件)。符号脚注系统几乎完全是按页实现的,因为通常只有很少的符号集,因此它们不适合文档或章节范围。在 LaTeX 中实现此系统的一种相当标准的方法是使用包 bigfoot,此包对该manyfoot包进行了一些改进,您应该查阅manyfoot文档以了解如何使用它。

下面是一个如何执行此操作的示例。第一个例子使用 pdfLaTeX,但缺少谱号。我没能在任何 Type1 字体中找到谱号符号。但许多字体都包含临时记号,因此可以轻松实现它们。根据设计,manyfoot将两个不同的脚注系列分开,因此您不能将数字和符号脚注混在一起。第二个示例只是使用了我在上一个答案中描述的相同方法,但添加了bigfoot不同编号系统的代码。

pdfLaTeX 仅包含尖锐和扁平符号

% compile with pdfLaTeX
\documentclass{article}

\usepackage[T1]{fontenc}
\usepackage{bigfoot} % See the manyfoot package for documentation
\usepackage[symbol*]{footmisc}
\DeclareNewFootnote{B}
\DefineFNsymbols*{music}{{$\sharp$}{$\flat$}*{$\dag$}}
\DeclareNewFootnote{A}
\renewcommand{\thefootnoteA}{\fnsymbol{footnoteA}}
\MakePerPage{footnoteA}
\setfnsymbol{music}
\begin{document}
Some text\footnoteB{A regular footnote.} Some text\footnoteA{A symbol footnote}. Some text\footnoteB{Another regular footnote} Some text\footnoteA{Another symbol footnote} Some text\footnoteA{A symbol footnote} Some text\footnoteA{A symbol footnote}.
\end{document}

代码输出

添加了谱号符号的 LuaLaTeX 或 XeLaTeX

% compile with LuaLaTeX or XeLaTeX
\documentclass{article}

\usepackage[]{bigfoot} % See the manyfoot package for documentation
\usepackage[symbol*]{footmisc}
\usepackage{fontspec}
\newfontfamily\musicfont[Scale=MatchUppercase]{Free Serif}
\DeclareTextFontCommand{\textmusic}{\musicfont}
\newcommand*\clefG{\textmusic{\char"1D122}}
\newcommand*\clefF{\textmusic{\char"1D11E}}

\DeclareNewFootnote{B}
\DeclareNewFootnote{A}
\DefineFNsymbols*{music}{\clefG\clefF{\textmusic{\sharp}}{\textmusic{\flat}}}
\setfnsymbol{music}
\renewcommand{\thefootnoteA}{\fnsymbol{footnoteA}}
\MakePerPage{footnoteA}

\begin{document}
Some text\footnoteB{A regular footnote.} Some text\footnoteA{A symbol footnote}. Some text\footnoteB{Another regular footnote} Some text\footnoteA{Another symbol footnote} Some text\footnoteA{A symbol footnote}
\end{document}

代码输出

pdfLaTeX 使用图像作为谱号

如果您确实需要使用 pdfLaTeX 并需要谱号符号,那么您可以将其作为图形插入。为此,我使用包standalone和 LuaLaTeX 制作了谱号图像。这是高音谱号的文档。这产生了一个文件clefF.pdf

\documentclass[]{standalone}
\usepackage{fontspec}
\setmainfont{Free Serif}
\newcommand*\clefG{\char"1D122}
\newcommand*\clefF{\char"1D11E}
\begin{document}
\fontsize{60}{60}\selectfont
\clefF
\end{document}

对于低音谱号,我使用了相同的程序,但我还使用了脚本pdfcrop来裁剪生成的图像,因为使用的默认裁剪standalone似乎没有完全裁剪。所以在创建之后,clefG.pdf我使用了命令pdfcrop clefG.pdf。这产生了clefG-crop.pdf我将其重命名为的clefG.pdf图像。现在我们可以定义命令以将谱号图像插入为符号:

\documentclass{article}

\usepackage[T1]{fontenc}
\usepackage{graphicx}
\DeclareRobustCommand\clefG{\includegraphics[height=1.5ex]{clefG}}
\DeclareRobustCommand\clefF{\includegraphics[height=2ex]{clefF}}
\usepackage{bigfoot}
\usepackage[symbol*]{footmisc}
\DeclareNewFootnote{B}
\DefineFNsymbols*{music}{{\clefG}{\clefF}{$\sharp$}{$\flat$}}
\DeclareNewFootnote{A}
\renewcommand{\thefootnoteA}{\fnsymbol{footnoteA}}
\setfnsymbol{music}
\begin{document}
Some text\footnoteB{A regular footnote.} Some text\footnoteA{A symbol footnote}. Some text\footnoteB{Another regular footnote} Some text\footnoteA{Another symbol footnote} Some text\footnoteA{A symbol footnote} Some text\footnoteA{A symbol footnote}.
\end{document}

代码输出

相关内容