1

I would like to have three pictures on two pages (A4 in landscape mode) with tikz in the following manner:

Middle picture:

  • The picture in the middle is halved (at 50 %) into two parts, one part shall be added to the right side of the first page and on the left side of the second page.
  • Both parts of middle picture shall be right at the border of the page (right on the first page/left in the second).

Outer pictures:

  • The other two pictures shall be on the left side (first page) and right side (second page), respectively.
  • Both shall have the same distance (i. e. 2 cm) to the picture in the middle.
  • Both pictures shall be right at the border of their corresponding page, left on the first page and right on the second.

All pictures:

  • All picture shall have the height of the paper.

The issue I have with my current code is that I have to adjust the pictures by myself. However, I would like tikz and LaTeX do everything for me "automatically". How can I achieve this?

This is my code:

\documentclass{article}
\usepackage[margin=0cm, top=0cm, bottom=0cm, outer=0cm, inner=0cm, landscape, a4paper]{geometry}
\pagestyle{empty}
\usepackage{graphicx}
\usepackage{mwe}
\usepackage{tikz,tikzscale}

\begin{document}

\par\noindent
\hspace{-.1cm}%
\begin{minipage}{.5\linewidth}
    \vspace{21cm}
    \begin{tikzpicture}[remember picture, overlay]
        \includegraphics[width=\linewidth, height=\paperheight, trim={18cm 0 0 0}, clip]{example-image}
    \end{tikzpicture}    
\end{minipage}\hfill
\hspace{1cm}%
\begin{minipage}{.5\linewidth}
    \vspace{21cm}
    \begin{tikzpicture}[remember picture, overlay]
        \includegraphics[height=\paperheight]{example-image}
    \end{tikzpicture}    
\end{minipage}

\par\noindent
\hspace{-13.8cm}%
\begin{minipage}{.5\linewidth}
    \vspace{21cm}
    \begin{tikzpicture}[remember picture, overlay]
        \includegraphics[height=\paperheight]{example-image}
    \end{tikzpicture}     
\end{minipage}
\hspace{1cm}%
\begin{minipage}{.5\linewidth}
    \vspace{21cm}
    \begin{tikzpicture}[remember picture, overlay]
        \includegraphics[width=10cm, height=\paperheight, trim={18cm 0 0 0}, clip]{example-image} % l b r t
    \end{tikzpicture} 
\end{minipage}

\end{document}
1

Like this?

\documentclass{article}
\usepackage[margin=0cm, top=0cm, bottom=0cm, outer=0cm, inner=0cm, landscape, a4paper]{geometry}
\pagestyle{empty}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}[overlay,remember picture]
\pgfmathsetmacro{\mywidth}{2*\paperwidth/3-1cm} % kept local
\node at ([xshift=-\paperwidth/6-1cm]current page.center){%
    \includegraphics[width=\mywidth pt,height=\paperheight]{example-image-a}};
\node at (current page.east){%
    \includegraphics[width=\mywidth pt,height=\paperheight]{example-image-b}};
\end{tikzpicture}
~
\clearpage
\begin{tikzpicture}[overlay,remember picture]
\pgfmathsetmacro{\mywidth}{2*\paperwidth/3-1cm} % kept local
\node at ([xshift=\paperwidth/6+1cm]current page.center){%
    \includegraphics[width=\mywidth pt,height=\paperheight]{example-image-c}};
\node at (current page.west){%
    \includegraphics[width=\mywidth pt,height=\paperheight]{example-image-b}};
\end{tikzpicture}
\end{document}

enter image description here

EDIT: Added the gap. (Note that computing \mywidth twice is not a blunder.)

| improve this answer | |
  • Hi marmot, thank you for your solution. Yes, almost. Can you please add a space of 2cm between picture A and the left part of B and between picture C and the right part of B? – Til Hund Feb 20 '19 at 15:14
  • 1
    @TilHund Sure. Sorry, I just overread it. – user121799 Feb 20 '19 at 15:21
  • 1
    @TilHund Nothing except for putting something invisible such that \clearpage generates a new page. – user121799 Feb 20 '19 at 15:45
  • 1
    @TilHund Sorry, I do not understand the request. Could you please rephrase it? Do you want to put a label somewhere? If so, where? – user121799 Feb 20 '19 at 16:11
  • 1
    @TilHund Labels are also just nodes. If you use them in the way you propose, the labels will end up outside the picture. You could do \node[label={[anchor=south,yshift=2em]below:pic A}] at ([xshift=-\paperwidth/6-1cm]current page.center){% \includegraphics[width=\mywidth pt,height=\paperheight]{example-image-a}}; or just \node (picA) at ([xshift=-\paperwidth/6-1cm]current page.center){% \includegraphics[width=\mywidth pt,height=\paperheight]{example-image-a}}; \node[anchor=south] at (picA|-current page.south) {pic A};. – user121799 Feb 20 '19 at 16:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.