summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/titlepic
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
committerNorbert Preining <norbert@preining.info>2019-09-02 13:46:59 +0900
commite0c6872cf40896c7be36b11dcc744620f10adf1d (patch)
tree60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/titlepic
Initial commit
Diffstat (limited to 'macros/latex/contrib/titlepic')
-rw-r--r--macros/latex/contrib/titlepic/README.md18
-rw-r--r--macros/latex/contrib/titlepic/titlepic-manual.pdfbin0 -> 122875 bytes
-rw-r--r--macros/latex/contrib/titlepic/titlepic-manual.tex119
-rw-r--r--macros/latex/contrib/titlepic/titlepic.sty90
4 files changed, 227 insertions, 0 deletions
diff --git a/macros/latex/contrib/titlepic/README.md b/macros/latex/contrib/titlepic/README.md
new file mode 100644
index 0000000000..b1c19b8720
--- /dev/null
+++ b/macros/latex/contrib/titlepic/README.md
@@ -0,0 +1,18 @@
+The `titlepic` package for LaTeX
+================================
+
+The titlepic package allows you to place a picture on the
+title page (cover page) of a LaTeX document.
+
+Example of usage:
+
+ \usepackage[cc]{titlepic}
+ \usepackage{graphicx}
+ \titlepic{\includegraphics[width=\textwidth]{picture.png}}
+
+Note: the package currently only works with the document
+classes article, report and book.
+
+Author: Thomas ten Cate
+License: Public Domain
+Source: https://github.com/ttencate/titlepic
diff --git a/macros/latex/contrib/titlepic/titlepic-manual.pdf b/macros/latex/contrib/titlepic/titlepic-manual.pdf
new file mode 100644
index 0000000000..cf9bec6903
--- /dev/null
+++ b/macros/latex/contrib/titlepic/titlepic-manual.pdf
Binary files differ
diff --git a/macros/latex/contrib/titlepic/titlepic-manual.tex b/macros/latex/contrib/titlepic/titlepic-manual.tex
new file mode 100644
index 0000000000..d8e5d2a37b
--- /dev/null
+++ b/macros/latex/contrib/titlepic/titlepic-manual.tex
@@ -0,0 +1,119 @@
+% Manual, as well as usage example, for the titlepic.sty package.
+% Run this through latex to see the output.
+
+\documentclass[titlepage]{article}
+
+\usepackage[cc]{titlepic} % Include the titlepic package.
+
+% Creates a placeholder for the picture (no real picture is included in the package to keep it small).
+% The syntax is \placeholder{width}{height}.
+\newcommand\placeholder[2]{%
+ \noindent%
+ {\setlength{\fboxsep}{0pt}%
+ \framebox[#1]{%
+ \parbox{0pt}{\rule{0pt}{#2}}%
+ \parbox{#1}{\centering The picture goes here.}%
+ }%
+ }%
+}
+
+\title{\LaTeX{} \texttt{titlepic} Manual}
+\author{
+ Thomas ten Cate\thanks{\texttt{<ttencate@gmail.com>}} \\
+ with contributions from \\
+ Denis Bitouz\'e}
+\date{March 14, 2017}
+\titlepic{\placeholder{\textwidth}{0.75\textwidth}} % This is the magic command!
+
+\begin{document}
+
+\maketitle
+
+\section{Introduction}
+
+In \LaTeX, there is by default no way to put a picture on the title page or cover page that is produced by \verb$\maketitle$. Surprisingly, no package seemed to exist for this either, which is why I put together this very simple package named \verb$titlepic$.
+
+\textbf{Note:} \verb$titlepic$ only works with the default document classes \verb$article$, \verb$report$ and \verb$book$. However, it works both with the \verb$titlepage$ and \verb$notitlepage$ document class options.
+
+\section{Installation}
+
+There are several ways to install the package:
+\begin{itemize}
+ \item Simply drop \verb$titlepic.sty$ in the same directory as your \verb$.tex$ source document. This is the easiest option for casual use.
+ \item Put \verb$titlepic.sty$ somewhere in your \verb$texmf$ tree and rehash. The details depend on your \TeX{} distribution. This gives you a system-wide installation.
+ \item Install it from \TeX{} Live or MiK\TeX.
+\end{itemize}
+
+\section{Usage}
+
+Include the package as normal, with:
+
+\begin{quote}
+ \verb$\usepackage{titlepic}$
+\end{quote}
+
+\noindent If you want to be able to include a picture, then you also need
+
+\begin{quote}
+ \verb$\usepackage{graphicx}$
+\end{quote}
+
+Then, along with the usual \verb$\title$, \verb$\author$ and \verb$\date$, put a command like the following:
+
+\begin{quote}
+ \verb$\titlepic{\includegraphics[width=\textwidth]{cover.png}}$
+\end{quote}
+
+The argument to \verb$\titlepic$ will usually be an \verb$\includegraphics$ command, which produces a picture. You can change the size using the optional argument to \verb$\includegraphics$, for example, \verb$width=0.7\textwidth$. This will make the picture be 70\% as wide as the text, and scales the height accordingly.
+
+In fact, the argument to \verb$\titlepic$ can actually be pretty much anything. The output produced by this argument will be typeset centred on the title page when you invoke \verb$\maketitle$.
+
+\section{Package options}
+
+There are three optional arguments that control the vertical layout of the title page:
+
+\begin{description}
+\item[\tt{tt}]
+ Put both the title (and author, and date) and the picture at the top of the page, separated by a fixed amount of space.
+\item[\tt{tc}]
+ Put the title at the top of the page as with tt, but centre the picture vertically on the page.
+\item[\tt{cc}]
+ Separate the title and the picture by a fixed amount of space, and centre both together vertically on the page.
+\end{description}
+
+\section{Example}
+
+Here is a full example of what your document could look like.
+
+\begin{verbatim}
+% Pass titlepage to the article class
+\documentclass[titlepage]{article}
+
+% Centre the picture and the title vertically with cc (only works with titlepage mode)
+\usepackage[cc]{titlepic}
+
+% For \includegraphics
+\usepackage{graphicx}
+
+\title{Example}
+\author{John Doe}
+\date{\today}
+
+% Now, put a picture on the title page!
+\titlepic{\includegraphics[width=\textwidth]{picture.png}}
+
+\begin{document}
+
+\maketitle
+
+...
+
+\end{document}
+\end{verbatim}
+
+\section{Contributing}
+
+Contributions are welcome! Send a pull request on GitHub here:\\
+\verb$https://github.com/ttencate/titlepic$
+
+\end{document}
diff --git a/macros/latex/contrib/titlepic/titlepic.sty b/macros/latex/contrib/titlepic/titlepic.sty
new file mode 100644
index 0000000000..2aca230a8d
--- /dev/null
+++ b/macros/latex/contrib/titlepic/titlepic.sty
@@ -0,0 +1,90 @@
+% titlepic.sty is a LaTeX package to show a picture on the cover produced by \maketitle.
+% By Thomas ten Cate <ttencate@gmail.com>. Free software, no warranty of any kind.
+%
+% Version history:
+% 1.2: works without titlepage as well
+% 1.1: now more self-contained, comes with a PDF manual
+% 1.0: first release
+%
+% -----------------------------------------------------------------------------
+
+% No idea whether it works on older LaTeXes.
+\NeedsTeXFormat{LaTeX2e}
+
+% Package identification and version number.
+\ProvidesPackage{titlepic}[2017/03/14 1.2 Package to display a picture on the title page]
+
+% Declare the options.
+\DeclareOption{tt}{\gdef\@tptopspace{}\gdef\@tpsepspace{\vskip 3em}}
+\DeclareOption{tc}{\gdef\@tptopspace{}\gdef\@tpsepspace{\vfil}}
+\DeclareOption{cc}{\gdef\@tptopspace{\null\vfil}\gdef\@tpsepspace{\vskip 3em}}
+\ExecuteOptions{cc}
+\ProcessOptions
+
+% Define the sole command introduced by this package.
+% Very similar to the definition of \title, etc.
+\def\titlepic#1{\gdef\@titlepic{#1}}
+\def\@titlepic{\@empty} % default: no picture
+
+% If a title page was requested from the document class (article/report/book),
+% override \maketitle to show our picture.
+\if@titlepage
+ \renewcommand\maketitle{
+ \begin{titlepage}%
+ \let\footnotesize\small
+ \let\footnoterule\relax
+ \let \footnote \thanks
+ \@tptopspace%
+ \begin{center}%
+ {\LARGE \@title \par}%
+ \vskip 3em%
+ {\large
+ \lineskip .75em%
+ \begin{tabular}[t]{c}%
+ \@author
+ \end{tabular}\par%
+ }%
+ \vskip 1.5em%
+ {\large \@date \par}% % Set date in \large size.
+ \end{center}\par
+ \@tpsepspace%
+ {\centering\@titlepic\par}
+ \vfil
+ \@thanks
+ \end{titlepage}%
+ \setcounter{footnote}{0}%
+ \global\let\thanks\relax
+ \global\let\maketitle\relax
+ \global\let\@thanks\@empty
+ \global\let\@author\@empty
+ \global\let\@date\@empty
+ \global\let\@title\@empty
+ \global\let\@titlepic\@empty
+ \global\let\title\relax
+ \global\let\author\relax
+ \global\let\date\relax
+ \global\let\and\relax
+ \global\let\titlepic\relax
+ }
+\else
+ \def\@maketitle{%
+ \newpage
+ \null
+ \vskip 2em%
+ \begin{center}%
+ \let \footnote \thanks
+ {\LARGE \@title \par}%
+ \vskip 1.5em%
+ {\large
+ \lineskip .5em%
+ \begin{tabular}[t]{c}%
+ \@author
+ \end{tabular}\par}%
+ \vskip 1em%
+ {\large \@date}%
+ \end{center}%
+ \vskip .5em%
+ {\centering\@titlepic\par}
+ \par
+ \vskip 1.5em}
+\fi