Mám potíže s vytvářením čísel v matematickém režimu tučně. Příkaz \mathbf{}
pracoval s balíčkem mathptmx
a vytvořil tučná čísla, která vypadala jako čísla v matematickém režimu, ale tučně. Pak jsem vedle balíčku bm
začal používat balíček newtxmath
a nyní vypadají, že nechci.
mathbf{1}
vytvoří symbol, který vypadá jako číslo 1, ale jako textový režim 1. Zatímco \bm{}
a \boldsymbol
nebude fungovat. Zde je výstup
$\bm{1}$\\ $\boldsymbol{1}$\\ $\mathbf{1}$\\ \textbf{1}
Používám Georgia
písmo s jeho " nízkým " čísel, takže můžete definitivně poznat rozdíl mezi matematickým a textovým režimem.
Existuje nějaké řešení tohoto problému?
Zde je celý kód (ke kompilaci potřebujete Lua nebo Xe LaTex):
\documentclass[10pt]{article} \usepackage{newtxmath} \usepackage{bm} \usepackage{polyglossia} \defaultfontfeatures{Ligatures=TeX} \setmainfont{Georgia} \newfontfamily\cyrillicfont{Georgia} \setmainlanguage{russian} \begin{document} \noindent $\bm{1}$\\ $\boldsymbol{1}$\\ $\mathbf{1}$\\ \textbf{1} \end{document}
UPDATE: Ta věc nakonec fungovala, když jsem soubor zkompiloval na jiném PC. Což je zvláštní, protože jak to chápu, Aktualizace TexLive Balíčky a překladače se automaticky zobrazují, takže se to nezdá být otázkou verze.
Bylo by skvělé, kdyby mi někdo vysvětlil, co se tady děje.
Komentáře
Odpověď
Načítáte polyglossia
, který načte fontspec
a použijete písmo OpenType . To není kompatibilní se starým balíčkem bm
.
Jedno řešení je:
\usepackage{unicode-math} \defaultfontfeatures{ Ligatures=TeX, Scale=MatchLowercase } \setmathfont{TeX Gyre Termes Math} % Or another math font \setmathfont{Georgia}[range=up] \setmathfont{Georgia Italic}[range=it] \setmathfont{Georgia Bold}[range=bfup] \setmathfont{Georgia Bold Italic}[range=bfit]
To vám umožní používat \mathbf{1}
nebo \symbf{1}
. Pokud nikdy nepoužíváte \mathbf
pro slova v matematickém režimu, můžete použít možnost \usepackage[mathbf=sym]{unicode-math}
a vytvořit \mathbf
synonymum pro \symbf
. Teoreticky to vyvolá tučné alfanumerické symboly z vašeho matematického písma, spíše než textové písmo, i když zde oba nastavujete stejné písmo. \textbf
(nebo mnohem lépe \textnormal{\bfseries ...}
) můžete i nadále používat v matematickém režimu.
Pokud máte verze Gruzie, která podporuje čísla linek, můžete dodatečně dát \setmathfont
příkazům možnost Numbers=Lining
. Nebo pokud chcete konkrétně použít Gruzii pro písmena a ne čísla, můžete zadat range=up/{Latin,latin,Greek,greek}
atd.
Písmo \mathbf
, které je určeno pro slova a krátké fráze v matematickém režimu, můžete změnit na něco jiného než hlavní textové písmo s \setmathrm[BoldFont={...}, BoldFeatures={...}]
. Alternativně můžete zavolat \usepackage[no-math]{fontspec}
před polyglossia
a zabránit tomu, aby změnil \mathbf
, \mathrm
atd.
Balíček unicode-math
podporuje \boldsymbol
, ale toto volá \mathversion{bold}
. Od roku 2020 unicode-math
nepodporuje možnosti version=bold
a range=
\setmathfont
současně, takže nemůžete spolehlivě použít \boldsymbol
a také měnit písmena v matematickém režimu.
Další možnosti pro změnu matematického písma na Gruzii jsou mathastext
nebo v XeTeX mathspec
.
Odpověď
TeXlive je jen další distribuce s čísly verzí.
lidé ji používají, protože obsahuje víceméně kuchyňský kout a všechno a to „Je udržován, ale rozhodně má čísla verzí.
a lidé, kteří se s ním velmi často setkávají, se pokusí zajistit, aby jednotlivé kousky fungovaly společně.
také díky své gigantické velikosti , TeXlive může být ve vaší distribuci rozdělen na několik malých dílčích balíčků.
To stačí k vysvětlení rozdílů mezi vykreslením.
obecně, pokud narazíte na takový problém , reprodukovatelnost je klíčová … takže obecně mohou logy čísel verzí použitých balíčků LaTeX hodně pomoci.
Komentáře
- Vítejte v TeXu. SE!
tlmgr update
, můžete přidat\listfiles
do preambule dokumentu a porovnejte verzi balíčku na konci každého protokolu. (V loňském roce došlo k některým aktualizacímbm
, které byly o něco méně rozbité například v luatexu)