Não é possível alterar a fonte usando LuaLaTeX com o uso do pacote chemnum

Não é possível alterar a fonte usando LuaLaTeX com o uso do pacote chemnum

Não consigo alterar a fonte no LuaLaTeX usando chemnum como pacote. Eu gostaria de usar Calibri (não Times New Roman) como é o caso agora. Aqui está o meu código:

\documentclass[12pt]{report}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm]{geometry}
\usepackage{fancyhdr} 
\usepackage{achemso} 
\usepackage{chemnum}
\usepackage{psfrag} 
\usepackage[crop=off]{auto-pst-pdf}
\usepackage{graphicx} 
\usepackage{wrapfig} 

\linespread{1.3}%1.5 line spacing

\begin{document}
\tableofcontents

\chapter{This is your chapter title}

\section{This is your section title}

\subsection{Here is an example}

\begin{wrapfigure}{l}{0.35\textwidth}
\vspace{-20pt} % removes 'white-space'
\begin{center}
\cmpdref{benzene} % replaces TMP1
\includegraphics{images/benzene.eps}
\end{center}
\vspace{-20pt}
\end{wrapfigure}

Add any text here and use \refcmpd{benzene} to refer to the compound. This way if you add a new figure in front of this one the numbering will automatically be changed. \\
Not totally sure if .eps is require or if only benzene would be sufficient.\\

Note: you need lualatex --shell-escape  -synctex=1 -interaction=nonstopmode %.tex in the configure texmaker for the lualatex. 

\end{document}

benzen, é uma imagem png, converta para eps

Responder1

Você tem que carregar o pacote fontspece definir a fonte principal:

\documentclass[12pt]{report}
\usepackage{achemso} 
\usepackage{chemnum}
\usepackage{fontspec}
\setmainfont{Calibri}
\begin{document}

Add any text here and use to refer to the compound. This way if you add a new figure 
in front of this one the numbering will automatically be changed. 

Not totally sure if .eps is require or if only benzene would be sufficient.
\end{document}

Responder2

A resposta de Herbet está correta se você deseja alterar a fonte padrão de todo o documento. Porém, se são apenas os rótulos produzidos chemnumque você deseja alterar, carregue fontspece defina uma fonte para uso e coloque seu nome no formato dos rótulos compostos da seguinte forma:

\usepackage{fontspec}

\newfontface\chemnumface[Scale=MatchUppercase]{Calibri}
\setchemnum{format=\chemnumface}

No entanto, você também precisa disso para trabalhar com psfrage auto-pst-pdf. Isso requer algum cuidado ao entrar e sair dos pacotes: o arquivo principal é executado com lualatexo qual suporta fontspec, mas o auto-pst-pdfarquivo principal é executado apenas com latexo que não suporta. Você deve carregar os testes na seguinte ordem ifluatex:

\usepackage{ifluatex}
\ifluatex
 \usepackage{fontspec}
  \newfontface\chemnumface[Scale=MatchUppercase]{Calibri}
  \setchemnum{format=\chemnumface}
\else
  \usepackage{psfrag} 
\fi
\usepackage[crop=off]{auto-pst-pdf}

Exemplo de saída

\documentclass[12pt]{report}

\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm]{geometry}
\usepackage{fancyhdr} 
\usepackage{achemso} 
\usepackage{chemnum}
\usepackage{ifluatex}
\ifluatex
 \usepackage{fontspec}
  \newfontface\chemnumface[Scale=MatchUppercase]{Calibri}
  \setchemnum{format=\chemnumface}
\else
  \usepackage{psfrag} 
\fi
\usepackage[crop=off]{auto-pst-pdf}
\usepackage{graphicx} 
\usepackage{wrapfig} 


\linespread{1.3}%1.5 line spacing

\begin{document}

\begin{wrapfigure}{l}{0.35\textwidth}
\centering
\replacecmpd{benzene} % replaces TMP1
%\includegraphics{benzene.eps}
\end{wrapfigure}

Add any text here and use \refcmpd{benzene} to refer to the
compound. This way if you add a new figure in front of this one the
numbering will automatically be changed. Here is another compound
\cmpd{xx.one}

\end{document}

Não tenho seu benzene.epsarquivo, então comentei essa linha.

informação relacionada