目に見えない小さなTikZ画像フレームを削除するにはどうすればいいですか?

目に見えない小さなTikZ画像フレームを削除するにはどうすればいいですか?

次の例を考えてみましょう。

\documentclass{article}
\usepackage{tikz}
\usepackage[showframe]{geometry}
\usepackage{lipsum}
\begin{document}
\lipsum[1]

\noindent\begin{tikzpicture}
\draw (0,0)--(\linewidth,0);
\end{tikzpicture}
\end{document}

警告を受ける

Overfull \hbox (0.4pt too wide) in paragraph at lines 8--11

私のビューアでは、「広すぎる」部分すら見えません

ここに画像の説明を入力してください

もちろん、0.4ptしかないので、それを見るのは非常に困難です!しかし、私はそのような警告がポップアップ表示されるのが好きではないので、行がマージンに完全に収まるようにするにはどうすればいいでしょうか。つまり、inner sep「ノード」Tiの「」を設定します。Z画像を正確に0ptにするには?

などを使用できること\ruleはわかっていますが、Tiでさらに何かを描く必要がありますZなのでTiを使います全体像ではZ。

よろしくお願いします!

ボーナス質問:を使用していることがわかります\noindent。 を変更せずに\parindent、これを行うより良い方法はありますか?

答え1

これは回避策のようなものですが、この問題の実際の原因はおそらくtikz環境の内部に関係しています。

\documentclass{article}
\usepackage{tikz}
\usepackage[showframe]{geometry}
\usepackage{lipsum}
\begin{document}
\lipsum[1]

\noindent\makebox[\linewidth]{%
\begin{tikzpicture}
\draw (0,0)--(\linewidth,0);
\end{tikzpicture}%
}

\end{document}

答え2

\hfuzz=0.4pt序文で使用してぼかしてみましょう。

\documentclass{article}
\usepackage{tikz}
\usepackage[showframe]{geometry}
\usepackage{lipsum}
\hfuzz=0.4pt
\begin{document}
\lipsum[1]
%https://tex.stackexchange.com/questions/50830/do-i-have-to-care-about-bad-boxes/50850#50850
\noindent\begin{tikzpicture}
\draw (0,0)--(\linewidth,0);
\end{tikzpicture}
\end{document}

詳細については、@DavidCarlisle が優れた回答を提供しているリンク先の質問をご覧ください。また、この回答はボーナス部分のみをカバーしていると思います:-)

関連情報