如何在 latex 或 xetex 中使用孟加拉数字获取章节编号和页码?

如何在 latex 或 xetex 中使用孟加拉数字获取章节编号和页码?

如何在乳胶中用孟加拉数字给出章节编号和页码?

答案1

您可以在另一个问题中使用 Enrico 的答案,只要您定义一个输出孟加拉数字的宏即可,如下面的代码所示:

\documentclass{article}

\makeatletter
\def\bengalidigits#1{\expandafter\@bengali@digits #1@}
\def\@bengali@digits#1{%
  \ifx @#1
  \else
    \ifx0#1০\else\ifx1#1১\else\ifx2#1২\else\ifx3#1৩\else\ifx4#1৪\else\ifx5#1৫\else\ifx6#1৬\else\ifx7#1৭\else\ifx8#1৮\else\ifx9#1৯\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
    \expandafter\@bengali@digits
  \fi
}
\makeatother

\def\bengalinumber#1{\bengalidigits{\number#1}}
\def\bengalinumeral#1{\bengalinumber{\csname c@#1\endcsname}}

\renewcommand\thesection{\bengalinumeral{section}}
\renewcommand\thepage{\bengalinumeral{page}}

\usepackage{fontspec}
\setmainfont{Lohit Bengali}

\begin{document}

\section{বৈশাখ}

\section{জ্যৈষ্ঠ}

\section{আষাঢ়}

\section{শ্রাবণ}

\section{ভাদ্র}

\section{আশ্বিন}

\end{document}

通过此代码我得到以下结果:包含孟加拉语章节和页码的示例

请特别注意孟加拉数字 1 作为页码。

我将把孟加拉数字代码制作成 Polyglossia 的一部分。

答案2

有一个gloss-bengali.ldf文件,当您使用polyglossia命令: 时\setdefaultlanguage[numerals=Bengali,changecounternumbering=true]{bengali},页面编号和向下section编号subparagraph将更改为孟加拉数字。文档各部分的孟加拉语名称也包含在文件中。

一些随机文本:

孟加拉语部分

平均能量损失

\documentclass[12pt]{article}
\usepackage{fontspec}
\setmainfont[Script=Bengali,Scale=1.5]{Noto Serif Bengali}
\usepackage{polyglossia}
\setdefaultlanguage[numerals=Bengali,
changecounternumbering=true]{bengali}
\begin{document}
\today
\tableofcontents
\section{কখগঘ কাকিকী কেকৈককোকৌ}
\subsection{ক}
০১২৩৪৫৬৭৮৯ \bengalidigits{123 456 789} 
\newpage
\section{কখগঘ কাকিকী কেকৈককোকৌ}
কখগঘ
\subsection{ক}
কখগঘ
\subsubsection{ক}
কখগঘ
\subsubsection{ক}
কখগঘ
\subsubsection{ক}
কখগঘ
\end{document}

从代码来看,添加、和计数器.ldf应该很简单。这留下了包引号 、也许是方程式编号,也许是参考书目(和数字引用样式)。并且 中的注释说日历仍需完成。chapterfiguretablefootnotecsquotesbiblatex.ldf

当然,章节号和页码是可用的。

相关内容