type
Post
status
Published
date
Nov 26, 2022
slug
summary
考虑以后增加关于lilypond的内容
tags
LaTex
category
学习
icon
password
之前也简单的做过模板的设置
也是为了平常做音乐分析而制作的模板
不过当时才刚入门【虽然现在也是】
用了很多不方便的方式来表示音乐记号
所以今天这个算是使用了一段时间之后
正式设定的模板 V1.0

效果展示

关于字体设置

关于字体,我基本上没太搞懂过。
不知道是因为遗漏了那里,还是理解没到位。
% 关于字体的设置 \setCJKmainfont{SourceHanSerifSC-Regular.otf}[BoldFont={SourceHanSerifSC-Bold.otf},ItalicFont={FZKAITI_GBK.TTF}, BoldItalicFont={STKaitiSC-Bold.ttf}] \setCJKsansfont{SourceHanSansCN-Regular.otf} [ BoldFont = SourceHanSansCN-Bold.otf] \setCJKmonofont{FZFangSong-Z02} \setCJKfamilyfont{zhsong}{SourceHanSerifSC-Regular.otf}[BoldFont={SourceHanSerifSC-Bold.otf}] \setCJKfamilyfont{zhhei}{SourceHanSansCN-Regular.otf}[ BoldFont = SourceHanSansCN-Bold.otf] \setCJKfamilyfont{zhkai}{FZKAITI_GBK.TTF}[BoldFont={STKaitiSC-Bold.ttf}] \setCJKfamilyfont{zhfs}{FZFangSong-Z02} \newcommand*{\songti}{\CJKfamily{zhsong}} \newcommand*{\heiti}{\CJKfamily{zhhei}} \newcommand*{\kaishu}{\CJKfamily{zhkai}} \newcommand*{\fangsong}{\CJKfamily{zhfs}}
简单的说明一下字体设置的思路。
首先是前面三条命令,mainsansmono分别是设置罗马、无衬线、打字机字体。
所以第一条里面我填写的是思源宋体的字体。如果加粗的话则是设置Bold的形式,如果是需要ItalicFont的话就直接选择的方正楷体。这里还有一个特别的是BoldItalicFont 这里我设置的是mac下的字体。
  • 把思源宋体作为主字体是因为树哥的推荐,我自己感觉也是比较好看,而且也觉得之前用的方正系列会不会有点太过于普遍。
  • ItalicFont 的字型我看一般的配置都是设置成楷体,但是我没有找到风格很配套的,于是就直接用的方正楷体。
  • 我在mac上设置最原始的那一版的时候,需要对楷体进行加粗。在mac下是可以正确工作的,用的是\bfseries\itsharp 这样的命令。但是在windows下却不好使。仔细研究了一下,才发现这是一个常见的问题。知乎上找到的方法,就是直接用一个方正粗楷的字体进行代替。我也试了一下觉得太粗,于是才从mac上拿的字体。当然我更希望有什么思源楷体之类的字体出现,完美成套。
接下来是第二条命令,无衬线字体。我看配置文件本身也是设置为黑体。于是我就使用了思源黑体的两个字重。
最后的命令是代表打字机字体的,也叫做等宽字体吧。我其实也不知道什么时候会用到,但是我就模仿填了一个方正的仿宋字体。
接下来的命令都是关于字体族的,都是围绕着上面的字体来配置。

说实话,现在字体问题还是懵懵懂懂,但确实是能跑起来…于是就先将就着用。
这里参照了两篇很重要的文章。
这一篇主要是学到了如何转换ttc字体,不然mac的字体拿到windows上用不了。
LaTeX 中文字体配置基础指南
经常见到问 \LaTeX 中文字体如何设置的问题,还有问为什么 Windows 和 Linux 编译出来的 pdf 字体不一样,以及粗体、斜体、缺字等等问题。 在介绍 \LaTeX 中文字体配置之前,先吐槽一下国家有关部门(有关部门是个神奇的部门,到处都有这个部门,到处都找不到这个部门,总之可称之为"薛定谔的有关部门")每年几亿几十亿甚至几百亿的资金投入,就是不肯投入资金开发一套包含宋、黑、楷、仿宋以及相应字重的基础大字符集的标准字体。(对岸的"教育部"就做到了),导致不同系统、不同平台上没有一套统一的字体,文档最终呈现字体五花八门,而民众一不小心就要吃官司。 吐槽完了,下面开始说干货。 目前,\LaTeX主流中文文档类支持是通过 ctex 宏包。 ctex 文档对不同平台、不同编译器字体设置默认配置作了详细说明。 不同平台,不同编译的字体和中文底层宏包是不同的。目前主流的方案是 xelatex + ctex,其中文底层宏包为 xeCJK ,Windows 和 Linux 平台又占绝大多数。以下就主流方案在 Windows 和 Linux 平台加以说明。 ctex内部定义了一系列字体配置文件,位于.../texmf-dist/tex/latex/ctex/fontset 目录,其下有八个字体定义文件,对应了不同的字体设置方案。 根据前面的配置说明表格,看到文件名,基本能猜得到 Windows 平台默认配置文件为 ctex-fontset-windows.def,而 Linux 平台上为 ctex-fontset-fandol.def 。的确如此。 开打 ctex-fontset-windows.def ,内容不多,主要就是这些定义(其他代码处理了兼容和标点,就掠过不提)。为方便理解相关注释直接在代码中写出。 以上配置就回答了"为什么 LaTeX 宋体粗体是黑体而不是向Word那样的粗体?"同样,也回答了"LaTeX 中文斜体是楷书而不是 Word 那样的斜体?"这个问题。如何设置像Word那样的粗体和斜体呢?后面再作说明。 要特别注意的是, Windows 默认的字体全部都是有商业版权的。原则上,只有正版 Windows 用户方才可以用于非商业用途。如需用于商业,必须获得授权。 同样打开 ctex-fontset-fandol.def 来看看 Linux 平台上的默认字体配置文件及说明如下: 以上配置可以看到,在 Linux 平台上宋体粗体是真实的粗体而不是黑体,但也不是 Word 中的伪粗体。与 Windows 默认配置一样,宋体斜体仍然以楷体代替。 这套字体满足了宋体粗体和黑体粗体的需求,字形也是相当美观的。 但是这套字体不可免费商用,在其 name 表里明确标注 Chinese fonts for TeX system.
LaTeX 中文字体配置基础指南
这一篇就更加重要,从这里学到至少怎么让字体命令生效。
 

关于lilyglyphs

在写音乐类的内容时,我目前最常使用的就是和声标记和变音记号。和声标记应用数学模式的上下标其实非常的好解决,也不需要什么额外的工具。
但是变音记号就比较麻烦。
我最开始是参照了书上添加左上标与左下标的方法,在一个宏包里用了\prescript{}{}{} 这条命令。
问题确实是解决了,显示的效果其实也还不错,就是转换格式的时候稍微麻烦了一点。

后来我发现,升号、降号原来是字体里面本来就有的!
也就是我复制粘贴就可以
比如说♯ ♭
我真的是有点后知后觉
当然也可以使用命令\sharp \flat 进行输入

lilyglyphs的文档我并没有看的太懂
不过正好找到了我需要的功能
首先引入宏包之后就会对原本\sharp \flat 这两个命令进行替换
我个人觉的区别就是更加粗一点,因为以前的好像显得分辨率比较低的效果
接着这个符号还可以自定义,比如放大放小,调整高度。
% 替换升号 \renewcommand*{\sharp}[1][]{ \setkeys{lilyDesignOptions}{scale=1.2,raise=1.3} \lilyPrint[#1]{\lilyGetGlyph{accidentals.sharp}} } % 替换降号 \renewcommand*{\flat}[1][]{ \setkeys{lilyDesignOptions}{scale=1.2,raise=1.3} \lilyPrint[#1]{\lilyGetGlyph{accidentals.flat}} }
以上的代码是我调整出来的,感觉还没有说那么的好看,但是勉强能看,就此作罢。
总之,现在简单多了,只要\sharp B 就可以直接使用。
 

使用规范

有一些细节使用规范自己给自己固定一下
风格会更加统一
  • 任何时候只要是描述调性,就进入数学模式。例如$\sharp c$ 小调。
  • 正文中描述音名,直接使用命令+大写音名。例如\flat D 音。
 

最后

最后展示一下整个模板
\documentclass[fontset=none]{ctexart} % 控制版面 \usepackage[scale=0.75]{geometry} % 控制颜色 \usepackage{xcolor} % 解决字母带方框的问题 \usepackage{lmodern} % 为了引用中文文献 \usepackage{gbt7714} % 数学公式相关的包 \usepackage{array,amsmath} % 为了替换\sharp\flat等音乐标记 \usepackage{lilyglyphs} % 为了表格竖着可以合并 \usepackage{multirow} % 缩小表格 \usepackage{graphicx} % 可以使用\resizebox命令 % 调整页眉页脚 \usepackage{fancyhdr} \setlength{\headheight}{23pt} \pagestyle{fancy} \fancyhf{} % 清除现有的页眉页脚格式 %\lhead{\includegraphics[height=18pt]{logo.png} \textcolor{red}{A}urality制作分享} % 宏定义 \newcommand\tsd[1]{\mathrm{#1}} % 书写功能级 \newcommand\barnum[2]{($#1\sim#2$)} % 表示x小节至x小节 \newcommand\luoma[1]{\MakeUppercase{\romannumeral#1}} % 大写的罗马数字 % 替换升号 \renewcommand*{\sharp}[1][]{ \setkeys{lilyDesignOptions}{scale=1.2,raise=1.3} \lilyPrint[#1]{\lilyGetGlyph{accidentals.sharp}} } % 替换降号 \renewcommand*{\flat}[1][]{ \setkeys{lilyDesignOptions}{scale=1.2,raise=1.3} \lilyPrint[#1]{\lilyGetGlyph{accidentals.flat}} } % 关于字体的设置 \setCJKmainfont{SourceHanSerifSC-Regular.otf}[BoldFont={SourceHanSerifSC-Bold.otf},ItalicFont={FZKAITI_GBK.TTF}, BoldItalicFont={STKaitiSC-Bold.ttf}] \setCJKsansfont{SourceHanSansCN-Regular.otf} [ BoldFont = SourceHanSansCN-Bold.otf] \setCJKmonofont{FZFangSong-Z02} \setCJKfamilyfont{zhsong}{SourceHanSerifSC-Regular.otf}[BoldFont={SourceHanSerifSC-Bold.otf}] \setCJKfamilyfont{zhhei}{SourceHanSansCN-Regular.otf}[ BoldFont = SourceHanSansCN-Bold.otf] \setCJKfamilyfont{zhkai}{FZKAITI_GBK.TTF}[BoldFont={STKaitiSC-Bold.ttf}] \setCJKfamilyfont{zhfs}{FZFangSong-Z02} \newcommand*{\songti}{\CJKfamily{zhsong}} \newcommand*{\heiti}{\CJKfamily{zhhei}} \newcommand*{\kaishu}{\CJKfamily{zhkai}} \newcommand*{\fangsong}{\CJKfamily{zhfs}} % 曲式图中的字体用法 % 第一列使用\bfseries跟\itshape进行加粗跟字体变化 % 其他出现的中文,均使用\itshape的字形 % 大写的英文字母一律照常输入,小写的英文字母则用$$进入数学模式 % 统一使用上标,大写字母使用A%^1%的形式,小写字母则$a^1$ % 若涉及到和声标记,字母一律采用\tsd输入,并进行嵌套,/符号可以直接输入 % 和声的进行则直接在$$中输入减号-来代替,间距比较合理 % 正文中出现的字母一律按上述要求 \begin{document} % 正文中在乐句与乐句之间隔行。主题描述与和声、织体描述之间可以用\\换行 \section*{} \subsection*{曲式结构图} \subsection*{分析报告} \subsubsection*{A段} \subsubsection*{} \subsection*{总结} \begin{enumerate} \item \end{enumerate} % 表示导出bib文件中的所有文献 % zotero自动导出的bib中,@thisis需要改成@mastersthesis才能被识别 \nocite{*} \bibliographystyle{gbt7714-numerical} \bibliography{bib.bib} \end{document}
 
 
win10远程桌面遇到的奇怪问题 notion导入md文件