我發現在左括號字形之後,「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
字距調整和連字不僅受到\write
s (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
同時保留其功能而不需要完全重寫。