请参阅下面给出的 MWE,它尝试生成正常、粗体和斜体文本孟加拉。
\documentclass{article}
% For a bilingual document
\RequirePackage{fontspec}
\RequirePackage{polyglossia}
\setmainlanguage{english}
\defaultfontfeatures{Ligatures=TeX}
% Times New Roman used for English
\setmainfont[Mapping=tex-text, Ligatures=TeX]{Times New Roman}
% Bengali
\setotherlanguage[numerals=Devanagari]{bengali}
\newfontfamily\bengalifont[Script=Bengali]{SolaimanLipi}
\newfontfamily\bengalifontbf[Script=Bengali]{SolaimanLipi}
\newfontfamily\bengalifonttt[Script=Bengali]{SolaimanLipi}
\newfontfamily\bengalifontsf[Script=Bengali]{SolaimanLipi}
\begin{document}
\begin{bengali}
বাংলা ভাষা
\textbf{বাংলা ভাষা}
\textit{বাংলা ভাষা}
\end{bengali}
\end{document}
编译后,第二和第三个文本以正常字体显示,并显示以下日志消息:
LaTeX Font Warning: Font shape `EU1/SolaimanLipi(0)/bx/n' undefined (Font) using `EU1/SolaimanLipi(0)/m/n' instead on input line 24. LaTeX Font Warning: Font shape `EU1/SolaimanLipi(0)/m/it' undefined (Font) using `EU1/SolaimanLipi(0)/m/n' instead on input line 26.
但是,相同的字体(索莱曼·里皮) 可以在其他应用程序中使用,例如 LibreOffice,以获得相同的效果。
我可能做错了什么?
编辑
LibreOffice 使用相同的字体
我的机器里没有其他 SolaimanLipi 字体
命令
sudo find / -name SolaimanLipi* -print
给出,
/home/masroor/.local/share/fonts/SolaimanLipi_20-04-07.ttf
答案1
您可以使用伪造的粗体字体,因为许多所见即所得的编辑器也在使用此功能。
在下面的代码中我添加了AutoFakeBold=4.0
字体选项。只需调整数字即可调整粗细(数字越大越粗)。
编辑:如果您还想伪造斜体/倾斜字体,请尝试使用AutoFakeSlant=0.4
数字来表示倾斜的强度。
\documentclass{article}
% For a bilingual document
\RequirePackage{fontspec}
\RequirePackage{polyglossia}
\setmainlanguage{english}
\defaultfontfeatures{Ligatures=TeX}
% Times New Roman used for English
\setmainfont[Mapping=tex-text, Ligatures=TeX]{Times New Roman}
% Bengali
\setotherlanguage[numerals=Devanagari]{bengali}
\newfontfamily\bengalifont[Script=Bengali,AutoFakeBold=4.0,AutoFakeSlant=0.4]{SolaimanLipi.ttf}
\newfontfamily\bengalifontbf[Script=Bengali,AutoFakeBold=4.0,AutoFakeSlant=0.4]{SolaimanLipi.ttf}
\newfontfamily\bengalifonttt[Script=Bengali,AutoFakeBold=4.0,AutoFakeSlant=0.4]{SolaimanLipi.ttf}
\newfontfamily\bengalifontsf[Script=Bengali,AutoFakeBold=4.0,AutoFakeSlant=0.4]{SolaimanLipi.ttf}
\begin{document}
\begin{bengali}
বাংলা ভাষা
\textbf{বাংলা ভাষা}
\textit{বাংলা ভাষা}
\end{bengali}
\end{document}