答案1
Noto Sans Bengali 不包含拉丁字母的字形。
如果您在 Windows 上的文字处理器中工作,您可能会认为它确实如此,因为当字形缺失时,此类程序可能会默默地替换其他字体。 harftex
为您提供更多的控制权,因此需要您准确地说出您想要什么。
以下是一种方法:
\documentclass{article}
\usepackage{harfload,fontspec}
\setmainfont{Noto Sans Bengali}[RawFeature={mode=harf}]
\newfontfamily\british{Noto Sans}[Script=Latin]
\parindent 0pt
\begin{document}
বাংলা \textbf{বাংলা}\\
\british English
\end{document}
更新
自 2019 年 11 月起,您可以安装luahbtex
和更换线路
\usepackage{harfload,fontspec}
\setmainfont{Noto Sans Bengali}[RawFeature={mode=harf}]
用这些:
\usepackage{fontspec}
\setmainfont{Noto Sans Bengali}[Renderer=Harfbuzz,Script=Bengali]
看Ulrike Fischer 的解释了解详情。