Pzc en negrita para modo matemático

Pzc en negrita para modo matemático

¿Existe una forma decente de poner en negrita la fuente pzc definida como

\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it}

en el modo matemático. Probar \bm como se muestra a continuación no reveló nada

\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}

¿Alguna sugerencia?

Respuesta1

La fuente Zapf Chancery (o un clon de la misma) no está disponible en negrita.

Si está dispuesto a utilizar XeLaTeX o LuaLaTeX, puede explotar TeX Gyre Chorus, que es un clon de Zapf Chancery y la negrita se puede falsificar.

\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}

ingrese la descripción de la imagen aquí

Respuesta2

De acuerdo totalmente con el usuario @egreg existen dos opciones extremas:

  1. o usando contourel paquete (en mi humilde opinión, es un buen compromiso):

\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}

Creo que el parámetro 2es casi bueno y correcto. De lo contrario configuras la opción con 1. Vea el siguiente ejemplo con el parámetro 1:

ingrese la descripción de la imagen aquí

\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}

ingrese la descripción de la imagen aquí

Puedes ver con unacercarseque se puede ver el doble fondo, pero a lo lejos no se nota.

  1. o usando un horrible :-) símbolo falso en negrita con amsbsypaquete:

ingrese la descripción de la imagen aquí

\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}

APÉNDICE:

  1. Es posible obtener otro mejor resultado utilizandoxfakeboldpaquete de Herbert Voß versión 0.08 2020-06-24.

Respuesta3

Lo que tienes aquí esun problema XY. Lo que realmente desea no es “pzc en negrita para el modo matemático”, sino un alfabeto de escritura matemática en negrita. Hay varios paquetes que los proporcionan, pero los mejores son los \symbfcaly \symbfscralfabetos deunicode-math, y los alfabetos \mathbcaly \mathbscrdemathalpha. Ambos proporcionan una selección completa, ejemplos de fuentes, escalado y una interfaz estándar para múltiples fuentes.

Como mathalphaadvierte la documentación, Zapf Chancery “no es realmente adecuado para su uso como alfabeto matemático debido a las alturas y profundidades dispares y las largas colas de algunos glifos. Úselo con cuidado”.

Aquí hay un MWE para TeX moderno o clásico. Utiliza clones del \mathcalalfabeto pxmath/txmath. Es posible que prefiera un conjunto diferente de fuentes, pero ambos paquetes le ofrecen muchas opciones.

\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}

En LuaLaTeX o XeLaTeX, esto se compila en:

Ejemplo de asanas matemáticas

En PDFLaTeX, se compila para:

muestra pxtx

Por si sirve de algo, Hermann Zapf diseñó una fuente caligráfica específicamente para usar como alfabeto matemático: Euler Calligraphic, utilizada por primera vez en el libro de DEK.Matemáticas concretas: una base para la informática. Puedes obtenerlo como la opción cal=eulero scr=eulerparamathalpha o como fuente matemática OpenTypeNeo Euler.

Sin embargo, podría aplicar la solución de egreg para FakeBold=usar el estándar \mathcalo \mathscrlos alfabetos con un clon de Zapf Chancery.

\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}

Muestra de coro TeX Gyre

información relacionada