私は、(1) 文字列を引数として受け取り、(2) 文字列の長さを計算し、(3) 長さを 3 で割り、(3) 文字列の最初の 1/3 に 1 種類の書式を適用し、文字列の中央の 1/3 に別の書式を適用し、文字列の残りの部分に別の書式を適用するという LaTeX 関数を作成したいと考えています。
これを実行する方法はありますか?
答え1
fp
以下は、計算用のパッケージと文字列分割用のパッケージを使用するアプローチですxstring
。書式設定コマンドはハードコードされており、この場合は太字、青、大きいフォントです。
コード:
\documentclass{article}
\usepackage{xstring}
\usepackage{fp}
\usepackage{xcolor}
\newcommand{\divprint}[1]{%
\StrLen{#1}[\mylen]% get length of string
\FPeval\x{clip(round(\mylen/3,0))}% divide by 3, round on 0 decimal places, clip any trailing zeroes
\StrSplit{#1}{\x}{\strA}{\strBC}% split string on the calculated position
\StrSplit{\strBC}{\x}{\strB}{\strC}% split remaining string
\textbf{\strA}\textcolor{blue}{\strB}\Large\strC\normalsize% print formatted string
}
\begin{document}
\divprint{fourfourfour}
\divprint{random string}
\end{document}
結果: