问题是,即使发出后,文本也没有居中\centering
。下图描述了它:
代码:
\documentclass[12pt]{book}
\usepackage{wedn}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\begin{document}
\begin{titlepage}
{\newgeometry{margin=1in, centering}
\noindent \rule{\textwidth}{2pt}
{\LARGE\centering\bfseries MATERIAL SCIENCE \par}
\noindent \rule{\textwidth}{2pt}
{\wedn\large\centering {Department of Physics\par Pondicherry Engineering College}}
}
\end{titlepage}
\restoregeometry
\end{document}
答案1
少即是多。您希望标题页的所有元素都居中,因此请将其放在\centering
顶层。
\documentclass[12pt]{book}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage{wedn} %<-------- ARE YOU REALLY SURE?
\begin{document}
\begin{titlepage}
\newgeometry{margin=1in, centering}
\centering
\rule{\textwidth}{2pt}
\LARGE\textbf{MATERIAL SCIENCE}
\rule{\textwidth}{2pt}
\large\wedn Department of Physics\\ Pondicherry Engineering College
\end{titlepage}
\restoregeometry
\end{document}
如果您希望大文本在规则之间垂直居中,则最好使用较低级别的命令:
\begin{titlepage}
\newgeometry{margin=1in, centering}
\centering
\hrule height 2pt \vspace{3pt}
\LARGE\textbf{MATERIAL SCIENCE}
\vspace{3pt}\hrule height 2pt
\medskip
\wedn\large Department of Physics\\ Pondicherry Engineering College
\end{titlepage}
改变间距以适应。
答案2
TeX 使用当前处于活动状态的设置结尾该段落。
{\wedn\large\centering Department of Physics\par Pondicherry Engineering College}% removed non-functional braces
第一个“物理系”位于中心,因为\centering
处于活动状态,\par
位于组内。但是“Pondicherry Engineering College”使用的是组前的设置,即不是\centering
。
解决方案:\par
明确添加:
{\wedn\large\centering Department of Physics\par Pondicherry Engineering College\par}
替代方案\centering
可以放在titlepage
环境的开始处,就像 egreg 的一样回答,如果环境的所有元素都应水平居中。
行间文本垂直居中
在聊天出现了关于标题行垂直居中的问题。修改 egreg 的示例:
\documentclass[12pt]{book}
\usepackage[T1]{fontenc}
\usepackage{geometry}
\usepackage{wedn}
\begin{document}
\begin{titlepage}
\newgeometry{margin=1in, centering}
\centering
\LARGE
\hrule height 2pt\relax
\kern1ex
\centerline{\textbf{MATERIAL SCIENCE}}
\kern1ex
\hrule height 2pt\relax
\vspace{1ex}
\large\wedn
Department of Physics\\[.5ex]
Pondicherry Engineering College
\end{titlepage}
\restoregeometry
\end{document}
这里使用的是纯 TeX 语法(\hrule
, \centerline
)而不是 LaTeX,因为这是一种更直接的方法。LaTeX 总是想开始一个新段落,但这里不需要。
“纯 LaTeX” 解决方案是
\renewcommand*{\arrayrulewidth}{2pt}
\renewcommand*{\arraystretch}{0}
\begin{tabular*}{\textwidth}{@{}p{\textwidth}@{}}
\hline
\rule{0pt}{1ex}\tabularnewline
\centering\bfseries MATERIAL SCIENCE\tabularnewline
\rule{0pt}{1ex}\tabularnewline
\hline
\end{tabular*}