次の MWE がありますが、2 つの問題があります。
最初の問題は、ミニページのテキストを互いの上部に揃えることができないことです。[t]
識別子を使用しましたが、機能しません。ここで他の同様の質問を読みましたが、すべて機能するはずだと示唆しています。
2 番目の問題は、ルーラーとその上のタイトルの間の垂直方向のスペースを完全に制御する方法を見つけたいということです。テキストの少し下に配置したいのですが、\hrule
近すぎます。
ムウェ
\documentclass{article}
\usepackage{fontspec}
\usepackage[english]{babel}
\begin{document}
\begin{center}
{\LARGE \textbf{Text Here}}
\end{center}
\vspace{1cm}
{\large Text here}
\rule{\textwidth}{1pt}
\vspace{0.5cm}
\begin{minipage}[t]{0.1\textwidth}
\begin{flushright}
Hello
\end{flushright}
\end{minipage}%
%
\hspace{1pt}
%
\begin{minipage}[t]{0.05\textwidth}
\rule{1pt}{2cm}
\end{minipage}%
%
\begin{minipage}[t]{0.80\textwidth}
Hello
\end{minipage}
\end{document}
答え1
minipage
のオプションt
は意味しません上端のminipage
しかし上部のベースラインminipage
のベースラインは\rule
デフォルトではルールの下にあります。ただし、オプションの上げる口論。
水平線とテキストの間の距離の理由も同じで、オプションの上げる口論。
次の例で\ht\strutbox
は、上げる引数は、\ht\strutbox
標準のテキスト行の高さのようなものです。
\documentclass{article}
\usepackage{fontspec}
\usepackage[english]{babel}
\begin{document}
\begin{center}
{\LARGE \textbf{Text Here}\par}
\end{center}
\vspace{1cm}
{\large Text here\par}
\rule[\ht\strutbox]{\textwidth}{1pt}
\vspace{0.5cm}
\begin{minipage}[t]{0.1\textwidth}
\begin{flushright}
Hello
\end{flushright}
\end{minipage}%
%
\hspace{1pt}
%
\begin{minipage}[t]{0.05\textwidth}
\rule[\dimexpr \ht\strutbox-2cm]{1pt}{2cm}
\end{minipage}%
%
\begin{minipage}[t]{0.80\textwidth}
Hello
\end{minipage}
\end{document}
\par
ところで、段落の設定は段落の最後に有効なフォント サイズ設定で行われるため、フォント サイズを変更するグループの最後に追加しました。
minipage
代わりに、 を下げて、上部のベースラインではなく上端に揃えることもできます。これは、次の方法で実行できます\raisebox
。
\documentclass{article}
\usepackage{fontspec}
\usepackage[english]{babel}
\begin{document}
\begin{center}
{\LARGE \textbf{Text Here}\par}
\end{center}
\vspace{1cm}
{\large Text here\par}
\rule[\ht\strutbox]{\textwidth}{1pt}
\vspace{0.5cm}
\raisebox{\dimexpr\ht\strutbox-\height}{\begin{minipage}[t]{0.1\textwidth}
\raggedright
Hello
\end{minipage}}%
%
\hspace{1pt}
%
\raisebox{\dimexpr\ht\strutbox-\height}{\begin{minipage}[t]{0.05\textwidth}
\raggedright
\rule{1pt}{2cm}
\end{minipage}}%
%
\raisebox{\dimexpr\ht\strutbox-\height}{\begin{minipage}[t]{0.80\textwidth}
Hello
\end{minipage}}
\end{document}
この場合は\height
ボックスの内容の高さです。結果は次のようになります。
minipage
2 番目の代替案は、すべてのに同じトップ ベース ラインを与えることです。
\documentclass{article}
\usepackage{fontspec}
\usepackage[english]{babel}
\begin{document}
\begin{center}
{\LARGE \textbf{Text Here}\par}
\end{center}
\vspace{1cm}
{\large Text here\par}
\rule[\ht\strutbox]{\textwidth}{1pt}
\vspace{0.5cm}
\begin{minipage}[t]{0.1\textwidth}
\vskip -\baselineskip
\raggedright
Hello
\end{minipage}%
%
\hspace{1pt}
%
\begin{minipage}[t]{0.05\textwidth}
\vskip -\baselineskip
\raggedright
\rule{1pt}{2cm}
\end{minipage}%
%
\begin{minipage}[t]{0.80\textwidth}
\vskip -\baselineskip
Hello
\end{minipage}%
\end{document}
答え2
ミニページはそれぞれの最初の行に対して上揃えになっています。行の下端がベースライン上にあるため、間違っているように見えます。そのため、行をベースラインより下に下げる必要があります。
\begin{minipage}[t]{0.05\textwidth}
\raisebox{\dimexpr-\height+1.5ex}{\rule{1pt}{2cm}}
\end{minipage}%
2番目の質問に関しては、私はその問題を理解しているかどうかわかりません。しかし、例えば、テキストと水平線の間の距離を制御するには、
{\large Text here}\\[-2ex]
\rule{\textwidth}{1pt}
-2ex
必要な距離に応じて交換してください。