以下是 MWE:
\documentclass{article}
\usepackage{tfrupee}
\begin{document}
This is a \rupee{} symbol
This is a \rupee symbol
\textbf{This is a \rupee{} symbol}
\textbf{This is a \rupee symbol}
\end{document}
我尝试使用 pdflatex、xetex 和 luatex 进行编译。但卢比符号总是以粗体打印!如何以“正常”字体显示卢比符号?
答案1
我们需要的字体系列不应仅提供官方印度卢比符号,而应包含针对不同字体变体的版本。
LuaTeX 的示例(与 XeTeX 类似,但 SourceCodePro 和 SourceSansPro 可能需要更复杂的\fontspec
设置才能使它们工作):
\documentclass{article}
\usepackage[a4paper,vmargin=10mm]{geometry}
\usepackage{fontspec}
\tracinglostchars=2 % get a message, if glyphs are missing
\newcommand*{\rupee}{%
\begingroup
\fontspec{FreeSans}% add your font here
^^^^20b9%
\endgroup
}
% test fonts
\newcommand*{\TestString}{This is a ^^^^20b9 symbol.}
\newcommand*{\test}[1]{%
\subsubsection*{#1}
\begingroup
\fontspec{#1}%
\TestString\\
\textbf{\TestString}\\
\textit{\TestString}\\
\textbf{\itshape\TestString}\par
\endgroup
}
\begin{document}
\test{ClearSans}
\test{DejaVuSans}
\test{DejaVuSerif}
\test{FreeMono}
\test{FreeSans}
\test{FreeSerif}
\test{SourceCodePro}
\test{SourceSansPro}
\end{document}
答案2
该包tfrupee
仅提供一个符号,该符号已从中等粗细字体调用。因此,您必须接受该符号。
由于您可以使用 Xe- 或 LuaLatex,因此您可以只使用此符号的 unicode 以及一些符合您需求的字体。如果您需要帮助编写只包含特定字体中的一个符号的宏,请告诉我!
您想要的符号已映射到 unicode 下U+20B9。我还添加了替代版本U+20A8。如果你想查看系统中哪些字体提供该符号,你可能需要单击这里。可以找到用于进一步处理的 SVG 版本这里。
% arara: lualatex
\documentclass{article}
\usepackage{fontspec}
\begin{document}
\setmainfont{Quivira.otf}\symbol{"20B9}\symbol{"20A8}
\setmainfont{Linux Libertine O}\symbol{"20B9}%\symbol{"20A8} % not existent
\setmainfont{Symbola.ttf}\symbol{"20B9}\symbol{"20A8}
\setmainfont{EB Garamond}\symbol{"20B9}\symbol{"20A8}
\setmainfont{DejaVuSans.ttf}\symbol{"20B9}\symbol{"20A8}
\end{document}