페이지 여백에 따른 Tikz 그림 정렬

페이지 여백에 따른 Tikz 그림 정렬

를 사용하여 스타일 시트에서 일부 섹션 구분을 만들고 있습니다 tikz. 그러나 선 그리기를 시작하더라도 (0,0)실제 페이지 내용 테두리와 오프셋이 있습니다. 저도 설정했는데 \parindent여전히 완벽하게 정렬되지 않았습니다. 선이 경계에서 정확히 시작하고 끝나도록 하려면 어떻게 해야 합니까?

다음은 문제의 최소한의 예입니다.

\documentclass{article}

\usepackage[a4paper, left=14.111mm,right=14.111mm,top=14.111mm,bottom=14.111mm, showframe]{geometry}
\usepackage{tikz}

\newcommand{\linehalfhalf}{\begin{tikzpicture}[]%
    \draw [line width=1.5mm ] (0,0) -- ({0.5\textwidth},0);
    \draw [line width=0.5mm] ([yshift=+0.5mm]{0.5\textwidth},0) -- ([yshift=+0.5mm]{\textwidth},0) ;
    \end{tikzpicture}}

\begin{document}
    \setlength\parindent{0pt}
    \linehalfhalf
\end{document}

그리고 예시는 다음과 같습니다.문제의 그림

답변1

이 질문을 지적한 @JouleV 덕분에 알아냈습니다.TikZ에서 \textwidth 길이의 라인.

다음은 문제를 해결합니다.

\newcommand{\linehalfhalf}{\begin{tikzpicture}[]%
    \draw [line width=1.5mm, cap=rect] (0,0) -- ({0.5\linewidth},0);
    \draw [line width=0.5mm, cap=rect] ([yshift=+0.5mm]{0.5\linewidth-\pgflinewidth},0) -- ([yshift=+0.5mm] \linewidth-0.5mm-\pgflinewidth,0) ;
    \end{tikzpicture}}

답변2

한 가지 해결책은 그림 주위에 추가 공간을 피하기 위해 사용하는 것이지만 \clip더 간단한 해결책은 얇은 직사각형을 채워 선을 그리는 것입니다.

\documentclass{article}

\usepackage[a4paper, margin=14.111mm, paper height=5cm,showframe]{geometry}
\usepackage{tikz}

\newcommand{\linehalfhalf}{\begin{tikzpicture}[]%
      \fill (0,0) rectangle (.5\textwidth,1.5mm);
      \fill (0.5\textwidth,.5mm) rectangle (\textwidth,1mm) ;
    \end{tikzpicture}}

\begin{document}%
    \setlength\parindent{0pt}%
    \linehalfhalf
\end{document}

여기에 이미지 설명을 입력하세요

관련 정보