Platzieren Sie ein Bild auf einer ganzen Seite

Platzieren Sie ein Bild auf einer ganzen Seite

Ich möchte ein Bild einfügen, das 100 % der Seite einnimmt. Von Rand zu Rand, keine weißen Flächen, nur das Bild. Ich verwende A4-Papier (europäischer Stil) und das Bild hat auch A4-Format, also sollte das kein Problem sein.

Das Ziel, das ich erreichen möchte:

  • eine Seite: voll mit dem Bild
  • nächste Seite: nur noch ein kleines Bild

nennen wir das Bild xx (groß) und yy (klein). Mich interessiert NUR xx

Ich habe dieses MWE

\documentclass[a4paper]{scrreprt}

\usepackage{geometry}
\usepackage{graphicx}
\pagestyle{empty}
\parindent0pt

\begin{document}

    
\newgeometry{left=0mm, right=0mm, top=0mm, bottom=0mm}
\includegraphics[width=.999\textwidth,height=.999\textheight,keepaspectratio]{xx}

\newgeometry{left=10mm, right=10mm, top=10mm, bottom=10mm}
\includegraphics[width=12cm]{yy}    

\newgeometry{left=0mm, right=0mm, top=0mm, bottom=0mm}
\includegraphics[width=1\textwidth,height=1\textheight,keepaspectratio]{xx}

\newgeometry{left=10mm, right=10mm, top=10mm, bottom=10mm}
\includegraphics[width=8cm]{yy}

\end{document}

Das Problem beim ersten Bild ist, dass am rechten und unteren Rand ein kleiner, aber störender weißer Strich zu sehen ist. Das Problem beim zweiten großen Bild ist, dass vor der eigentlichen Seite mit dem Bild eine leere Seite entsteht. Ich weiß aber nicht, warum. Was kann ich tun?

Dies ist das Bild, das ich verwende (als xx), das yy-Bild ist mir wirklich egal, es ist kein Problem.

Bildbeschreibung hier eingeben

Antwort1

Das wäre vielleicht etwas übertrieben, aber wenn Sie TikZ zum Positionieren Ihres Bildes verwenden würden, müssten Sie sich keine Gedanken über das ständige Ändern der Seitengeometrie machen.

Wenn du die Seite exakt ausfüllen möchtest, würde ich diese keepaspectratioOption weglassen. Dein Bild wird dann zwar leicht verzerrt, aber du bekommst keine weißen Ränder, wenn das Bild nicht exakt die richtige Größe hat.

\documentclass[a4paper]{scrreprt}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}[remember picture,overlay,inner sep=0pt,outer sep=0pt]
\node at (current page.center) {\includegraphics[width=\paperwidth,height=\paperheight]{example-image-duck}};
\end{tikzpicture}

\clearpage

next page

\end{document}

Antwort2

1.0 Verwenden Sie diese Option nur, height=\pageheightwenn Sie keine fehlerhafte Seite ausgeben möchten. Ihr Bild muss dasselbe Seitenverhältnis wie die Seite haben, wenn Sie kein verzerrtes Bild haben möchten.

2.0 Setzen Sie das Bild in eine 0pt-Box und positionieren Sie es mit Tikz in der Mitte der Seite oder verwenden Sie den Shipout-Hook von LaTeX2e und positionieren Sie es mit picture.

3.0 Wenn Sie die Geometrie für alle Ränder auf 0pt setzen, können Sie Folgendes verwenden:

\newpage
\ExplSyntaxOn
\dim_set:Nn\l_tmpa_dim{\paperwidth/2}
\hspace*{\l_tmpa_dim}\makebox[0pt]{\includegraphics[height=\paperheight]{example-image-duck}}
\ExplSyntaxOff

oder einfach , \hspace*{105mm}was die Hälfte von ist \pagewidth, diese Lösung erfordert kein Tikz.

Bildbeschreibung hier eingeben

\documentclass[a4paper]{scrreprt}
\usepackage{tikz}
\begin{document}
\null     % leave a blank to view double page in pdf viewer
\newpage  %
\begin{tikzpicture}[remember picture,overlay,inner sep=0pt,outer sep=0pt]
\node at (current page.center) {\makebox[0pt]{\includegraphics[height=\paperheight]{example-image-duck}}};
\end{tikzpicture}
\newpage
\begin{tikzpicture}[remember picture,overlay,inner sep=0pt,outer sep=0pt]
\node at (current page.center) {\makebox[0pt]{\includegraphics[height=\paperheight]{roots}}};
\end{tikzpicture}
\newpage
\begin{tikzpicture}[remember picture,overlay,inner sep=0pt,outer sep=0pt]
\node at (current page.center) {\makebox[0pt]{\includegraphics[width=\paperheight]{roots}}};
\end{tikzpicture}
\newpage
\begin{tikzpicture}[remember picture,overlay,inner sep=0pt,outer sep=0pt]
\node at (current page.center) {\makebox[0pt]{\includegraphics[width=\paperheight,height=\paperheight]{roots}}};
\end{tikzpicture}
\end{document}

verwandte Informationen