Corregir la elección incorrecta de la variante de personaje de un conjunto estilístico

Corregir la elección incorrecta de la variante de personaje de un conjunto estilístico

Estaba escribiendo un documento en letra negra alemana con XeLaTeX y me encontré con un error peculiar (a falta de una palabra mejor):

Captura de pantalla

La separación de palabras en sí misma está bien en esa posición. Sin embargo, las reglas alemanas de composición tipográfica de letras negras requerirían una ſ larga antes del guión.

La fuente que estoy usando ofrece un conjunto estilístico que hace un buen trabajo al identificar quésdebería quedarsy que debería convertirse enſ. Sin embargo, aparentemente este conjunto estilístico no se aplica hastadespués TeX ha terminado de dividir la palabra en cuestión porque si la palabra que se muestra allí no está dividida, se representa correctamente comoflüſſige.

Tuve las siguientes ideas sobre cómo evitarlo:

  • Agregar un ZWJ entre losses ( \char"200D)
  • Agregar un ZWNJ antes delses ( \char"200C)
  • Agregar "|(rompeligaduras según lo definido por polyglossia) o\/

En los dos primeros casos, la separación de palabras se suprime por completo (pero al comprobar una variante diferente de s mal elegida, parece que puedo confirmar que no pasó nada en absoluto). El tercer caso, por supuesto, añade un punto de ruptura adicional y, por tanto, induce una separación de palabras incorrecta.

¿Existe alguna opción para obligar a TeX a representar el formato correcto?s¿glifo sin ingresarlo en texto plano? Algo como:

  • modificar el carácter de hypenation para leer una secuencia de dos caracteres que incluya algo que induzca la correctas? (poco probable desde elrespuestas a esta preguntaylas respuestas que faltan a esta pregunta
  • ¿Agregar algún mecanismo adicional de elección de glifos diseñado para capturar solo casos especiales que el conjunto estilístico de la fuente no representa correctamente?

La fuente esUnifrakturMaguntiay toda la información al respecto, incluidas las descargas, se puede encontrar en suPágina de Sourceforge.


Como nota al margen: Eldocumentación (página 31; en alemán)implica que unsdespués de unotro personajey precediendo a otrosser presentado comoſ. Ahora no estoy seguro de si TeX de alguna manera suprime los caracteres que no se pueden mostrar o si se trata de un error de la fuente. Si es lo primero, ¿hay algún carácter de ancho cero que no sea devorado?


La parte importante del código:

\documentclass[12pt,a4paper,twoside]{scrreport}
\usepackage{amsmath}
\usepackage{mathspec}
\usepackage{polyglossia}
\setmainlanguage[babelshorthands=true,spelling=new,script=fraktur]{german}

\setmainfont[Mapping=tex-text,StylisticSet=11]{UnifrakturMaguntia}

\makeatletter
\begingroup\lccode`~=`"
\lowercase{\endgroup
    \everymath{\let~\eu@active@quote}
    \everydisplay{\let~\eu@active@quote}
}
\makeatother % This code is included to keep German TeX ligatures such as
%            % "~ active, despite amsmath package.

\newcommand\zwj{\char"200D} % defines \zwj as zero-width joiner
\newcommand\zwnj{\char"200C} % defines \zwnj as zero-width non-joiner

\begin{document}
Einfüllung mit dem Laufmittelgemisch aufgeschlämmt und unter Stickstoffüberdruck gepackt. Flüssige
und ölige Proben wurden in wenig Laufmittelgemisch angelöst und mit einer Pasteurpipette vorsichtig auf die
Silicaschicht aufgetragen. Feststoffe, die sich nicht in wenig Laufmittelgemisch lösen ließen, wurden mit einem
passenden Lösungsmittel gelöst, mit Kieselgel versetzt, das Lösungsmittel am Rotationsverdampfer entfernt und


\noindent (Think of the same text repeating) Flüs\zwj sige (etc.)

\noindent (Think of the same text repeating) Flü\zwnj ssige (etc.)

\noindent (Think of the same text repeating) Flü"|ssige (etc.)


\end{document}

Hay más en mi documento actual. Me acabo de dar cuenta de lo incorrectosantes del guión en esa posición, así que experimenté y descubrí que podía reproducirlo agregando al menos esas líneas de texto que escribí aquí. No tengo idea de cómo hacer que las columnas sean más pequeñas para forzar la separación de palabras (aunque eso ayudaría mucho a realizar pruebas).

información relacionada