避免與 Baskervaldx 和 BibLaTeX 的字形衝突

避免與 Baskervaldx 和 BibLaTeX 的字形衝突

我發現在左括號字形之後,「j」的字形出現了醜陋的「衝突」。當「定期」排版時,「J」不會發生這種情況,但當透過 BibLaTeX 進行排版時,它會發生,並且比「j」要糟糕得多。請編譯下面的 MWE 以了解我的意思。

如何有系統地或「有計劃地」糾正這些缺陷(對我來說就是如此)?

\documentclass{memoir}

\usepackage{filecontents}
\usepackage[style=authoryear]{biblatex}
\usepackage{Baskervaldx}


\begin{filecontents*}{biblio.bib}
  @Book{John,
    author = { John },
    title = {A Title},
  }
\end{filecontents*}

\addbibresource{biblio.bib}

\begin{document}
(j) (J) against \autocite{John}
\end{document}

答案1

不幸的是,這個問題的原因深深植根於biblatex工作方式和 TeX 應用字距調整,以至於我沒有找到正確解決此問題和類似問題的方法。

作為艾格雷格 在評論中指出字體中定義的(和之間的字偶距此處不應用。J

字距調整和連字不僅受到\writes (biblatex有時需要使用)的抑制,而且甚至受到非常簡單的分組和分配的抑制,如

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{Baskervaldx}

\begin{document}
\makeatletter
f\immediate\write\@auxout{}i\ (\immediate\write\@auxout{}J\ 
\makeatother
%
f\def\foo{bar}i\ (\def\foo{bar}J\ 
%
f\begingroup i\endgroup\ (\begingroup J\endgroup\ 
%
f\bgroup i\egroup\ (\bgroup J\egroup\ 
%
fi\ (J
\end{document}

在此輸入影像描述

這也在egreg的錯誤報告中進行了討論,網址為https://github.com/plk/biblatex/issues/598

我認為沒有辦法擺脫所有這些對字距調整至關重要的基礎設施,biblatex同時保留其功能而不需要完全重寫。

相關內容