수학 모드의 특정 문자를 항상 기울임꼴이 아닌 것으로 정의 - lualatex에서 유니코드 수학을 사용

수학 모드의 특정 문자를 항상 기울임꼴이 아닌 것으로 정의 - lualatex에서 유니코드 수학을 사용

나는 한때이 질문얼마전에 글자 설정하는 방법에 대해 문의 주셨는데제이항상 이탤릭체가 아닌제이를 사용하지 않고 수학 모드에서 \mathrm.

제공된 솔루션은 다음과 같습니다.

\DeclareMathSymbol{j}{\mathalpha}{operators}{`j}

그런데, 제가 바꾼 이후로루아텍스그리고유니코드 수학위 줄에는 다음 중 하나가 있습니다.

효과 없음:

\documentclass{article}
\usepackage{amsmath}
\usepackage{fontspec}          
\usepackage{unicode-math}

\DeclareMathSymbol{j}{\mathalpha}{operators}{`j}

\begin{document}

\begin{equation}
j ~~\text{is not}~~ \mathrm{j}
\end{equation}

\end{document}

여기에 이미지 설명을 입력하세요

또는 예를 들어 MinionPro 및 MnSymbol을 수학 글꼴로 정의한 경우제이

완전히 사라집니다:

\documentclass{article}
\usepackage{amsmath}
\usepackage{fontspec}          
\usepackage{unicode-math}

\setmainfont{Minion Pro}
\setmathfont{MnSymbol}
\setmathfont[range=\mathup/{num,latin,Latin,greek,Greek}]{Minion Pro}
\setmathfont[range=\mathbfup/{num,latin,Latin,greek,Greek}]{MinionPro-Bold}
\setmathfont[range=\mathit/{num,latin,Latin,greek,Greek}]{MinionPro-It}
\setmathfont[range=\mathbfit/{num,latin,Latin,greek,Greek}]{MinionPro-BoldIt}
\setmathfont[range=\mathscr,StylisticSet={1}]{XITS Math}
\setmathrm{Minion Pro}

\DeclareMathSymbol{j}{\mathalpha}{operators}{`j}
  
\begin{document}

\begin{equation}
j ~~\text{is not}~~ \mathrm{j}
\end{equation}
But actually $j$ is not there at all.

\end{document}

여기에 이미지 설명을 입력하세요

유니코드 문자를 선언하려고 했습니다.제이별도로 해결되지 않았습니다.

\setmathfont[range={"006A} ]{Minion Pro}

그것은 나타났다제이다시 말하지만 여전히 이탤릭체였습니다.


유니코드 수학을 사용하는 경우 기존 문제에 대한 새로운 솔루션이 있습니까?

새로운 질문을 던지는 것이 적절한 조치였기를 바랍니다. 답변이 유효하지 않게 될 수 있으므로 이전 질문을 변경하고 싶지 않았습니다.


편집하다:

그것이 중요할지도 모르기 때문에 다음 사항도 포함해야 합니다.amssymb패키지, 함께egreg의 솔루션다음과 같은 결과를 제공합니다.

\documentclass{article}

\usepackage{amsmath}
\usepackage{amssymb}            
    
\usepackage{fontspec}          
\usepackage{unicode-math}
\usepackage{etoolbox}

\setmainfont{Minion Pro}
\setmathfont{MnSymbol}
\setmathfont[range=\mathup/{num,latin,Latin,greek,Greek}]{Minion Pro}
\setmathfont[range=\mathbfup/{num,latin,Latin,greek,Greek}]{MinionPro-Bold}
\setmathfont[range=\mathit/{num,latin,Latin,greek,Greek}]{MinionPro-It}
\setmathfont[range=\mathbfit/{num,latin,Latin,greek,Greek}]{MinionPro-BoldIt}
\setmathfont[range=\mathscr,StylisticSet={1}]{XITS Math}
\setmathrm{Minion Pro}

\AfterEndPreamble{ %
\Umathcode`j="0"4"6A
}


\begin{document}

\begin{equation}
j ~~\text{is not}~~ \mathrm{j}
\end{equation}
But actually $j$ is not there at all.

\end{document}

여기에 이미지 설명을 입력하세요

답변1

\documentclass{article}
\usepackage{amsmath}
\usepackage{fontspec}          
\usepackage{unicode-math}

\AtBeginDocument{\Umathcode`j="0"0"6A }

\begin{document}




\begin{equation}
j ~~\text{is}~~ \mathrm{j}
\end{equation}

\end{document}

MinionPro가 없습니다. 하지만 여기에 Arial을 사용하는 확장 버전이 있습니다(6개를 원함).

\documentclass{article}

\usepackage{amsmath}
\usepackage{amssymb}            

\usepackage{fontspec}          
\usepackage{unicode-math}
\usepackage{etoolbox}

\setmainfont{Arial}
\setmathfont{MnSymbol}
\setmathfont[range=\mathup/{num,latin,Latin,greek,Greek}]{Arial}
\setmathfont[range=\mathbfup/{num,latin,Latin,greek,Greek}]{Arial}
\setmathfont[range=\mathit/{num,latin,Latin,greek,Greek}]{Arial}
\setmathfont[range=\mathbfit/{num,latin,Latin,greek,Greek}]{Arial}
\setmathfont[range=\mathscr,StylisticSet={1}]{XITS Math}
\setmathrm{Arial}

\AfterEndPreamble{ %
\Umathcode`j="0"6"6A
}


\begin{document}
\showoutput
\begin{equation}
j ~~\text{is}~~ \mathrm{j}
\end{equation}
But actually $j$ is not there at all.

\end{document}

여기에 이미지 설명을 입력하세요

답변2

다음에 대해 적절한 가족 번호를 사용하십시오 j.

\documentclass{article}
\usepackage{amsmath}
\usepackage{fontspec}
\usepackage{unicode-math}

\setmainfont{Minion Pro}
\setmathfont{MnSymbol}
\setmathfont[range=\mathup/{num,latin,Latin,greek,Greek}]{Minion Pro} % this is number 4
\setmathfont[range=\mathbfup/{num,latin,Latin,greek,Greek}]{MinionPro-Bold}
\setmathfont[range=\mathit/{num,latin,Latin,greek,Greek}]{MinionPro-It}
\setmathfont[range=\mathbfit/{num,latin,Latin,greek,Greek}]{MinionPro-BoldIt}
\setmathfont[range=\mathscr,StylisticSet={1}]{XITS Math}

\AtBeginDocument{\Umathcode`j="0"4"6A }

\begin{document}

\begin{equation}
j \text{ is } \mathrm{j}\ne\mathbf{j}\ne\mathit{j}
\end{equation}

\end{document}

여기에 이미지 설명을 입력하세요

관련 정보