Basicamente, defini alguns glifos personalizados que realmente quero poder usar criando uma fonte. Eles são símbolos que devem ser digitados exatamente da mesma forma que a integral é digitada computer modern
(mas têm a aparência que eu quero). eu usoLualatexpara que minha fonte não precise ser instalada no sistema para usar, quero simplesmente colocar meu .ttf em meu projeto tex. Eu baixei as fontes modernas do computador emaquie modificou os símbolos integrais. Pelo que entendi, ele possui arquivos diferentes para diferentes estilos matemáticos:
- cmsy10.ttf para símbolos matemáticos menores padrão, como
$\textstyle\int$
(U+0073)? - cmex10.ttf para símbolos matemáticos grandes, como
$\displaystyle\int$
(U+005a), mas também (U+0052), que me parece$\textstyle\int$
.Por que ambos?
Dificuldades:
- Como realmente incluir a fonte e fornecer comandos como \myintegral para meu símbolo integral? Não quero usar minha fonte para mais nada além de fornecer esses comandos. Deveria se comportarexatamentecomo a integral usual e, portanto, respeitamos se estamos em displaystyle ou não. Procurei inspiração
fontmath.ltx
onde
\DeclareMathSymbol{\intop}{\mathop}{largesymbols}{"52}
\DeclareRobustCommand\int{\intop\nolimits}
esta definiçãode alguma formaparece respeitar o estilo matemático (como?).
- As caixas delimitadoras dos arquivos baixados parecem erradas, não? Esta é a integral de estilo de exibição inalterada de cmex10.ttf aberta emfontforge. Todas as caixas em cmex.ttf são assim, as em cmsy10.ttf são como o esperado. (A integral do display vaibastantealém do limite à direita e todos os símbolos parecem ter uma linha de base incorreta?)
- Preciso criar um símbolo separado para cada tamanho de texto de documento, como o computador moderno parece fazer?
EDITAR: Cheguei ao ponto de fazer com que meus símbolos fossem exibidos e utilizáveis no modo matemático. No entanto, tenho problemas com as caixas de limiteecom os limitesmesmo nos casos em que uso a definição padrão!
O código gerador é:
% !TEX program = lualatex
\documentclass[ngerman,10pt]{scrartcl}
\usepackage{fontspec}
%\usepackage{unicode-math}
\setlength{\fboxsep}{0pt}
%\usepackage{newcomputermodern}
% from https://tex.stackexchange.com/a/439983/294323
\newfontface{\mysymbolsfontface}{cmex10_mod.ttf}[
Path = ./, % Adjust the path to where the font is located
Extension = .ttf,
NFSSFamily=mysymbolsfontfamily %use some name for the font family
]
\DeclareSymbolFont{mysymbolsfont}{TU}{mysymbolsfontfamily}{m}{n}
\Umathchardef\displaymyint="1 \symmysymbolsfont "005A %"\sym" then symbolsfontname then glyph code. The "1 stands for mathoperator
\DeclareRobustCommand\myint{\mathchoice{\displaymyint\nolimits}
{\intop\nolimits}
{\intop\nolimits}
{\intop\nolimits}}
\begin{document}
Inline: \qquad\qquad\qquad \fbox{$\myint$} \quad \fbox{$\myint_\infty^\infty f(x)$}\\
Displaymode: \qquad\qquad\qquad \fbox{$\displaystyle\myint$} \quad \fbox{$\displaystyle\myint_\infty^\infty f(x)$}\\
Original Inline: \quad \fbox{$\int$} \quad \fbox{$\int_\infty^\infty f(x)$}\\
Original Displaymode: \quad \fbox{$\displaystyle\int$} \quad \fbox{$\displaystyle\int_\infty^\infty f(x)$}\\
\end{document}
Portanto, o que resta a ser respondido é:
- Por que os limites não estão corretos no caso em que \intop é usado? Deveria ser como no tex original não?
- Onde posso obter uma versão da fonte cmex, onde as caixas estão corretas?
EDIT: resolvi dividir essa última parte em uma pergunta mais acessível, vejaaqui. Isso está basicamente fechado.