\textls 字母间距和 parbox

\textls 字母间距和 parbox

我有一个技巧,可以使用 \textls(microtype 包)在 2 行 parbox 中容纳尽可能多的文本。代码如下:

\documentclass{article}

\usepackage[latin1]{inputenc}
\usepackage[cyr]{aeguill}
\usepackage[T1]{fontenc}

\usepackage[babel=true]{microtype}

\usepackage[french]{babel}

\usepackage[french=guillemets]{csquotes}
\MakeAutoQuote{«}{»}

\begin{document}

\fontfamily{qag}\fontsize{6pt}{6.6pt}\selectfont

\newlength{\mytextheight}
\newcount\foo

\def\mytext{CA«S»TILLA 2000, vert foncé et or (millésime 1995)}

\foo=0
\loop
\settoheight{\mytextheight}{\parbox{70pt}{\textls[\foo]{\mytext}}}
\advance \foo -5
\ifdim \mytextheight>10pt
\repeat

\parbox{70pt}{\mytext}      

\vspace{4mm}

\parbox{70pt}{\textls[\foo]{\mytext}}

\end{document}

由于某种原因,结束符前的空间与开始符后的空间不同,这看起来很丑陋。我该如何纠正这个问题?感谢您的任何想法。 在此处输入图片描述

答案1

一种解决方案如下:

\DeclareFontFamily{U}{wncyr}{}
\DeclareFontShape{U}{wncyr}{m}{n}{<->wncyr10}{}
\DeclareFontShape{U}{wncyr}{m}{it}{<->wncyi10}{}
\DeclareFontShape{U}{wncyr}{m}{sc}{<->wncysc10}{}
\DeclareFontShape{U}{wncyr}{b}{n}{<->wncyb10}{}

\DeclareTextCommand{\guillemotleft}{T1}{%
  {\hbox{\fontencoding{U}\fontfamily{wncyr}\selectfont\symbol{"3C}}}%
}
\DeclareTextCommand{\guillemotright}{T1}{%
  {\hbox{\fontencoding{U}\fontfamily{wncyr}\selectfont\symbol{"3E}}}%
}

它进行替换aeguill,并且水平盒子避免了在关闭的 guillemet 之前出现奇怪的空间。 在此处输入图片描述

相关内容