答案1
一切,浅蓝色表面上写的内容(甚至深蓝色表面上的文字)似乎都具有部分或类似功能。所以,在我看来,这就像恒定的文本,不会改变。
空白处的文本似乎是可变文本。
如果我的假设正确,您当然可以定义一些 LaTeX 变量来填充不同文本的部分。然后您需要定义一个命令或环境,它将生成表格并填充之前定义的变量的内容。
这应该很容易。
与此同时:这是我的 MWE。
通常情况下,我会将定义放在其自己的样式文件中。在这种情况下,您不需要\makeatletter
and\makeatother
。
我定义了一些内部变量,例如\course@title
。这@
使得它们无法在普通文档中使用。使用@
可以使变量名安全。您不会意外地在文档中定义第二个变量。
我还定义了用户空间命令来操作变量的内容。
我还为文本中那些不变的部分(即用作节名的常量文本)的名称定义了变量。如果您确定永远不需要更改此节名,则无需在变量中定义这些名称。只需在命令中直接使用节名即可。但如果这些节名中的部分或全部有可能发生更改,那么您就比较安全了。
最后,我定义了命令\coursetable
(所以我并不确信,这对于宏来说真的是一个好名字。我已经警告过你了。)它将为我们进行排版。
通过将所有内容放在一个宏中,您可以自由地按照您喜欢的任何顺序填充变量。没关系。
\documentclass{article}
\usepackage{graphicx}
\usepackage{tabularx}
%% Some new column declarations
\newcolumntype{C}{>{\centering\arraybackslash}X}
\newcolumntype{L}{>{\raggedright\arraybackslash}X}
%% Dont use indent here!
\setlength{\parindent}{0pt}
%% maybe we need a uniqe skip:
\newlength{\myskip}\setlength{\myskip}{4ex}
%% Define some variables
\makeatletter
\def\course@title{}
\def\course@institute{Institute for Typography}
\def\course@teacher{}
%% This time with a default
\def\course@term{Summer2017}
\def\course@content{The course will explain the content of the course}
%% Define also the section names
\def\course@institutename{Institute}
\def\course@titlename{Course}
\def\course@teachername{Professor}
\def\course@termname{Semester}
\def\course@contentname{Contents}
%% Define the command, which will create the table right now.
\newcommand{\coursetable}{%
% start a new page
\clearpage%
\thispagestyle{empty}%
% Put in the Logos
\includegraphics[width=2cm]{example-image-a}%
\hfill%
\includegraphics[width=2cm]{example-image-b}%
\vspace{\myskip}
\begin{tabularx}{\linewidth}{|C|C|}
\hline
\textbf{\course@titlename} & \textbf{\course@termname} \\
\hline
\course@title & \course@term \\
\hline
\textbf{\course@teachername} & \textbf{\course@institutename} \\
\hline
\course@teacher & \course@institute\\
\hline
\end{tabularx}
\vspace*{\myskip}
\begin{tabularx}{\linewidth}{|L|}
\hline
\multicolumn{1}{|C|}{\textbf{\course@contentname}}\\
\hline
\course@content\\
\hline
\end{tabularx}
\vfill
Signature: \hrulefill
}
%% Define user space commands to manipulate the internal variables
\newcommand{\courseterm}[1]{\def\course@term{#1}}%
\newcommand{\coursetitle}[1]{\def\course@title{#1}}%
\newcommand{\courseinstitute}[1]{\def\course@institute{#1}}
\newcommand{\courseteacher}[1]{\def\course@teacher{#1}}
\newcommand{\coursecontent}[1]{\def\course@content{#1}}
%% Reserve the @-sign.
\makeatother
\begin{document}
%% The order, in which you define the variables, does not matter.
\coursetitle{Beautiful Concepts}
\courseteacher{Prof. Dr. Drofnats}
\coursecontent{We will discuss in deep, if good typography will enhace
every document of the world. Therefore we will study two or three
examples}
%% Now, build this table.
\coursetable
\end{document}
这是结果。当然,它与您的示例不同,但我希望它能向您展示如何编写文档。
编辑:我忘了提一件事:看一下-package xcolor
,获取那些蓝色的表格行。