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.
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 keepaspectratio
Option 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=\pageheight
wenn 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.
\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}