I am trying to build a title page to a latex document and I am failing right at the start and cannot figure out why. (Other parts of the document work already good though. The title page is the only problematic one.)

(This is to "copy" a design from a word document.)

Can someone help me for the start, eg placing the picture centered, in background, and making the semi transparent blocks ?

As an example, this is what it should look like in the long run.

Please notice that I am at the moment focussing on the top picture. My aim is to learn so I am not asking help for the rest of the page.

I use LuaLatex and TeXworks on Windows if it's relevant.

Thank you for any help provided.

An image showing the desired end result



% that's where the full title and specific data comes from.

% that's me trying to center the picture with various packages, without any positive result

\def\dokTitle{A1.2.\AfsnitNr{} }
\title{Your Title Here}
\author{Your Name}


\includegraphics[width=18cm, keepaspectratio]{pic/titleback.jpg}

\makebox{\huge \setmainfont{QTHelvet-Black}\bfseries\ProjektNavn}
\makebox{\large \setmainfont{Cambria}\dokTitle}
\makebox{\Large \setmainfont{Calibri}\AfsnitNavn}



  • I would use tikz. This way you could position the image relative to the page and could easily add semi-transparent nodes on top of it. See tex.stackexchange.com/a/557967/36296 for an example. Feb 6 at 13:07
  • you are slready loading eso-pic see its manual, it has an easy interface to add something in the background of a single page. Or use TikZ as @samcarter_is_at_topanswers.xyz suggests.
    – daleif
    Feb 6 at 13:08
  • Ok, thank you, I shall try.
    – 22decembre
    Feb 6 at 14:02
  • See also tikzpagenodes for (current page text area). To achieve the desired effect, I would add something like \fill[white, opacity=0.5] (current page text area.north west) rectangle (curent page text area.south); Feb 6 at 18:14

1 Answer 1


So after advices using Tikz, I managed to good quite something here.

Notably, I integrated it into a class.

I might be also very inefficient in term of design, so comments are welcome.

Most important problem is that my horizontal title (En by i Sverige) and table are still in the middle of the background picture whereas I want to have the table just above the adress and bottom logo.

The title itself can still float a bit between the picture and the table, its exact position is not so important.

enter image description here

\ProvidesClass{paneltrade}[2024/01/01 LaTeX class created to write PanelTrade technical documents]





% That's where are the names, title of the project, etc...



% Define light and dark Microsoft blue colours

% Define a new fontfamily for the subsubsection font
% Don't use \fontspec directly to change the font
\newfontfamily\subsubsectionfont[Color=MSLightBlue]{Times New Roman}
% Set formats for each heading level



    {\MakeUppercase{\romannumeral #1}}


%% rectangle geometry
% offset as offset from border of picture and between rects
% width of rects

\begin{tikzpicture}[remember picture,overlay]

%% mega large picture in background
\node[outer sep=0pt,anchor=north](backpic) at ([yshift=-1cm]current page.north) {\includegraphics[keepaspectratio]{pic/titleback.jpg}};

\coordinate (topA) at ([xshift=\offsetrect, yshift= - \offsetrect ] backpic.north west); % Offset from top
\coordinate (bottomA) at ([xshift=\offsetrect + \largrect, yshift=\offsetrect ] backpic.south west); % Offset from bottom
\coordinate(topB) at ([xshift=\offsetrect + \largrect] topA);
\coordinate(bottomB) at ([xshift=\offsetrect + \largrect] bottomA);

\coordinate(topC) at ([xshift=\offsetrect + \largrect] topB);
\coordinate(bottomC) at ([xshift=\offsetrect + \largrect] bottomB);

\filldraw[fill= white, very thick,draw=white,opacity=0.5] (topA) rectangle (bottomA);
\node[anchor=east] at ([yshift=-8mm,xshift=0.5*\largrect]topA) [rotate=90] {\huge \setmainfont{QTHelvet-Black}\bfseries\ProjektNavn};

\filldraw[fill= white, very thick,draw=white,opacity=0.5] (topB) rectangle (bottomB);
\node[anchor=east] at ([yshift=-8mm,xshift=0.5*\largrect]topB) [rotate=90] {\Large \setmainfont{Cambria}\bfseries\dokTitle};

\filldraw[fill= white, very thick,draw=white,opacity=0.5] (topC) rectangle (bottomC);
\node[anchor=east] at ([yshift=-8mm,xshift=0.5*\largrect]topC) [rotate=90] {\Large\bfseries\sffamily\color{MSBlue}\AfsnitNavn};



{\huge \setmainfont{QTHelvet-Black}\bfseries\ProjektNavn}



Projekt Nr:     & \ProjektNr    & Konstruktionsafsnit:      & \AfsnitNr     \\

Udarbejdet af : &\ingenior & {} & {}    \\

Godkendt af :   & \kontrolant & {} & {} \\

%%% pay attention to margins if you modify the (2cm, 2cm) -> I took the same side margins as the general doc class.
\begin{tikzpicture}[remember picture,overlay]
\node [outer sep=0pt,anchor=south west, align=left] at ($(current page.south west)+(2cm,2cm)$) {\parbox{\textwidth}{
\textbf{Tlf.: +45 8620 2020\\
    E-mail: [email protected]\\
    Hjemmeside: https://www.paneltrade.dk}

\begin{tikzpicture}[remember picture,overlay]
\node[outer sep=0pt,anchor=south east] at ($(current page.south east)+(-2cm,2cm)$) {\includegraphics[keepaspectratio]{pic/footpic.jpg}};


\fancyhead[R]{\small\color{MSLightBlue}Side \thepage}

%%% footer
% void in center, otherwise the page number appears

  • I did it with some \vpace immediatly after the background pic, then some \vfill.
    – 22decembre
    Feb 12 at 20:38

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .