Сейчас у меня есть такой код:
\documentclass{book}
\renewcommand\sfdefault{cmss}
\renewcommand{\familydefault}{\sfdefault}
\usepackage[top = 2.54cm, bottom = 2.54cm, left = 1.5cm, right = 1.5cm]{geometry} % en mecanica dejarlo en 2.54x2 y 2.1x2
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0.5pt}
%\renewcommand{\footrulewidth}{0.5pt}
\fancypagestyle{plain}{%
\fancyhf{}
\fancyhead[R]{\thepage}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
}
\usepackage{mathtools}
\begin{document}
\begin{titlepage}
\begin{center}
{\scshape\large Some text book}
\\ \vspace{0.2cm}
%
{\scshape\Huge Algebra and Calculus} \\
{\small\hspace{11.5cm} $^{\displaystyle\text{\textit{by} Peluche!}}$}
\end{center}
This is just some text without indent to let you see the width of the page.
\end{titlepage}
\end{document}
который производит
гдеАлгебра и исчислениеэто название иот Peluche!автор документа. Это код, который я написал давным-давно. Для каждого "текста" мне нужно изменить , \hspace
чтобы он был выровнен с заголовком "текста". Но теперь я хотел бы автоматически выровнять его для каждого "текста". Чтобы попытаться сделать это, я написал следующий код:
\documentclass{book}
\renewcommand\sfdefault{cmss}
\renewcommand{\familydefault}{\sfdefault}
\usepackage[top = 2.54cm, bottom = 2.54cm, left = 1.5cm, right = 1.5cm]{geometry} % en mecanica dejarlo en 2.54x2 y 2.1x2
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0.5pt}
%\renewcommand{\footrulewidth}{0.5pt}
\fancypagestyle{plain}{%
\fancyhf{}
\fancyhead[R]{\thepage}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
}
\usepackage{mathtools}
\begin{document}
\begin{titlepage}
\begin{center}
{\scshape\large Some text book}
\\ \vspace{0.2cm}
%
{\scshape\Huge $\text{Algebra and Calculus}_{\text{\normalfont\small \textit{by} Peluche!}}$}
\end{center}
This is just some text without indent to let you see the width of the page.
\end{titlepage}
\end{document}
который производит
Проблема здесь в том, что заголовок не выровнен по центру страницы из-за нижнего индекса «by Peluche!».
Вопрос в том, как центрировать заголовок и как позиционировать/выровнять (автоматически) имя автора в конце заголовка. Другими словами, как \hspace
автоматически выбрать аргумент в первом коде. Спасибо за чтение!
решение1
- Ваш вопрос не совсем понятен, что именно вы хотите получить.
- Не пишите заголовок в математической среде.
- Следует ли указывать автора в виде нижнего индекса заголовка или, как это обычно принято в книгах, по центру под названием книги?
- В первом случае вы можете центрировать заголовок, написав его
subscript
с помощью макросаrlap
:
\documentclass{book}
\usepackage{lipsum}
\renewcommand\sfdefault{cmss}
\renewcommand{\familydefault}{\sfdefault}
\usepackage[vmargin = 2.54cm, hmargin = 1.5cm]{geometry} % en mecanica dejarlo en 2.54x2 y 2.1x2+
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0.5pt}
\fancypagestyle{plain}{%
\fancyhf{}
\fancyhead[R]{\thepage}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0pt}
}
\begin{document}
\begin{titlepage}
\begin{center}
\scshape\large Some text book\
\medskip
%
\scshape\Huge Algebra and Calculus\rlap{\textsubscript{\small\textit{by Peluche!}}}
\end{center}
\lipsum[66]
\end{titlepage}
\end{document}
решение2
Нет необходимости \text
в математическом режиме, \textsubscript
все в порядке. И вы можете использовать \phantom
для заполнения левой части заголовка.
\documentclass{book}
\usepackage[top=2.54cm,bottom=2.54cm,left=1.5cm,right=1.5cm]{geometry}
\begin{document}
\newcommand{\xxxx}{\normalfont\small\textit{by} Peluche!}
\begin{titlepage}
\begin{center}
{\scshape\large Some text book}
\\\vspace{0.2cm}
{\textsubscript{\phantom{\xxxx}}{\scshape\Huge Algebra and Calculus}\textsubscript{\xxxx}}
\end{center}
This is just some text without indent to let you see the width of the page.
\end{titlepage}
\end{document}