使用字体中的“空格”字形

使用字体中的“空格”字形

有没有办法全局(或在环境中)将“空格”字形设置为单词间空格?我正在导入 OpenType 字体,fontspec该字体具有我想要使用的专门设计的“空格”字形。

答案1

给出\char32你想要的字形,你可以这样做

{\catcode`\ =12a b c d e f g }

但请注意,不再是单词空格而是标点符号,因此您将禁用连字符和空格拉伸以进行对齐,所以这取决于您的使用情况,是否是可以接受的结果。

答案2

你可以,但是我不敢在全球范围内这么做。

关键是使用 Marcin Woliński 的 TeX Pearl 的修改版“如何让换行符处的方框消失”我已经在回答中使用了检查是否在一行的开头

\documentclass{article}
\usepackage[T1]{fontenc} % or with fontspec
\usepackage[polish]{babel} % just because the original text is in Polish

\newenvironment{visiblespace}
 {\par\obeyspaces
  \endlinechar=`\ %
  \begingroup\lccode`~=`\ \lowercase{\endgroup
    \def~}{\setbox0\hbox{\char`\ }% change here with the location of the glyph you want
           \dimen0=\wd0
           \hskip 1pt plus 2pt
           \cleaders\box0 \hskip\dimen0
           \hskip 1pt plus 2pt }%
 }
 {\unskip\par}

\begin{document}

\begin{visiblespace}
Ten typowy testowy akapit tekstu daje przy okazji rodzaj filigranowego
wysypu hodowli pieczarek w zielonym kasztanie regloryfikacji  
stanowisk ministerialnych i podsypanych minimalistom jako fetysz  
zaduchu studziennych barykad. 
\end{visiblespace}

\end{document}

在此处输入图片描述

相关内容