TikZ/TeX: 최소 선 너비/최대 해상도

TikZ/TeX: 최소 선 너비/최대 해상도

나는 건설적인 작업, 즉 프로그래밍 작업에 TikZ를 사용하고 싶습니다.팹랩레이저 커터. 이 멋진 장치는 2D 도면(PDF)을 가져오고 모든 부분을 잘라냅니다.가는선PDF에서. ㅏ할린0.01pt 두께의 경로로 정의됩니다.

하지만 TikZ로 이것을 시도하면pdflatex

\begin{tikzpicture}
    \draw[line width=0.01pt] (0,0) rectangle (1cm,1cm);
\end{tikzpicture}

Adobe Illustrator에서 결과 PDF를 열면 선 너비가 0.0179pt로 너무 두껍습니다. TeX의 한계에 도달한 것 같습니다.


편집하다:0.0179pt는 이중 효과였습니다. 첫째, 문자 단위는 실제로 다른 사람들이 포인트라고 부르는 것이기 때문에 pt실제로 사용해야 하는 곳에 사용했습니다 . 0.01bp(보다LaTeX가 이해하는 가능한 치수/크기/단위는 무엇입니까?). 둘째, 내가 분석하고 있던 PDF는 에서 직접 나온 것이 아니라 pdflatexMacOS에서 사후 처리한 곳에서 나온 것이므로 이상한 선 너비가 발생했습니다. 고마워요 폴!

TeX의 최소 선 너비와 최대 해상도에 대한 일반적인 질문으로 남아 있습니다.


그렇다면 TeX와 TiKZ를 사용하여 얻을 수 있는 최소 선 너비는 얼마입니까?

그리고 이것은 물체를 놓을 수 있는 최대 해상도와 같은 것입니까?

(기술 도면의 경우 때때로 1 µm = 0.002845 pt인 µm 수준으로 내려 가야 합니다.)

답변1

다음을 통해 이 문서를 컴파일하십시오 pdflatex.

\documentclass[tikz]{standalone}
\pdfcompresslevel=0
\pdfobjcompresslevel=0
\begin{document}
\begin{tikzpicture}
    \draw[line width=0.01pt] (0,0) rectangle (1cm,1cm);
\end{tikzpicture}
\end{document}

w그런 다음 PDF(간단한 텍스트 파일)에서 지시문을 검색합니다 . 당신은 다음을 발견합니다:

0.3985w
0.00995w

첫 번째 발생은 TikZ의 기본 선 너비(=~.4pt)입니다.

두 번째 발생은 그려진 사각형에 사용되는 선 너비입니다. 당신 말이 맞아요. 그렇지는 0.01않지만 0.00995.

line width=0.01004pt문서에 사용하면 0.01PDF 파일(0.01004/72.27*72=.0100024906600249063...)에 정확하게 들어갑니다.

(보다LaTeX가 이해하는 가능한 치수/크기/단위는 무엇입니까?, 특히 pt단위 bp...)

편집하다:

TikZ에서 생성된 널이 아닌 최소 선 너비는 0.00003pt( 0.00002 wPDF)입니다.

메모:널(null) 선 너비는 PDF(PostScript에서와 같이)에서 특별한 의미를 갖습니다.

에서 추출PDF 32000-1:2008:0의 선 너비는 장치 해상도(1 장치 픽셀 너비)에서 렌더링할 수 있는 가장 얇은 선을 나타냅니다. 그러나 일부 장치에서는 1픽셀 라인을 재현할 수 없으며 고해상도 장치에서는 거의 보이지 않습니다. 너비가 0인 선을 렌더링한 결과는 장치에 따라 다르므로 사용하면 안 됩니다.

답변2

선분의 너비를 어떻게 결정하는지 전혀 모르겠지만, 선의 0.01pt너비가 정확히 필요하지 않는 한 TikZ를 사용하면 매우 좁은 너비의 선을 구성할 수 있습니다.

% arara: pdflatex
% arara: pdflatex
% arara: open

\documentclass[border=10pt]{standalone}
\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
  \foreach \myn in {0,1,2,3,4,5,6,7,8,9}
  {
    \pgfmathsetmacro\mypt{0.01pt - 0.00\myn pt}
    \typeout{===>myn=\myn:\mypt}
    \draw[line width=\mypt pt]
       (0,\myn/400) -- (0.125,\myn/400);
  }
\end{tikzpicture}


\end{document}

관련 정보