汉语诗词 LaTeX 排版样式

清世何须忧庙廊——汉语诗词 LaTeX 排版样式

作者想一些中国古典诗歌,发现大多数早期的例子都是为了英文诗而创作的环境。 下面是作者给出唐诗选集的布局实例。 它不是一般解决方案,而只是一个特定的例子。有喜欢的用户可以下载试用下。Happy LaTeXing!

首先是需要汉字注音的宏包和tcolorbox宏包,我们在导言区插入进去:

1
2
3
4
5
6
%漢字自動注音
\usepackage{xpinyin}
%漢字注音設置
\xpinyinsetup{ratio = .4,font =\ubufont,multiple={\color{black}}}
%制作诗歌显示环境
\usepackage{tcolorbox}

下一步,我们定义下唐诗诗歌的环境:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
\newenvironment{poem}[3] %code={\doublespacing},
{\begin{tcolorbox}[left=1mm,right=1mm,top=3mm,bottom=2mm,enhanced,breakable,pad at break*=.5mm,title=#2,
        colframe=blue!50!black,colback=blue!10!white,colbacktitle=blue!5!myred!10!white,
        fonttitle=\Large\HGBM,coltitle=black,attach boxed title to top center=
        {yshift=-0.25mm-\tcboxedtitleheight/2,yshifttext=2mm-\tcboxedtitleheight/2},
        boxed title style={boxrule=0.5mm,
            frame code={ \path[tcb fill frame] ([xshift=-4mm]frame.west)
                -- (frame.north west) -- (frame.north east) -- ([xshift=4mm]frame.east)
                -- (frame.south east) -- (frame.south west) -- cycle; },
            interior code={ \path[tcb fill interior] ([xshift=-2mm]interior.west)
                -- (interior.north west) -- (interior.north east)
                -- ([xshift=2mm]interior.east) -- (interior.south east) -- (interior.south west)
                -- cycle;} }]
      \index[ian]{#1!#2}\index[ibn]{#2[#1]}\begin{pinyinscope} \begin{center}\subsectionmark{#2}\phantomsection
      \addcontentsline{toc}{subsection}{#2}\label{#1《#2》}\hypertarget{#1《#2》}
      \LARGE\linespread{1.4}\selectfont #3  %\HGBUM\ZSKS
    }
{\end{center}\end{pinyinscope}\end{tcolorbox}}

录入的时候如下:

1
2
3
4
5
6
7
8
9
\section{薛正明}
\begin{poemz}{薛正明}{遊鴈蕩}
    東風驛路馬蹄香,曉起行春到夕陽。\\
    三月鶯啼花柳寺,幾家人住水雲鄉。\\
    名山不用問樵字,清世何須憂廟廊。\\
    且脫綸巾隨洞客,紫簫吹月夜天涼。
\end{poemz}
此詩本事又可參見\lref{王績《野望》}。另,\textsf{曹丕}\emph{典論\bn 論文}:
「不假良史之辭,不托飛馳之勢,而聲名自傳於後。」\pref{虞世南《蟬》}

显示效果如下:

那么上图中的 引用注释说明如何实现的呢:

1
2
3
4
5
6
%邊註交互引用
\NewDocumentCommand\pref{m}
{\marginpar{\ding{43}\HGB\ubufontc\hyperlink{#1}#1(\pageref{#1})}}
%正文交互引用
\NewDocumentCommand\lref{m}
{{\HGB\ubufontc\hyperlink{#1}#1(\pageref{#1})}}

效果如下:

584d66b8b5be1.png

选自:http://mengxianjun.org/2016/12/11/TangPoem/

posted on   Eufisky  阅读(2774)  评论(0编辑  收藏  举报

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示