TikZ/TeX: ancho mínimo de línea/resolución máxima

TikZ/TeX: ancho mínimo de línea/resolución máxima

Me gustaría emplear TikZ para algún trabajo constructivo, es decir, programar unFabLabCortador láser. Este ingenioso dispositivo obtiene un dibujo en 2D (como PDF) y corta todorayitasen el PDF. Aharlinese define como un camino con un espesor de 0,01 pt.

Sin embargo, si intento esto con TikZ ypdflatex

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

y abro el PDF resultante en Adobe Illustrator, me muestra un ancho de línea de 0,0179 pt, demasiado grueso. Parece que he alcanzado los límites de TeX.


Editar:Los 0.0179 pt fueron un doble efecto. En primer lugar, usé ptdonde en realidad debería haber usado 0.01bp, ya que la unidad de letras en realidad es lo que todos los demás llaman puntos. (Ver¿Cuáles son las posibles dimensiones/tamaños/unidades que entiende LaTeX?). En segundo lugar, los archivos PDF que estaba analizando no salieron directamente de pdflatex, sino que fueron procesados ​​posteriormente por MacOS, lo que da como resultado anchos de línea extraños. Gracias Pablo!

Sigue siendo la pregunta genérica sobre el ancho mínimo de línea y la resolución máxima de TeX.


Entonces, ¿cuál es el ancho de línea mínimo que puedo obtener con TeX y TiKZ?

Además, ¿qué es lo mismo que la resolución máxima para colocar objetos?

(Para dibujos técnicos, a veces hay que bajar al nivel de µm, con 1 µm = 0,002845 pt)

Respuesta1

Compile este documento a través de 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}

Luego busque wdirectivas en el PDF (un archivo de texto simple). Tu encuentras:

0,3985w
0,00995w

La primera aparición es el ancho de línea predeterminado (=~ .4pt) de TikZ.

La segunda aparición es el ancho de línea utilizado por el rectángulo dibujado. Tienes razón: no lo es 0.01pero 0.00995.

Si lo usa line width=0.01004pten su documento, obtendrá exactamente 0.01en el archivo PDF (0.01004/72.27*72=.0100024906600249063...).

(mira a¿Cuáles son las posibles dimensiones/tamaños/unidades que entiende LaTeX?, especialmente pty bpunidades...)

Editar:

El ancho de línea mínimo no nulo producido por TikZ es 0.00003pt( 0.00002 wen PDF).

Nota:El ancho de línea nulo tiene un significado especial en PDF (como en PostScript).

Extraer dePDF 32000-1:2008:Un ancho de línea de 0 indicará la línea más delgada que se puede representar con la resolución del dispositivo: 1 píxel de dispositivo de ancho. Sin embargo, algunos dispositivos no pueden reproducir líneas de 1 píxel y, en dispositivos de alta resolución, son casi invisibles. Dado que los resultados de renderizar dichas líneas de ancho cero dependen del dispositivo, no deben utilizarse.

Respuesta2

No estoy del todo seguro de cómo se determina el ancho del segmento de línea, pero, a menos que necesite que la línea tenga exactamente 0.01ptel ancho, TikZ ciertamente le permite construir líneas con anchos extremadamente estrechos.

% 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}

información relacionada