如何更改假小写字母的大小

如何更改假小写字母的大小

我想使用此解决方案由@egreg 输入假小型大写字母。

它运行完美,只是似乎我无法使用它来更改字体大小\fontsize{}{}\selectfont

在此示例中,两行\frutB \fontsize{8}{12}\selectfont \underline{\fakesc{Chapitre 2}}\frutB \fontsize{5}{12}\selectfont \underline{\fakesc{Chapitre 2}}给出相同的输出。

有人知道如何改变字体大小吗?

谢谢你们!

\documentclass[12pt,twoside]{book}

\usepackage[french]{babel}

\usepackage{fontspec}

\setmainfont{FrutigerLTStd-Roman.otf}[BoldFont=FrutigerLTStd-Bold.otf]


\ExplSyntaxOn
\NewDocumentCommand{\fakesc}{ o m }
 {
  \guido_fakesc:n { #2 }
  \IfNoValueTF{#1}
   {
    \tl_use:N \l__guido_temp_tl
   }
   {
    \cs_set_eq:NN #1 \l__guido_temp_tl
   }
 }
\cs_new_protected:Npn \guido_fakesc:n #1
 {
  \tl_set:Nn \l__guido_text_tl { #1 }
  \tl_replace_all:Nnn \l__guido_text_tl { ~ } { \q_space }
  \tl_set:Nn \l__guido_temp_tl { \group_begin: \footnotesize }
  \tl_map_inline:Nn \l__guido_text_tl
   {
    \token_if_eq_meaning:NNTF ##1 \q_space
     {
      \tl_put_right:Nn \l__guido_temp_tl { ~ }
     }
     {
      \int_compare:nTF { \char_value_uccode:n { `##1 } = `##1 }
       {
        \tl_put_right:Nn \l__guido_temp_tl { {\normalsize ##1} }
       }
       {
        \tl_put_right:Nn \l__guido_temp_tl { \tl_upper_case:n { ##1 } }
       }
     }
   }
  \tl_put_right:Nn \l__guido_temp_tl { \group_end: }
 }
\quark_new:N \q_space
\tl_new:N \l__guido_text_tl
\tl_new:N \l__guido_temp_tl
\ExplSyntaxOff

\usepackage{contour}


\begin{document}


\fontsize{8}{12}\selectfont \underline{\fakesc{Chapitre 2}}

\fontsize{5}{12}\selectfont \underline{\fakesc{Chapitre 2}}


\end{document}

相关内容