我今天开始使用 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
。但我想这带来的麻烦比解决的还多……