Gibt es eine anständige Möglichkeit, die Schriftart pzc fett zu formatieren, die wie folgt definiert ist:
\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it}
im Mathematikmodus. Ein Versuch mit \bm wie unten hat nichts ergeben
\documentclass{report}
\usepackage{amsmath}
\usepackage{bm}
\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it}
\begin{document}
$\mathpzc{A}$ is a set and $\bm{ \mathpzc{B}}$ is a polyset.
\end{document}
Irgendwelche Vorschläge?
Antwort1
Die Schriftart Zapf Chancery (oder ein Klon davon) ist nicht in Fettdruck verfügbar.
Wenn Sie XeLaTeX oder LuaLaTeX verwenden möchten, können Sie TeX Gyre Chorus nutzen, einen Klon von Zapf Chancery, bei dem Fettschrift gefälscht werden kann.
\documentclass{article}
\usepackage{fontspec}
\newfontfamily{\chorus}{TeX Gyre Chorus}[
NFSSFamily=chorus,
BoldFont=*,
BoldFeatures={FakeBold=3},
]
\DeclareMathAlphabet{\mathzc}{TU}{chorus}{m}{n}
\DeclareMathAlphabet{\mathzcb}{TU}{chorus}{b}{n}
\begin{document}
$\mathzc{A}\ne\mathzcb{A}$
\end{document}
Antwort2
Laut dem Benutzer @egreg gibt es zwei extreme Optionen:
- oder mithilfe
contour
eines Pakets (meiner bescheidenen Meinung nach ist das ein guter Kompromiss):
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath}
\usepackage{contour}
\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it}
\begin{document}
$\mathpzc{A}$ is a set and \contour[2]{black}{$\mathpzc{A}$} is a polyset.
\end{document}
Ich denke, dass der Parameter 2
nahezu gut und korrekt ist. Andernfalls setzt man die Option mit 1
. Siehe das folgende Beispiel mit dem Parameter 1
:
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath}
\usepackage{contour}
\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it}
\begin{document}
$\mathpzc{A}$ (normal) \contour[1]{black}{$\mathpzc{A}$} (bold)
\end{document}
Sie können mit einemhineinzoomendass man den doppelten Hintergrund sehen kann, aus der Ferne ist das aber nicht so deutlich.
- oder die Verwendung eines schrecklichen :-) falschen fettgedruckten Symbols mit
amsbsy
Paket:
\documentclass[a4paper,12pt]{article}
\usepackage{amsmath}
\usepackage{amsbsy}
\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it}
\begin{document}
$\mathpzc{A}$ is a set and $\pmb{\mathpzc{A}}$ is a polyset.
\end{document}
NACHTRAG:
- Ein weiteres optimales Ergebnis kann erreicht werden durch
xfakebold
Paket von Herbert Voß Version 0.08 2020-06-24.
Antwort3
Was Sie hier haben, istein XY-Problem. Was Sie wirklich wollen, ist nicht „Bold pzc for mathmode“, sondern ein fettes mathematisches Skriptalphabet. Es gibt mehrere Pakete, die diese anbieten, aber die besten sind die \symbfcal
und \symbfscr
Alphabete vonunicode-math
und die \mathbcal
und \mathbscr
Alphabete vonmathalpha
. Beide bieten eine umfassende Auswahl, Schriftbeispiele, Skalierung und eine Standardschnittstelle für mehrere Schriftarten.
Wie in der mathalpha
Dokumentation gewarnt wird, ist Zapf Chancery „aufgrund der unterschiedlichen Höhen und Tiefen und der langen Enden einiger Glyphen nicht wirklich für die Verwendung als mathematisches Alphabet geeignet. Verwenden Sie es mit Vorsicht.“
Hier ist ein MWE für modernes oder klassisches TeX. Es verwendet Klone des pxmath/txmath \mathcal
-Alphabets. Sie bevorzugen vielleicht einen anderen Satz von Schriftarten, aber beide Pakete bieten Ihnen eine große Auswahl.
\documentclass{article}
\usepackage{iftex}
\ifTUTeX
\usepackage{unicode-math}
\setmathfont{Latin Modern Math}
\setmathfont{Asana Math}[range={scr,bfscr}, Alternate, Scale=MatchUppercase]
\else
\usepackage{amsmath}
\usepackage[scr=pxtx]{mathalpha}
\newcommand\mathbfscr[1]{\mathbscr{#1}}
\fi
\pagestyle{empty}
\begin{document}
\(\mathscr A\) is a set and \(\mathbfscr A\) is a polyset.
\end{document}
In LuaLaTeX oder XeLaTeX ergibt dies:
In PDFLaTeX wird es wie folgt kompiliert:
Hermann Zapf hat übrigens eine kalligrafische Schriftart speziell für die Verwendung als mathematisches Alphabet entworfen: Euler Calligraphic, die erstmals in DEKs Buch verwendet wurde.Konkrete Mathematik: Eine Grundlage für die Informatik. Sie können es als cal=euler
oder als scr=euler
Option zu mathalpha
oder als OpenType-Mathematikschriftart erhalten.Neo Euler.
Sie könnten jedoch die Lösung von egreg anwenden, um FakeBold=
den Standard \mathcal
oder \mathscr
die Alphabete mit einem Klon von Zapf Chancery zu verwenden.
\documentclass{article}
\usepackage{unicode-math}
\setmathfont{Latin Modern Math}
\setmathfont{TeX Gyre Chorus}[range=scr,Scale=MatchUppercase]
\setmathfont{TeX Gyre Chorus}[range=bfscr,Scale=MatchUppercase,FakeBold=1.2]
\pagestyle{empty}
\begin{document}
\(\mathscr A\) is a set and \(\mathbfscr A\) is a polyset.
\end{document}