如何更改字母间距/压缩字母

如何更改字母间距/压缩字母

我今天开始使用 LaTeX,以便能够为大学作业制作更好看的 PDF。我正在做一份由一位志愿教授分发的小练习清单,其中有一项让我有点不知所措。

这就是我应该在输出中得到的内容:

在此处输入图片描述

因此,为了解决这个问题,我编写了以下代码:

\section{\gt Άσκηση 1η} \gt
\fontsize{14}{16.8} \selectfont Α
\fontsize{16}{19.2} \selectfont Β
\fontsize{20}{24}   \selectfont Γ
\fontsize{24}{28.8} \selectfont Δ
\fontsize{28}{33.6} \selectfont Ε
\fontsize{32}{38.4} \selectfont Ζ
\fontsize{36}{43.2} \selectfont Η
\fontsize{40}{48}   \selectfont Θ 
\fontsize{44}{52.8} \selectfont Ι
\fontsize{40}{48}   \selectfont κ
\fontsize{36}{43.2} \selectfont λ
\fontsize{32}{38.4} \selectfont μ
\fontsize{28}{33.6} \selectfont ν
\fontsize{24}{28.8} \selectfont ξ
\fontsize{20}{24}   \selectfont ο
\fontsize{16}{19.2} \selectfont π

当然,输出如下:

在此处输入图片描述

显然,我还需要对字母间距做一些调整,将它们压缩在一起。我已经处理过至少 6 个类似的主题tex.stackexchange,但无法使用已经提出的解决方案来解决这个问题。

任何与我的问题或我的代码中的问题相关的帮助(也许我写了多余的行)都将不胜感激。

我正在使用 TeXStudio 和 MiKTeX。

答案1

这是家庭作业,所以我只给出一个提示:没有\fontsize使用任何命令,只是使用标准记录的命令。

在此处输入图片描述

这显然是对字体大小改变命令的练习:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[greek]{babel}
\begin{document}
{\itshape
\tiny Α%
\scriptsize Β%
\footnotesize Γ%
\small Δ%
\normalsize Ε%
\large Ζ%
\Large Η%
\LARGE Θ%
\huge Ι%
\huge κ%
\LARGE λ%
\Large μ%
\large ν%
\normalsize ξ%
\small ο%
\footnotesize π%
\scriptsize ρ%
\tiny ς}
\end{document}

答案2

通常不需要或建议手动更改单词之间的间距。我提到了因为正如 David 指出的那样,你在字母之间添加了不需要的空格,因此每个字母都被视为一个单词:

\fontsize{14}{16.8}[*space*]\selectfont Α[*space*]
\fontsize{16}{19.2}[*space*]\selectfont Β[*space*]
...

而且,正如您已经想到的,更明智的方法是使用内置的尺寸命令。

\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage[english,greek]{babel}

\begin{document}
\textit{\scriptsize A\footnotesize B\small G\normalsize D\large E\Large Z\LARGE H\huge J\Huge I\Huge k\huge l\Large m\large n\normalsize x\small o\footnotesize p\scriptsize r\tiny s}
\end{document}

在此处输入图片描述

答案3

这个问题启发我创建了以下命令,称为\wavytext

\usepackage{intcalc}

\newcounter{countwavytext}
\makeatletter
\newcommand{\@wavychar}[1]{%
\ifnum\intcalcMod{\value{countwavytext}}{19}=0\tiny#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=1\scriptsize#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=2\footnotesize#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=3\small#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=4\normalsize#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=5\large#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=6\Large#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=7\LARGE#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=8\huge#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=9\Huge#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=10\huge#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=11\LARGE#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=12\Large#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=13\large#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=14\normalsize#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=15\small#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=16\footnotesize#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=17\scriptsize#1\else%
\ifnum\intcalcMod{\value{countwavytext}}{19}=18\tiny#1\else%
\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
\stepcounter{countwavytext}}
\newcommand{\wavytext}[1]{%
\@tempswafalse
    \@for\next:=#1\do
    {\if@tempswa\else%
    \@tempswatrue\fi%
    \@wavychar{\next}}%
}
\makeatother

该命令的效果如下:

\textit{\wavytext{A,B,Γ,Δ,E,Ζ,Η,Θ,I,Κ,Λ,M,N,Ξ,O,Π,Ρ,Σ,Τ}}

\textit{\wavytext{α,β,γ,δ,ε,ζ,η,θ,ι,κ,λ,μ,ν,ξ,ο,π,ρ,σ,τ}}

生产 在此处输入图片描述

不过,我对当前的定义并不满意,因为每个字符必须用 分隔,。一种可能的解决方案是重新定义\@forloop\@iforloop。但我想这带来的麻烦比解决的还多……

相关内容