如何在 LaTeX 中输入印地语单词

如何在 LaTeX 中输入印地语单词

我正在写一篇论文,必须用 LaTeX 写一些印地语单词。当我使用

\usepackage{devanagari} 
 removed. For example: 
{\dn school} 

生成的输出是

上述代码的输出

我希望输出如下:स्कूल

答案1

您可能没有使用正确的罗马字符来进行音译。据我所知,要写“स्कूल”,您必须输入{\dn-\8{k}l}

\documentclass{article}
\usepackage{devanagari}
\begin{document}
{\dn -\8{k}l}
\end{document}

输出 स्कूल。请确保大小写正确。

关联可能会有进一步的帮助。

答案2

取自Overleaf 文档

\usepackage[english]{babel} % English as the main language
\babelprovide[import]{hindi}
\babelprovide[import]{sanskrit}
%\babelfont[*devanagari]{rm}{Lohit Devanagari}
\babelfont[*devanagari]{rm}{BABEL Unicode}
...


Hindi: \foreignlanguage{hindi}{हिन्दी}
Sanskrit: \foreignlanguage{sanskrit}{संस्कृतम्}

我们必须使用 XeLaTex 引擎而不是 PdfLatex。

以下是一些字体选项

答案3

您可能需要考虑使用unicode。

我使用XeLaTeXunicode 源来用 latex 生成多语言文档。它的优点是源中包含本地字符。

如果朝这个方向移动,则需要改为使用polyglossia,而不是。babel

答案4

这是一个老问题,但可以使用更新的答案。LuaLaTeX 可以自动检测您正在输入的语言,并更改字体:

\documentclass[english]{article}
\usepackage[bidi=basic]{babel}
\usepackage{unicode-math}

\babelprovide[import, onchar=ids fonts]{hindi}

\defaultfontfeatures{ Scale=MatchUppercase,
                      Ligatures=TeX,
                      Renderer=HarfBuzz }
\babelfont{rm}
          [Ligatures=Common, Scale=1.0]{Libertinus Serif}
\babelfont[hindi]{rm}
          {Shobhika}
\babelfont{sf}
          [Ligatures=Common]{Libertinus Sans}
\babelfont{tt}
          {Libertinus Mono}
\setmathfont{Libertinus Math}

\begin{document}
... removed, for example: स्कूल.
Neat!
\end{document}

Libertinus/Shobhika 样本

在 XeLaTeX 中,你可以使用(有缺陷的)包输入天城文ucharclasses

\documentclass[english]{article}
\usepackage[bidi=default]{babel}
\usepackage{unicode-math}
\usepackage{ucharclasses}

\babelprovide[import]{hindi}

\defaultfontfeatures{ Scale=MatchUppercase,
                      Ligatures=TeX }
\babelfont{rm}
          [Ligatures=Common, Scale=1.0]{Libertinus Serif}
\babelfont[hindi]{rm}
          {Shobhika}
\babelfont{sf}
          [Ligatures=Common]{Libertinus Sans}
\babelfont{tt}
          {Libertinus Mono}
\setmathfont{Libertinus Math}

\setDefaultTransitions{\selectlanguage{english}}{}
\setTransitionsFor{Devanagari}{\selectlanguage{hindi}}{\selectlanguage{english}}
\setTransitionsFor{DevanagariExtended}{\selectlanguage{hindi}}{\selectlanguage{english}}

\begin{document}
... removed, for example: स्कूल.
Neat!
\end{document}

Libertinus/Shobhika 样本

你已经获得了几个 PDFTeX 的解决方案。另一个是将单词或短语编译为独立的 PDF 并将其包含在您的 PDFTeX 文档中。 这使您可以嵌入可以搜索和复制的 Unicode 字体。

相关内容