フォントサイズを1ポイント小さくする

フォントサイズを1ポイント小さくする

現在のフォントより 1 ポイント小さいフォントで引数を印刷するコマンドを作成したいと思います。

たとえば、ドキュメントのフォントが 11pt の場合、コマンドは 10pt で印刷する必要があります。ドキュメントのフォントが 10pt の場合、コマンドは 9pt で印刷する必要があります。

ただし、これをドキュメントのフォントサイズにバインドしたくはありません。フォントをXptに定義する環境でコマンドを使用する場合、コマンドはフォントサイズ(X-1)ptのテキストを生成するようにします。

答え1

relsize必要なものを収容できるパッケージ を使用することもできます。次の MWE を検討してください。

\documentclass{article}
\usepackage{relsize}
\begin{document}
This is normal size font.

\smaller

And this is one point smaller.
\end{document}

ここに画像の説明を入力してください

答え2

現在のフォント サイズはマクロに保存されます\f@size

\RequirePackage{fix-cm} % or use a scalable font
\documentclass{article}

\makeatletter
\newcommand{\oneptsmaller}[1]{%
  \begingroup
  \fontsize{\dimexpr\f@size pt-1pt}{\f@baselineskip}\selectfont
  #1%
  \endgroup
}
\makeatother

\begin{document}

\fontname\font\ \oneptsmaller{\fontname\font}

\large
\fontname\font\ \oneptsmaller{\fontname\font}

\footnotesize
\fontname\font\ \oneptsmaller{\fontname\font}

\end{document}

ここに画像の説明を入力してください

スケーラブルフォントの場合\usepackage{baskervald}

ここに画像の説明を入力してください

注:は、\fontname\font現在使用されているフォントを示すためだけに使用されます。 の場合、フォントは 10pt の自然なサイズであるため、句ybvr8tはありません。at

答え3

私は個人的に、最愛の人とでそうしていますfontspecXelaTexここでは、Libertine の例を示します (美しいからです)。

\usepackage{fontspec}
\setmainfont[Ligatures=TeX,]{Linux Libertine O}
\newfontfamily{\ninetypercent}[Scale=0.90]{Linux Libertine O}
\newcommand{\ninety}[1]{{\ninetypercent #1}

これを行うと、\ninety{text}基本フォントより 10% 小さくなります。11 ポイントから 10 ポイントのサイズを取得するには、簡単な計算を行って、超正確にしたい場合はスケーリング パラメータを 0.909 に設定する必要があります。

そうすれば、任意のフォント サイズを任意の係数 (3.5%、50% など) で縮小することができ、常に基本フォント サイズを基準にしたものになります。

少しやり過ぎなのは同意しますが、fontspec試してみる価値のある非常に便利な機能が多数あります。

答え4

egreg が提案したものを改良して、次のようにパラメトリックにすることが可能になります。

\documentclass[12pt]{article}

%: ==== N pt smaller
\makeatletter
\newcommand{\hbFontSmaller}[2]{%
  \begingroup
    \fontsize{\dimexpr\f@size pt-#1pt}{\f@baselineskip}\selectfont
    #2%
  \endgroup
}
\makeatother
% ====

\begin{document}

Abcde
\hbFontSmaller{1}{Abcde}
\hbFontSmaller{2}{Abcde}
\hbFontSmaller{3}{Abcde}
\hbFontSmaller{4}{Abcde}
\hbFontSmaller{5}{Abcde}
\hbFontSmaller{6}{Abcde}
\hbFontSmaller{7}{Abcde}
\hbFontSmaller{8}{Abcde}
Abcde

\end{document}  

関連情報