Fonte MinionPro com alguns símbolos do kpfonts

Fonte MinionPro com alguns símbolos do kpfonts

No momento estou usando o pacote MinionPro. Mas não gosto da maioria dos MnSymbolsímbolos '. Descobri que gosto muito de alguns símbolos de kpfonts(se alguém sugerir algo melhor, estarei ouvindo vocês, mas estou procurando apenasnão arredondadosímbolos).

Eu gostaria de tirar kpfontsdisso:

  • Todos os símbolos de relação ( =, , >, , ~, \subset, ... todos eles).
  • Todos os operadores ( \times, +, , ÷, ... ).
  • Sobre as grandes operadoras, gostaria de manter as integrais do pacote MinionPro ( minionintopção), e todo o resto é bem-vindo (bom, vou substituir o \sumsímbolo de qualquer maneira, então não importa se vem ou não).
  • Todas as setas (ou setas semelhantes).
  • Todos os delimitadores, exceto, se possível, obaseparênteses e obasecolchete (que são originais da fonte Minion Pro e têm boa aparência).Não tenho certeza sobre isso, mas o que eu realmente odeio no minion são \langle/ \ranglee parênteses (exceto os básicos).
  • Além disso, estou interessado no alfabeto em negrito do quadro-negro. Mas não o alfabeto caligráfico (como uso swashno Minion Pro).
  • Quanto aos sotaques, não tenho certeza, pois não consigo comparar facilmente os dois. Então isso depende de você.

A propósito, o que quero manter do MinionPro é:

  • Todos os símbolos da fonte original (como \partial).
  • Todas as letras gregas e \mathrm, \mathit, \mathnormale os números do MinionPro.
  • O símbolo principal, e (repito) podem ser os acentos, não tenho certeza se vou ouvir sua opinião.

Talvez eu tenha esquecido alguma coisa, mas isso é tudo neste momento. Qualquer ideia ou sugestão é bem-vinda. Toda aproximação (não todos os pontos, mas alguns deles) também será bem-vinda.

A razão pela qual quero isto (para lhe dar uma ideia para que você possa pensar e dar a sua opinião) é que prefiro ocortesímbolos em vez dearredondadouns. A propósito, acho que alguns outros símbolos simplesmente não ficam bem ou não cabem na fonte do Minion Pro. E eu acho que kpfontsestá cheio de bons símbolos que podem se encaixar melhor no Minion. Mais uma vez, ouvirei tudo o que você tiver a sugerir.

Para dar um ponto de partida, este é o meu modelo real:

\documentclass{scrartcl}
\usepackage[%
    opticals,%
    smallfamily,%
    textosf,%
    footnotefigures,%
    swash,%
    openg,%
    fourierbb,%
    minionint,%
    italicgreek,%
    mathlf,%
    mathtabular,%
    onlytext,%
]{MinionPro}
\usepackage[notext]{kpfonts}
\makeatletter
  \DeclareSymbolFont{operators}  {T1} {\Mn@Math@Family}{m} {n}
  \DeclareSymbolFont{letters}    {OML}{MinionPro-TOsF} {m} {\Mn@Math@LetterShape}
  \SetSymbolFont{operators}{bold}{T1} {\Mn@Math@Family}{eb}{n}
  \SetSymbolFont{letters}  {bold}{OML}{MinionPro-TOsF} {eb}{\Mn@Math@LetterShape}
  \DeclareMathAlphabet\mathbf    {T1} {\Mn@Math@Family}{eb}{n}
  \DeclareMathAlphabet\mathit    {T1} {\Mn@Math@Family}{m} {it}
  \SetMathAlphabet\mathit  {bold}{T1} {\Mn@Math@Family}{eb}{it}
  \DeclareMathVersion{tabular}
  \SetSymbolFont{operators}{tabular}    {T1} {\Mn@Math@TFamily}{m}{n}
  \SetSymbolFont{letters}  {tabular}    {OML}{MinionPro-TOsF}  {m}{\Mn@Math@LetterShape}
  \SetMathAlphabet\mathit  {tabular}    {T1} {\Mn@Math@TFamily}{m}{it}

  \DeclareMathVersion{boldtabular}
  \SetSymbolFont{operators}{boldtabular}{T1} {\Mn@Math@TFamily}{eb}{n}
  \SetSymbolFont{letters}  {boldtabular}{OML}{MinionPro-TOsF}  {eb}{\Mn@Math@LetterShape}
  \SetMathAlphabet\mathit  {boldtabular}{T1} {\Mn@Math@TFamily}{eb}{it}
\makeatother
\begin{document}
\[
    \int_a^b f(x) \, \mathrm{d}x = 3 + 2 = 5 \subset \mathbb{N}
\]
\end{document}

Responder1

Não tenho certeza se isso ajudará muito. Vou excluí-lo se não. A maior parte é copiada e colada de MinionPro.sty.

É necessário adaptar o código de MinionPro.sty, especialmente para que as integrais funcionem enquanto trazemos outros símbolos de kpfonts. Para fazer isso, declarei uma nova fonte de símbolo, intsymbolse defini as integrais em termos dessa fonte. Isto deve significar que a declaração inicial de kpfontsof symbolsé válida para todos os outros símbolos.

Eu removi a declaração dos comandos operatorsporque isso apenas substitui a declaração, kpfontsmas você deseja a maioria deles, pelo menos, a partir daí. Para obter os acentos do MinionPro, acho melhor tratá-los como uma exceção, como acontece com as integrais. Então configurei outra fonte de símbolos, accents, para isso.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{textcomp,parskip}
\usepackage[%
% x    opticals,%
    smallfamily,%
    textosf,%
    footnotefigures,%
    swash,%
    openg,%
    fourierbb,%
    minionint,%
    italicgreek,%
    mathlf,%
    mathtabular,%
    onlytext,%
]{MinionPro}
\usepackage[notext]{kpfonts}
\makeatletter

  \DeclareMathVersion{tabular}
  \DeclareMathVersion{boldtabular}

  \DeclareSymbolFont{letters}    {OML}{MinionPro-TOsF} {m} {\Mn@Math@LetterShape}
    \SetSymbolFont{letters}  {bold}{OML}{MinionPro-TOsF} {eb}{\Mn@Math@LetterShape}
    \SetSymbolFont{letters}  {tabular}    {OML}{MinionPro-TOsF}  {m}{\Mn@Math@LetterShape}
    \SetSymbolFont{letters}  {boldtabular}{OML}{MinionPro-TOsF}  {eb}{\Mn@Math@LetterShape}

  \DeclareSymbolFont{minoperators}  {T1} {\Mn@Math@Family}{m} {n}
    \SetSymbolFont{minoperators}{bold}{T1} {\Mn@Math@Family}{eb}{n}
    \SetSymbolFont{minoperators}{tabular}    {T1} {\Mn@Math@TFamily}{m}{n}
    \SetSymbolFont{minoperators}{boldtabular}{T1} {\Mn@Math@TFamily}{eb}{n}

  \DeclareMathAlphabet\mathbf    {T1} {\Mn@Math@Family}{eb}{n}
    \SetMathAlphabet\mathbf  {tabular}    {T1} {\Mn@Math@TFamily}{eb}{n}

  \DeclareMathAlphabet\mathit    {T1} {\Mn@Math@Family}{m} {it}
    \SetMathAlphabet\mathit  {bold}{T1} {\Mn@Math@Family}{eb}{it}
    \SetMathAlphabet\mathit  {tabular}    {T1} {\Mn@Math@TFamily}{m}{it}
    \SetMathAlphabet\mathit  {boldtabular}{T1} {\Mn@Math@TFamily}{eb}{it}

  \DeclareMathAlphabet\mathrm    {T1}  {\Mn@Math@Family}{m}{n}
    \SetMathAlphabet\mathrm  {bold}{T1} {\Mn@Math@Family}{eb}{n}
    \SetMathAlphabet\mathrm  {tabular}{T1} {\Mn@Math@TFamily}{m}{n}
    \SetMathAlphabet\mathrm  {bold}{T1} {\Mn@Math@TFamily}{eb}{n}

  % for figures
  \DeclareMathSymbol{0}{\mathalpha}{minoperators}{`0}
  \DeclareMathSymbol{1}{\mathalpha}{minoperators}{`1}
  \DeclareMathSymbol{2}{\mathalpha}{minoperators}{`2}
  \DeclareMathSymbol{3}{\mathalpha}{minoperators}{`3}
  \DeclareMathSymbol{4}{\mathalpha}{minoperators}{`4}
  \DeclareMathSymbol{5}{\mathalpha}{minoperators}{`5}
  \DeclareMathSymbol{6}{\mathalpha}{minoperators}{`6}
  \DeclareMathSymbol{7}{\mathalpha}{minoperators}{`7}
  \DeclareMathSymbol{8}{\mathalpha}{minoperators}{`8}
  \DeclareMathSymbol{9}{\mathalpha}{minoperators}{`9}

  % for accents
  \DeclareMathAccent{\grave}   {\mathalpha}{minoperators}{0}
  \DeclareMathAccent{\acute}   {\mathalpha}{minoperators}{1}
  \DeclareMathAccent{\hat}     {\mathalpha}{minoperators}{2}
  \DeclareMathAccent{\tilde}   {\mathalpha}{minoperators}{3}
  \DeclareMathAccent{\ddot}    {\mathalpha}{minoperators}{4}
  \DeclareMathAccent{\mathring}{\mathalpha}{minoperators}{6}
  \DeclareMathAccent{\check}   {\mathalpha}{minoperators}{7}
  \DeclareMathAccent{\breve}   {\mathalpha}{minoperators}{8}
  \DeclareMathAccent{\bar}     {\mathalpha}{minoperators}{9}
  \DeclareMathAccent{\dot}     {\mathalpha}{minoperators}{10}

%   % for blackboard - I prefer this commented out but I suppose it is a matter of taste
%   \Mn@load@bb

  % for greek
  \newcommand\Mn@greek@list@upper{}
  \newcommand\Mn@greek@list@lower{}
  \let\Mn@greek@list@upper\@gobble
  \let\Mn@greek@list@lower\@gobble
  \newcommand\Mn@greek@list{}
  \newcommand*\Mn@greek@letter[3]{%
    \expandafter\DeclareMathSymbol
    \expandafter{\csname it#1\endcsname}{\mathord}{letters}{#2}%
    \expandafter\DeclareMathSymbol
    \expandafter{\csname up#1\endcsname}{\mathord}{letters}{#3}%
    \edef\@tempa{`\@car#1\@nil}%
    \edef\Mn@greek@list{\expandafter\noexpand\csname
      Mn@greek@list@\ifnum\uccode\@tempa=\@tempa upper\else lower\fi\endcsname}%
    \expandafter\edef\Mn@greek@list{\Mn@greek@list,#1}%
  }
  \Mn@greek@letter{Gamma}         {'000}{'200}
  \Mn@greek@letter{Delta}         {'001}{'201}
  \Mn@greek@letter{Theta}         {'002}{'202}
  \Mn@greek@letter{Lambda}        {'003}{'203}
  \Mn@greek@letter{Xi}            {'004}{'204}
  \Mn@greek@letter{Pi}            {'005}{'205}
  \Mn@greek@letter{Sigma}         {'006}{'206}
  \Mn@greek@letter{Upsilon}       {'007}{'207}
  \Mn@greek@letter{Phi}           {'010}{'210}
  \Mn@greek@letter{Psi}           {'011}{'211}
  \Mn@greek@letter{Omega}         {'012}{'212}
  \Mn@greek@letter{alpha}         {'013}{'213}
  \Mn@greek@letter{beta}          {'014}{'214}
  \Mn@greek@letter{gamma}         {'015}{'215}
  \Mn@greek@letter{delta}         {'016}{'216}
  \Mn@greek@letter{epsilon}       {'017}{'217}
  \Mn@greek@letter{zeta}          {'020}{'220}
  \Mn@greek@letter{eta}           {'021}{'221}
  \Mn@greek@letter{theta}         {'022}{'222}
  \Mn@greek@letter{iota}          {'023}{'223}
  \Mn@greek@letter{kappa}         {'024}{'224}
  \Mn@greek@letter{lambda}        {'025}{'225}
  \Mn@greek@letter{mu}            {'026}{'226}
  \Mn@greek@letter{nu}            {'027}{'227}
  \Mn@greek@letter{xi}            {'030}{'230}
  \Mn@greek@letter{pi}            {'031}{'231}
  \Mn@greek@letter{rho}           {'032}{'232}
  \Mn@greek@letter{sigma}         {'033}{'233}
  \Mn@greek@letter{tau}           {'034}{'234}
  \Mn@greek@letter{upsilon}       {'035}{'235}
  \Mn@greek@letter{phi}           {'036}{'236}
  \Mn@greek@letter{chi}           {'037}{'237}
  \Mn@greek@letter{psi}           {'040}{'240}
  \Mn@greek@letter{omega}         {'041}{'241}
  \Mn@greek@letter{varepsilon}    {'042}{'242}
  \Mn@greek@letter{vartheta}      {'043}{'243}
  \Mn@greek@letter{varpi}         {'044}{'244}
  \Mn@greek@letter{varrho}        {'045}{'245}
  \Mn@greek@letter{varsigma}      {'046}{'246}
  \Mn@greek@letter{varphi}        {'047}{'247}
  \Mn@greek@letter{varbeta}       {'260}{'250}
  \Mn@greek@letter{varkappa}      {'261}{'251}
  \Mn@greek@letter{backepsilon}   {'262}{'252}
  \Mn@greek@letter{varbackepsilon}{'263}{'253}
  \Mn@greek@letter{digamma}       {'264}{'254}
  \Mn@greek@letter{eth}           {'266}{'256}
  \newcommand*\Mn@greek@select[2]{%
    \expandafter\let\expandafter\Mn@greek@list\csname Mn@greek@list@#2\endcsname
    \@for\@tempa:=\Mn@greek@list\do{%
      \expandafter\let\csname\@tempa\expandafter\endcsname
      \csname#1\@tempa\endcsname
    }%
  }
  \newcommand*\Mn@greek@Upright{%
    \Mn@greek@select{up}{upper}%
    \Mn@greek@select{up}{lower}%
  }
  \newcommand*\Mn@greek@Italic{%
    \Mn@greek@select{it}{upper}%
    \Mn@greek@select{it}{lower}%
  }
  \newcommand*\Mn@greek@Mixed{%
    \Mn@greek@select{up}{upper}%
    \Mn@greek@select{it}{lower}%
  }
  \Mn@load@greek

  % for symbols
  \let\hbar\undefined
  \DeclareMathSymbol{\hbar}             {\mathord}{letters}{'265}
  \DeclareMathSymbol{\uphbar}           {\mathord}{letters}{'255}
  \DeclareMathSymbol{\partial}          {\mathord}{letters}{'100}
  \DeclareMathSymbol{\uppartial}        {\mathord}{letters}{'300}
  \DeclareMathSymbol{\ell}              {\mathord}{letters}{'140}
  \DeclareMathSymbol{\upell}            {\mathord}{letters}{'340}
  \DeclareMathSymbol{\slashedzero}      {\mathord}{letters}{'257}
  \DeclareMathSymbol{\upimath}          {\mathord}{letters}{'373}
  \DeclareMathSymbol{\upjmath}          {\mathord}{letters}{'374}
  \DeclareMathSymbol{\varsmallint}      {\mathord}{letters}{'376}
  \DeclareMathSymbol{\openg}            {\mathalpha}{letters}{'267}
  \DeclareRobustCommand\lambdabar       {\middlebar\lambda}
  \DeclareRobustCommand\lambdaslash     {\middleslash\lambda}

  % integrals
  \newcommand\Mn@Decl@Minion@Ints{%
    \DeclareFontFamily{U}{MnSymbolFI}{}
    \DeclareFontShape{U}{MnSymbolFI}{m}{it}{
        <-6>  MnSymbolFI\Mn@minionint@opticals5
       <6-7>  MnSymbolFI\Mn@minionint@opticals6
       <7-8>  MnSymbolFI\Mn@minionint@opticals7
       <8-9>  MnSymbolFI\Mn@minionint@opticals8
       <9-10> MnSymbolFI\Mn@minionint@opticals9
      <10-12> MnSymbolFI\Mn@minionint@opticals10
      <12->   MnSymbolFI\Mn@minionint@opticals12
    }{}
    \DeclareFontShape{U}{MnSymbolFI}{b}{it}{
        <-6>  MnSymbolFI\Mn@minionint@bold\Mn@minionint@opticals5
       <6-7>  MnSymbolFI\Mn@minionint@bold\Mn@minionint@opticals6
       <7-8>  MnSymbolFI\Mn@minionint@bold\Mn@minionint@opticals7
       <8-9>  MnSymbolFI\Mn@minionint@bold\Mn@minionint@opticals8
       <9-10> MnSymbolFI\Mn@minionint@bold\Mn@minionint@opticals9
      <10-12> MnSymbolFI\Mn@minionint@bold\Mn@minionint@opticals10
      <12->   MnSymbolFI\Mn@minionint@bold\Mn@minionint@opticals12
    }{}
    \DeclareSymbolFont{intsymbols}  {U}{MnSymbolFI}{m}{it}
    \SetSymbolFont{intsymbols}{bold}{U}{MnSymbolFI}{b}{it}
    \let\varint\tint
    \let\variint\tiint
    \let\variiint\tiiint
    \let\variiiint\tiiiint
    \let\varidotsint\tidotsint
    \let\varlandupint\tlandupint
    \let\varlanddownint\tlanddownint
    \let\varstrokedint\tstrokedint
    \let\varoint\toint
    \let\varoiint\toiint
    \let\varrcirclerightint\trcirclerightint
    \let\varlcirclerightint\tlcirclerightint
    \let\varrcircleleftint\trcircleleftint
    \let\varlcircleleftint\tlcircleleftint
    \let\varsumint\tsumint
    \DeclareMathSymbol\tint            \mathop{intsymbols}{112}
    \DeclareMathSymbol\tiint           \mathop{intsymbols}{114}
    \DeclareMathSymbol\tiiint          \mathop{intsymbols}{116}
    \DeclareMathSymbol\tiiiint         \mathop{intsymbols}{118}
    \DeclareMathSymbol\tidotsint       \mathop{intsymbols}{120}
    \DeclareMathSymbol\tlandupint      \mathop{intsymbols}{122}
    \DeclareMathSymbol\tlanddownint    \mathop{intsymbols}{124}
    \DeclareMathSymbol\tstrokedint     \mathop{intsymbols}{126}
    \DeclareMathSymbol\toint           \mathop{intsymbols}{128}
    \DeclareMathSymbol\toiint          \mathop{intsymbols}{130}
    \DeclareMathSymbol\trcirclerightint\mathop{intsymbols}{132}
    \DeclareMathSymbol\tlcirclerightint\mathop{intsymbols}{134}
    \DeclareMathSymbol\trcircleleftint \mathop{intsymbols}{136}
    \DeclareMathSymbol\tlcircleleftint \mathop{intsymbols}{138}
    \DeclareMathSymbol\tsumint         \mathop{intsymbols}{140}
    \let\intop\tint
    \let\ointop\toint
  }
  \Mn@load@integrals

%   % openg
%   \Mn@Define@Open@g

  % for cal
  \Mn@load@cal

\makeatother

\begin{document}

{\fontfamily{jkp}\selectfont
  AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
  \marginpar{\fontfamily{jkp}\selectfont kpfonts}\\
  0123456789

  \textit{AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz\marginpar{\fontfamily{jkp}\itshape\selectfont kpfonts}}}

AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
\marginpar{minion}\\
0123456789\marginpar{\small osf: prop, tab}
{\tbfigures 0123456789}\\
{\lnfigures 0123456789\marginpar{\small ln: prop, tab}
\tbfigures 0123456789}

\textit{AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz\marginpar{\itshape minion}}

\[
    AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz
\]
\[
    0123456789
\]
\[
    \int_a^b f(x') \, \mathrm{d}x = 3 + 2 = 5 \subset \mathbb{N}
\]
\[
    \alpha \beta \varbeta \Gamma \varGamma \gamma \Delta \varDelta \delta \varepsilon \zeta \eta \Theta \varTheta \theta \vartheta \iota \kappa \Lambda \varLambda \lambda \mu \nu \Xi \varXi \xi \Pi \varPi \pi \varpi \rho \varrho \Sigma \varSigma \sigma \varsigma \tau \Upsilon \varUpsilon \upsilon \Phi \varPhi \phi \varphi \chi \Psi \varPsi \psi \Omega \varOmega \omega
\]
\[
    \mathcal{AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz}
\]
\[
    \mathbb{ABCDEFGHIJKLMNOPQRSTUVWXYZ}
\]
\[
    \times \div + - \Re \aleph \wp \eth \imath \Bbbk \partial \nabla \mho
\]
\[
    \acute{a}\grave{a}\check{a}\check{a}\hat{a}\tilde{a}\bar{a}\breve{a}\dot{a}\ddot{a}\mathring{a}
\]
\[
    \rightarrow\leftarrow\leftrightarrow\mapsto\longleftarrow\longleftrightarrow\longrightarrow\longmapsto\downarrow\updownarrow\uparrow\nwarrow\searrow\nearrow\swarrow\Leftarrow\nleftarrow\nleftrightarrow\nrightarrow\Leftrightarrow\Rightarrow\Longleftarrow\Longleftrightarrow\Longrightarrow\Updownarrow\Uparrow\Downarrow\nLeftarrow\nLeftrightarrow\nRightarrow
\]

\end{document}

vai produzir:

Matemática: MinionPro, kpfonts

Não tenho certeza, mas acho que isso deve levar o seguinte kpfonts:

  • Todos os símbolos de relação, exceto aqueles explicitamente definidos no MinionPro.
  • Todos os operadores, exceto aqueles explicitamente definidos no MinionPro, incluindo as integrais.
  • Todas as setas, exceto aquelas definidas explicitamente no MinionPro.
  • Todos os delimitadores, exceto aqueles definidos explicitamente no MinionPro.
  • Quadro-negro.

O seguinte deve, espero, vir do MinionPro:

  • Todos os símbolos da fonte original (como \partial).
  • Todas as letras gregas e \mathrm, \mathit, \mathnormale os números.
  • Integrais.

Também leva o seguinte do MinionPro:

  • Acentos.
  • Caligráfico.

Ambos estão marcados no código para que você possa comentá-los e obtê-los, kpfontsse preferir. Pessoalmente, prefiro os resultados com o quadro comentado, mas seus quilômetros podem variar.

Atualmente, não tenho ideia de como escolher delimitadores ou como extrair apenas o símbolo principal. (Acho que isso veio do MnSymbol, mas não sei como fazer isso funcionar.)

Também não tenho ideia do que você pode fazer em relação aos tamanhos na ausência de uma opção de dimensionamento. Normalmente, isso está embutido nos arquivos de definição de fonte. Acho que você poderá ajustar o MinionPro, já que possui a óptica. Não posso brincar com isso, mas talvez usar a normalsize/nonormalsizeopção ou algo semelhante possa ser útil.

informação relacionada