透過減少字母空間來消除過滿的行

透過減少字母空間來消除過滿的行

相關這個問題。我有一個比線長的奇怪字串。僅使用任意選項我不會得到令人滿意的結果,因為如果我做對了,LaTeX 只會使用字間距來避免水平框過度/不足,這在這一行中顯然不可用。

在此輸入影像描述

所以我想讓我透過添加一種新字體來手動減少這裡的字母空間,我對其 LetterSpace 值進行實驗,直到看起來不錯為止:

\documentclass{article}
\usepackage{fontspec}
\usepackage{polyglossia}
\setdefaultlanguage{sanskrit}
\newfontfamily\sanskritfont{TeX Gyre Pagella}
\newfontfamily\shrink[LetterSpace=-0.5]{TeX Gyre Pagella}
\begin{document}

\shrink{asmadādiviśeṣaṇaśūnyasyārthasākṣātkāritvamātrasyaivendriyādhīnatvada}\-rśanād
anaikāntikatvam asambhavīti cet | yady evam
arthasākṣātkāritvamātrasyendiryavadālokādhīnatvam upalabdham iti na santamase
paśyeyur ulūkādayaḥ | atha vyabhicāradarśanād ālokasyāvyāpakatvam,
vyabhicāraśaṅkayā tarhīndriyasyāpy avyāpakatvam | vyāptyā śaṅkā khaṇḍyata iti
cet | śaṅkāsambhavād vyāptir evāsambhavinī yadi prathamata eva vyāptiḥ,
vyabhicāro 'pi na dṛśyeta |

\end{document}

在此輸入影像描述

我希望有一種更好的(自動)方法來做到這一點,有嗎?

相關內容