\hspace ist vor einem Tisch nicht leistungsfähig

\hspace ist vor einem Tisch nicht leistungsfähig

Ich habe ein Problem festgestellt, da sich ein \hspacenicht so verhält, wie ich es erwartet habe. Ich habe -5em angegeben, aber es hat nur etwa -4,5em kompiliert. Wenn man die Schriftfamilie ändert, ändert sich die Fehlermenge, aber ich denke, dass der Fehler innerhalb einer Schriftfamilie in Bezug auf die em-Einheiten konstant ist.

\documentclass[extrafontsizes, 48pt]{memoir}
\usepackage[left=7cm, right=0cm]{geometry}

\begin{document}
\ttfamily
\newlength\savetabcolsep\setlength\savetabcolsep\tabcolsep\setlength\tabcolsep{0pt}
\newlength\leftitemspace\setlength\leftitemspace{5em}

Foo

\begin{tabular}{|p{\leftitemspace}|p{\linewidth}}
Foo & Bar\\
Foo 2 & Bar 2\\
Foo 3 & Bar3
\end{tabular}

\rule{1em}{1pt}

\hspace*{-\leftitemspace}      % here is the problem
\begin{tabular}{|p{\leftitemspace}|p{\linewidth}}
Foo & Bar\\
Foo 2 & Bar 2\\
\rule{\leftitemspace}{1pt} & Bar 3
\end{tabular}

\hspace{-\leftitemspace}\rule{\leftitemspace}{1pt}Bar


\setlength\tabcolsep\savetabcolsep
\end{document}

Im folgenden Bild versuche ich, die vertikalen Linien der Tabelle horizontal auszurichten:

Problem mit der horizontalen Ausrichtung im Hspace

Antwort1

\hspace*{-\leftitemspace}% <<<<<<<<<<<<<<<<< Space removed
\begin{tabular}{|p{\leftitemspace}|p{\linewidth}}

Bildbeschreibung hier eingeben

Beachten Sie, dass die Zeilen in Ihrer Beispieldatei nicht linksbündig sind, da jede Zeile einen neuen Absatz beginnt. Wenn Sie möchten, dass der Inhalt am linken Rand des Textbereichs beginnt, fügen Sie ihn entweder \noindentin jedem Absatz hinzu oder setzen Sie ihn \parindent=0ptfür das gesamte Dokument, indem Sie ihn in die Präambel einfügen.

\noindent
\hspace*{-\leftitemspace}% <<<<<<<<<<<<<<<<< Space removed
\begin{tabular}{|p{\leftitemspace}|p{\linewidth}}

Bildbeschreibung hier eingeben

\parindent=0pt
\begin{document}

Bildbeschreibung hier eingeben

Ich empfehle, die Option beim Entwickeln des Dokumentlayouts showframezum Paket hinzuzufügen . Dann werden Text-/Kopf-/Fußzeilen-/Randbereiche angezeigt.geometry

\usepackage[left=7cm, right=0cm,showframe]{geometry}

Bildbeschreibung hier eingeben

verwandte Informationen